diff options
author | Jim Wilson <wilson@gcc.gnu.org> | 1993-10-05 13:42:25 -0700 |
---|---|---|
committer | Jim Wilson <wilson@gcc.gnu.org> | 1993-10-05 13:42:25 -0700 |
commit | b206a75783f8f5a05bb90cad311592c7b717e97c (patch) | |
tree | 25a25a7a5799221f1040567263ec2a683bafc6d1 | |
parent | cae856a00a52c9adc2d17702a95763df9d42f230 (diff) | |
download | gcc-b206a75783f8f5a05bb90cad311592c7b717e97c.zip gcc-b206a75783f8f5a05bb90cad311592c7b717e97c.tar.gz gcc-b206a75783f8f5a05bb90cad311592c7b717e97c.tar.bz2 |
(CLASS_MAX_NREGS): For DFmode and !TARGET_FLOAT64 case,
return 2 not 4.
(CLASS_UNITS): Take size parameter instead of num (words).
From-SVN: r5618
-rw-r--r-- | gcc/config/mips/mips.h | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/gcc/config/mips/mips.h b/gcc/config/mips/mips.h index 001bd3b..59af3da 100644 --- a/gcc/config/mips/mips.h +++ b/gcc/config/mips/mips.h @@ -1472,15 +1472,15 @@ extern enum reg_class mips_char_to_class[]; /* Return the maximum number of consecutive registers needed to represent mode MODE in a register of class CLASS. */ -#define CLASS_UNITS(mode, num) \ - ((GET_MODE_SIZE (mode) + ((num) * UNITS_PER_WORD) - 1) / ((num) * UNITS_PER_WORD)) +#define CLASS_UNITS(mode, size) \ + ((GET_MODE_SIZE (mode) + (size) - 1) / (size)) #define CLASS_MAX_NREGS(CLASS, MODE) \ - (((CLASS) == FP_REGS && TARGET_FLOAT64) \ - ? CLASS_UNITS (MODE, 2) \ - : (((CLASS) == FP_REGS) \ - ? (2*CLASS_UNITS (MODE, 1)) \ - : CLASS_UNITS (MODE, 1))) + ((CLASS) == FP_REGS \ + ? (TARGET_FLOAT64 \ + ? CLASS_UNITS (MODE, 8) \ + : 2 * CLASS_UNITS (MODE, 8)) \ + : CLASS_UNITS (MODE, UNITS_PER_WORD)) /* If defined, this is a C expression whose value should be nonzero if the insn INSN has the effect of mysteriously |