+2000-10-24 Richard Henderson <rth@cygnus.com>, Aldy <aldyh@cygnus.com>
+
+ * config/mn10300/mn10300.h (PREFERRED_RELOAD_CLASS): Treat
+ pseudos just like memory.
+
2000-10-24 Alexandre Oliva <aoliva@redhat.com>
* combine.c (distribute_notes): Discard REG_LIBCALL and REG_RETVAL
* expr.c (do_store_flag): Don't crash if either side of a
comparison is error_mark_node.
+>>>>>>> 1.8059
2000-10-24 Jakub Jelinek <jakub@redhat.com>
* sibcall.c (purge_mem_unchanging_flag): New function.
In general this is just CLASS; but on some machines
in some cases it is preferable to use a more restrictive class. */
-#define PREFERRED_RELOAD_CLASS(X,CLASS) \
- ((X) == stack_pointer_rtx && (CLASS) != SP_REGS \
- ? ADDRESS_OR_EXTENDED_REGS \
- : (GET_CODE (X) == MEM \
- ? LIMIT_RELOAD_CLASS (GET_MODE (X), CLASS) \
+#define PREFERRED_RELOAD_CLASS(X,CLASS) \
+ ((X) == stack_pointer_rtx && (CLASS) != SP_REGS \
+ ? ADDRESS_OR_EXTENDED_REGS \
+ : (GET_CODE (X) == MEM \
+ || (GET_CODE (X) == REG \
+ && REGNO (X) >= FIRST_PSEUDO_REGISTER) \
+ || (GET_CODE (X) == SUBREG \
+ && GET_CODE (SUBREG_REG (X)) == REG \
+ && REGNO (SUBREG_REG (X)) >= FIRST_PSEUDO_REGISTER) \
+ ? LIMIT_RELOAD_CLASS (GET_MODE (X), CLASS) \
: (CLASS)))
#define PREFERRED_OUTPUT_RELOAD_CLASS(X,CLASS) \