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/TMS320F28379D: Linker doesn't allocate address to global arrays in RAM load function

Part Number: TMS320F28379D


Tool/software: TI C/C++ Compiler

Hello,

In the following function:

When I remark the pragma (line 300) the function runs from FLASH with the following disassmbly:

When I add the pragma, and copy the code from FLASH to RAM, I get the folowing:

As you can see the linker doesn't allocate the array address and instead place a zero address into XAR4.

Of course this break the code :-(

I'm using the latest tools 20.2.1 LTS in EABI mode.

What I'm missing here? Is it a linker bug?

  • To understand what happened, I need to reproduce the problem.  I don't need to run the code, just build it.  

    If your program is organized as a CCS project, then please follow the directions in the article Sharing projects to create the zip file, then attach the zip file to your next post.  

    If that is not practical ... For the source file that contains the function GetA2DAnalogMux, please follow the directions in the article How to Submit a Compiler Test Case.  In addition, submit the linker command file.  Note the part of the article about how to send it to me privately.

    Thanks and regards,

    -George

  • Thank you for submitting a test case by private message.  I am able to reproduce the problem.  I filed the entry EXT_EP-9947 to have this investigated.  You are welcome to follow it with the link below in my signature.

    Thanks and regards,

    -George