1 ; RUN: llc < %s -march=arm -mtriple=arm-linux-gnueabi \ 2 ; RUN: | FileCheck %s -check-prefix=CHECK-NONPIC 3 ; RUN: llc < %s -march=arm -mtriple=arm-linux-gnueabi \ 4 ; RUN: -relocation-model=pic | FileCheck %s -check-prefix=CHECK-PIC 5 6 @i = external thread_local global i32 ; <i32*> [#uses=2] 7 8 define i32 @f() { 9 ; CHECK-NONPIC-LABEL: f: 10 ; CHECK-NONPIC: ldr {{r.}}, [pc, {{r.}}] 11 ; CHECK-NONPIC: i(gottpoff) 12 ; CHECK-PIC-LABEL: f: 13 ; CHECK-PIC: __tls_get_addr 14 entry: 15 %tmp1 = load i32* @i ; <i32> [#uses=1] 16 ret i32 %tmp1 17 } 18 19 define i32* @g() { 20 ; CHECK-NONPIC-LABEL: g: 21 ; CHECK-NONPIC: ldr {{r.}}, [pc, {{r.}}] 22 ; CHECK-NONPIC: i(gottpoff) 23 ; CHECK-PIC-LABEL: g: 24 ; CHECK-PIC: __tls_get_addr 25 entry: 26 ret i32* @i 27 } 28