Target: C6474
CCS: v.5.1 (M7) (relevant because of compiler/linker options)
C Compiler: v.7.3.0
Sys/Bios: v.6.32.4.49
Given my limited on-chip memory, I am placing my code both on-chip and off-chip. By default, this produces hundreds of trampolines which, in an of itself, uses up the very memory I am trying to conserve. My application is linear enough that I don't mind the few hundred (or even thousand) extra cycles it will take to load the address into a register and make a full 32-bit branch (as opposed the the 21-bit offset branch), so I disable trampoline call generation (to force FAR calls), but I have been running into multiple problems. Mainly, linking BIOS generates hundreds upon hundreds of linker errors complaining about the far calls.
So two questions:
- In the old days, there used to be a compiler option (-ml1) to make far calls the default. With the current tools (and CCS's options tabs), how do I make far calls the default?
- Will I need to rebuild BIOS to support this, or are the libraries already built and included? And if so, how do I make the linker select them?