i386.h (PREFERRED_RELOAD_CLASS): Respect an existing class narrower than FLOAT_REGS.

* i386.h (PREFERRED_RELOAD_CLASS): Respect an existing class
        narrower than FLOAT_REGS.

From-SVN: r22454
This commit is contained in:
Richard Henderson 1998-09-16 08:26:22 -07:00 committed by Richard Henderson
parent 0d7138a12f
commit b66a3ac1ad
2 changed files with 10 additions and 3 deletions

View File

@ -1,3 +1,8 @@
Wed Sep 16 15:24:54 1998 Richard Henderson <rth@cygnus.com>
* i386.h (PREFERRED_RELOAD_CLASS): Respect an existing class
narrower than FLOAT_REGS.
Wed Sep 16 17:51:00 1998 Alexandre Oliva <oliva@dcc.unicamp.br>
* cpplib.c: removed OLD_GPLUSPLUS_INCLUDE_DIR

View File

@ -931,9 +931,11 @@ enum reg_class
Narrow ALL_REGS to GENERAL_REGS. This supports allowing movsf and
movdf to do mem-to-mem moves through integer regs. */
#define PREFERRED_RELOAD_CLASS(X,CLASS) \
(GET_CODE (X) == CONST_DOUBLE && GET_MODE (X) != VOIDmode \
? (standard_80387_constant_p (X) ? FLOAT_REGS : NO_REGS) \
#define PREFERRED_RELOAD_CLASS(X,CLASS) \
(GET_CODE (X) == CONST_DOUBLE && GET_MODE (X) != VOIDmode \
? (standard_80387_constant_p (X) \
? reg_class_subset_p (CLASS, FLOAT_REGS) ? CLASS : FLOAT_REGS \
: NO_REGS) \
: GET_MODE (X) == QImode && ! reg_class_subset_p (CLASS, Q_REGS) ? Q_REGS \
: ((CLASS) == ALL_REGS \
&& GET_MODE_CLASS (GET_MODE (X)) == MODE_FLOAT) ? GENERAL_REGS \