[llvm] d6dc74e - [LoongArch] Fix the type of tls-le symbols (#132324)

via llvm-commits llvm-commits at lists.llvm.org
Fri Mar 21 01:05:49 PDT 2025


Author: ZhaoQi
Date: 2025-03-21T16:05:45+08:00
New Revision: d6dc74e19f5cdb6995b13329480e330aff113f96

URL: https://github.com/llvm/llvm-project/commit/d6dc74e19f5cdb6995b13329480e330aff113f96
DIFF: https://github.com/llvm/llvm-project/commit/d6dc74e19f5cdb6995b13329480e330aff113f96.diff

LOG: [LoongArch] Fix the type of tls-le symbols (#132324)

Added: 
    

Modified: 
    llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchMCExpr.cpp
    llvm/test/CodeGen/LoongArch/fix-tle-le-sym-type.ll

Removed: 
    


################################################################################
diff  --git a/llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchMCExpr.cpp b/llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchMCExpr.cpp
index 64774243b85e5..6ad516097dc61 100644
--- a/llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchMCExpr.cpp
+++ b/llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchMCExpr.cpp
@@ -272,6 +272,7 @@ void LoongArchMCExpr::fixELFSymbolsInTLSFixups(MCAssembler &Asm) const {
   case VK_TLS_GD_HI20:
   case VK_TLS_DESC_PC_HI20:
   case VK_TLS_DESC_HI20:
+  case VK_TLS_LE_HI20_R:
   case VK_TLS_LD_PCREL20_S2:
   case VK_TLS_GD_PCREL20_S2:
   case VK_TLS_DESC_PCREL20_S2:

diff  --git a/llvm/test/CodeGen/LoongArch/fix-tle-le-sym-type.ll b/llvm/test/CodeGen/LoongArch/fix-tle-le-sym-type.ll
index fe5f2195f0dc7..d39454a51a445 100644
--- a/llvm/test/CodeGen/LoongArch/fix-tle-le-sym-type.ll
+++ b/llvm/test/CodeGen/LoongArch/fix-tle-le-sym-type.ll
@@ -5,12 +5,12 @@
 ; RUN: llvm-readelf -s %t-la64 | FileCheck %s --check-prefix=LA64
 
 ; LA32:      Symbol table '.symtab' contains [[#]] entries:
-; LA32-NEXT:    Num:    Value  Size Type    Bind   Vis      Ndx Name
-; LA32:              00000000     0 NOTYPE  GLOBAL DEFAULT  UND tls_sym
+; LA32-NEXT:    Num:    Value  Size Type  Bind   Vis      Ndx Name
+; LA32:              00000000     0 TLS   GLOBAL DEFAULT  UND tls_sym
 
 ; LA64:      Symbol table '.symtab' contains [[#]] entries:
-; LA64-NEXT:    Num:    Value          Size Type    Bind   Vis      Ndx Name
-; LA64:              0000000000000000     0 NOTYPE  GLOBAL DEFAULT  UND tls_sym
+; LA64-NEXT:    Num:    Value          Size Type  Bind   Vis      Ndx Name
+; LA64:              0000000000000000     0 TLS   GLOBAL DEFAULT  UND tls_sym
 
 @tls_sym = external thread_local(localexec) global i32
 


        


More information about the llvm-commits mailing list