darwin.h (PREFERRED_RELOAD_CLASS): Always return a subset of the input class.

* config/rs6000/darwin.h (PREFERRED_RELOAD_CLASS): Always return
	a subset of the input class.

From-SVN: r71128
This commit is contained in:
Geoffrey Keating 2003-09-06 04:07:18 +00:00 committed by Geoffrey Keating
parent e7f115de8d
commit c55a59cc63
2 changed files with 16 additions and 10 deletions

View File

@ -1,3 +1,8 @@
2003-09-05 Geoffrey Keating <geoffk@apple.com>
* config/rs6000/darwin.h (PREFERRED_RELOAD_CLASS): Always return
a subset of the input class.
2003-09-05 Kazu Hirata <kazu@cs.umass.edu>
* config/i860/i860.c: Follow spelling conventions.

View File

@ -245,16 +245,17 @@ do { \
a SYMBOL_REF. */
#undef PREFERRED_RELOAD_CLASS
#define PREFERRED_RELOAD_CLASS(X,CLASS) \
(((GET_CODE (X) == CONST_DOUBLE \
&& GET_MODE_CLASS (GET_MODE (X)) == MODE_FLOAT) \
? NO_REGS \
: (GET_MODE_CLASS (GET_MODE (X)) == MODE_INT \
&& (CLASS) == NON_SPECIAL_REGS) \
? GENERAL_REGS \
: (GET_CODE (X) == SYMBOL_REF || GET_CODE (X) == HIGH) \
? BASE_REGS \
: (CLASS)))
#define PREFERRED_RELOAD_CLASS(X,CLASS) \
((GET_CODE (X) == CONST_DOUBLE \
&& GET_MODE_CLASS (GET_MODE (X)) == MODE_FLOAT) \
? NO_REGS \
: ((GET_CODE (X) == SYMBOL_REF || GET_CODE (X) == HIGH) \
&& reg_class_subset_p (BASE_REGS, (CLASS))) \
? BASE_REGS \
: (GET_MODE_CLASS (GET_MODE (X)) == MODE_INT \
&& (CLASS) == NON_SPECIAL_REGS) \
? GENERAL_REGS \
: (CLASS))
/* Fix for emit_group_load (): force large constants to be pushed via regs. */
#define ALWAYS_PUSH_CONSTS_USING_REGS_P 1