[PATCH] D100919: [AArch64] Support customizing stack protector guard

Dave Green via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Tue May 11 14:13:01 PDT 2021


dmgreen added inline comments.


================
Comment at: llvm/lib/Target/AArch64/AArch64InstrInfo.cpp:1917
+            .addDef(Reg)
+            .addImm(Options.StackProtectorGuardOffset >> 3);
+      else
----------------
nickdesaulniers wrote:
> dmgreen wrote:
> > What is StackProtectorGuardOffset, and could is be out of range for the load? That is something that verify-machineinstrs won't currently check for.
> It's passed from the front end; it's an offset added to the pointer load.  The Linux kernel uses a value in 1100-1200 range. GCC will let you use whatever large value and keep appending adds for constants greater than 32200: https://godbolt.org/z/1xhbEPbKG, but YAGNI.
OK. It might be worth at least issuing a report_fatal_error if it is out of the range of the instructions handled here. Otherwise the error might be non-obvious, it just truncating the immediate during codegen.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D100919



More information about the cfe-commits mailing list