[lld] 0b5073a - [NFC][ELF] Remove unused R_RELAX_TLS_* RelExprs (#210517)
via llvm-commits
llvm-commits at lists.llvm.org
Sat Jul 18 08:43:37 PDT 2026
Author: Jessica Clarke
Date: 2026-07-18T16:43:32+01:00
New Revision: 0b5073a3cd15b942860eeb2ce18a7958bbcf9169
URL: https://github.com/llvm/llvm-project/commit/0b5073a3cd15b942860eeb2ce18a7958bbcf9169
DIFF: https://github.com/llvm/llvm-project/commit/0b5073a3cd15b942860eeb2ce18a7958bbcf9169.diff
LOG: [NFC][ELF] Remove unused R_RELAX_TLS_* RelExprs (#210517)
As of 46d29d43ba8e ("[ELF] Remove unused handleTlsRelocation (#184951)")
these are never generated.
Added:
Modified:
lld/ELF/InputSection.cpp
lld/ELF/Relocations.h
Removed:
################################################################################
diff --git a/lld/ELF/InputSection.cpp b/lld/ELF/InputSection.cpp
index c78800787d27e..bc5105feabe9d 100644
--- a/lld/ELF/InputSection.cpp
+++ b/lld/ELF/InputSection.cpp
@@ -837,18 +837,15 @@ uint64_t InputSectionBase::getRelocTargetVA(Ctx &ctx, const Relocation &r,
case R_GOTPLTREL:
return r.sym->getVA(ctx, a) - ctx.in.gotPlt->getVA();
case R_GOTPLT:
- case R_RELAX_TLS_GD_TO_IE_GOTPLT:
return r.sym->getGotVA(ctx) + a - ctx.in.gotPlt->getVA();
case R_TLSLD_GOT_OFF:
case R_GOT_OFF:
- case R_RELAX_TLS_GD_TO_IE_GOT_OFF:
return r.sym->getGotOffset(ctx) + a;
case RE_AARCH64_GOT_PAGE_PC:
return getAArch64Page(r.sym->getGotVA(ctx) + a) - getAArch64Page(p);
case RE_AARCH64_GOT_PAGE:
return r.sym->getGotVA(ctx) + a - getAArch64Page(ctx.in.got->getVA());
case R_GOT_PC:
- case R_RELAX_TLS_GD_TO_IE:
return r.sym->getGotVA(ctx) + a - p;
case R_GOTPLT_GOTREL:
return r.sym->getGotPltVA(ctx) + a - ctx.in.got->getVA();
@@ -986,9 +983,6 @@ uint64_t InputSectionBase::getRelocTargetVA(Ctx &ctx, const Relocation &r,
return getPPC64TocBase(ctx) + a;
case R_RELAX_GOT_PC:
return r.sym->getVA(ctx, a) - p;
- case R_RELAX_TLS_GD_TO_LE:
- case R_RELAX_TLS_IE_TO_LE:
- case R_RELAX_TLS_LD_TO_LE:
case R_TPREL:
// It is not very clear what to return if the symbol is undefined. With
// --noinhibit-exec, even a non-weak undefined reference may reach here.
@@ -997,7 +991,6 @@ uint64_t InputSectionBase::getRelocTargetVA(Ctx &ctx, const Relocation &r,
if (r.sym->isUndefined())
return a;
return getTlsTpOffset(ctx, *r.sym) + a;
- case R_RELAX_TLS_GD_TO_LE_NEG:
case R_TPREL_NEG:
if (r.sym->isUndefined())
return a;
diff --git a/lld/ELF/Relocations.h b/lld/ELF/Relocations.h
index abc62bf01a421..5615103fe7a39 100644
--- a/lld/ELF/Relocations.h
+++ b/lld/ELF/Relocations.h
@@ -63,13 +63,6 @@ enum RelExpr {
R_RELAX_HINT,
R_RELAX_GOT_PC,
R_RELAX_GOT_PC_NOPIC,
- R_RELAX_TLS_GD_TO_IE,
- R_RELAX_TLS_GD_TO_IE_GOT_OFF,
- R_RELAX_TLS_GD_TO_IE_GOTPLT,
- R_RELAX_TLS_GD_TO_LE,
- R_RELAX_TLS_GD_TO_LE_NEG,
- R_RELAX_TLS_IE_TO_LE,
- R_RELAX_TLS_LD_TO_LE,
R_SIZE,
R_TPREL,
R_TPREL_NEG,
More information about the llvm-commits
mailing list