[PATCH] D77021: [Hexagon] R_HEX_GD_PLT_B22_PCREL cannot be relaxed.
Fangrui Song via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Wed Apr 1 15:45:43 PDT 2020
MaskRay accepted this revision.
MaskRay added a comment.
This revision is now accepted and ready to land.
LGTM. Please change the git description as well.
================
Comment at: lld/ELF/Relocations.cpp:1338
+ // call __tls_get_addr even if the symbol is in the same module.
+ if (!(config->emachine == EM_HEXAGON && type == R_HEX_GD_PLT_B22_PCREL))
+ expr = fromPlt(expr);
----------------
We may patch (call a at GDPLT) to (call __tls_get_addr), where __tls_get_addr is non-preemptible. We can't relax the PLT relocation here.
================
Comment at: lld/test/ELF/hexagon-tls-gd-nonpreemptible.s:1
+
+# REQUIRES: hexagon
----------------
Delete the empty line
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D77021/new/
https://reviews.llvm.org/D77021
More information about the llvm-commits
mailing list