This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Tool/software: Code Composer Studio
Hi,
I've found that with the C2000 tools in CCS 9.0,1 asm files marked as excluded (in the project tree) are included in the compilation when the advanced compilation optimization "program mode compilation" is enabled. I can work around it by removing the .asm file, but I'd appreciate it if this bug could be resolved.
As a short example, create a C function pwm_init() and also an asm function pwm_init (in a separate .asm file):
void pwm_init() { }
.global _pwm_init _pwm_init: LRETR
Then, mark the .asm file as to be excluded. (Note, automatic inlining needs to be disabled). I've found that in my project, a linker error is reported stating that the symbol is defined multiple times.
I'm using CCS9.0.1 with the TI compiler v18.12.1.LTS.
Building target: "Example_2802xHRPWM.out" Invoking: C2000 Linker "C:/ti/ccs901/ccs/tools/compiler/ti-cgt-c2000_18.12.1.LTS/bin/cl2000" -v28 -ml -mt -O4 --opt_for_speed=0 --fp_reassoc=off --advice:performance=all --define=_DEBUG --define=LARGE_MODEL -g --symdebug:dwarf_version=4 --c11 --diag_suppress=232 --diag_suppress=10063 --diag_warning=225 --issue_remarks --verbose_diagnostics --quiet --gen_func_subsections=on --gen_data_subsections=on --abi=coffabi --program_level_compile -ms -k --asm_listing -z -m"Example_2802xHRPWM.map" --stack_size=0x200 --warn_sections -i"C:/ti/ccs901/ccs/tools/compiler/ti-cgt-c2000_18.12.1.LTS/lib" -i"C:/ti/ccs901/ccs/tools/compiler/ti-cgt-c2000_18.12.1.LTS/include" -i"C:/Users/nconrad/msp399pwm/firmware_F2802x" --reread_libs --issue_remarks --verbose_diagnostics --xml_link_info="Example_2802xHRPWM_linkInfo.xml" --entry_point=code_start --rom_model -o "Example_2802xHRPWM.out" "asmfuncs.obj" "../F2802x_generic_ram.cmd" "../driverlib/F2802x_Headers_nonBIOS.cmd" "f2802x_asmfuncs.obj" "f2802x_codestartbranch.obj" "test.obj" -lrts2800_ml.lib >> Compilation failure makefile:157: recipe for target 'Example_2802xHRPWM.out' failed error: symbol "_pwm_init" redefined: first defined in "<whole-program>"; redefined in "test.obj" error: errors encountered during linking; "Example_2802xHRPWM.out" not built gmake: *** [Example_2802xHRPWM.out] Error 1 gmake: Target 'all' not remade because of errors.