12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- # arm_bl_out_of_range.s
- # Test ARM bl instructions just out of the branch range limits.
- .syntax unified
- .arch armv5te
- .section .text.pre,"x"
- # Add padding so that target is just out of branch range.
- .space 8
- .align 2
- .global _backward_target
- _backward_target:
- bx lr
- .size _backward_target, .-_backward_target
-
- .text
- # Use 256-byte alignment so that we know where the stubs start.
- .align 8
- # Define _start so that linker does not complain.
- .global _start
- _start:
- bx lr
- .size _start, .-_start
- .global _backward_test
- _backward_test:
- bl _backward_target
- .size _backward_test, .-_backward_test
- .global _forward_test
- _forward_test:
- bl _forward_target
- .size _forward_test, .-_forward_test
-
- # Align stub table for address matching
- .align 8
- .section .text.post,"x"
- # Add padding so that target is just out of branch range.
- .space 16
- .align 2
- .global _forward_target
- _forward_target:
- bx lr
- .size _forward_target, .-_forward_target
|