Index: lld/ELF/SyntheticSections.cpp =================================================================== --- lld/ELF/SyntheticSections.cpp +++ lld/ELF/SyntheticSections.cpp @@ -1389,14 +1389,6 @@ if (const OutputSection *OutSec = getOutputSection(Body)) { ESym->st_shndx = OutSec->SectionIndex; - - // This piece of code should go away as it doesn't make sense, - // but we want to keep it tentatively because some tests for TLS - // variable depends on this. We should fix the test and remove - // this code. - if (Body->isLocal()) - if (auto *DS = dyn_cast>(Body)) - ESym->st_value = OutSec->Addr + DS->Section->getOffset(*DS); } else if (isa>(Body)) { ESym->st_shndx = SHN_ABS; } else if (isa(Body)) { Index: lld/test/ELF/gc-debuginfo-tls.s =================================================================== --- lld/test/ELF/gc-debuginfo-tls.s +++ lld/test/ELF/gc-debuginfo-tls.s @@ -6,7 +6,7 @@ # NOGC: Symbol { # NOGC: Name: (0) -# NOGC: Value: 0x1000 +# NOGC: Value: 0x0 # NOGC: Size: 0 # NOGC: Binding: Local # NOGC: Type: TLS Index: lld/test/ELF/mips-tls-64.s =================================================================== --- lld/test/ELF/mips-tls-64.s +++ lld/test/ELF/mips-tls-64.s @@ -29,7 +29,7 @@ # DIS-NEXT: 30040 00000000 00000000 00000000 00000001 # DIS-NEXT: 30050 ffffffff ffff8004 ffffffff ffff9004 -# DIS: 0000000000040000 l .tdata 00000000 loc +# DIS: 0000000000000000 l .tdata 00000000 loc # DIS: 0000000000000004 g .tdata 00000000 bar # DIS: 0000000000000000 g *UND* 00000000 foo Index: lld/test/ELF/mips-tls-hilo.s =================================================================== --- lld/test/ELF/mips-tls-hilo.s +++ lld/test/ELF/mips-tls-hilo.s @@ -21,7 +21,7 @@ # DIS-NEXT: 2000c: 24 62 90 00 addiu $2, $3, -28672 # %lo(loc0 - .tdata - 0x7000) --^ -# DIS: 00040000 l .tdata 00000000 loc0 +# DIS: 00000000 l .tdata 00000000 loc0 # CHECK: Relocations [ # CHECK-NEXT: ] Index: lld/test/ELF/mips-tls.s =================================================================== --- lld/test/ELF/mips-tls.s +++ lld/test/ELF/mips-tls.s @@ -27,7 +27,7 @@ # DIS-NEXT: 30020 00000000 00000001 00000000 00000001 # DIS-NEXT: 30030 ffff8004 ffff9004 -# DIS: 00040000 l .tdata 00000000 loc +# DIS: 00000001 l .tdata 00000000 loc # DIS: 00000004 g .tdata 00000000 bar # DIS: 00000000 g *UND* 00000000 foo