MIPS gas problems
Tue Nov 18 11:53:00 GMT 1997
I have been trying to use gas MIPS (a version provided by Cygnus)
and have run into two problems. If anyone can shed some light on
this, please do...
1) There is a -4010 switch which is supposed to provide support for
the LSI Logic CW4010 core. It accepts all the 4010 special
instructions except MAX and MIN. These are in the LSI Logic manual as
valid instructions, so why were they left out? The release notes for
the latest FSF release I have say they were implemented by LSI Logic,
and provides a list of what they added. Sure enough, they list all
the instructions except these two.
2) The latest binary I got from Cygnus via my customer has a -mips16
switch, but I can't get it to accept any MIPS16 instructions. It
always complains about bad operands, regardless of the form in whcih
they are specified. Example "or rx,ry" is the form for MIPS16. It
doesn't like "or $0,$0", "or 0, 0", "or r0,r0" ... so what does it
want? It also doesn't like "jr ra" which is supposed to be legal for
MIPS16. This should not be a register name to register number
translation problem, since MIPS16 does not include ra as one of its
registers. I.e., in the MIPS16 ISA, ra is a literal, not the name of
a register for which a number is to be substituted. Thus, the
assembler ought to be able to deal with it.
Kenneth F. Greenberg, President
California Advanced Software Tools, Inc.
Los Gatos, CA, USA
More information about the crossgcc