binutils patches for Cirrus/arm9e/maverick support
Richard Earnshaw
rearnsha@arm.com
Thu Oct 11 02:46:00 GMT 2001
Aldy,
I've just run into another problem with trying to merge this code with my
own.
I'm going to have to rewrite cirrus_reg_required_here, since in my new
parser there is no single hash table containing all the registers; instead
there is a hash table for each class of register and the assembler must
look up the register name in the appropriate class. Which leads to the
above function. There are several places where the above is called with
CIRRUS_REGTYPE_ANY. That wouldn't be too bad, but why on earth would an
ARM register name be valid at the same position in the syntax as a CIRRUS
register? and how on earth are the opcodes supposed to distinguish which
class of register was found? It leads me to the only conclusion that the
parser is far to liberal with what it will accept, meaning that many
invalid statements will be assembled without fault.
What is valid? and what isn't?
R.
More information about the Binutils
mailing list