[PATCHv4] Add support for O32 FPXX ABI

Maciej W. Rozycki macro@codesourcery.com
Mon Jul 28 21:14:00 GMT 2014


On Mon, 28 Jul 2014, Richard Sandiford wrote:

> > I would also like to get rid of all the ctc1/cfc1/cttc1/cftc1 instructions
> > that allow the use of floating point register names: $f0. The problem with
> > these is that they don't actually write floating point registers but they
> > will interact with the oddspreg logic as their operands have type
> > OP_REG_FP. Anything relying on ctc1 $0, $f[0-31] is probably expecting the
> > wrong thing to happen anyway. If that's OK I'll do a separate patch?
> 
> It's always dangerous to change something long-standing like that, but
> I agree it's weird.  OTOH "ctc1 $0, $31" could be seen as confusing too
> (it isn't GPR 31).

 Nor even a general coprocessor register (though I'm used to numeric $n 
standing in MIPS-speak for any kind of register).  If confusion is to be 
avoided I'd envisage adding $c[0-31] aliases with `c' standing for 
"control", i.e.:

	ctc1	$0, $c31

(in addition to any "cooked" aliases such as "c1_fir").

  Maciej



More information about the Binutils mailing list