Skip to content

ld64.lld: eh frame crash for watchOS arm64_32 #56942

Open
@keith

Description

@keith

This might just be a tracking issue for this FIXME:

subtractorRelocType = GENERIC_RELOC_INVALID; // FIXME

But I found that this line crashed:

Reloc subtrahendReloc(target->subtractorRelocType, /*pcrel=*/false, length,
off, /*addend=*/0, subtrahend);

When linking realm-swift for watchOS arm64_32. Here's a reproducer: https://drive.google.com/file/d/1xzGsPZHKCs7s_Vj_7thccboMG-7vVrGb/view?usp=sharing (I didn't try to reduce)

If this is expected for now maybe we should just ignore eh frames for this arch for now? To unblock locally I just deleted

if (ehFrameSection)
registerEhFrames(*ehFrameSection);

Metadata

Metadata

Assignees

No one assigned

    Labels

    crashPrefer [crash-on-valid] or [crash-on-invalid]lld:MachO

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions