]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - test/CodeGen/Hexagon/tls_static.ll
Vendor import of llvm trunk r290819:
[FreeBSD/FreeBSD.git] / test / CodeGen / Hexagon / tls_static.ll
1 ; RUN: llc -O0 -mtriple=hexagon-- -relocation-model=static < %s | FileCheck %s
2
3 @dst_le = thread_local global i32 0, align 4
4 @src_le = thread_local global i32 0, align 4
5
6 ; CHECK-LABEL: test_local_exec
7 ; CHECK-DAG:   = ##src_le@TPREL
8 ; CHECK-DAG:   = ##dst_le@TPREL
9 define i32 @test_local_exec() nounwind {
10 entry:
11   %0 = load i32, i32* @src_le, align 4
12   store i32 %0, i32* @dst_le, align 4
13   ret i32 0
14 }
15
16 @dst_ie = external thread_local global i32
17 @src_ie = external thread_local global i32
18
19 ; CHECK-LABEL: test_initial_exec:
20 ; CHECK-DAG:   = memw(##src_ie@IE)
21 ; CHECK-DAG:   = memw(##dst_ie@IE)
22 define i32 @test_initial_exec() nounwind {
23 entry:
24   %0 = load i32, i32* @src_ie, align 4
25   store i32 %0, i32* @dst_ie, align 4
26   ret i32 0
27 }
28