coldfire coprocessor instructions

Nathan Sidwell nathan@codesourcery.com
Mon Jun 18 13:28:00 GMT 2007


Coldfire has some coprocessor instructions, that prior to last week I was 
unaware of.

This patch implements those instructions.  It was slightly tricky for two reasons:

1) these instructions have new operand fields, so I got to make up some encoding 
letters for them.

2) these instructions are 2 words long, but have no fixed bits in the second 
word.  The assembler's 'this is a kludge' mechanism for determining the initial 
instruction length breaks.  The way I chose to indicate this is by stealing the 
first char from the arg format string.  If it is a '.', then the instruction is 
two words long.  We then skip the '.' and move on to regular argument 
processing.  This is, of course, still a kludge :)

I've attached the details Freescale sent me about these instructions.

All cores 'support' these instructions.  Cores that have no coprocessors will 
cause a non-supported instruction exception.  That's currently all cores except 
52235, 54451, 54453 & 54455, which have a Cryptographic Accelleration Unit.

ok?

nathan
-- 
Nathan Sidwell    ::   http://www.codesourcery.com   ::         CodeSourcery
nathan@codesourcery.com    ::     http://www.planetfall.pwp.blueyonder.co.uk

-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: coproc.diff
URL: <https://sourceware.org/pipermail/binutils/attachments/20070618/1900964c/attachment.ksh>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: cf_prm_coproc.pdf
Type: application/pdf
Size: 73905 bytes
Desc: not available
URL: <https://sourceware.org/pipermail/binutils/attachments/20070618/1900964c/attachment.pdf>


More information about the Binutils mailing list