Richard Sandiford ca4e0257d1 * doc/c-mips.tex (-mgp32, -mfp32): Added -mfp32, unified with -mgp32.
* config/tc-mips.c (mips_fp32, mips_32bit_abi): New static variables.
	(md_long_opts): Add -mfp32 option.
	(md_parse_option): Handle it.  Set mips_32bit_abi given -mabi=32.
	(md_show_usage): Show usage for -mfp32 and -mgp32.
	(HAVE_32BIT_GPRS, HAVE_32BIT_FPRS): New macros.
	(HAVE_64BIT_GPRS, HAVE_64BIT_FPRS): New macros, inverse of the above.
	(HAVE_32BIT_ADDRESSES): New macro.
	(load_register): Use HAVE_32BIT_GPRS to determine the register width.
	(load_address): Use HAVE_32BIT_ADDRESSES to determine the address size.
	(s_cprestore, s_cpadd): Likewise.
	(macro): Use HAVE_32BIT_GPRS to determine the width of registers
	used in branch and M_LI_D macros.  Use HAVE_64BIT_FPRS to determine
	the width registers used in M_LI_DD macros.  Use HAVE_32BIT_ADDRESSES
	to determine the width of addresses in load, store and jump macros.
	(macro2): Use HAVE_32BIT_GPRS to determine the width of registers
	used in set instructions; do not check the address size for them.
	Use HAVE_32BIT_ADDRESSES to determine the width of addresses in
	unaligned load and store macros.
	(mips_ip): Use the new macros to check the width of a register when
	processing float constants.  Force a constant into memory if it is
	destined for an FPR and the FPRs are wider than the GPRs.  Warn about
	odd FPR numbers if HAVE_32BIT_FPRS.  Use HAVE_32BIT_GPRS rather
	than mips_gp32 to select synthetic instructions.
	(macro_build): Use HAVE_32BIT_GPRS rather than mips_gp32 to select
	synthetic instructions.
2001-08-02 10:15:24 +00:00
..
2001-07-10 10:11:35 +00:00
2001-03-08 23:24:26 +00:00
2001-03-08 23:24:26 +00:00
2001-03-08 23:24:26 +00:00
1999-05-03 07:29:11 +00:00
1999-05-03 07:29:11 +00:00
1999-05-03 07:29:11 +00:00
2001-03-08 23:24:26 +00:00
2001-03-08 23:24:26 +00:00
2001-03-08 23:24:26 +00:00
2001-03-08 23:24:26 +00:00
2001-03-08 23:24:26 +00:00
2001-03-08 23:24:26 +00:00
2001-03-08 23:24:26 +00:00
2001-03-08 23:24:26 +00:00
2001-03-08 23:24:26 +00:00
2001-03-08 23:24:26 +00:00
2001-03-08 23:24:26 +00:00
2001-03-08 23:24:26 +00:00
2001-03-08 23:24:26 +00:00
2001-03-08 23:24:26 +00:00
2001-03-08 23:24:26 +00:00
2001-03-08 23:24:26 +00:00
2001-03-08 23:24:26 +00:00
2001-03-08 23:24:26 +00:00
1999-05-03 07:29:11 +00:00