[clang] [llvm] [SystemZ] Global Stackprotector and associated location section (PR #169317)

Ulrich Weigand via cfe-commits cfe-commits at lists.llvm.org
Wed Jan 21 07:29:36 PST 2026


================
@@ -1805,15 +1777,141 @@ bool SystemZInstrInfo::expandPostRAPseudo(MachineInstr &MI) const {
     splitAdjDynAlloc(MI);
     return true;
 
-  case TargetOpcode::LOAD_STACK_GUARD:
-    expandLoadStackGuard(&MI);
+  case SystemZ::MOVE_STACK_GUARD:
+    expandMSGPseudo(MI);
+    return true;
+
+  case SystemZ::COMPARE_STACK_GUARD:
+    expandCSGPseudo(MI);
     return true;
----------------
uweigand wrote:

Can we merge these two helper routines?   In other places we do something like:

```
case SystemZ::MOVE_STACK_GUARD:
    expandStackGuardPseudo(MI, SystemZ::MVC);
    return true;
case SystemZ::COMPARE_STACK_GUARD:
    expandStackGuardPseudo(MI, SystemZ::CLC);
    return true;
```

and then use the passed-in opcode to create the appropriate final MI in that helper.

https://github.com/llvm/llvm-project/pull/169317


More information about the cfe-commits mailing list