feat: Linkerscript now tracks RAM/ROM usage
Based on https://github.com/pret/pokeemerald/pull/1952
This commit is contained in:
+25
-23
@@ -1,10 +1,16 @@
|
||||
gNumMusicPlayers = 4;
|
||||
gMaxLines = 0;
|
||||
|
||||
SECTIONS {
|
||||
. = 0x2000000;
|
||||
MEMORY
|
||||
{
|
||||
EWRAM (rwx) : ORIGIN = 0x2000000, LENGTH = 256K
|
||||
IWRAM (rwx) : ORIGIN = 0x3000000, LENGTH = 32K
|
||||
ROM (rx) : ORIGIN = 0x8000000, LENGTH = 32M
|
||||
}
|
||||
|
||||
ewram (NOLOAD) :
|
||||
SECTIONS {
|
||||
|
||||
.ewram.sbss 0x2000000 (NOLOAD) :
|
||||
ALIGN(4)
|
||||
{
|
||||
gHeap = .;
|
||||
@@ -12,17 +18,14 @@ SECTIONS {
|
||||
. = 0x1C000;
|
||||
|
||||
INCLUDE "sym_ewram.ld"
|
||||
src/*.o(ewram_data);
|
||||
src/*.o(.sbss);
|
||||
|
||||
*libc.a:impure.o(.data);
|
||||
*libc.a:locale.o(.data);
|
||||
*libc.a:mallocr.o(.data);
|
||||
. = 0x40000;
|
||||
}
|
||||
} > EWRAM
|
||||
|
||||
. = 0x3000000;
|
||||
|
||||
iwram (NOLOAD) :
|
||||
iwram 0x3000000 (NOLOAD) :
|
||||
ALIGN(4)
|
||||
{
|
||||
/* .bss starts at 0x3000000 */
|
||||
@@ -38,10 +41,9 @@ SECTIONS {
|
||||
|
||||
*libc.a:sbrkr.o(COMMON);
|
||||
end = .;
|
||||
} > IWRAM
|
||||
|
||||
. = 0x8000;
|
||||
}
|
||||
|
||||
/* BEGIN ROM DATA */
|
||||
. = 0x8000000;
|
||||
|
||||
.text :
|
||||
@@ -307,7 +309,7 @@ SECTIONS {
|
||||
src/berry_powder.o(.text);
|
||||
src/minigame_countdown.o(.text);
|
||||
src/berry_fix_program.o(.text);
|
||||
} =0
|
||||
} > ROM =0
|
||||
|
||||
script_data :
|
||||
ALIGN(4)
|
||||
@@ -319,7 +321,7 @@ SECTIONS {
|
||||
data/battle_scripts_2.o(script_data);
|
||||
data/battle_ai_scripts.o(script_data);
|
||||
data/mystery_event_script_cmd_table.o(script_data);
|
||||
} =0
|
||||
} > ROM =0
|
||||
|
||||
lib_text :
|
||||
ALIGN(4)
|
||||
@@ -388,7 +390,7 @@ SECTIONS {
|
||||
*libc.a:libcfunc.o(.text);
|
||||
*libc.a:lseekr.o(.text);
|
||||
*libc.a:readr.o(.text);
|
||||
} =0
|
||||
} > ROM =0
|
||||
|
||||
.rodata :
|
||||
SUBALIGN(4)
|
||||
@@ -608,7 +610,7 @@ SECTIONS {
|
||||
data/mystery_event_msg.o(.rodata);
|
||||
src/m4a_tables.o(.rodata);
|
||||
data/sound_data.o(.rodata);
|
||||
} =0
|
||||
} > ROM =0
|
||||
|
||||
song_data :
|
||||
ALIGN(4)
|
||||
@@ -960,7 +962,7 @@ SECTIONS {
|
||||
sound/songs/midi/mus_trainer_tower.o(.rodata);
|
||||
sound/songs/midi/mus_slow_pallet.o(.rodata);
|
||||
sound/songs/midi/mus_teachy_tv_menu.o(.rodata);
|
||||
}
|
||||
} > ROM =0
|
||||
|
||||
lib_rodata :
|
||||
SUBALIGN(4)
|
||||
@@ -1013,7 +1015,7 @@ SECTIONS {
|
||||
*libc.a:readr.o(.rodata);
|
||||
|
||||
. = ALIGN(4);
|
||||
} =0
|
||||
} > ROM =0
|
||||
|
||||
multiboot_data :
|
||||
ALIGN(4)
|
||||
@@ -1021,14 +1023,13 @@ SECTIONS {
|
||||
data/multiboot_ereader.o(.rodata);
|
||||
data/multiboot_berry_glitch_fix.o(.rodata);
|
||||
data/multiboot_pokemon_colosseum.o(.rodata);
|
||||
} =0
|
||||
} > ROM =0
|
||||
|
||||
. = 0x08D00000;
|
||||
gfx_data :
|
||||
gfx_data 0x08D00000 :
|
||||
ALIGN(4)
|
||||
{
|
||||
src/graphics.o(.rodata);
|
||||
} =0
|
||||
} > ROM =0
|
||||
|
||||
extra :
|
||||
ALIGN(4)
|
||||
@@ -1036,7 +1037,8 @@ SECTIONS {
|
||||
src/*.o(.text);
|
||||
src/*.o(.rodata);
|
||||
data/*.o(.rodata);
|
||||
} = 0
|
||||
} > ROM =0
|
||||
|
||||
|
||||
/* DWARF 2 sections */
|
||||
.debug_aranges 0 : { *(.debug_aranges) }
|
||||
|
||||
Reference in New Issue
Block a user