Home | History | Annotate | Download | only in Mips
      1 ; RUN: llc -filetype=obj -mtriple mipsel-unknown-linux %s -o - | llvm-readobj -r | FileCheck %s
      2 
      3 ; Check that the appropriate relocations were created.
      4 
      5 ; CHECK: Relocations [
      6 ; CHECK:   Section (2) .rel.text {
      7 ; CHECK:     R_MIPS_TLS_LDM
      8 ; CHECK:     R_MIPS_TLS_DTPREL_HI16
      9 ; CHECK:     R_MIPS_TLS_DTPREL_LO16
     10 ; CHECK:   }
     11 ; CHECK: ]
     12 
     13 @t1 = thread_local global i32 0, align 4
     14 
     15 define i32 @f1() nounwind {
     16 entry:
     17   %tmp = load i32* @t1, align 4
     18   ret i32 %tmp
     19 
     20 }
     21 
     22 
     23 @t2 = external thread_local global i32
     24 
     25 define i32 @f2() nounwind {
     26 entry:
     27   %tmp = load i32* @t2, align 4
     28   ret i32 %tmp
     29 
     30 }
     31 
     32 @f3.i = internal thread_local unnamed_addr global i32 1, align 4
     33 
     34 define i32 @f3() nounwind {
     35 entry:
     36   %0 = load i32* @f3.i, align 4
     37   %inc = add nsw i32 %0, 1
     38   store i32 %inc, i32* @f3.i, align 4
     39   ret i32 %inc
     40 }
     41