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.

Compiler/MSP430F67791: TI C/C++ Compiler

Part Number: MSP430F67791

Tool/software: TI C/C++ Compiler

Hi,

I have code which is originally developed in CCS V 5.5.0 and compiled using TI compiler V4.1.5 ,

I am trying to upgrade my existing tools so I have compiled my code using CCS V7.1.0 and TI compiler TI v16.9.1.LTS .

I observed that I am getting different output file as compare to original one using latest compiler. Can anyone please tell me how I can migrate from older compiler to latest one? Why there is difference between generated output files which are failed to download on my MSP430 hardware?

Thanks,

Tushar

  • Tushar Ahire said:
    I have code which is originally developed in CCS V 5.5.0 and compiled using TI compiler V4.1.5

    That compiler is 4 years old.

    Tushar Ahire said:
    I observed that I am getting different output file as compare to original one using latest compiler.

    That's vague.  My guess is the ABI.  In version 4.1.x compilers, the older COFF ABI was the default.  You could get the newer EABI by using the option --abi=eabi.  In version 16.9.x.LTS compilers, EABI is the only ABI supported.  

    Changing the ABI is significant.  Even so, CCS and other consumers of TI executable files have worked with the newer EABI for years now.

    Tushar Ahire said:
    Why there is difference between generated output files which are failed to download on my MSP430 hardware?

    Exactly what do you see which leads to you to this conclusion?  Precisely how do you see it?

    Thanks and regards,

    -George

  • Hi George, Thanks for the information. I am first time working with TI/Controllers/Compilers. I checked the compiler flags in CCS V5.5.0 and in CCS V 7.1.0, which are "-vmspx --abi=eabi --code_model=large --data_model=large --near_data=globals -O4 --opt_for_speed=5 -g ".

    So both the compilers using same flags.

    George

    Exactly what do you see which leads to you to this conclusion?  Precisely how do you see it?

    I have converted ".out" files created in both versions of CCS (using different compilers mentioned earlier) into TI txt format and compared the both , I am able to see difference in both the files.

    Is this because of  so many changes in compiler code from 4.1.x to 16.9.x ? If I want to use latest version of  TI Compiler and CCS, which things I should dig into?

  • Tushar Ahire said:
    Is this because of  so many changes in compiler code from 4.1.x to 16.9.x ?

    Yes.  Compilers released so far apart will have many differences in the code generated for the same source.  Despite these differences, the code acts the same when executed.  

    So, your method of comparison is flawed.  It sees many differences that are of no consequence.  

    Tushar Ahire said:
    If I want to use latest version of  TI Compiler and CCS, which things I should dig into?

    I'm not sure.  What do you care about?  

    Thanks and regards,

    -George