-
Notifications
You must be signed in to change notification settings - Fork 15.6k
Closed
llvm/llvm-project-release-prs
#416Labels
clang:driver'clang' and 'clang++' user-facing binaries. Not 'clang-cl''clang' and 'clang++' user-facing binaries. Not 'clang-cl'release:backportrelease:merged
Milestone
Description
[clang][driver] Pass -femulated-tls through to the linker in LTO mode
Currently the driver does not propagate the -f[no-]emulated-tls flags
to the linker under LTO. This can be surprising when the platform
defaults differ from the flags being passed. A related discussion can be
found in https://reviews.llvm.org/D143619. While the focus there was
RISC-V support, the root cause was that setting -femualted-tls and
-flto when compiling with Clang resulted in missing symbols because
the platform defaults for Android differed from the flags being passed
to Clang.
This patch changes the Clang driver's behavior to pass the emulated-tls
flags through to the linker when compiling with LTO/ThinLTO.
Metadata
Metadata
Assignees
Labels
clang:driver'clang' and 'clang++' user-facing binaries. Not 'clang-cl''clang' and 'clang++' user-facing binaries. Not 'clang-cl'release:backportrelease:merged
Type
Projects
Status
Done