* doc/c-mips.tex (-mgp32, -mfp32): Added -mfp32, unified with -mgp32.
commit70be007578c5eb1a925d17e505b6557747c4966e
authorRichard Sandiford <rsandifo@nildram.co.uk>
Thu, 2 Aug 2001 10:15:24 +0000 (2 10:15 +0000)
committerRichard Sandiford <rsandifo@nildram.co.uk>
Thu, 2 Aug 2001 10:15:24 +0000 (2 10:15 +0000)
tree875679c2c8385e2792d067d11ced938c2e07d04e
parent222db5e3bb589a2b9b0dc0e49eecfef041473a4e
* 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.
gas/ChangeLog
gas/config/tc-mips.c
gas/doc/c-mips.texi