[PATCH v3 0/7] Define unwinding and SEH data structures for aarch64
Evgeny Karpov
evgeny@kmaps.co
Thu Aug 14 07:41:40 GMT 2025
Hello,
Thank you for reviewing v2!
v3 addresses all comments on v2.
Changes in v3:
- Make the AArch64 implementation fully static.
- Fix ARM64_MAX_UNWIND_CODES and introduce AARCH64_MAX_UNWIND_CODES_SIZE.
- Add validation for the epilogue_scope array.
- Add an upper bound for the register number.
- Exclude changes in md_do_align.
- Refactor the AArch64 SEH implementation to emit .pdata/.xdata records at
the end of assembly.
- Declare md_finish for AArch64 to trigger obj_coff_generate_pdata.
- Support different fragment ordering in frag_offset_ignore_align_p
- Change signed to unsigned.
- Replace Arm64 / arm64 with AArch64 / aarch64.
- Add references to the official documentation to clarify
implementation.
- Add static and aarch64_ prefix.
- Rebase onto the current master.
- Fix comments.
- Correct code style and naming.
Regards,
Evgeny
Evgeny Karpov (7):
Adjust pdata function table entries sorting for AArch64
Define unwinding and SEH data structures for aarch64
Adjust x64 SEH implementation for AArch64
Add aarch64-specific SEH commands
Write SEH records to pdata/xdata
Support different fragment ordering in frag_offset_ignore_align_p
aarch64: Emit pdata/xdata SEH records from md_finish
bfd/peXXigen.c | 11 +-
gas/config/obj-coff-seh.c | 777 +++++++++++++++++++++++++++++++++++++-
gas/config/obj-coff-seh.h | 204 +++++++++-
gas/config/tc-aarch64.c | 12 +
gas/config/tc-aarch64.h | 5 +
gas/frags.c | 23 +-
6 files changed, 1002 insertions(+), 30 deletions(-)
--
2.39.5
More information about the Binutils
mailing list