This revision was automatically updated to reflect the committed changes.
chandlerc marked an inline comment as done.
Closed by commit rL341363: [x86/SLH] Add a real Clang flag and LLVM IR
attribute for Speculative (authored by chandlerc, committed by ).
Changed prior to commit:
https://reviews
chandlerc marked 5 inline comments as done.
chandlerc added a comment.
All outstanding comments addressed, and landing this. Thanks all for the
reviews and let me know if I missed anything.
Comment at: llvm/include/llvm/IR/Attributes.td:181-185
+/// Note that this uses the def
kristof.beyls accepted this revision.
kristof.beyls added a comment.
I'm not an expert on many of the areas touched by this patch, but it looks fine
from me from a high-level point-of-view, modulo a few nits I have on a few
comments.
Comment at: clang/lib/Driver/ToolChains/Ar
chandlerc marked an inline comment as done.
chandlerc added inline comments.
Comment at: llvm/docs/LangRef.rst:1659-1661
+that hardening. It should also be possible to *not* harden a hot and/or
safe
+function and have code inlined there *not* be hardened (even if the gen
chandlerc updated this revision to Diff 162325.
chandlerc added a comment.
Move to a more conservative model suggested by Kristof.
Repository:
rL LLVM
https://reviews.llvm.org/D51157
Files:
clang/include/clang/Driver/Options.td
clang/include/clang/Frontend/CodeGenOptions.def
clang/lib/
kristof.beyls added inline comments.
Comment at: llvm/docs/LangRef.rst:1659-1661
+that hardening. It should also be possible to *not* harden a hot and/or
safe
+function and have code inlined there *not* be hardened (even if the generic
+form is hardened).
---
rsmith accepted this revision.
rsmith added inline comments.
Comment at: clang/lib/Frontend/CompilerInvocation.cpp:1150
+ Opts.SpeculativeLoadHardening =
+ Args.hasFlag(OPT_mspeculative_load_hardening,
You can just use `hasArg(OPT_mspeculative_load_harden
chandlerc updated this revision to Diff 162322.
chandlerc added a comment.
Add a test file that I somehow missed earlier (sorry about that).
Repository:
rL LLVM
https://reviews.llvm.org/D51157
Files:
clang/include/clang/Driver/Options.td
clang/include/clang/Frontend/CodeGenOptions.def
chandlerc added a comment.
Thanks, should all be addressed now.
Comment at: clang/lib/Driver/ToolChains/Arch/X86.cpp:169-170
options::OPT_mno_retpoline_external_thunk, false)) {
// FIXME: Add a warning about failing to specify `-mretpoline` and
chandlerc updated this revision to Diff 162319.
chandlerc marked 3 inline comments as done.
chandlerc added a comment.
Address review comments.
Repository:
rL LLVM
https://reviews.llvm.org/D51157
Files:
clang/include/clang/Driver/Options.td
clang/include/clang/Frontend/CodeGenOptions.def
rsmith added inline comments.
Comment at: clang/include/clang/Driver/Options.td:2004-2007
+def mspeculative_load_hardening : Flag<["-"], "mspeculative-load-hardening">,
+ Group, Flags<[CoreOption,CC1Option]>;
+def mno_speculative_load_hardening : Flag<["-"],
"mno-speculative-lo
rnk accepted this revision.
rnk added a comment.
This revision is now accepted and ready to land.
It makes sense to me to do this all in one go and defer the clang
`__attribute__` until later.
Comment at: llvm/include/llvm/IR/Attributes.td:249
def : MergeRule<"adjustNullPoint
chandlerc created this revision.
chandlerc added reviewers: rsmith, rnk, echristo, craig.topper, kristof.beyls.
Herald added subscribers: jfb, dexonsmith, steven_wu, hiraditya, eraman,
mcrosier, mehdi_amini, sanjoy.
Wires up the existing pass to work with a proper IR attribute rather
than just a
13 matches
Mail list logo