/* Communication between reload.c and reload1.c.
Copyright (C) 1987, 1991, 1992, 1993, 1994, 1995, 1997, 1998,
- 1999, 2000 Free Software Foundation, Inc.
+ 1999, 2000, 2001 Free Software Foundation, Inc.
This file is part of GNU CC.
RELOAD_OTHER, RELOAD_FOR_OTHER_ADDRESS
};
-#ifdef MAX_INSN_CODE
+#ifdef GCC_INSN_CODES_H
/* Each reload is recorded with a structure like this. */
struct reload
{
extern int num_not_at_initial_offset;
-#ifdef MAX_INSN_CODE
-/* These arrays record the insn_code of insns that may be needed to
- perform input and output reloads of special objects. They provide a
- place to pass a scratch register. */
-extern enum insn_code reload_in_optab[];
-extern enum insn_code reload_out_optab[];
-#endif
-
struct needs
{
/* [0] is normal, [1] is nongroup. */
/* Substitute into the current INSN the registers into which we have reloaded
the things that need reloading. */
-extern void subst_reloads PARAMS ((void));
+extern void subst_reloads PARAMS ((rtx));
/* Make a copy of any replacements being done into X and move those copies
to locations in Y, a copy of X. We only look at the highest level of
/* Functions in reload1.c: */
+extern void reload_cse_regs PARAMS ((rtx));
extern int reloads_conflict PARAMS ((int, int));
/* Initialize the reload pass once per compilation. */