I analyzed the disassembly files generated from CCS and found the boot sequence from _c_int00 to main
which invokes these inner functions: including _auto_init_elf, __TI_decompress_rle24, __TI_decompress_rle_core, __TI_zero_init, __TI_tls_init, __TI_cpp_init, _args_main(which calls main)
The callgraph is (The indent illustrates the call relationship):
_c_int00:
_auto_init_elf:
__TI_decompress_rle24
__TI_decompress_rle_core
__TI_zero_init
__TI_tls_init
__TI_cpp_init
_args_main
main (The well-known entry function in C)
exit
If I want to fix all these inner functions address, how could I do that? i know I can use CODE_SECTION pragma, but it needs the function declaration signature in C.
For example, I can find the declaration signature of _auto_init_elf in "xdctools/packages/ti/targets/rts6000/autoinit.c", which is
void _auto_init_elf(void)
But how could I find the declaration signature of those function which start with 2 underscores (such as __TI_decompress_rle24, __TI_decompress_rle_core etc).
Beyond using CODE_SECTION pragma to fix the function address, are there any other way (such as linker.cmd script) to fix it?
Thank you very much in advance.