75 lines · plain
1@ RUN: llvm-mc %s -triple=armv7-unknown-linux-gnueabi -filetype=obj -o - \2@ RUN: | llvm-readobj -S --sd --sr - | FileCheck %s3 4@ Check the compact pr1 model5 6 .syntax unified7 8 .section .TEST19 .globl func110 .align 211 .type func1,%function12func1:13 .fnstart14 .save {r4, r5, r11, lr}15 push {r4, r5, r11, lr}16 add r0, r1, r017 .setfp r11, sp, #818 add r11, sp, #819 pop {r4, r5, r11, pc}20 .fnend21 22 23 24@-------------------------------------------------------------------------------25@ Check .TEST1 section26@-------------------------------------------------------------------------------27@ CHECK: Sections [28@ CHECK: Section {29@ CHECK: Name: .TEST130@ CHECK: SectionData (31@ CHECK: 0000: 30482DE9 000081E0 08B08DE2 3088BDE8 |0H-.........0...|32@ CHECK: )33@ CHECK: }34 35 36@-------------------------------------------------------------------------------37@ Check .ARM.extab.TEST1 section38@-------------------------------------------------------------------------------39@ CHECK: Section {40@ CHECK: Name: .ARM.extab.TEST141@-------------------------------------------------------------------------------42@ 0x81 = Compact model 1, personality routine: __aeabi_unwind_cpp_pr143@ 0x9B = $sp can be found in $r1144@ 0x41 = $sp = $sp - 845@ 0x8483 = pop {r4, r5, r11, r14}46@ 0xB0 = finish47@-------------------------------------------------------------------------------48@ CHECK: SectionData (49@ CHECK: 0000: 419B0181 B0B08384 00000000 |A...........|50@ CHECK: )51@ CHECK: }52 53 54@-------------------------------------------------------------------------------55@ Check .ARM.exidx.TEST1 section56@-------------------------------------------------------------------------------57@ CHECK: Section {58@ CHECK: Name: .ARM.exidx.TEST159@ CHECK: SectionData (60@ CHECK: 0000: 00000000 00000000 |........|61@ CHECK: )62@ CHECK: }63@ CHECK: ]64@-------------------------------------------------------------------------------65@ The first word should be relocated to .TEST1 section, and the second word66@ should be relocated to .ARM.extab.TEST1 section. Besides, there is67@ another relocation entry for __aeabi_unwind_cpp_pr1, so that the linker68@ will keep __aeabi_unwind_cpp_pr1.69@-------------------------------------------------------------------------------70@ CHECK: Relocations [71@ CHECK: 0x0 R_ARM_NONE __aeabi_unwind_cpp_pr172@ CHECK: 0x0 R_ARM_PREL31 .TEST173@ CHECK: 0x4 R_ARM_PREL31 .ARM.extab.TEST174@ CHECK: ]75