eb7c4339fa
* elf32-arm.c (elf32_arm_stub_type): Add arm_stub_a8_veneer_lwm. (arm_build_one_stub): Build a8 veneers as a separate pass. (cortex_a8_erratum_scan): Add prev_num_a8_fixes and stub_changed_p parameters. Use them to check if we create a different a8 fixup than the previous pass. (elf32_arm_size_stubs): Move scope of stub_changed and prev_num_a8_fixes into main loop. (elf32_arm_build_stubs): Build a8 veneers in a second pass. ld/testsuite/ * ld-arm/cortex-a8-far-1.s: New. * ld-arm/cortex-a8-far-2.s: New. * ld-arm/cortex-a8-far.d: New. * ld-arm/arm-elf.exp: Add new test.
20 lines
236 B
ArmAsm
20 lines
236 B
ArmAsm
.syntax unified
|
|
.thumb
|
|
three:
|
|
bl far_fn1
|
|
bl far_fn2
|
|
.rept 1016
|
|
.long 0
|
|
.endr
|
|
nop
|
|
label1:
|
|
eor.w r0, r1, r2
|
|
beq.w label1
|
|
|
|
eor.w r0, r1, r2
|
|
|
|
eor.w r0, r1, r2
|
|
b.w label1
|
|
|
|
eor.w r0, r1, r2
|
|
eor.w r0, r1, r2
|