204 lines
		
	
	
		
			4.0 KiB
		
	
	
	
		
			ArmAsm
		
	
	
	
			
		
		
	
	
			204 lines
		
	
	
		
			4.0 KiB
		
	
	
	
		
			ArmAsm
		
	
	
	
@ RUN: llvm-mc -triple armv7-linux-eabi -filetype obj -o - %s \
 | 
						|
@ RUN:   | llvm-readobj -s -sd -sr > %t
 | 
						|
@ RUN: FileCheck %s < %t
 | 
						|
@ RUN: FileCheck --check-prefix=RELOC %s < %t
 | 
						|
 | 
						|
	.syntax unified
 | 
						|
	.thumb
 | 
						|
 | 
						|
 | 
						|
	.section .pr0
 | 
						|
 | 
						|
	.global pr0
 | 
						|
	.type pr0,%function
 | 
						|
	.thumb_func
 | 
						|
pr0:
 | 
						|
	.fnstart
 | 
						|
	.personalityindex 0
 | 
						|
	bx lr
 | 
						|
	.fnend
 | 
						|
 | 
						|
@ CHECK: Section {
 | 
						|
@ CHECK:   Name: .ARM.exidx.pr0
 | 
						|
@ CHECK:   SectionData (
 | 
						|
@ CHECK:     0000: 00000000 B0B0B080
 | 
						|
@ CHECK:   )
 | 
						|
@ CHECK: }
 | 
						|
 | 
						|
@ RELOC: Section {
 | 
						|
@ RELOC:   Name: .rel.ARM.exidx.pr0
 | 
						|
@ RELOC:   Relocations [
 | 
						|
@ RELOC:     0x0 R_ARM_NONE __aeabi_unwind_cpp_pr0 0x0
 | 
						|
@ RELOC:     0x0 R_ARM_PREL31 .pr0 0x0
 | 
						|
@ RELOC:   ]
 | 
						|
@ RELOC: }
 | 
						|
 | 
						|
	.section .pr0.nontrivial
 | 
						|
 | 
						|
	.global pr0_nontrivial
 | 
						|
	.type pr0_nontrivial,%function
 | 
						|
	.thumb_func
 | 
						|
pr0_nontrivial:
 | 
						|
	.fnstart
 | 
						|
	.personalityindex 0
 | 
						|
	.pad #0x10
 | 
						|
	sub sp, sp, #0x10
 | 
						|
	add sp, sp, #0x10
 | 
						|
	bx lr
 | 
						|
	.fnend
 | 
						|
 | 
						|
@ CHECK: Section {
 | 
						|
@ CHECK:   Name: .ARM.exidx.pr0.nontrivial
 | 
						|
@ CHECK:   SectionData (
 | 
						|
@ CHECK:     0000: 00000000 B0B00380
 | 
						|
@ CHECK:   )
 | 
						|
@ CHECK: }
 | 
						|
 | 
						|
@ RELOC: Section {
 | 
						|
@ RELOC:   Name: .rel.ARM.exidx.pr0.nontrivial
 | 
						|
@ RELOC:   Relocations [
 | 
						|
@ RELOC:     0x0 R_ARM_NONE __aeabi_unwind_cpp_pr0 0x0
 | 
						|
@ RELOC:     0x0 R_ARM_PREL31 .pr0.nontrivial 0x0
 | 
						|
@ RELOC:   ]
 | 
						|
@ RELOC: }
 | 
						|
 | 
						|
	.section .pr1
 | 
						|
 | 
						|
	.global pr1
 | 
						|
	.type pr1,%function
 | 
						|
	.thumb_func
 | 
						|
pr1:
 | 
						|
	.fnstart
 | 
						|
	.personalityindex 1
 | 
						|
	bx lr
 | 
						|
	.fnend
 | 
						|
 | 
						|
@ CHECK: Section {
 | 
						|
@ CHECK:   Name: .ARM.extab.pr1
 | 
						|
@ CHECK:   SectionData (
 | 
						|
@ CHECK:     0000: B0B00081 00000000
 | 
						|
@ CHECK:   )
 | 
						|
@ CHECK: }
 | 
						|
 | 
						|
@ CHECK: Section {
 | 
						|
@ CHECK:   Name: .ARM.exidx.pr1
 | 
						|
@ CHECK:   SectionData (
 | 
						|
@ CHECK:     0000: 00000000 00000000
 | 
						|
@ CHECK:   )
 | 
						|
@ CHECK: }
 | 
						|
 | 
						|
@ RELOC: Section {
 | 
						|
@ RELOC:   Name: .rel.ARM.exidx.pr1
 | 
						|
@ RELOC:   Relocations [
 | 
						|
@ RELOC:     0x0 R_ARM_NONE __aeabi_unwind_cpp_pr1 0x0
 | 
						|
@ RELOC:     0x0 R_ARM_PREL31 .pr1 0x0
 | 
						|
@ RELOC:     0x4 R_ARM_PREL31 .ARM.extab.pr1 0x0
 | 
						|
@ RELOC:   ]
 | 
						|
@ RELOC: }
 | 
						|
 | 
						|
	.section .pr1.nontrivial
 | 
						|
 | 
						|
	.global pr1_nontrivial
 | 
						|
	.type pr1_nontrivial,%function
 | 
						|
	.thumb_func
 | 
						|
pr1_nontrivial:
 | 
						|
	.fnstart
 | 
						|
	.personalityindex 1
 | 
						|
	.pad #0x10
 | 
						|
	sub sp, sp, #0x10
 | 
						|
	add sp, sp, #0x10
 | 
						|
	bx lr
 | 
						|
	.fnend
 | 
						|
 | 
						|
@ CHECK: Section {
 | 
						|
@ CHECK:   Name: .ARM.extab.pr1.nontrivial
 | 
						|
@ CHECK:   SectionData (
 | 
						|
@ CHECK:     0000: B0030081 00000000
 | 
						|
@ CHECK:   )
 | 
						|
@ CHECK: }
 | 
						|
 | 
						|
@ CHECK: Section {
 | 
						|
@ CHECK:   Name: .ARM.exidx.pr1.nontrivial
 | 
						|
@ CHECK:   SectionData (
 | 
						|
@ CHECK:     0000: 00000000 00000000
 | 
						|
@ CHECK:   )
 | 
						|
@ CHECK: }
 | 
						|
 | 
						|
@ RELOC: Section {
 | 
						|
@ RELOC:   Name: .rel.ARM.exidx.pr1.nontrivial
 | 
						|
@ RELOC:   Relocations [
 | 
						|
@ RELOC:     0x0 R_ARM_NONE __aeabi_unwind_cpp_pr1 0x0
 | 
						|
@ RELOC:     0x0 R_ARM_PREL31 .pr1.nontrivial 0x0
 | 
						|
@ RELOC:     0x4 R_ARM_PREL31 .ARM.extab.pr1.nontrivial 0x0
 | 
						|
@ RELOC:   ]
 | 
						|
@ RELOC: }
 | 
						|
 | 
						|
	.section .pr2
 | 
						|
 | 
						|
	.global pr2
 | 
						|
	.type pr2,%function
 | 
						|
	.thumb_func
 | 
						|
pr2:
 | 
						|
	.fnstart
 | 
						|
	.personalityindex 2
 | 
						|
	bx lr
 | 
						|
	.fnend
 | 
						|
 | 
						|
@ CHECK: Section {
 | 
						|
@ CHECK:   Name: .ARM.extab.pr2
 | 
						|
@ CHECK:   SectionData (
 | 
						|
@ CHECK:     0000: B0B00082 00000000
 | 
						|
@ CHECK:   )
 | 
						|
@ CHECK: }
 | 
						|
 | 
						|
@ CHECK: Section {
 | 
						|
@ CHECK:   Name: .ARM.exidx.pr2
 | 
						|
@ CHECK:   SectionData (
 | 
						|
@ CHECK:     0000: 00000000 00000000
 | 
						|
@ CHECK:   )
 | 
						|
@ CHECK: }
 | 
						|
 | 
						|
@ RELOC: Section {
 | 
						|
@ RELOC:   Name: .rel.ARM.exidx.pr2
 | 
						|
@ RELOC:   Relocations [
 | 
						|
@ RELOC:     0x0 R_ARM_NONE __aeabi_unwind_cpp_pr2 0x0
 | 
						|
@ RELOC:     0x0 R_ARM_PREL31 .pr2 0x0
 | 
						|
@ RELOC:     0x4 R_ARM_PREL31 .ARM.extab.pr2 0x0
 | 
						|
@ RELOC:   ]
 | 
						|
@ RELOC: }
 | 
						|
 | 
						|
	.section .pr2.nontrivial
 | 
						|
	.type pr2_nontrivial,%function
 | 
						|
	.thumb_func
 | 
						|
pr2_nontrivial:
 | 
						|
	.fnstart
 | 
						|
	.personalityindex 2
 | 
						|
	.pad #0x10
 | 
						|
	sub sp, sp, #0x10
 | 
						|
	add sp, sp, #0x10
 | 
						|
	bx lr
 | 
						|
	.fnend
 | 
						|
 | 
						|
@ CHECK: Section {
 | 
						|
@ CHECK:   Name: .ARM.extab.pr2.nontrivial
 | 
						|
@ CHECK:   SectionData (
 | 
						|
@ CHECK:     0000: B0030082 00000000
 | 
						|
@ CHECK:   )
 | 
						|
@ CHECK: }
 | 
						|
 | 
						|
@ CHECK: Section {
 | 
						|
@ CHECK:   Name: .ARM.exidx.pr2.nontrivial
 | 
						|
@ CHECK:   SectionData (
 | 
						|
@ CHECK:     0000: 00000000 00000000
 | 
						|
@ CHECK:   )
 | 
						|
@ CHECK: }
 | 
						|
 | 
						|
@ RELOC: Section {
 | 
						|
@ RELOC:   Name: .rel.ARM.exidx.pr2.nontrivial
 | 
						|
@ RELOC:   Relocations [
 | 
						|
@ RELOC:     0x0 R_ARM_NONE __aeabi_unwind_cpp_pr2 0x0
 | 
						|
@ RELOC:     0x0 R_ARM_PREL31 .pr2.nontrivial 0x0
 | 
						|
@ RELOC:     0x4 R_ARM_PREL31 .ARM.extab.pr2.nontrivial 0x0
 | 
						|
@ RELOC:   ]
 | 
						|
@ RELOC: }
 |