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