I'm using a C5515 EVM, a v3.0 core. My assembler code contains the following mnemonic instruction:
MANT AC0, AC0
::NEXP AC0, T1
|| SFTL AC1, #-31, AC1
On the simulator, everything works as expected: AC0, AC1, and T1 are all modified. On the C5515, T1 and AC1 are modified as expected, but AC0 does not get modified. I suspect that the v3.0 core is unable to shift both AC0 and AC1 in the same cycle. If this is true and expected behavior, then the assembler should be modified to catch this type of parallel instruction. If this is true but unexpected behavior, then the silicon errata should be updated.