1 // RUN
: llvm-mc
-triple
=aarch64-none-linux-gnu
-filetype
=obj
-mattr
=+fp-armv8
< %s | llvm-objdump
-r
- | FileCheck
%s
5 .globl test_inline_modifier_L
6 .type test_inline_modifier_L,@function
7 test_inline_modifier_L
: // @test_inline_modifier_L
10 add x0
, x0
, #:lo12:var_simple
13 ldr x0
, [x0
, #:got_lo12:var_got]
16 add x0
, x0
, #:tlsdesc_lo12:var_tlsgd
19 add x0
, x0
, #:dtprel_lo12:var_tlsld
22 ldr x0
, [x0
, #:gottprel_lo12:var_tlsie]
25 add x0
, x0
, #:tprel_lo12:var_tlsle
29 .size test_inline_modifier_L, .Ltmp0-test_inline_modifier_L
31 // CHECK
: R_AARCH64_ADD_ABS_LO12_NC var_simple
32 // CHECK
: R_AARCH64_LD64_GOT_LO12_NC var_got
33 // CHECK
: R_AARCH64_TLSDESC_ADD_LO12 var_tlsgd
34 // CHECK
: R_AARCH64_TLSLD_ADD_DTPREL_LO12 var_tlsld
35 // CHECK
: R_AARCH64_TLSIE_LD64_GOTTPREL_LO12_NC var_tlsie
36 // CHECK
: R_AARCH64_TLSLE_ADD_TPREL_LO12 var_tlsle
38 .globl test_inline_modifier_G
39 .type test_inline_modifier_G,@function
40 test_inline_modifier_G
: // @test_inline_modifier_G
43 add x0
, x0
, #:dtprel_hi12:var_tlsld, lsl #12
46 add x0
, x0
, #:tprel_hi12:var_tlsle, lsl #12
50 .size test_inline_modifier_G, .Ltmp1-test_inline_modifier_G
52 // CHECK
: R_AARCH64_TLSLD_ADD_DTPREL_HI12 var_tlsld
53 // CHECK
: R_AARCH64_TLSLE_ADD_TPREL_HI12 var_tlsle
55 .globl test_inline_modifier_A
56 .type test_inline_modifier_A,@function
57 test_inline_modifier_A
: // @test_inline_modifier_A
66 adrp x0
, :tlsdesc
:var_tlsgd
69 adrp x0
, :gottprel
:var_tlsie
76 .size test_inline_modifier_A, .Ltmp2-test_inline_modifier_A
77 // CHECK
: R_AARCH64_ADR_PREL_PG_HI21 var_simple
78 // CHECK
: R_AARCH64_ADR_GOT_PAGE var_got
79 // CHECK
: R_AARCH64_TLSDESC_ADR_PAGE21 var_tlsgd
80 // CHECK
: R_AARCH64_TLSIE_ADR_GOTTPREL_PAGE21 var_tlsie
81 // CHECK
: R_AARCH64_GOT_LD_PREL19 var_got
83 .globl test_inline_modifier_wx
84 .type test_inline_modifier_wx,@function
85 test_inline_modifier_wx
: // @test_inline_modifier_wx
117 .size test_inline_modifier_wx, .Ltmp3-test_inline_modifier_wx
119 .globl test_inline_modifier_bhsdq
120 .type test_inline_modifier_bhsdq,@function
121 test_inline_modifier_bhsdq
: // @test_inline_modifier_bhsdq
155 .size test_inline_modifier_bhsdq, .Ltmp4-test_inline_modifier_bhsdq
157 .globl test_inline_modifier_c
158 .type test_inline_modifier_c,@function
159 test_inline_modifier_c
: // @test_inline_modifier_c
166 .size test_inline_modifier_c, .Ltmp5-test_inline_modifier_c
168 .hidden var_simple // @var_simple
169 .type var_simple,@object
177 .type var_got,@object // @var_got
184 .type var_tlsgd,@object // @var_tlsgd
185 .section .tbss,"awT",@nobits
192 .type var_tlsld,@object // @var_tlsld
199 .type var_tlsie,@object // @var_tlsie
206 .type var_tlsle,@object // @var_tlsle