[PATCH] D95044: IR+AArch64: add `swiftasync` function parameter attribute

Francis Visoiu Mistrih via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue May 11 10:23:59 PDT 2021


thegameg accepted this revision.
thegameg added a comment.
This revision is now accepted and ready to land.

Flags/attributes/calling conventions look very straightforward.

FrameLowering is always getting harder and harder to review but I think your approach with the `StoreSwiftAsyncContext` makes it much easier! Thanks!

This LGTM (with the rest of the comments addressed).



================
Comment at: llvm/lib/Target/AArch64/MCTargetDesc/AArch64AsmBackend.cpp:641
 
+        if (CurOffset != 0 && Inst.getOffset() != CurOffset - 8)
+          return CU::UNWIND_ARM64_MODE_DWARF;
----------------
I'm having trouble seeing what this is checking for. I understand we want to fallback to DWARF like you explained in `llvm/test/CodeGen/AArch64/swift-async-unwind.ll`, but I'm not sure I get the way `CurOffset` is used to check for that.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D95044/new/

https://reviews.llvm.org/D95044



More information about the llvm-commits mailing list