[PATCH] D71754: [AArch64] Fix save register pairing for Windows AAPCS
    Renato Golin via Phabricator via llvm-commits 
    llvm-commits at lists.llvm.org
       
    Fri Dec 20 06:08:59 PST 2019
    
    
  
rengolin added inline comments.
================
Comment at: llvm/lib/Target/AArch64/AArch64FrameLowering.cpp:1877
   // the MCLayer.  We need to add support for the save_lrpair unwind code.
+  if (Reg2 == AArch64::FP)
+    return true;
----------------
This seems awfully permissive. Shouldn't you check that the pairs are explicitly:
    FP + LR
    LR + FP
================
Comment at: llvm/lib/Target/AArch64/AArch64FrameLowering.cpp:1986
         if (AArch64::GPR64RegClass.contains(NextReg) &&
-            !invalidateRegisterPairing(RPI.Reg1, NextReg, NeedsWinCFI,
+            !invalidateRegisterPairing(RPI.Reg1, NextReg, IsWindows, NeedsWinCFI,
                                        NeedsFrameRecord))
----------------
Is Windows' only ABI WindowsAAPCS?
Repository:
  rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D71754/new/
https://reviews.llvm.org/D71754
    
    
More information about the llvm-commits
mailing list