1// REQUIRES: arm
2// RUN: llvm-mc -filetype=obj -triple=armv7a-none-linux-gnueabi %p/Inputs/arm-tls-get-addr.s -o %t1.o
3// RUN: ld.lld %t1.o --shared -soname=t1.so -o %t1.so
4// RUN: llvm-mc %s -o %t.o -filetype=obj -triple=armv7a-linux-gnueabi
5// RUN: ld.lld %t1.so %t.o -o %t
6// RUN: llvm-objdump -s %t | FileCheck %s
7
8 .global __tls_get_addr
9 .text
10 .p2align  2
11 .global _start
12 .syntax unified
13 .arm
14 .type   _start, %function
15_start:
16.L0:
17 bl __tls_get_addr
18
19 .word   x(tlsldm) + (. - .L0 - 8)
20 .word   x(tlsldo)
21 .word   y(tlsldo)
22
23 .section        .tbss,"awT",%nobits
24 .p2align  2
25 .type   y, %object
26y:
27 .space  4
28 .section        .tdata,"awT",%progbits
29 .p2align  2
30 .type   x, %object
31x:
32 .word   10
33
34// CHECK: Contents of section .got:
35// CHECK-NEXT:  3027c 01000000 00000000
36