[llvm] [AArch64][Windows] Fix swift async context slot placement (PR #212922)

Saleem Abdulrasool via llvm-commits llvm-commits at lists.llvm.org
Fri Jul 31 11:52:48 PDT 2026


================
@@ -2858,8 +2852,7 @@ bool AArch64FrameLowering::assignCalleeSavedSpillSlots(
     MFI.setIsCalleeSavedObjectIndex(FrameIdx, true);
 
     // Grab 8 bytes below FP for the extended asynchronous frame info.
-    if (hasFP(MF) && AFI->hasSwiftAsyncContext() && !IsWindows &&
-        Reg == AArch64::FP) {
+    if (hasFP(MF) && AFI->hasSwiftAsyncContext() && Reg == AArch64::FP) {
----------------
compnerd wrote:

Well, I'm asking more about the shape. The pdata/xdata forms can only accommodate certain shapes. This is now changing the shape of the function (you can see that in that the sequence does not establish the stack frame first). I _think_ that this might be similar to the variadic case, but I'm not 100% certain.

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


More information about the llvm-commits mailing list