[EXT_EP-10872] Compiler creates illegal instruction with non-vector SE access and operation Created: 03/Aug/22  Updated: 15/Feb/23  Resolved: 15/Feb/23

Status: Fixed
Project: Embedded Software & Tools
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: Medium
Reporter: TI User Assignee: TI User
Resolution: Fixed Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Product: Code Generation Tools
Internal ID: CODEGEN-10294
Found In Release: C7000_3.0.0.STS
Fix In Release: C7000_3.1.0.LTS
Affected Platform/Device: default
Workaround: A potential workaround is to ensure that the streaming engine (SE) is set up to load more than 64-bits from the SE in a single access.

 Description   

When (1) the streaming engine (SE) is being actively used by the programmer, and (2) when the streaming engine (SE) is set up to access 64-bits or less, and (3) when the result of the SE load is used in a scalar (non-vector) operation, the compiler may generate an illegal instruction that causes the assembly to emit a fatal error message.

"test.asm", ERROR! at line 209: [E0003] Invalid instruction
VSUBSP .L1X SE0++,AL0,A4 ; [A_L1] |19|

A potential workaround is to ensure that the SE is set up to load more than 64-bits from the SE in a single access.


Generated at Thu Apr 17 10:05:10 CDT 2025 using Jira 9.12.17#9120017-sha1:aba4002bcd633f188b6a4bb5dd8a0e1f20b79ee4.