More closely follow the default linker script for nios2.
This magically fixes a problem resolving .got relocs from
the toolchain's libgcc.a.
Resolves: https://gitlab.com/qemu-project/qemu/-/issues/1258
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <
20221024035341.
2971123-1-richard.henderson@linaro.org>
Message-Id: <
20221027183637.
2772968-10-alex.bennee@linaro.org>
.data : ALIGN(4) {
*(.shdata)
*(.data .data.* .gnu.linkonce.d.*)
- . = ALIGN(4);
- _gp = ABSOLUTE(. + 0x8000);
- *(.got.plt) *(.got)
- *(.lit8)
- *(.lit4)
+ } >ram :RAM
+
+ HIDDEN (_gp = ALIGN(16) + 0x7ff0);
+ PROVIDE_HIDDEN (gp = _gp);
+ .got : ALIGN(4) {
+ *(.got.plt) *(.igot.plt) *(.got) *(.igot)
+ } >ram :RAM
+
+ .sdata : ALIGN(4) {
*(.sdata .sdata.* .gnu.linkonce.s.*)
} >ram :RAM