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

_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to