[PATCH] D74443: [lld][Hexagon] convert call x at GDPLT to call __tls_get_addr
Fangrui Song via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Mar 5 15:53:47 PST 2020
MaskRay added a comment.
Many variable names are still not fixed.
================
Comment at: lld/ELF/Relocations.cpp:1985
+bool HexagonNeedsTLSSymbol(ArrayRef<OutputSection *> outputSections) {
+ bool NeedTLSSymbol = false;
+ forEachInputSectionDescription(
----------------
MaskRay wrote:
> lld uses `variableName`
Not done. `os` `isd`
================
Comment at: lld/ELF/Relocations.cpp:1982
+// hexagonTLSSymbolUpdate rebinds the relocation to __tls_get_addr.
+bool hexagonNeedsTLSSymbol(ArrayRef<OutputSection *> OutputSections) {
+ bool NeedTlsSymbol = false;
----------------
`outputSections`
================
Comment at: lld/ELF/Relocations.cpp:1983
+bool hexagonNeedsTLSSymbol(ArrayRef<OutputSection *> OutputSections) {
+ bool NeedTlsSymbol = false;
+ forEachInputSectionDescription(
----------------
`needTlsSymbol`
================
Comment at: lld/ELF/Relocations.cpp:1996
+
+void hexagonTLSSymbolUpdate(ArrayRef<OutputSection *> OutputSections) {
+ bool NeedEntry = true;
----------------
`outputSections`
================
Comment at: lld/test/ELF/hexagon-tls-gd-xform.s:38
+# RELA_GDPLT-NEXT Section (5) .rela.plt {
+# RELA_GDPLT-NEXT 0x30298 R_HEX_JMP_SLOT x 0x0
+# RELA_GDPLT-NEXT 0x3029C R_HEX_JMP_SLOT __tls_get_addr 0x0
----------------
Without a colon, these checks are not effective.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D74443/new/
https://reviews.llvm.org/D74443
More information about the llvm-commits
mailing list