.syntax unified
	.text
	@ out of line table entry
	.global _start
	.type _start, %function
_start:
	.fnstart
	.save {r4, lr}
	.vsave {d0}
	.vsave {d4}
	bl _before
	.fnend

	@ entry that can be merged
	.fnstart
	.save {r4, lr}
	bx lr
	.fnend

	@ Section that will be placed first
	.section .before, "xa"
	.type _before, %function
_before:
	.fnstart
	.save {r4, lr}
	bx lr
	.fnend

	@ section that will be placed last
	.section .after, "xa"
	.global __aeabi_unwind_cpp_pr0
	.type __aeabi_unwind_cpp_pr0, %function
__aeabi_unwind_cpp_pr0:
	.fnstart
	.save {r4, lr}
	bx lr
	.fnend
	@ final function is cantunwind, so output table size is smaller
	@ than sum of input sections
	.global __aeabi_unwind_cpp_pr1
	.type __aeabi_unwind_cpp_pr1, %function
__aeabi_unwind_cpp_pr1:
	.fnstart
	.cantunwind
	bx lr
	.fnend

	.section .far
	.word 0