Skip to content

remove LSDA pointer from EhFrameHeader - #23388

Merged
WalterBright merged 1 commit into
dlang:masterfrom
WalterBright:noLSDA
Jul 13, 2026
Merged

remove LSDA pointer from EhFrameHeader#23388
WalterBright merged 1 commit into
dlang:masterfrom
WalterBright:noLSDA

Conversation

@WalterBright

Copy link
Copy Markdown
Member

This starts the transition to Apple's left turn on the Mach object file format:

  1. removed LSDA reference from EhFrameHeader
  2. adds comments about compact_unwind_entry format
  3. makes comdat functions now with N_WEAK_DEF instead of __textcoal_nt section

Sorry this won't be easy to review if not familiar with the undocumented Apple Arm64 object file format.

@WalterBright WalterBright added Compiler:Backend glue code, optimizer, code generation Arch:Aarch64 Issues specific to Arm 64 labels Jul 12, 2026
@Herringway

Copy link
Copy Markdown
Contributor

Maybe they SHOULD document it, but it doesn't surprise me that they don't document a haphazardly fast-moving target. I'm sure whatever DMD is implementing today will be wrong by the next release.

@WalterBright

Copy link
Copy Markdown
Member Author

The object file format cannot be a haphazard fast moving target, as too many projects depend on it working as expected.

@Herringway

Copy link
Copy Markdown
Contributor

The object file format cannot be a haphazard fast moving target, as too many projects depend on it working as expected.

The projects can adapt. It's not Apple's problem.

@WalterBright
WalterBright merged commit e0ef787 into dlang:master Jul 13, 2026
41 checks passed
@WalterBright
WalterBright deleted the noLSDA branch July 13, 2026 00:49
@ibuclaw

ibuclaw commented Jul 13, 2026

Copy link
Copy Markdown
Member

Textcoal change ought to have been separate PR, also closes this issue #18063

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Arch:Aarch64 Issues specific to Arm 64 Compiler:Backend glue code, optimizer, code generation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants