This is an archive of the discontinued LLVM Phabricator instance.

[RuntimeDyld][ELF] Fixed relocations referencing undefined TLS symbols
ClosedPublic

Authored by MoritzS on Feb 8 2023, 3:04 AM.

Details

Summary

The classification of TLS symbols in ELF was changed from ST_Data to
ST_Other in the following commit:
018a484cd26d72fb4c9e7fd75e5f5bc7838dfc73

RuntimeDyldELF::processRelocationRef() needs to be updated to also
handle ST_Other symbols so that it handles TLS relocations correctly.
The current tests did not fail because we have a shortcut for global
symbols that are already defined.

Diff Detail

Event Timeline

MoritzS created this revision.Feb 8 2023, 3:04 AM
Herald added a project: Restricted Project. · View Herald TranscriptFeb 8 2023, 3:04 AM
Herald added a subscriber: hiraditya. · View Herald Transcript
MoritzS requested review of this revision.Feb 8 2023, 3:04 AM
Herald added a project: Restricted Project. · View Herald TranscriptFeb 8 2023, 3:04 AM
lhames accepted this revision.Feb 8 2023, 7:50 AM

LGTM.

This revision is now accepted and ready to land.Feb 8 2023, 7:50 AM
This revision was landed with ongoing or failed builds.Feb 8 2023, 8:50 AM
This revision was automatically updated to reflect the committed changes.