I am writing assembly for the Hercules platform in CCS. Is there anywhere I can find a reference showing the instruction set? I have found a reference card for ARM, but many of the instructions seem to be different.
Thanks,
Westin
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.
I am writing assembly for the Hercules platform in CCS. Is there anywhere I can find a reference showing the instruction set? I have found a reference card for ARM, but many of the instructions seem to be different.
Thanks,
Westin
At infocenter.arm.com, look for these 2 documents.
DDI0406A, ARM Arch Ref Man ARM-7 A and R.pdf
DDI0308D, Thumb-2 Supplement Ref Man.pdf
What is it that is different in CCS than other ARM assemblers? Are the mnemonics different? One instruction in particular is CBNZ. If I try that, it says "[E0002] Illegal mnemonic specified".
Westin
As far as I know TI assemblers use standard ARM syntax I never noticed any discrepancies.. You will have to post a new question or get one of the TI moderators to move this thread to the compiler forum.
Can you show us your syntax?
Two things, CBNZ is a Thumb only instruction. If you attempt to assemble it into ARM code you get the
"[E0002] Illegal mnemonic" message. Also CBNZ can only branch forward.
"Compare and Branch on Nonzero and Compare and Branch on Zero compares the value in a register with
zero, and conditionally branches forward a constant value. They do not affect the condition flags."
A word of caution on DDI0308D, ARM's Thumb-2 supplement. This document was originally created in ~2005 when the Thumb2 instruction set was new and the ARM architecture reference manual (ARM ARM) did not include Thumb-2 instructions. In other words, it was a stopgap documentation solution.
The contents of this document should now be incorporated into the v7A/R ARM ARM. I believe that ARM was to obsolete the DDI0308 document as a result.
Regards,
Karl