diff --git a/core/embed/bootloader/memory.ld b/core/embed/bootloader/memory.ld index cf280882f3..2c9eb74405 100644 --- a/core/embed/bootloader/memory.ld +++ b/core/embed/bootloader/memory.ld @@ -23,7 +23,7 @@ ccmram_end = ORIGIN(CCMRAM) + LENGTH(CCMRAM); sram_start = ORIGIN(SRAM); sram_end = ORIGIN(SRAM) + LENGTH(SRAM); -_codelen = SIZEOF(.flash) + SIZEOF(.data); +_codelen = SIZEOF(.flash) + SIZEOF(.data) + SIZEOF(.exidx) + SIZEOF(.align); SECTIONS { .header : ALIGN(4) { @@ -36,6 +36,15 @@ SECTIONS { *(.text*); . = ALIGN(4); *(.rodata*); + . = ALIGN(4); + } >FLASH AT>FLASH + + /* exception handling info generated by llvm which should consist of 8 bytes of "cantunwind" */ + .exidx : ALIGN(4) { + *(.ARM.exidx*); + } >FLASH AT>FLASH + + .align : ALIGN(4) { . = ALIGN(512); } >FLASH AT>FLASH