xref: /aosp_15_r20/external/llvm/test/MC/ARM/big-endian-arm-fixup.s (revision 9880d6810fe72a1726cb53787c6711e909410d58)
1*9880d681SAndroid Build Coastguard Worker// RUN: llvm-mc -triple=armeb-eabi -mattr v7,vfp2 -filetype=obj < %s | llvm-objdump -s - | FileCheck %s
2*9880d681SAndroid Build Coastguard Worker
3*9880d681SAndroid Build Coastguard Worker	.syntax unified
4*9880d681SAndroid Build Coastguard Worker	.text
5*9880d681SAndroid Build Coastguard Worker	.align	2
6*9880d681SAndroid Build Coastguard Worker	.code 32
7*9880d681SAndroid Build Coastguard Worker
8*9880d681SAndroid Build Coastguard Worker@ARM::fixup_arm_condbl
9*9880d681SAndroid Build Coastguard Worker.section s_condbl,"ax",%progbits
10*9880d681SAndroid Build Coastguard Worker// CHECK-LABEL: Contents of section s_condbl
11*9880d681SAndroid Build Coastguard Worker// CHECK: 0000 0b000002
12*9880d681SAndroid Build Coastguard Worker 	bleq condbl_label+16
13*9880d681SAndroid Build Coastguard Workercondbl_label:
14*9880d681SAndroid Build Coastguard Worker
15*9880d681SAndroid Build Coastguard Worker@ARM::fixup_arm_uncondbl
16*9880d681SAndroid Build Coastguard Worker.section s_uncondbl,"ax",%progbits
17*9880d681SAndroid Build Coastguard Worker// CHECK-LABEL: Contents of section s_uncondbl
18*9880d681SAndroid Build Coastguard Worker// CHECK: 0000 eb000002
19*9880d681SAndroid Build Coastguard Worker 	bl uncond_label+16
20*9880d681SAndroid Build Coastguard Workeruncond_label:
21*9880d681SAndroid Build Coastguard Worker
22*9880d681SAndroid Build Coastguard Worker@ARM::fixup_arm_blx
23*9880d681SAndroid Build Coastguard Worker.section s_blx,"ax",%progbits
24*9880d681SAndroid Build Coastguard Worker// CHECK-LABEL: Contents of section s_blx
25*9880d681SAndroid Build Coastguard Worker// CHECK: 0000 fa000002
26*9880d681SAndroid Build Coastguard Worker 	blx blx_label+16
27*9880d681SAndroid Build Coastguard Workerblx_label:
28*9880d681SAndroid Build Coastguard Worker
29*9880d681SAndroid Build Coastguard Worker@ARM::fixup_arm_uncondbranch
30*9880d681SAndroid Build Coastguard Worker.section s_uncondbranch,"ax",%progbits
31*9880d681SAndroid Build Coastguard Worker// CHECK-LABEL: Contents of section s_uncondbranch
32*9880d681SAndroid Build Coastguard Worker// CHECK: 0000 ea000003
33*9880d681SAndroid Build Coastguard Worker 	b uncondbranch_label+16
34*9880d681SAndroid Build Coastguard Workeruncondbranch_label:
35*9880d681SAndroid Build Coastguard Worker
36*9880d681SAndroid Build Coastguard Worker@ARM::fixup_arm_condbranch
37*9880d681SAndroid Build Coastguard Worker.section s_condbranch,"ax",%progbits
38*9880d681SAndroid Build Coastguard Worker// CHECK-LABEL: Contents of section s_condbranch
39*9880d681SAndroid Build Coastguard Worker// CHECK: 0000 0a000003
40*9880d681SAndroid Build Coastguard Worker 	beq condbranch_label+16
41*9880d681SAndroid Build Coastguard Workercondbranch_label:
42*9880d681SAndroid Build Coastguard Worker
43*9880d681SAndroid Build Coastguard Worker@ARM::fixup_arm_pcrel_10
44*9880d681SAndroid Build Coastguard Worker.section s_arm_pcrel_10,"ax",%progbits
45*9880d681SAndroid Build Coastguard Worker// CHECK-LABEL: Contents of section s_arm_pcrel_10
46*9880d681SAndroid Build Coastguard Worker// CHECK: 0000 ed9f0b03
47*9880d681SAndroid Build Coastguard Worker 	vldr d0, arm_pcrel_10_label+16
48*9880d681SAndroid Build Coastguard Workerarm_pcrel_10_label:
49*9880d681SAndroid Build Coastguard Worker
50*9880d681SAndroid Build Coastguard Worker@ARM::fixup_arm_ldst_pcrel_12
51*9880d681SAndroid Build Coastguard Worker.section s_arm_ldst_pcrel_12,"ax",%progbits
52*9880d681SAndroid Build Coastguard Worker// CHECK-LABEL: Contents of section s_arm_ldst_pcrel_12
53*9880d681SAndroid Build Coastguard Worker// CHECK: 0000 e59f000c
54*9880d681SAndroid Build Coastguard Worker 	ldr r0, arm_ldst_pcrel_12_label+16
55*9880d681SAndroid Build Coastguard Workerarm_ldst_pcrel_12_label:
56*9880d681SAndroid Build Coastguard Worker
57*9880d681SAndroid Build Coastguard Worker@ARM::fixup_arm_adr_pcrel_12
58*9880d681SAndroid Build Coastguard Worker.section s_arm_adr_pcrel_12,"ax",%progbits
59*9880d681SAndroid Build Coastguard Worker// CHECK-LABEL: Contents of section s_arm_adr_pcrel_12
60*9880d681SAndroid Build Coastguard Worker// CHECK: 0000 e28f0010
61*9880d681SAndroid Build Coastguard Worker	adr	r0, arm_adr_pcrel_12_label+20
62*9880d681SAndroid Build Coastguard Workerarm_adr_pcrel_12_label:
63*9880d681SAndroid Build Coastguard Worker
64*9880d681SAndroid Build Coastguard Worker@ARM::fixup_arm_adr_pcrel_10_unscaled
65*9880d681SAndroid Build Coastguard Worker.section s_arm_adr_pcrel_10_unscaled,"ax",%progbits
66*9880d681SAndroid Build Coastguard Worker// CHECK-LABEL: Contents of section s_arm_adr_pcrel_10_unscaled
67*9880d681SAndroid Build Coastguard Worker// CHECK: 0000 e1cf01d4
68*9880d681SAndroid Build Coastguard Worker	ldrd	r0, r1, arm_adr_pcrel_10_unscaled_label+24
69*9880d681SAndroid Build Coastguard Workerarm_adr_pcrel_10_unscaled_label:
70*9880d681SAndroid Build Coastguard Worker
71*9880d681SAndroid Build Coastguard Worker@ARM::fixup_arm_movw_lo16
72*9880d681SAndroid Build Coastguard Worker.section s_movw,"ax",%progbits
73*9880d681SAndroid Build Coastguard Worker// CHECK-LABEL: Contents of section s_movw
74*9880d681SAndroid Build Coastguard Worker// CHECK: 0000 e3000008
75*9880d681SAndroid Build Coastguard Worker	movw	r0, :lower16:(some_label+8)
76*9880d681SAndroid Build Coastguard Worker
77*9880d681SAndroid Build Coastguard Worker@ARM::fixup_arm_movt_hi16
78*9880d681SAndroid Build Coastguard Worker.section s_movt,"ax",%progbits
79*9880d681SAndroid Build Coastguard Worker// CHECK-LABEL: Contents of section s_movt
80*9880d681SAndroid Build Coastguard Worker// CHECK: 0000 e34f0ffc
81*9880d681SAndroid Build Coastguard Worker	movt	r0, :upper16:GOT-(movt_label)
82*9880d681SAndroid Build Coastguard Workermovt_label:
83*9880d681SAndroid Build Coastguard Worker
84*9880d681SAndroid Build Coastguard Worker@FK_Data_1
85*9880d681SAndroid Build Coastguard Worker.section s_fk_data_1
86*9880d681SAndroid Build Coastguard Worker// CHECK-LABEL: Contents of section s_fk_data_1
87*9880d681SAndroid Build Coastguard Worker// CHECK: 0000 01
88*9880d681SAndroid Build Coastguard Workerfk_data1_l_label:
89*9880d681SAndroid Build Coastguard Worker.byte fk_data1_h_label-fk_data1_l_label
90*9880d681SAndroid Build Coastguard Workerfk_data1_h_label:
91*9880d681SAndroid Build Coastguard Worker
92*9880d681SAndroid Build Coastguard Worker@FK_Data_2
93*9880d681SAndroid Build Coastguard Worker.section s_fk_data_2
94*9880d681SAndroid Build Coastguard Worker// CHECK-LABEL: Contents of section s_fk_data_2
95*9880d681SAndroid Build Coastguard Worker// CHECK: 0000 0002
96*9880d681SAndroid Build Coastguard Workerfk_data2_l_label:
97*9880d681SAndroid Build Coastguard Worker.short fk_data2_h_label-fk_data2_l_label
98*9880d681SAndroid Build Coastguard Workerfk_data2_h_label:
99*9880d681SAndroid Build Coastguard Worker
100*9880d681SAndroid Build Coastguard Worker@FK_Data_4
101*9880d681SAndroid Build Coastguard Worker.section s_fk_data_4
102*9880d681SAndroid Build Coastguard Worker// CHECK-LABEL: Contents of section s_fk_data_4
103*9880d681SAndroid Build Coastguard Worker// CHECK: 0000 00000004
104*9880d681SAndroid Build Coastguard Workerfk_data4_l_label:
105*9880d681SAndroid Build Coastguard Worker.long fk_data4_h_label-fk_data4_l_label
106*9880d681SAndroid Build Coastguard Workerfk_data4_h_label:
107*9880d681SAndroid Build Coastguard Worker
108