Other Parts Discussed in Thread: C2000WARE,
We have a mature application we are porting from a F28335 to F27389D DSP. Wherever possible we are using the C2000ware library for initialization of and access to on-chip and off-chip peripheral devices on the F28379D processor. We are using CCS version 12.4, C200ware version 4.01 and compiler version 22.6.
I've encountered an apparent problem with the compiler or linker. I've created 2 build configurations, both for debug sessions over JTAG. One configuration uses GPIO assignments in anticipation of use on a proprietary board design for a new product release. The other is used to run the code on LaunchXL-F28379D demo boards we are using to debug the application until the proprietary boards arrive. The only significant difference between the two build configuration is GPIO pin assignments, which will be different between the 2 target boards.
When using the build configuration for the new hardware, the standard C2000ware initialization logic works fine. On the build configuration for a LaunchXL board, 6 ITRAP instructions appear at the entry point to C2000ware function InitGpio, after which the object code that should have been at the entry point appears. I have a screen capture from CCS debug sessions showing disassembly of the InitGpio entry point in the two cases.
I am already using the compiler directive --gen_func_subsections=on in both build configurations. The linker command files for both build configurations is using the Align(8) directive for all Page 0 memory blocks.
What can be causing this difference, and how might it be resolved?