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.

TMS320F28388D: Single-word copy tables are incorrectly generated with a length of 2.

Part Number: TMS320F28388D


Tool/software:

HI everyone,

I am encountering an issue with the linker-generated copy tables.

The target is F28388D and I am compiling the attached example project with the C2000 CGT version 22.6.1.LTS with the EABI format.

The issue is that every table with a run size of 1 word is actually generated by the linker with a size of 2 and therefore the handler, e.g __TI_decompress_none(), calls memcpy() with a size of 2 instead of 1 which can lead to data corruption.

The scenario where I encountered this issue was with 16-bit variables that ended up in their own section, either using #pragma DATA_SECTION() or __attribute__((location(...)).

Is this a known and expected behavior? I can't seem to be able to find any reference to this matter in the TI documentation.

Kind Regards,

Pierre

test_case_single_word_section.zip