Tool/software: TI C/C++ Compiler
Hi,
We look for how to implement runtime loading for embedded targets. Say we modified and then compiled a .c file to .obj, can we quickly reload its content to a running device without relinking the and reloading the entire .out file? The purpose is only for some quick and dirty hack, and we are aware that the symbol files, debugging information and so are not synced, and there might be issues with CCS debugger that the correct symbols/code lines are not found.
1. We know that functions are put in .text sections contiguously. We can deal with this using "CODE_SECTION" directive to allocate large slots for functions that we might "hack" like said above so that reloading will not overwrite other function's space. Also please advise us any better linker directives to this, because with the "CODE_SECTION" way we might need to create many such different SECTION names.
2. Can customer file requests to TI to get at least partial source code of the compiler and linker? We look for some agile hacking to facilitate development just as using Clang/GCC open-source toolchains. TI's ofd xml tool and DSS are good but become restricting when we need deeper functionalities.
3. Still better, as said in (1), is there a way to update the debugging symbol, code lines and so on in this case? We want to operate CCS Debug environment like GNU GDB. Can you advise on how the TI's c/cpp symbols is interfaced to the eclipse CDT? Is that the original CDT release or was modified by TI?
4. As for the object formats Is it ELF/COFF standard conformant or added lots TI's own specifications? By this, I mean there are lots of directives (pragma, pack, CODE_SECTION, etc.) in the TI tool chain. After the chain, is the final .ELF/COFF file any standard conformant, say can it be understood by vanilla CDT tools from www.eclipse.org, or has TI heavily modified the code?
Regards,
Dave