[PATCH] D75944: [x86][seses] Don't LFENCE data invariant insts

Zola Bridges via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Mar 16 11:27:48 PDT 2020


zbrid marked an inline comment as done.
zbrid added inline comments.


================
Comment at: llvm/lib/Target/X86/X86SpeculativeExecutionSideEffectSuppression.cpp:129
+      // data invariant instructions, then continue to the next instruction.
+      if (!LFENCEDataInvariantInstructions &&
+          (TII->isDataInvariant(MI) || TII->isDataInvariantLoad(MI))) {
----------------
craig.topper wrote:
> Don't the instructions that match isDataInvariantLoad still pull things into the cache?
This may be true. I don't know. Data invariant instructions were supposed to be a stand in for a more specific "instructions that don't release info to side channels" and perhaps that's a very different thing. I think someone with better expertise than I have would need to evaluate whether this is a secure flag to set.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D75944/new/

https://reviews.llvm.org/D75944





More information about the llvm-commits mailing list