blob: 1b2484c92dc06cf000bd90329f7e9fb0c30b55ad [file] [log] [blame]
// This input must be assembled by the GNU assembler, as llvm-mc does not emit
// the R_ARM_THM_JUMP11 and R_ARM_THM_JUMP8 relocations for a Thumb narrow
// branch. This is permissible by the ABI for the ARM architecture as the range
// of the Thumb narrow branch is short enough (+- 2048 bytes and +- 256 bytes
// respeticely) that widespread use would be impractical.
//
// The test case will use a pre compiled object arm-thumb-narrow-branch.o
.syntax unified
.section .caller, "ax",%progbits
.thumb
.align 2
.type callers,%function
.globl callers
callers:
b.n callee_low_far
b.n callee_low
b.n callee_high
b.n callee_high_far
beq.n callee_low_near
beq.n callee_low
beq.n callee_high
beq.n callee_high_near
bx lr