This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: mips cc1 spec vs. fp reg defines vs. assembly code
At 09 Jun 2002 12:57:46 -0700, Eric Christopher wrote:
> ps. Send me the changes that you made in config.gcc for mipsisa64...
> there might be a problem there as well.
at first i used only:
mipsisa64-*-elf*)
tm_file="mips/isa3264.h mips/abi64.h"
tmake_file=mips/t-isa3264
;;
(which would set the compiled-in default ISA to mips32), and then
forced -mips64 on the cmd line. I don't _think_ there should be harm
from having the default isa not match the target name, but anyway,
just in case i'm also now trying:
mipsisa64-*-elf*)
tm_file="mips/isa64.h mips/isa3264.h mips/abi64.h"
tmake_file=mips/t-isa3264
;;
with "isa64.h" containing only:
#ifndef MIPS_ISA_DEFAULT
#define MIPS_ISA_DEFAULT 64
#endif
(!!! waiting for tm_defines; please don't try to apply this 8-).
chris
ps. i recently noticed some problems w/ some of the macros in mips.h,
which it looks like you've touched but not fixed. I can send a patch
if you'd like, but it looks like it'll just cause you conflicts. 8-)
> /* This is a catch all for the other new mips4 instructions: indexed load and
> indexed prefetch instructions, the FP madd,msub,nmadd, and nmsub instructions,
> and the FP recip and recip sqrt instructions */
> -#define ISA_HAS_FP4 (mips_isa == 4 \
> +#define ISA_HAS_FP4 (ISA_MIPS4 \
> && ! TARGET_MIPS16)
this should be (ISA_MIPS4 || ISA_MIPS64) && ..., i believe.
also, use of nmadd / nmsub are actually conditionalized differently.
> /* ISA has multiply-accumulate instructions, madd and msub. */
> -#define ISA_HAS_MADD_MSUB ((mips_isa == 32 \
> - || mips_isa == 64 \
> +#define ISA_HAS_MADD_MSUB ((ISA_MIPS32 \
> + || ISA_MIPS64 \
> ) && ! TARGET_MIPS16)
i added a comment here "integer", to differentiate from fp madd/msub
which is covered by ISA_HAS_FP4, and ISA_HAS_NMADD_NMSUB which does fp
nmadd/nmsub.
> /* ISA has nmadd and nmsub instructions. */
> -#define ISA_HAS_NMADD_NMSUB (mips_isa == 4 \
> +#define ISA_HAS_NMADD_NMSUB (ISA_MIPS4 \
> && ! TARGET_MIPS16)
here, again, MIPS64, and added a comment "floating-point." 8-)