[PATCH] D49433: [x86/SLH] Add the design document for Speculative Load Hardening, a Spectre v1 mitigation.

Sidney Hummert via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Jul 17 14:03:28 PDT 2018


sidney13 added a comment.

A few minor typos and suggestions.



================
Comment at: llvm/docs/SpeculativeLoadHardening.md:126
+* It passes this predicate state across function boundaries to provide
+  interprocedural protection.
+* When hardening the address of a load, it uses a *destructive* or
----------------
Possibly add a forward reference to the "Interprocedural Checking" section, as this has not be mentioned yet.


================
Comment at: llvm/docs/SpeculativeLoadHardening.md:163
+  the low 2gb of the address space and 2gb above and below any executable pages
+  should be protected.
+
----------------
Possibly add a forward reference to line 644 in the "Hardening the address of the load" section where this is explained.


================
Comment at: llvm/docs/SpeculativeLoadHardening.md:528
+and an all-zero mask along correct paths. Other options become less appealing
+such as multiplying by zero or one, or multiple shift instructions. For reasons
+we elaborate on below, we end up suggesting you use `or` with an all-ones mask,
----------------
I get multiplying by zero to clear bits, but did you really mean to include multiplying by one?


================
Comment at: llvm/docs/SpeculativeLoadHardening.md:1055
+
+Below is a visualization of the microbenchmark suite results which hels show
+the distribution of results that is somewhat lost in the summary. The y-axis is
----------------
"hels" -> "helps"


Repository:
  rL LLVM

https://reviews.llvm.org/D49433





More information about the llvm-commits mailing list