Lines Matching refs:T2
1 ; RUN: llc -mtriple=thumbv7s-apple-ios7.0 -o - -fast-isel %s | FileCheck %s --check-prefix=T2-MOVT-…
2 ; RUN: llc -mtriple=thumbv7s-apple-ios7.0 -o - %s -mattr=+no-movt | FileCheck %s --check-prefix=T2-…
3 …thumbv7s-apple-ios7.0 -o - %s -relocation-model=static | FileCheck %s --check-prefix=T2-MOVT-STATIC
4 …ios7.0 -o - %s -mattr=+no-movt -relocation-model=static | FileCheck %s --check-prefix=T2-LIT-STATIC
17 ; T2-MOVT-PIC-LABEL: test_local_tls:
18 ; T2-MOVT-PIC: movw r0, :lower16:(_local_tls_var-([[PCREL_LOC:LPC[0-9]+_[0-9]+]]+4))
19 ; T2-MOVT-PIC: movt r0, :upper16:(_local_tls_var-([[PCREL_LOC]]+4))
20 ; T2-MOVT-PIC: [[PCREL_LOC]]:
21 ; T2-MOVT-PIC-NEXT: add r0, pc
22 ; T2-MOVT-PIC: ldr [[TLV_GET_ADDR:r[0-9]+]], [r0]
23 ; T2-MOVT-PIC: blx [[TLV_GET_ADDR]]
24 ; T2-MOVT-PIC: ldr r0, [r0]
26 ; T2-LIT-PIC-LABEL: test_local_tls:
27 ; T2-LIT-PIC: ldr r0, [[LOCAL_VAR_ADDR:LCPI[0-9]+_[0-9]+]]
28 ; T2-LIT-PIC: [[PCREL_LOC:LPC[0-9]+_[0-9]+]]:
29 ; T2-LIT-PIC-NEXT: add r0, pc
30 ; T2-LIT-PIC: ldr [[TLV_GET_ADDR:r[0-9]+]], [r0]
31 ; T2-LIT-PIC: blx [[TLV_GET_ADDR]]
32 ; T2-LIT-PIC: ldr r0, [r0]
33 ; T2-LIT-PIC: [[LOCAL_VAR_ADDR]]:
34 ; T2-LIT-PIC-NEXT: .long _local_tls_var-([[PCREL_LOC]]+4)
36 ; T2-MOVT-STATIC-LABEL: test_local_tls:
37 ; T2-MOVT-STATIC: movw r0, :lower16:_local_tls_var
38 ; T2-MOVT-STATIC: movt r0, :upper16:_local_tls_var
39 ; T2-MOVT-STATIC: ldr [[TLV_GET_ADDR:r[0-9]+]], [r0]
40 ; T2-MOVT-STATIC: blx [[TLV_GET_ADDR]]
41 ; T2-MOVT-STATIC: ldr r0, [r0]
43 ; T2-LIT-STATIC-LABEL: test_local_tls:
44 ; T2-LIT-STATIC: ldr r0, [[LOCAL_VAR_ADDR:LCPI[0-9]+_[0-9]+]]
45 ; T2-LIT-STATIC: ldr [[TLV_GET_ADDR:r[0-9]+]], [r0]
46 ; T2-LIT-STATIC: blx [[TLV_GET_ADDR]]
47 ; T2-LIT-STATIC: ldr r0, [r0]
48 ; T2-LIT-STATIC: [[LOCAL_VAR_ADDR]]:
49 ; T2-LIT-STATIC-NEXT: .long _local_tls_var
94 ; T2-MOVT-PIC-LABEL: test_external_tls:
95 ; T2-MOVT-PIC: movw r[[EXTGOT:[0-9]+]], :lower16:(L_external_tls_var$non_lazy_ptr-([[PCREL_LOC:LPC[…
96 ; T2-MOVT-PIC: movt r[[EXTGOT]], :upper16:(L_external_tls_var$non_lazy_ptr-([[PCREL_LOC]]+4))
97 ; T2-MOVT-PIC: [[PCREL_LOC]]:
98 ; T2-MOVT-PIC-NEXT: add r[[EXTGOT]], pc
99 ; T2-MOVT-PIC: ldr r0, [r[[EXTGOT]]]
100 ; T2-MOVT-PIC: ldr [[TLV_GET_ADDR:r[0-9]+]], [r0]
101 ; T2-MOVT-PIC: blx [[TLV_GET_ADDR]]
102 ; T2-MOVT-PIC: ldr r0, [r0]
104 ; T2-LIT-PIC-LABEL: test_external_tls:
105 ; T2-LIT-PIC: ldr r[[EXTGOT:[0-9]+]], [[EXTERNAL_VAR_ADDR:LCPI[0-9]+_[0-9]+]]
106 ; T2-LIT-PIC: [[PCREL_LOC:LPC[0-9]+_[0-9]+]]:
107 ; T2-LIT-PIC-NEXT: add r[[EXTGOT]], pc
108 ; T2-LIT-PIC: ldr r0, [r[[EXTGOT]]]
109 ; T2-LIT-PIC: ldr [[TLV_GET_ADDR:r[0-9]+]], [r0]
110 ; T2-LIT-PIC: blx [[TLV_GET_ADDR]]
111 ; T2-LIT-PIC: ldr r0, [r0]
112 ; T2-LIT-PIC: [[EXTERNAL_VAR_ADDR]]:
113 ; T2-LIT-PIC-NEXT: .long L_external_tls_var$non_lazy_ptr-([[PCREL_LOC]]+4)
115 ; T2-MOVT-STATIC-LABEL: test_external_tls:
116 ; T2-MOVT-STATIC: movw r0, :lower16:_external_tls_var
117 ; T2-MOVT-STATIC: movt r0, :upper16:_external_tls_var
118 ; T2-MOVT-STATIC: ldr [[TLV_GET_ADDR:r[0-9]+]], [r0]
119 ; T2-MOVT-STATIC: blx [[TLV_GET_ADDR]]
120 ; T2-MOVT-STATIC: ldr r0, [r0]
122 ; T2-LIT-STATIC-LABEL: test_external_tls:
123 ; T2-LIT-STATIC: ldr r0, [[EXTERNAL_VAR_ADDR:LCPI[0-9]+_[0-9]+]]
124 ; T2-LIT-STATIC: ldr [[TLV_GET_ADDR:r[0-9]+]], [r0]
125 ; T2-LIT-STATIC: blx [[TLV_GET_ADDR]]
126 ; T2-LIT-STATIC: ldr r0, [r0]
127 ; T2-LIT-STATIC: [[EXTERNAL_VAR_ADDR]]:
128 ; T2-LIT-STATIC-NEXT: .long _external_tls_var
175 ; T2-MOVT-PIC: .section __DATA,__thread_ptr,thread_local_variable_pointers
176 ; T2-MOVT-PIC: .p2align 2
177 ; T2-MOVT-PIC: L_external_tls_var$non_lazy_ptr:
178 ; T2-MOVT-PIC: .indirect_symbol _external_tls_var
179 ; T2-MOVT-PIC: .long 0
180 ; T2-MOVT-PIC: L_hidden_external_tls_var$non_lazy_ptr:
181 ; T2-MOVT-PIC: .indirect_symbol _hidden_external_tls_var
182 ; T2-MOVT-PIC: .long 0