]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commitdiff
or1k: Mark undefined TLS symbol as STT_TLS
authorH.J. Lu <hjl.tools@gmail.com>
Tue, 18 Nov 2025 04:09:54 +0000 (12:09 +0800)
committerH.J. Lu <hjl.tools@gmail.com>
Sun, 11 Jan 2026 00:30:44 +0000 (08:30 +0800)
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>
gas/config/tc-or1k.c

index f5a20b94fa7278d5e7464cba8f8c22a7dc820a02..798cf6d6acc4b54da38d43215280b94e2acce0e2 100644 (file)
@@ -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: