1 .syntax unified 2 3 .global _start 4 .type _start, %function 5 .text 6_start: 7 bx lr 8 .size _start,.-_start 9 10 .section .data.0,"aw",%progbits 11 .align 12 12 .type x, %object 13 .size x, 4 14x: 15 .word 1 16 17 .section .data.1,"aw",%progbits 18 .align 12 19 20# This causes following relocations to be unaligned. 21 .global padding 22 .type padding, %object 23 .size padding, 1 24padding: 25 .byte 0 26 27 .global abs32 28 .type abs32, %object 29 .size abs32, 4 30abs32: 31 # We use x + 1 instead so that addend is non-zero 32 # The disassembler sometimes skips repeating 33 # zeros and prints "..." instead. 34 .word x + 1 35 36 .global rel32 37 .type rel32, %object 38 .size rel32, 4 39rel32: 40 .word x + 1 - . 41 42 .global abs16 43 .type abs16, %object 44 .size abs16, 2 45abs16: 46 .short x + 1 47 .short 0 48