Page MenuHomePhabricator

MaskRay (Fangrui Song)
User

Projects

User does not belong to any projects.

User Details

User Since
Dec 30 2016, 3:24 PM (124 w, 3 d)

Recent Activity

Today

MaskRay added inline comments to D62195: Properly categorize llvm-objdump options.
Tue, May 21, 7:55 AM · Restricted Project
MaskRay accepted D62195: Properly categorize llvm-objdump options.

diff says the following options are removed from --help:

Tue, May 21, 7:50 AM · Restricted Project
MaskRay added a comment to D62188: Speed up --start-lib and --end-lib..

This is interesting! I'll take a closer look tomorrow

Tue, May 21, 7:43 AM · Restricted Project
MaskRay committed rG5ea0d06e8168: [ELF] Deleted unused ComdatGroups member variable left by D61854 (authored by MaskRay).
[ELF] Deleted unused ComdatGroups member variable left by D61854
Tue, May 21, 7:38 AM
MaskRay committed rLLD361266: [ELF] Deleted unused ComdatGroups member variable left by D61854.
[ELF] Deleted unused ComdatGroups member variable left by D61854
Tue, May 21, 7:38 AM
MaskRay committed rL361266: [ELF] Deleted unused ComdatGroups member variable left by D61854.
[ELF] Deleted unused ComdatGroups member variable left by D61854
Tue, May 21, 7:38 AM
MaskRay updated the diff for D59649: [ELF] Improve error message for relocations to symbols defined in discarded sections.

Rebase after recent SymbolTable changes. Combined with D61583, we will give good warnings for PR41693

Tue, May 21, 7:33 AM · Restricted Project
MaskRay requested changes to D42748: [ELF] Don't create a .dynamic section when linking with -Bstatic.
Tue, May 21, 6:11 AM · Restricted Project
Herald added a project to D42748: [ELF] Don't create a .dynamic section when linking with -Bstatic: Restricted Project.

@arichardson
If the MIPS problem was similar to https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=236165 ,
moving away from &_DYNAMIC will be a more reliable approach.
To check if an executable is dynamically linked, inspecting PT_INTERP is a better choice.

Tue, May 21, 6:11 AM · Restricted Project
MaskRay committed rGcd36a2857ea1: [PPC64] Update LocalEntry from assigned symbols (authored by MaskRay).
[PPC64] Update LocalEntry from assigned symbols
Tue, May 21, 3:41 AM
MaskRay committed rL361237: [PPC64] Update LocalEntry from assigned symbols.
[PPC64] Update LocalEntry from assigned symbols
Tue, May 21, 3:41 AM
MaskRay closed D56586: [PPC64] Update LocalEntry from assigned symbols.
Tue, May 21, 3:41 AM · Restricted Project
MaskRay added a comment to D62177: [ELF] Don't advance position in a memory region when assigning to the Dot.

I find the behavior of the GNU linkers wierd.

If we use bfd and have:

.section .foo,"ax";
nop;

.section .bar,"ax";
nop;

and script:

MEMORY {
  ram (ax) : ORIGIN = 0x42000, LENGTH = 0x100000
}
SECTIONS {
  .foo : { *(.foo*) }
  . += 0x2000;
  .bar : { *(.bar*) }
}

Then .foo section has address 0x42000 and .bar has 0x42001.
I.e. moving a dot does not change the address of the next section.

But if I remove MEMORY:

SECTIONS {
  .foo : { *(.foo*) }
  . += 0x2000;
  .bar : { *(.bar*) }
}

Then .foo is 0x0 and .bar is 0x2001 (as I would expect to see)

I think it is very strange that MEMORY command affects the Dot assignment behavior in that way.

Seems that original script from PR had to use a hack to move the second output section:

aligned_dot = ALIGN(0x10 * 1024);  
     
.data aligned_dot :
{
  *(.data*)
}
Tue, May 21, 2:00 AM · Restricted Project
MaskRay committed rGecf4c9e13cdc: [ELF] Don't advance position in a memory region when assigning to the Dot (authored by MaskRay).
[ELF] Don't advance position in a memory region when assigning to the Dot
Tue, May 21, 1:20 AM
MaskRay committed rLLD361228: [ELF] Don't advance position in a memory region when assigning to the Dot.
[ELF] Don't advance position in a memory region when assigning to the Dot
Tue, May 21, 1:20 AM
MaskRay committed rL361228: [ELF] Don't advance position in a memory region when assigning to the Dot.
[ELF] Don't advance position in a memory region when assigning to the Dot
Tue, May 21, 1:20 AM
MaskRay closed D62177: [ELF] Don't advance position in a memory region when assigning to the Dot.
Tue, May 21, 1:19 AM · Restricted Project
MaskRay added a comment to D62177: [ELF] Don't advance position in a memory region when assigning to the Dot.

gold has a different behavior from bfd here btw.

Tue, May 21, 1:11 AM · Restricted Project
MaskRay created D62177: [ELF] Don't advance position in a memory region when assigning to the Dot.
Tue, May 21, 12:47 AM · Restricted Project

Yesterday

MaskRay committed rG547e3e930cfa: [ELF] Error on relocations to local undefined symbols (authored by MaskRay).
[ELF] Error on relocations to local undefined symbols
Mon, May 20, 7:37 PM
MaskRay committed rL361213: [ELF] Error on relocations to local undefined symbols.
[ELF] Error on relocations to local undefined symbols
Mon, May 20, 7:37 PM
MaskRay committed rLLD361213: [ELF] Error on relocations to local undefined symbols.
[ELF] Error on relocations to local undefined symbols
Mon, May 20, 7:37 PM
MaskRay closed D61711: [ELF][Driver] Fix precedence of symbol ordering file and CGProfile.

The commit description of rLLD361190 does not contain Differential Revision: https://reviews.llvm.org/D61711, so the revision was not closed when you committed that...

Mon, May 20, 6:43 PM · Restricted Project, lld
MaskRay added inline comments to D61996: [llvm-objdump]Improve testing of some switches #2.
Mon, May 20, 8:48 AM · Restricted Project
MaskRay committed rG055906e1e50d: [ELF] -z combreloc: sort dynamic relocations by (!is_relative,symbol_index… (authored by MaskRay).
[ELF] -z combreloc: sort dynamic relocations by (!is_relative,symbol_index…
Mon, May 20, 8:23 AM
MaskRay added a reverting change for D61477: [ELF] -z combreloc: sort dynamic relocations by (symbol_index,r_offset): rG055906e1e50d: [ELF] -z combreloc: sort dynamic relocations by (!is_relative,symbol_index….
Mon, May 20, 8:23 AM · Restricted Project
MaskRay committed rLLD361164: [ELF] -z combreloc: sort dynamic relocations by (!is_relative,symbol_index….
[ELF] -z combreloc: sort dynamic relocations by (!is_relative,symbol_index…
Mon, May 20, 8:22 AM
MaskRay added a reverting change for D61477: [ELF] -z combreloc: sort dynamic relocations by (symbol_index,r_offset): rLLD361164: [ELF] -z combreloc: sort dynamic relocations by (!is_relative,symbol_index….
Mon, May 20, 8:22 AM · Restricted Project
MaskRay added a reverting change for D61477: [ELF] -z combreloc: sort dynamic relocations by (symbol_index,r_offset): rL361164: [ELF] -z combreloc: sort dynamic relocations by (!is_relative,symbol_index….
Mon, May 20, 8:22 AM · Restricted Project
MaskRay committed rL361164: [ELF] -z combreloc: sort dynamic relocations by (!is_relative,symbol_index….
[ELF] -z combreloc: sort dynamic relocations by (!is_relative,symbol_index…
Mon, May 20, 8:22 AM
MaskRay closed D62141: [ELF] -z combreloc: sort dynamic relocations by (!is_relative,symbol_index,r_offset).
Mon, May 20, 8:22 AM · Restricted Project
MaskRay added a comment to D62141: [ELF] -z combreloc: sort dynamic relocations by (!is_relative,symbol_index,r_offset).

FreeBSD ld.so/musl don't use DT_RELACOUNT. In glibc, glibc/sysdeps/x86_64/dl-machine.h (but not on other arch) has an assertion that the first DT_REL[A]COUNT relocations must all be relative.

Mon, May 20, 8:17 AM · Restricted Project
MaskRay added a reviewer for D62141: [ELF] -z combreloc: sort dynamic relocations by (!is_relative,symbol_index,r_offset): evgeny777.
Mon, May 20, 7:37 AM · Restricted Project
MaskRay created D62141: [ELF] -z combreloc: sort dynamic relocations by (!is_relative,symbol_index,r_offset).
Mon, May 20, 7:25 AM · Restricted Project
MaskRay added a reverting change for D61477: [ELF] -z combreloc: sort dynamic relocations by (symbol_index,r_offset): D62141: [ELF] -z combreloc: sort dynamic relocations by (!is_relative,symbol_index,r_offset).
Mon, May 20, 7:25 AM · Restricted Project
MaskRay committed rG2109572464da: [ELF] Fix getRelocTargetVA formulae of R_TLS and R_NEG_TLS (authored by MaskRay).
[ELF] Fix getRelocTargetVA formulae of R_TLS and R_NEG_TLS
Mon, May 20, 4:48 AM
MaskRay committed rL361146: [ELF] Fix getRelocTargetVA formulae of R_TLS and R_NEG_TLS.
[ELF] Fix getRelocTargetVA formulae of R_TLS and R_NEG_TLS
Mon, May 20, 4:48 AM
MaskRay committed rLLD361146: [ELF] Fix getRelocTargetVA formulae of R_TLS and R_NEG_TLS.
[ELF] Fix getRelocTargetVA formulae of R_TLS and R_NEG_TLS
Mon, May 20, 4:48 AM
MaskRay closed D62098: [ELF] Fix getRelocTargetVA formulae of R_TLS and R_NEG_TLS.
Mon, May 20, 4:48 AM · Restricted Project
MaskRay updated the diff for D62098: [ELF] Fix getRelocTargetVA formulae of R_TLS and R_NEG_TLS.

Update description

Mon, May 20, 4:42 AM · Restricted Project
MaskRay committed rG7c7425483ae6: [ELF] Error on relocations to local undefined symbols (authored by MaskRay).
[ELF] Error on relocations to local undefined symbols
Mon, May 20, 4:27 AM
MaskRay committed rL361144: [ELF] Error on relocations to local undefined symbols.
[ELF] Error on relocations to local undefined symbols
Mon, May 20, 4:23 AM
MaskRay committed rLLD361144: [ELF] Error on relocations to local undefined symbols.
[ELF] Error on relocations to local undefined symbols
Mon, May 20, 4:23 AM
MaskRay closed D61563: [ELF] Error on relocations to local undefined symbols.
Mon, May 20, 4:23 AM · Restricted Project
MaskRay updated the diff for D61563: [ELF] Error on relocations to local undefined symbols.

R_ARM_V4BX uses symbol index 0. Clarify why we check SymIndex != 0 instead of Type != Target->NoneRel

Mon, May 20, 4:16 AM · Restricted Project
MaskRay committed rG63514556c495: [MIPS] Update mips-abs-got.s to not use .reloc (authored by MaskRay).
[MIPS] Update mips-abs-got.s to not use .reloc
Mon, May 20, 4:16 AM
MaskRay committed rL361142: [MIPS] Update mips-abs-got.s to not use .reloc.
[MIPS] Update mips-abs-got.s to not use .reloc
Mon, May 20, 4:16 AM
MaskRay committed rLLD361142: [MIPS] Update mips-abs-got.s to not use .reloc.
[MIPS] Update mips-abs-got.s to not use .reloc
Mon, May 20, 4:16 AM
MaskRay committed rG68774edcd65a: Use llvm::sort. NFC (authored by MaskRay).
Use llvm::sort. NFC
Mon, May 20, 3:17 AM
MaskRay committed rL361134: Use llvm::sort. NFC.
Use llvm::sort. NFC
Mon, May 20, 3:16 AM
MaskRay updated the diff for D62106: [X86] Support -fno-plt __tls_get_addr calls.

Add a TODO

Mon, May 20, 2:16 AM · Restricted Project
MaskRay added a comment to D62106: [X86] Support -fno-plt __tls_get_addr calls.

https://ewontfix.com/18/ was enlightening. I read it two or three years ago for the first time but apparently I lacked background knowledge to understand these stuff then :) Now I understand how -fno-plt benefits people who don't care about lazy binding...

Mon, May 20, 2:00 AM · Restricted Project
MaskRay committed rG9f1a6de63114: [ELF] -z combreloc: sort dynamic relocations by (symbol_index,r_offset) (authored by MaskRay).
[ELF] -z combreloc: sort dynamic relocations by (symbol_index,r_offset)
Mon, May 20, 12:22 AM
MaskRay committed rLLD361125: [ELF] -z combreloc: sort dynamic relocations by (symbol_index,r_offset).
[ELF] -z combreloc: sort dynamic relocations by (symbol_index,r_offset)
Mon, May 20, 12:22 AM
MaskRay committed rL361125: [ELF] -z combreloc: sort dynamic relocations by (symbol_index,r_offset).
[ELF] -z combreloc: sort dynamic relocations by (symbol_index,r_offset)
Mon, May 20, 12:22 AM
MaskRay closed D61477: [ELF] -z combreloc: sort dynamic relocations by (symbol_index,r_offset).
Mon, May 20, 12:21 AM · Restricted Project
MaskRay added a comment to D62055: [ARM][AArch64] Revert Android Bionic PT_TLS overaligning hack.

I'd vote for re-submitting the original patch with a larger alignment to avoid introducing Android-specific ABI to the output, as I said in a different review thread. Is there any problem to do that?

Mon, May 20, 12:12 AM · Restricted Project

Sun, May 19

MaskRay updated the diff for D61477: [ELF] -z combreloc: sort dynamic relocations by (symbol_index,r_offset).

Inline the comparator

Sun, May 19, 8:27 PM · Restricted Project
MaskRay updated the diff for D61477: [ELF] -z combreloc: sort dynamic relocations by (symbol_index,r_offset).

Sort by (symbol_index,r_offset)

Sun, May 19, 8:15 PM · Restricted Project
MaskRay added a comment to D61477: [ELF] -z combreloc: sort dynamic relocations by (symbol_index,r_offset).

How about

return std::make_tuple(A.getSymIndex(), A.getOffset()) < std::make_tuple(B.getSymIndex(), B.getOffset());

? i.e. don't check if this is a relative relocation. In the dynamic loader, if SymIndex is 0, IMHO the dynamic relocation can only be relative (R_*_NONE doesn't make sense).

Sun, May 19, 7:54 PM · Restricted Project
MaskRay added a comment to D61477: [ELF] -z combreloc: sort dynamic relocations by (symbol_index,r_offset).

This is useful to compare the result with ld.bfd to check if we emit more or fewer relocations. (This helped D62107)

Sun, May 19, 7:43 PM · Restricted Project
MaskRay added inline comments to D62117: Make replaceSymbol a member function of Symbol..
Sun, May 19, 7:37 PM · Restricted Project
MaskRay accepted D62117: Make replaceSymbol a member function of Symbol..
Sun, May 19, 7:33 PM · Restricted Project
MaskRay committed rLLD361122: [ELF] Copy IsPreemptible in replaceSymbol().
[ELF] Copy IsPreemptible in replaceSymbol()
Sun, May 19, 7:11 PM
MaskRay committed rGa6720e740790: [ELF] Copy IsPreemptible in replaceSymbol() (authored by MaskRay).
[ELF] Copy IsPreemptible in replaceSymbol()
Sun, May 19, 7:06 PM
MaskRay committed rL361122: [ELF] Copy IsPreemptible in replaceSymbol().
[ELF] Copy IsPreemptible in replaceSymbol()
Sun, May 19, 7:05 PM
MaskRay closed D62107: [ELF] Copy IsPreemptible in replaceSymbol().
Sun, May 19, 7:05 PM · Restricted Project
MaskRay created D62107: [ELF] Copy IsPreemptible in replaceSymbol().
Sun, May 19, 9:08 AM · Restricted Project
MaskRay updated the diff for D62106: [X86] Support -fno-plt __tls_get_addr calls.

.

Sun, May 19, 2:12 AM · Restricted Project
MaskRay updated the diff for D62106: [X86] Support -fno-plt __tls_get_addr calls.

Fix markdown in the description...

Sun, May 19, 2:11 AM · Restricted Project
MaskRay created D62106: [X86] Support -fno-plt __tls_get_addr calls.
Sun, May 19, 2:11 AM · Restricted Project

Sat, May 18

MaskRay committed rGcb4b3e5cb489: [clangd] Respect WarningsAsErrors configuration for clang-tidy (authored by MaskRay).
[clangd] Respect WarningsAsErrors configuration for clang-tidy
Sat, May 18, 9:17 PM
MaskRay committed rCTE361113: [clangd] Respect WarningsAsErrors configuration for clang-tidy.
[clangd] Respect WarningsAsErrors configuration for clang-tidy
Sat, May 18, 9:16 PM
MaskRay committed rL361113: [clangd] Respect WarningsAsErrors configuration for clang-tidy.
[clangd] Respect WarningsAsErrors configuration for clang-tidy
Sat, May 18, 9:16 PM
MaskRay closed D61841: [clangd] Respect WarningsAsErrors configuration for clang-tidy.
Sat, May 18, 9:16 PM · Restricted Project, Restricted Project
MaskRay committed rGc2aded501776: [clangd] Respect clang-tidy suppression comments (authored by MaskRay).
[clangd] Respect clang-tidy suppression comments
Sat, May 18, 9:05 PM
MaskRay committed rL361112: [clangd] Respect clang-tidy suppression comments.
[clangd] Respect clang-tidy suppression comments
Sat, May 18, 9:05 PM
MaskRay committed rCTE361112: [clangd] Respect clang-tidy suppression comments.
[clangd] Respect clang-tidy suppression comments
Sat, May 18, 9:05 PM
MaskRay closed D60953: [clangd] Respect clang-tidy suppression comments.
Sat, May 18, 9:05 PM · Restricted Project, Restricted Project
MaskRay updated subscribers of D59553: [LLD][ELF][DebugInfo] llvm-symbolizer shows incorrect source line info if --gc-sections used.
Sat, May 18, 8:48 PM · lld, Restricted Project
MaskRay updated subscribers of D59553: [LLD][ELF][DebugInfo] llvm-symbolizer shows incorrect source line info if --gc-sections used.
Sat, May 18, 8:43 PM · lld, Restricted Project
MaskRay added a comment to D61117: Fix Bug 41353 - unique symbols printed as D instead of u.

BTW, I think STB_GNU_UNIQUE is a misfeature (no clear specification, only (complex) implementation is in glibc, interaction with STB_WEAK/STB_GLOBAL is unclear..).. this feature will highlight the problem :)

Sat, May 18, 8:06 PM · Restricted Project
MaskRay added inline comments to D61117: Fix Bug 41353 - unique symbols printed as D instead of u.
Sat, May 18, 5:26 PM · Restricted Project
MaskRay added inline comments to D61996: [llvm-objdump]Improve testing of some switches #2.
Sat, May 18, 3:17 AM · Restricted Project
MaskRay updated the diff for D62098: [ELF] Fix getRelocTargetVA formulae of R_TLS and R_NEG_TLS.

Reword

Sat, May 18, 2:45 AM · Restricted Project
MaskRay created D62098: [ELF] Fix getRelocTargetVA formulae of R_TLS and R_NEG_TLS.
Sat, May 18, 2:29 AM · Restricted Project

Fri, May 17

MaskRay abandoned D61931: [Driver] Use --android-tls for Android ARM/AArch64 when lld is used.

Abandon in favor of D62055

Fri, May 17, 8:34 PM · Restricted Project
MaskRay committed rGed2ad77ccb00: [ARM][AArch64] Revert Android Bionic PT_TLS overaligning hack (authored by MaskRay).
[ARM][AArch64] Revert Android Bionic PT_TLS overaligning hack
Fri, May 17, 8:14 PM
MaskRay added a reverting change for D53906: [ARM][AArch64] Increase TLS alignment to reserve space for Android's TCB: rGed2ad77ccb00: [ARM][AArch64] Revert Android Bionic PT_TLS overaligning hack.
Fri, May 17, 8:14 PM · Restricted Project
MaskRay added a reverting change for D53906: [ARM][AArch64] Increase TLS alignment to reserve space for Android's TCB: rLLD361090: [ARM][AArch64] Revert Android Bionic PT_TLS overaligning hack.
Fri, May 17, 8:14 PM · Restricted Project
MaskRay committed rLLD361090: [ARM][AArch64] Revert Android Bionic PT_TLS overaligning hack.
[ARM][AArch64] Revert Android Bionic PT_TLS overaligning hack
Fri, May 17, 8:14 PM
MaskRay committed rL361090: [ARM][AArch64] Revert Android Bionic PT_TLS overaligning hack.
[ARM][AArch64] Revert Android Bionic PT_TLS overaligning hack
Fri, May 17, 8:14 PM
MaskRay added a reverting change for D53906: [ARM][AArch64] Increase TLS alignment to reserve space for Android's TCB: rL361090: [ARM][AArch64] Revert Android Bionic PT_TLS overaligning hack.
Fri, May 17, 8:14 PM · Restricted Project
MaskRay closed D62055: [ARM][AArch64] Revert Android Bionic PT_TLS overaligning hack.
Fri, May 17, 8:14 PM · Restricted Project
MaskRay added a comment to D62055: [ARM][AArch64] Revert Android Bionic PT_TLS overaligning hack.

Just re-confirmed that Ryan is ok to revert D53906! I'll go ahead.

Fri, May 17, 8:10 PM · Restricted Project
MaskRay added a comment to D62055: [ARM][AArch64] Revert Android Bionic PT_TLS overaligning hack.

Now that (a) we get .reloc support (D61973 D61992), (b) R_*_NONE on Elf*_Rel targets are compatible with ld.lld -r D62052 (c) p_memsz of PT_TLS is no longer aligned (D62059; Ryan had noticed the difference in https://reviews.llvm.org/D53906#1326683 but it had not been implemented... D62059 was tricky as it broke x86-{32,64} but I think they are good now), the workaround in crtbegin_{dynamic_static}.o should be feasible and it should have very little overhead.

Fri, May 17, 7:45 PM · Restricted Project
MaskRay updated the diff for D62055: [ARM][AArch64] Revert Android Bionic PT_TLS overaligning hack.

Rebase after D62059

Fri, May 17, 7:26 PM · Restricted Project
MaskRay added a comment to D62059: [ELF] Don't align PT_TLS's p_memsz.

I had suggested doing something like this at https://reviews.llvm.org/D53906#1326683. I like the idea, but I think we need to fix up the variant 2 case in getTlsTpOffset:

case EM_386:
case EM_X86_64:
  // Variant 2. The TLS segment is located just before the thread pointer.
  return -Out::TlsPhdr->p_memsz;

e.g. If the TLS segment is 4-bytes in size with 8-byte alignment (and assuming p_vaddr % p_align == 0), then the segment will be located at TP-8 on variant 2 targets, not TP-4.

I haven't tested this, but something like this would probably work:

return -alignTo(Out::TlsPhdr->p_memsz, Out::TlsPhdr->p_align);

Otherwise, lld and the loader will disagree about the location of TLS symbols.

Thanks for pointing this out! I pushed a quick fix. To be more precise, it should be:

diff --git c/ELF/InputSection.cpp w/ELF/InputSection.cpp
index 72a2c298d..2eb9a0452 100644
--- c/ELF/InputSection.cpp
+++ w/ELF/InputSection.cpp
@@ -594,11 +594,13 @@ static int64_t getTlsTpOffset() {
     // NB: While the ARM/AArch64 ABI formally has a 2-word TCB size, lld
     // effectively increases the TCB size to 8 words for Android compatibility.
     // It accomplishes this by increasing the segment's alignment.
-    return alignTo(Config->Wordsize * 2, Out::TlsPhdr->p_align);
+    return alignTo(Config->Wordsize * 2, Out::TlsPhdr->p_align, Out::TlsPhdr->FirstSec->Addr);
   case EM_386:
   case EM_X86_64:
     // Variant 2. The TLS segment is located just before the thread pointer.
-    return -alignTo(Out::TlsPhdr->p_memsz, Out::TlsPhdr->p_align);
+    return -(Out::TlsPhdr->p_memsz +
+             (-Out::TlsPhdr->p_memsz - Out::TlsPhdr->FirstSec->Addr &
+              Out::TlsPhdr->p_align - 1));
   case EM_PPC64:
     // The thread pointer points to a fixed offset from the start of the
     // executable's TLS segment. An offset of 0x7000 allows a signed 16-bit

The formulae are complex because they take p_vaddr%p_align!=0 into account... I didn't do that in the commit because I cannot think of a way to make p_vaddr%p_align!=0 (after we remove the ARM/AArch64 overalignment hack).

Fri, May 17, 7:00 PM · Restricted Project
MaskRay committed rG898896836dd1: [ELF][X86] Fix R_RELAX_TLS_GD_TO_LE_NEG and R_NEG_TLS after D62059 (authored by MaskRay).
[ELF][X86] Fix R_RELAX_TLS_GD_TO_LE_NEG and R_NEG_TLS after D62059
Fri, May 17, 6:58 PM
MaskRay committed rLLD361088: [ELF][X86] Fix R_RELAX_TLS_GD_TO_LE_NEG and R_NEG_TLS after D62059.
[ELF][X86] Fix R_RELAX_TLS_GD_TO_LE_NEG and R_NEG_TLS after D62059
Fri, May 17, 6:58 PM