[clang] [llvm] [SystemZ] Global Stackprotector and associated location section (PR #169317)
Ulrich Weigand via cfe-commits
cfe-commits at lists.llvm.org
Wed Feb 4 08:24:21 PST 2026
================
@@ -521,6 +521,38 @@ let SimpleBDXStore = 1, mayStore = 1 in {
[(store GR128:$src, bdxaddr20only128:$dst)]>;
}
}
+
+let hasNoSchedulingInfo = 1, hasSideEffects = 1, mayLoad = 1 in {
+ // load the stack guard's address
+ def LOAD_TSGA : Pseudo<(outs ADDR64:$grdaddr),
+ (ins), []>;
+ def LOAD_GSGA : Pseudo<(outs ADDR64:$grdaddr),
+ (ins), []>;
----------------
uweigand wrote:
Also, `LOAD_TGSA` does not in fact load the stack-guard address, it loads the address of the TLS block itself (where the stack guard is at offset 40). That should probably be reflected in the name.
https://github.com/llvm/llvm-project/pull/169317
More information about the cfe-commits
mailing list