[PATCH] D40224: [X86] Control-Flow Enforcement Technology - Shadow Stack and Indirect Branch Tracking support (Clang side)

Oren Ben Simhon via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Tue Nov 21 12:09:35 PST 2017


oren_ben_simhon marked 8 inline comments as done.
oren_ben_simhon added inline comments.


================
Comment at: include/clang/Driver/Options.td:1801
 def mno_stackrealign : Flag<["-"], "mno-stackrealign">, Group<m_Group>;
+def mno_cet : Flag<["-"], "mno-cet">, Group<m_x86_Features_Group>;
+def mno_shstk : Flag<["-"], "mno-shstk">, Group<m_x86_Features_Group>;
----------------
craig.topper wrote:
> erichkeane wrote:
> > Since CET is a union of the other two, how do we handle conflicting configurations?  Is -mcet -mno-ibt an error, or the same as mno-shstk?  Repeat question for all combinations.
> All the flags should go in the "X86 feature flags" section later in this file.
Since 'mcet' flag (which was supposed to superset the other two) over complicates things, I prefer to remove it at the moment.


================
Comment at: test/CodeGen/builtins-x86.c:260
 
+  __builtin_ia32_incsspd(tmp_Ui);
+  __builtin_ia32_incsspq(tmp_ULLi);
----------------
craig.topper wrote:
> I don't think you need to update this test. The intrinsic header test should be enough. I don't know why this test exists.
I believe that it is for the case where someone is using the builtin directly instead of using the intrinsic (although this is not recommended). Builtin and intrinsic, although relate to each other, might not converge in the future. In that case it might be worth testing.


Repository:
  rL LLVM

https://reviews.llvm.org/D40224





More information about the cfe-commits mailing list