summaryrefslogtreecommitdiff
path: root/tools/splat/test/basic_app/basic_app.ld
diff options
context:
space:
mode:
Diffstat (limited to 'tools/splat/test/basic_app/basic_app.ld')
-rw-r--r--tools/splat/test/basic_app/basic_app.ld78
1 files changed, 78 insertions, 0 deletions
diff --git a/tools/splat/test/basic_app/basic_app.ld b/tools/splat/test/basic_app/basic_app.ld
new file mode 100644
index 0000000..7a94e16
--- /dev/null
+++ b/tools/splat/test/basic_app/basic_app.ld
@@ -0,0 +1,78 @@
+SECTIONS
+{
+ __romPos = 0;
+ _gp = 0x0;
+ header_ROM_START = __romPos;
+ header_VRAM = ADDR(.header);
+ .header : AT(header_ROM_START) SUBALIGN(16)
+ {
+ header_DATA_START = .;
+ build/header.o(.data);
+ header_DATA_END = .;
+ header_DATA_SIZE = ABSOLUTE(header_DATA_END - header_DATA_START);
+ }
+ __romPos += SIZEOF(.header);
+ header_ROM_END = __romPos;
+ header_VRAM_END = .;
+
+ dummy_ipl3_ROM_START = __romPos;
+ dummy_ipl3_VRAM = ADDR(.dummy_ipl3);
+ .dummy_ipl3 0xA4000040 : AT(dummy_ipl3_ROM_START) SUBALIGN(16)
+ {
+ dummy_ipl3_DATA_START = .;
+ build/dummy_ipl3.o(.data);
+ dummy_ipl3_DATA_END = .;
+ dummy_ipl3_DATA_SIZE = ABSOLUTE(dummy_ipl3_DATA_END - dummy_ipl3_DATA_START);
+ }
+ __romPos += SIZEOF(.dummy_ipl3);
+ __romPos = ALIGN(__romPos, 16);
+ dummy_ipl3_ROM_END = __romPos;
+ dummy_ipl3_VRAM_END = .;
+
+ boot_ROM_START = __romPos;
+ boot_VRAM = ADDR(.boot);
+ .boot 0x80000400 : AT(boot_ROM_START) SUBALIGN(16)
+ {
+ boot_TEXT_START = .;
+ build/main.o(.text);
+ build/handwritten.o(.text);
+ boot_TEXT_END = .;
+ boot_TEXT_SIZE = ABSOLUTE(boot_TEXT_END - boot_TEXT_START);
+
+ boot_DATA_START = .;
+ build/main.o(.data);
+ build/handwritten.o(.data);
+ boot_DATA_END = .;
+ boot_DATA_SIZE = ABSOLUTE(boot_DATA_END - boot_DATA_START);
+
+ boot_RODATA_START = .;
+ build/main.o(.rodata);
+ build/handwritten.o(.rodata);
+ boot_RODATA_END = .;
+ boot_RODATA_SIZE = ABSOLUTE(boot_RODATA_END - boot_RODATA_START);
+ }
+
+ boot_bss_VRAM = ADDR(.boot_bss);
+ .boot_bss (NOLOAD) : SUBALIGN(16)
+ {
+ boot_BSS_START = .;
+ build/main.o(.bss);
+ build/main.o(.scommon);
+ build/main.o(COMMON);
+ build/handwritten.o(.bss);
+ build/handwritten.o(.scommon);
+ build/handwritten.o(COMMON);
+ boot_BSS_END = .;
+ boot_BSS_SIZE = ABSOLUTE(boot_BSS_END - boot_BSS_START);
+ }
+
+ __romPos += SIZEOF(.boot);
+ __romPos = ALIGN(__romPos, 16);
+ boot_ROM_END = __romPos;
+ boot_VRAM_END = .;
+
+ /DISCARD/ :
+ {
+ *(*);
+ }
+}