blob: b8a0657c906917a8484512b89d126c2337362007 [file] [log] [blame]
Dan Gohmanda594cf2009-09-09 00:09:15 +00001; RUN: llc < %s -mtriple=thumbv7-linux-gnueabi | FileCheck %s -check-prefix=CHECK-NOT-PIC
2; RUN: llc < %s -mtriple=thumbv7-linux-gnueabi -relocation-model=pic | FileCheck %s -check-prefix=CHECK-PIC
David Goodwin5811e5c2009-07-01 00:01:13 +00003
4@i = external thread_local global i32 ; <i32*> [#uses=2]
5
6define i32 @f() {
7entry:
Evan Chengf7b61a12009-08-14 18:31:44 +00008; CHECK-NOT-PIC: f:
9; CHECK-NOT-PIC: add r0, pc
10; CHECK-NOT-PIC: ldr r1, [r0]
11; CHECK-NOT-PIC: i(gottpoff)
12
13; CHECK-PIC: f:
14; CHECK-PIC: bl __tls_get_addr(PLT)
David Goodwin5811e5c2009-07-01 00:01:13 +000015 %tmp1 = load i32* @i ; <i32> [#uses=1]
16 ret i32 %tmp1
17}
18
19define i32* @g() {
20entry:
Evan Chengf7b61a12009-08-14 18:31:44 +000021; CHECK-NOT-PIC: g:
22; CHECK-NOT-PIC: add r0, pc
23; CHECK-NOT-PIC: ldr r1, [r0]
24; CHECK-NOT-PIC: i(gottpoff)
25
26; CHECK-PIC: g:
27; CHECK-PIC: bl __tls_get_addr(PLT)
David Goodwin5811e5c2009-07-01 00:01:13 +000028 ret i32* @i
29}