This is the mail archive of the binutils@sources.redhat.com mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: Why pass HAVE_32BIT_GPRS to OPCODE_IS_MEMBER?



> Same here.  Is the patch below OK?  It uses "addu" instead of "or" with
> -mgp32 and -mabi=32.  Can change it to use "or" if the concensus is that
> that's safer.
> 

I usually prefer or, but at this point I think it is an aesthetic
preference :)

Anyhow, this looks ok to me.  Did you test gcc as well?  mips-elf should
give you enough combinations (mipsI/II,III/IV)...

-eric

> Tested on mips-elf mips64-elf and mipsel-elf.
> 
> [include/ChangeLog]
> 
> 	* opcode/mips.h (INSN_GP32): Remove.
> 	(OPCODE_IS_MEMBER): Remove gp32 parameter.
> 	(M_MOVE): New macro identifier.
> 
> [opcodes/ChangeLog]
> 
> 	* mips-dis.c (print_insn_mips): Remove OPCODE_IS_MEMBER's gp32
> 	argument.
> 	* mips-opc.c (G6): Undefine.
> 	(mips_builtin_opcodes): Remove gp32 entry for "move".  Add macro
> 	as the first "move" alternative.
> 
> [gas/ChangeLog]
> 
> 	* config/tc-mips.c (move_register): New function.
> 	(macro_build): Remove OPCODE_IS_MEMBER's gp32 argument.
> 	(mips_ip): Likewise.
> 	(macro2): Use move_register rather than macro_build for moves.
> 	(mips16_macro): Likewise.
> 	(macro): Likewise.  Handle M_MOVE.
> 
> [gas/testsuite/ChangeLog]
> 
> 	* gas/mips/mips-gp32-fp32.d: Expect addu rather than or for moves.
> 	* gas/mips/mips-gp32-fp64.d: Likewise.
> 	* gas/mips/mips-abi32.d: Likewise.
> 	* gas/mips/mips-gp32-fp32-pic.d: Likewise.
> 	* gas/mips/mips-gp32-fp64-pic.d: Likewise.
> 	* gas/mips/mips-abi32-pic.d: Likewise.
> 


-- 
Look out behind you!


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]