Hi,
I have detected an error in the assembler tool of all CGT versions I tested (6.0.8, 6.1.22, 7.4.2, and 7.4.4, the latest). The error is easily shown by trying to assemble the following code (test.asm) for the C672x DSPs:
.text
.global _test
_test:
NOP
MPYSPDP.M2X A24,B27:B26,B7:B6
.end
The command line used to assemble this piece of code is:
cl6x.exe -mv67p -c test.asm
The assembler gives the following error message:
"test.asm", ERROR! at line 5: [E0800] Erroneous use of cross path with long operand
However, if I use this other piece of code and assemble it:
.text
.global _test
_test:
NOP
.uint 0x036b15b2
.end
An then I use the disassembler with this command line:
dis6x.exe test.obj > test.txt
It outputs:
00000000 00000000 NOP
00000004 036b15b2 MPYSPDP.M2X A24,B27:B26,B7:B6
As you can see, the disassembled code is the same as the original source code. However the original code gives an error when assembling.
Greetings.