07ccf83cf5
The arc700 nps variant uses some specific named sections to facilitate its CMEM based instructions, which operate on memory regions fixed at specific addresses. This commit adds the arclinux_nps emulation, which is based on the arclinux emulation. The new emulation uses the OTHER_SECTIONS variable in the emulation parameters script to provide symbols mapping to various locations in the CMEM space on nps. The accompanying test ensures that all symbols are provided at the correct address in the linker script. ld/ChangeLog: * Makefile.am: Add earclinux_nps.c target and add to ALL_EMULATION_SOURCES. * Makefile.in: Likewise, regenerated. * configure.tgt: Add arclinux_nps as an extra emulation for arc*-*-elf* and arc*-*-linux*. * emulparams/arc-nps.sh: New file. * emulparams/arclinux_nps.sh: New file. * testsuite/ld-arc/arclinux-nps.d, * testsuite/ld-arc/arclinux-nps.s: New test.
47 lines
1.3 KiB
ArmAsm
47 lines
1.3 KiB
ArmAsm
.text
|
|
.global __start
|
|
__start:
|
|
mov r0, _cmem_start
|
|
mov r0, _cmem_alter_start
|
|
mov r0, _cmem_shared_start
|
|
mov r0, _cmem_shared_alter_start
|
|
|
|
mov r0, _fmt_slot0_start
|
|
mov r0, _fmt_slot1_start
|
|
mov r0, _fmt_slot2_start
|
|
mov r0, _fmt_slot3_start
|
|
mov r0, _fmt_slot4_start
|
|
mov r0, _fmt_slot5_start
|
|
mov r0, _fmt_slot6_start
|
|
mov r0, _fmt_slot7_start
|
|
mov r0, _fmt_slot8_start
|
|
mov r0, _fmt_slot9_start
|
|
mov r0, _fmt_slot10_start
|
|
mov r0, _fmt_slot11_start
|
|
mov r0, _fmt_slot12_start
|
|
mov r0, _fmt_slot13_start
|
|
mov r0, _fmt_slot14_start
|
|
mov r0, _fmt_slot15_start
|
|
|
|
mov r0, _cmem_end
|
|
mov r0, _cmem_alter_end
|
|
mov r0, _cmem_shared_end
|
|
mov r0, _cmem_shared_alter_end
|
|
|
|
mov r0, _fmt_slot0_end
|
|
mov r0, _fmt_slot1_end
|
|
mov r0, _fmt_slot2_end
|
|
mov r0, _fmt_slot3_end
|
|
mov r0, _fmt_slot4_end
|
|
mov r0, _fmt_slot5_end
|
|
mov r0, _fmt_slot6_end
|
|
mov r0, _fmt_slot7_end
|
|
mov r0, _fmt_slot8_end
|
|
mov r0, _fmt_slot9_end
|
|
mov r0, _fmt_slot10_end
|
|
mov r0, _fmt_slot11_end
|
|
mov r0, _fmt_slot12_end
|
|
mov r0, _fmt_slot13_end
|
|
mov r0, _fmt_slot14_end
|
|
mov r0, _fmt_slot15_end
|