• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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
8define 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
14entry:
15	%tmp1 = load i32, i32* @i		; <i32> [#uses=1]
16	ret i32 %tmp1
17}
18
19define 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
25entry:
26	ret i32* @i
27}
28