diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/include/memlayout.h | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/src/include/memlayout.h b/src/include/memlayout.h index bf830b7d24..424a28a20a 100644 --- a/src/include/memlayout.h +++ b/src/include/memlayout.h @@ -31,7 +31,7 @@ #define SYMBOL(name, addr) \ SET_COUNTER(name, addr) \ - _##name = .; + _##name = ABSOLUTE(.); #define REGION(name, addr, size, expected_align) \ SYMBOL(name, addr) \ @@ -40,8 +40,8 @@ SYMBOL(e##name, addr + size) #define ALIAS_REGION(name, alias) \ - _##alias = _##name; \ - _e##alias = _e##name; + _##alias = ABSOLUTE(_##name); \ + _e##alias = ABSOLUTE(_e##name); \ /* Declare according to SRAM/DRAM ranges in SoC hardware-defined address map. */ #define SRAM_START(addr) SYMBOL(sram, addr) @@ -92,7 +92,7 @@ #if ENV_DECOMPRESSOR #define DECOMPRESSOR(addr, sz) \ SYMBOL(decompressor, addr) \ - _edecompressor = _decompressor + sz; \ + _edecompressor = ABSOLUTE(_decompressor + sz); \ _ = ASSERT(_eprogram - _program <= sz, \ STR(decompressor exceeded its allotted size! (sz))); \ INCLUDE "decompressor/lib/program.ld" @@ -112,7 +112,7 @@ #if ENV_BOOTBLOCK #define BOOTBLOCK(addr, sz) \ SYMBOL(bootblock, addr) \ - _ebootblock = _bootblock + sz; \ + _ebootblock = ABSOLUTE(_bootblock + sz); \ _ = ASSERT(_eprogram - _program <= sz, \ STR(Bootblock exceeded its allotted size! (sz))); \ INCLUDE "bootblock/lib/program.ld" @@ -124,7 +124,7 @@ #if ENV_ROMSTAGE #define ROMSTAGE(addr, sz) \ SYMBOL(romstage, addr) \ - _eromstage = _romstage + sz; \ + _eromstage = ABSOLUTE(_romstage + sz); \ _ = ASSERT(_eprogram - _program <= sz, \ STR(Romstage exceeded its allotted size! (sz))); \ INCLUDE "romstage/lib/program.ld" @@ -136,7 +136,7 @@ #if ENV_RAMSTAGE #define RAMSTAGE(addr, sz) \ SYMBOL(ramstage, addr) \ - _eramstage = _ramstage + sz; \ + _eramstage = ABSOLUTE(_ramstage + sz); \ _ = ASSERT(_eprogram - _program <= sz, \ STR(Ramstage exceeded its allotted size! (sz))); \ INCLUDE "ramstage/lib/program.ld" @@ -160,7 +160,7 @@ #if ENV_SEPARATE_VERSTAGE #define VERSTAGE(addr, sz) \ SYMBOL(verstage, addr) \ - _everstage = _verstage + sz; \ + _everstage = ABSOLUTE(_verstage + sz); \ _ = ASSERT(_eprogram - _program <= sz, \ STR(Verstage exceeded its allotted size! (sz))); \ INCLUDE "verstage/lib/program.ld" @@ -179,7 +179,7 @@ #if ENV_POSTCAR #define POSTCAR(addr, sz) \ SYMBOL(postcar, addr) \ - _epostcar = _postcar + sz; \ + _epostcar = ABSOLUTE(_postcar + sz); \ _ = ASSERT(_eprogram - _program <= sz, \ STR(Aftercar exceeded its allotted size! (sz))); \ INCLUDE "postcar/lib/program.ld" |