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.

Compiling failure from ti-cgt-c2000_18.1.1.LTS to ti-cgt-c2000_19.6.0.STS

Part Number: TMS320F280041


Tool/software: TI C/C++ Compiler

Hello,
customer got following erroro message after changing the compiler from ti-cgt-c2000_18.1.1.LTS to ti-cgt-c2000_19.6.0.STS:

Compiling ../30_Bsw/Mcal/Cap/Cap.c ...
>> ../30_Bsw/Mcal/Cap/Cap.c, line 128: INTERNAL ERROR: >>>Register allocation failed: CapStatusUpdate
This may be a serious problem.  Please contact customer support with a description of this problem and a sample of the source files that caused this INTERNAL ERROR message to appear.
Cannot continue compilation - ABORTING!
>> Compilation failure

 

Same error message with the timer module:

Compiling ../30_Bsw/Mcal/Gpt/Gpt.c ...
>> ../30_Bsw/Mcal/Gpt/Gpt.c, line 204: INTERNAL ERROR: >>>Register allocation failed: Gpt_Isr1ms
This may be a serious problem.  Please contact customer support with a description of this problem and a sample of the source files that caused this INTERNAL ERROR message to appear.
Cannot continue compilation - ABORTING!
>> Compilation failure

The compiler was running until the end after comment the error line in Cap.c and Gpt.c!

Questions:
1. Is this a compiler failure?
2. How to fix this problem?
3. Why is the compiler output different of ti-cgt-c2000_18.1.1.LTS and ti-cgt-c2000_19.6.0.STS? What has changed?

4. They use the safety diagnose lib which is compiled by the ti-cgt-c2000_19.6.0.STS. Can they use the diagnose lib also with the ti-cgt-c2000_18.1.1.LTS?

Regards, Holger

  • HS WG-FAE said:
    1. Is this a compiler failure?

    Yes

    HS WG-FAE said:
    2. How to fix this problem?

    I don't know.  I need a test case that allows me to reproduce the problem.  Then I'll submit an entry into the SDOWP system and the development team will investigate.  The result of that investigation often includes a workaround.

    For the source files Cap.c and Gpt.c, please follow the directions in the article How to Submit a Compiler Test Case.

    HS WG-FAE said:
    3. Why is the compiler output different of ti-cgt-c2000_18.1.1.LTS and ti-cgt-c2000_19.6.0.STS? What has changed?

    About 1.5 years of development separates those releases.  For a summary of the new features and bug fixes, see the file README.txt in the root directory of the compiler installation.

    HS WG-FAE said:
    4. They use the safety diagnose lib which is compiled by the ti-cgt-c2000_19.6.0.STS. Can they use the diagnose lib also with the ti-cgt-c2000_18.1.1.LTS?

    That combination has not been tested.  Further, it violates one of the basic rules of compiler toolchain compatibility.  The version of the linker must be >= the version of the tools used to build any object file or library.  In this specific case, it is possible that object modules from the safety diagnostic library (built with 19.6.0.STS) may contain new debug information, or something similar, which the older (version 18.1.1.LTS) linker does not know how to handle.

    Thanks and regards,

    -George

  • Thank you for sending in a test case through private channels.  I can reproduce the problem.  I filed the entry CODEGEN-6932 in the SDOWP system to have this investigated.  You are welcome to follow it with the SDOWP link below in my signature.

    Thanks and regards,

    -George

  • Hello George,
    customer ask for a schedule of a fix of this problem.

    Can I set an email notification on the SDOWP when the thread change?

    Regards, Holger

  • HS WG-FAE said:
    customer ask for a schedule of a fix of this problem.

    A compiler release with this problem fixed will be available in February 2020.

    HS WG-FAE said:
    Can I set an email notification on the SDOWP when the thread change?

    Unfortunately, no.

    Thanks and regards,

    -George