[all-commits] [llvm/llvm-project] dfabff: [x86][lvi][seses] Use SESES at O0 for LVI mitigation

zbrid via All-commits all-commits at lists.llvm.org
Tue Jul 7 11:05:45 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: dfabffb195ee7c9f9db327f29feb781cbec53724
      https://github.com/llvm/llvm-project/commit/dfabffb195ee7c9f9db327f29feb781cbec53724
  Author: Zola Bridges <zbrid at google.com>
  Date:   2020-07-07 (Tue, 07 Jul 2020)

  Changed paths:
    M llvm/lib/Target/X86/X86.h
    M llvm/lib/Target/X86/X86LoadValueInjectionLoadHardening.cpp
    M llvm/lib/Target/X86/X86SpeculativeExecutionSideEffectSuppression.cpp
    M llvm/lib/Target/X86/X86TargetMachine.cpp
    M llvm/test/CodeGen/X86/O0-pipeline.ll
    M llvm/test/CodeGen/X86/lvi-hardening-loads.ll

  Log Message:
  -----------
  [x86][lvi][seses] Use SESES at O0 for LVI mitigation

Use SESES as the fallback at O0 where the optimized LVI pass isn't desired due
to its effect on build times at O0.

I updated the LVI tests since this changes the code gen for the tests touched in the parent revision.

This is a follow up to the comments I made here: https://reviews.llvm.org/D80964

Hopefully we can continue the discussion here.

Also updated SESES to handle LFENCE instructions properly instead of adding
redundant LFENCEs. In particular, 1) no longer add LFENCE if the current
instruction being processed is an LFENCE and 2) no longer add LFENCE if the
instruction right before the instruction being processed is an LFENCE

Reviewed By: sconstab

Differential Revision: https://reviews.llvm.org/D82037




More information about the All-commits mailing list