[PATCH] D84737: [AArch64][SVE] Preserve full vector regs over EH edge.

Richard Sandiford via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Aug 13 11:30:22 PDT 2020


rsandifo-arm added a comment.

Thanks the update, the idea looks good in general.  Two questions though:

- Is it worth having two functions?  I thought it might be simpler to have just `getCustomEHPadPreservedMask()`, with nullptr meaning “no clobbers”.
- It looks from the tests like the function isn't saving or restoring z8-z23 and p4-p15, is that right?  That's fine for landing pads that can't return directly to the callee (e.g. because they rethrow).  But in these tests the landing pad does return to the caller.  Since the extra callee-saved registers are clobbered on the EH edge, we need to save and restore those registers ourselves on control paths that include an EH edge and a return.


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

https://reviews.llvm.org/D84737



More information about the llvm-commits mailing list