Commit e6a8ebb4 by Richard Henderson Committed by Richard Henderson

alpha.h (HARD_REGNO_MODE_OK): Allow only 4 and 8 byte unit modes in FP regs.

        * alpha.h (HARD_REGNO_MODE_OK): Allow only 4 and 8 byte unit modes
        in FP regs.
        (MODES_TIEABLE_P): Define asymmetricly wrt modes illegal in FP regs.

From-SVN: r25825
parent aec3cfba
Wed Mar 17 14:51:19 1999 Richard Henderson <rth@cygnus.com>
* alpha.h (HARD_REGNO_MODE_OK): Allow only 4 and 8 byte unit modes
in FP regs.
(MODES_TIEABLE_P): Define asymmetricly wrt modes illegal in FP regs.
Wed Mar 17 14:41:41 1999 Nick Clifton <nickc@cygnus.com> Wed Mar 17 14:41:41 1999 Nick Clifton <nickc@cygnus.com>
* config/arm/aout.h (ASM_GENERATE_INTERNAL_LABEL): Fix compile * config/arm/aout.h (ASM_GENERATE_INTERNAL_LABEL): Fix compile
......
...@@ -622,17 +622,20 @@ extern void override_options (); ...@@ -622,17 +622,20 @@ extern void override_options ();
registers can hold 32-bit and 64-bit integers as well, but not 16-bit registers can hold 32-bit and 64-bit integers as well, but not 16-bit
or 8-bit values. */ or 8-bit values. */
#define HARD_REGNO_MODE_OK(REGNO, MODE) \ #define HARD_REGNO_MODE_OK(REGNO, MODE) \
((REGNO) < 32 || ((MODE) != QImode && (MODE) != HImode)) ((REGNO) >= 32 && (REGNO) <= 62 \
? GET_MODE_UNIT_SIZE (MODE) == 8 || GET_MODE_UNIT_SIZE (MODE) == 4 \
: 1)
/* A C expression that is nonzero if a value of mode
MODE1 is accessible in mode MODE2 without copying.
/* Value is 1 if it is a good idea to tie two pseudo registers This asymmetric test is true when MODE1 could be put
when one has mode MODE1 and one has mode MODE2. in an FP register but MODE2 could not. */
If HARD_REGNO_MODE_OK could produce different values for MODE1 and MODE2,
for any hard reg, then this must be 0 for correct output. */
#define MODES_TIEABLE_P(MODE1, MODE2) \ #define MODES_TIEABLE_P(MODE1, MODE2) \
((MODE1) == QImode || (MODE1) == HImode \ (HARD_REGNO_MODE_OK (32, (MODE1)) \
? (MODE2) == QImode || (MODE2) == HImode \ ? HARD_REGNO_MODE_OK (32, (MODE2)) \
: 1) : 1)
/* Specify the registers used for certain standard purposes. /* Specify the registers used for certain standard purposes.
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment