[binutils-gdb] or1k: Mark undefined TLS symbol as STT_TLS

H.J. Lu hjl@sourceware.org
Sun Jan 11 00:34:49 GMT 2026


https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=d320649e1805e5330a09b103d4ca890a12815f56

commit d320649e1805e5330a09b103d4ca890a12815f56
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Tue Nov 18 12:09:54 2025 +0800

    or1k: Mark undefined TLS symbol as STT_TLS
    
    Update or1k_apply_fix to handle all TLS relocations.
    
            PR gas/33426
            * config/tc-or1k.c (or1k_apply_fix): Handle all TLS relocations.
    
    Signed-off-by: H.J. Lu <hjl.tools@gmail.com>

Diff:
---
 gas/config/tc-or1k.c | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/gas/config/tc-or1k.c b/gas/config/tc-or1k.c
index f5a20b94fa7..798cf6d6acc 100644
--- a/gas/config/tc-or1k.c
+++ b/gas/config/tc-or1k.c
@@ -354,22 +354,28 @@ or1k_apply_fix (struct fix *f, valueT *t, segT s)
 
   switch (f->fx_r_type)
     {
+    case BFD_RELOC_OR1K_TLS_DTPMOD:
+    case BFD_RELOC_OR1K_TLS_DTPOFF:
     case BFD_RELOC_OR1K_TLS_GD_HI16:
+    case BFD_RELOC_OR1K_TLS_GD_LO13:
     case BFD_RELOC_OR1K_TLS_GD_LO16:
     case BFD_RELOC_OR1K_TLS_GD_PG21:
-    case BFD_RELOC_OR1K_TLS_GD_LO13:
+    case BFD_RELOC_OR1K_TLS_IE_AHI16:
+    case BFD_RELOC_OR1K_TLS_IE_HI16:
+    case BFD_RELOC_OR1K_TLS_IE_LO13:
+    case BFD_RELOC_OR1K_TLS_IE_LO16:
+    case BFD_RELOC_OR1K_TLS_IE_PG21:
     case BFD_RELOC_OR1K_TLS_LDM_HI16:
+    case BFD_RELOC_OR1K_TLS_LDM_LO13:
     case BFD_RELOC_OR1K_TLS_LDM_LO16:
     case BFD_RELOC_OR1K_TLS_LDM_PG21:
-    case BFD_RELOC_OR1K_TLS_LDM_LO13:
     case BFD_RELOC_OR1K_TLS_LDO_HI16:
     case BFD_RELOC_OR1K_TLS_LDO_LO16:
-    case BFD_RELOC_OR1K_TLS_IE_HI16:
-    case BFD_RELOC_OR1K_TLS_IE_LO16:
-    case BFD_RELOC_OR1K_TLS_IE_PG21:
-    case BFD_RELOC_OR1K_TLS_IE_LO13:
+    case BFD_RELOC_OR1K_TLS_LE_AHI16:
     case BFD_RELOC_OR1K_TLS_LE_HI16:
     case BFD_RELOC_OR1K_TLS_LE_LO16:
+    case BFD_RELOC_OR1K_TLS_LE_SLO16:
+    case BFD_RELOC_OR1K_TLS_TPOFF:
       S_SET_THREAD_LOCAL (f->fx_addsy);
       break;
     default:


More information about the Binutils-cvs mailing list