We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
Hi
I am using an STM32F437 with v6 compiler (armclang).
For various reasons, I am reserving a section in internal flash, in the middle of my application code, like so:
volatile const byte reserve_section[100] __attribute__((section(".ARM.__at_0x0800F000")));
However, when I perform the link, I get the following error:
.\Object\i-onG3MM\Debug\i-onG3MM.axf: Error: L6286E: Relocation #REL:1 in fs_fat.o(.text.fat_unmount) with respect to Veneer$$LitPool. Value(0xffffe458) out of range(0 - 0xff) for (R_ARM_THM_PC8)
I get more similar errors if I reserve a bigger section. What does this mean exactly, and any suggestions on how to fix ?
TIA
Hi TIA, does the project link if you disable the linker optimization "literal pool merging". To disable this, add linker option "--no_merge_litpools" (when using uVision, add it at Options for Target ... -> Linker -> Misc Controls).