+2004-08-04 Zack Weinberg <zack@codesourcery.com>
+
+ * Makefile.in (RTL_BASE_H, RTL_H): Correct.
+ (BUILD_RTL): Remove $(BUILD_PREFIX) from ggc-none.o.
+ (genobjs): Add errors.o, ggc-none.o, and min-insn-modes.o.
+ (read-rtl.o, gensupport.o, genconfig.o, genflags.o, gencodes.o)
+ (genconstants.o, genemit.o, genopinit.o, genrecog.o, genextract.o)
+ (genpeep.o, genattr.o, genattrtab.o, genautomata.o, genoutput.o)
+ (genconditions.o): Depend on $(RTL_BASE_H) not $(RTL_H).
+ (ggc-none.o, errors.o): Move rule to generators section;
+ correct dependencies.
+ (min-insn-modes.o): Move rule to generators section; remove
+ unnecessary explicit command; correct dependencies.
+ (print-rtl.o, print-rtl1.o): Correct dependencies.
+ ($(BUILD_PREFIX_1)errors.o. $(BUILD_PREFIX_1)ggc-none.o): Delete rule.
+ (mostlyclean): Update.
+
+ * errors.c: Include bconfig.h not config.h. Correct comment.
+ * gengtype.c, genpreds.c: Don't define NO_GENRTL_H.
+ * ggc-none.c: Include bconfig.h; not config.h or tm.h.
+ * print-rtl.c: Don't include tm_p.h.
+
+ * rtl.h: Move forward-decl of struct function down where it's
+ needed. Include genrtl.h #ifndef GENERATOR_FILE, not
+ #ifndef NO_GENRTL_H. Remove unnecessary #ifdef BUFSIZ statements.
+
2004-08-04 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
Jeff Law <law@redhat.com>
LANGHOOKS_DEF_H = langhooks-def.h $(HOOKS_H)
TARGET_DEF_H = target-def.h $(HOOKS_H)
MACHMODE_H = machmode.h mode-classes.def insn-modes.h
-RTL_BASE_H = rtl.h rtl.def $(MACHMODE_H)
-RTL_H = $(RTL_BASE_H) genrtl.h input.h statistics.h
+RTL_BASE_H = rtl.h rtl.def $(MACHMODE_H) input.h statistics.h
+RTL_H = $(RTL_BASE_H) genrtl.h
PARAMS_H = params.h params.def
TREE_H = tree.h tree.def $(MACHMODE_H) tree-check.h builtins.def \
input.h statistics.h vec.h
BUILD_LIBS = $(BUILD_LIBIBERTY)
BUILD_RTL = $(BUILD_PREFIX)rtl.o read-rtl.o \
- $(BUILD_PREFIX)ggc-none.o min-insn-modes.o
+ ggc-none.o min-insn-modes.o
BUILD_SUPPORT = gensupport.o insn-conditions.o
BUILD_EARLY_SUPPORT = gensupport.o dummy-conditions.o
stringpool.o: stringpool.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
$(TREE_H) $(GGC_H) gt-stringpool.h
-ggc-none.o: ggc-none.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(GTM_H) $(GGC_H)
- $(CC) -c $(ALL_CFLAGS) -DGENERATOR_FILE $(ALL_CPPFLAGS) $(INCLUDES) $< $(OUTPUT_OPTION)
-
prefix.o: prefix.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) Makefile prefix.h
$(CC) $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) \
-DPREFIX=\"$(prefix)\" \
$(CC) -c $(ALL_CFLAGS) -DGENERATOR_FILE $(ALL_CPPFLAGS) $(INCLUDES) $< $(OUTPUT_OPTION)
print-rtl.o : print-rtl.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
- $(RTL_H) $(TREE_H) hard-reg-set.h $(BASIC_BLOCK_H) real.h $(TM_P_H)
+ $(RTL_H) $(TREE_H) hard-reg-set.h $(BASIC_BLOCK_H) real.h
rtlanal.o : rtlanal.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) toplev.h \
$(RTL_H) hard-reg-set.h $(TM_P_H) insn-config.h $(RECOG_H) real.h $(FLAGS_H) \
$(BASIC_BLOCK_H) $(REGS_H) output.h target.h function.h
-errors.o : errors.c $(CONFIG_H) $(SYSTEM_H) errors.h
- $(CC) -c $(ALL_CFLAGS) -DGENERATOR_FILE $(ALL_CPPFLAGS) $(INCLUDES) $< $(OUTPUT_OPTION)
-
varasm.o : varasm.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) $(RTL_H) \
$(FLAGS_H) function.h $(EXPR_H) hard-reg-set.h $(REGS_H) \
output.h $(C_PRAGMA_H) toplev.h xcoffout.h debug.h $(GGC_H) $(TM_P_H) \
genobjs=$(genprognames:%=%.o) read-rtl.o gensupport.o genattrtab.o \
genautomata.o gengenrtl.o genmodes.o genpreds.o gengtype.o \
genconstants.o gen-protos.o scan.o fix-header.o scan-decls.o \
- gencheck.o dummy-conditions.o genconditions.o
+ gencheck.o dummy-conditions.o genconditions.o errors.o ggc-none.o \
+ min-insn-modes.o
$(genprogs): %$(build_exeext): %.o $(BUILD_RTL) $(BUILD_SUPPORT) \
$(BUILD_PRINT) $(BUILD_ERRORS) \
$(BUILD_ERRORS) $(BUILD_LIBS)
$(genobjs): %.o : %.c
- $(CC_FOR_BUILD) -c $(BUILD_CFLAGS) $(BUILD_CPPFLAGS) $(INCLUDES) $< $(OUTPUT_OPTION)
+ $(CC_FOR_BUILD) -c $(BUILD_CFLAGS) $(BUILD_CPPFLAGS) $(INCLUDES) \
+ $< $(OUTPUT_OPTION)
-read-rtl.o: read-rtl.c $(BCONFIG_H) $(SYSTEM_H) coretypes.h $(GTM_H) $(RTL_H) \
+read-rtl.o: read-rtl.c $(BCONFIG_H) $(SYSTEM_H) coretypes.h $(GTM_H) $(RTL_BASE_H) \
$(OBSTACK_H) $(HASHTAB_H)
-gensupport.o: gensupport.c $(BCONFIG_H) $(SYSTEM_H) coretypes.h $(GTM_H) $(RTL_H) \
+gensupport.o: gensupport.c $(BCONFIG_H) $(SYSTEM_H) coretypes.h $(GTM_H) $(RTL_BASE_H) \
$(OBSTACK_H) errors.h $(HASHTAB_H) gensupport.h
-genconfig.o : genconfig.c $(RTL_H) $(BCONFIG_H) \
+genconfig.o : genconfig.c $(RTL_BASE_H) $(BCONFIG_H) \
$(SYSTEM_H) coretypes.h $(GTM_H) errors.h gensupport.h
-genflags.o : genflags.c $(RTL_H) $(OBSTACK_H) $(BCONFIG_H) \
+genflags.o : genflags.c $(RTL_BASE_H) $(OBSTACK_H) $(BCONFIG_H) \
$(SYSTEM_H) coretypes.h $(GTM_H) errors.h gensupport.h
-gencodes.o : gencodes.c $(RTL_H) $(BCONFIG_H) \
+gencodes.o : gencodes.c $(RTL_BASE_H) $(BCONFIG_H) \
$(SYSTEM_H) coretypes.h $(GTM_H) errors.h gensupport.h
genconstants$(build_exeext) : genconstants.o $(BUILD_RTL) $(BUILD_EARLY_SUPPORT) \
genconstants.o $(BUILD_EARLY_SUPPORT) $(BUILD_RTL) \
$(BUILD_ERRORS) $(BUILD_LIBS)
-genconstants.o : genconstants.c $(RTL_H) $(BCONFIG_H) $(SYSTEM_H) coretypes.h $(GTM_H) \
+genconstants.o : genconstants.c $(RTL_BASE_H) $(BCONFIG_H) $(SYSTEM_H) coretypes.h $(GTM_H) \
errors.h
-genemit.o : genemit.c $(RTL_H) $(BCONFIG_H) $(SYSTEM_H) coretypes.h $(GTM_H) \
+genemit.o : genemit.c $(RTL_BASE_H) $(BCONFIG_H) $(SYSTEM_H) coretypes.h $(GTM_H) \
errors.h gensupport.h
-genopinit.o : genopinit.c $(RTL_H) $(BCONFIG_H) \
+genopinit.o : genopinit.c $(RTL_BASE_H) $(BCONFIG_H) \
$(SYSTEM_H) coretypes.h $(GTM_H) errors.h gensupport.h
-genrecog.o : genrecog.c $(RTL_H) $(BCONFIG_H) \
+genrecog.o : genrecog.c $(RTL_BASE_H) $(BCONFIG_H) \
$(SYSTEM_H) coretypes.h $(GTM_H) errors.h gensupport.h
-genextract.o : genextract.c $(RTL_H) $(BCONFIG_H) \
+genextract.o : genextract.c $(RTL_BASE_H) $(BCONFIG_H) \
$(SYSTEM_H) coretypes.h $(GTM_H) insn-config.h errors.h gensupport.h
-genpeep.o : genpeep.c $(RTL_H) $(BCONFIG_H) $(SYSTEM_H) coretypes.h $(GTM_H) \
+genpeep.o : genpeep.c $(RTL_BASE_H) $(BCONFIG_H) $(SYSTEM_H) coretypes.h $(GTM_H) \
errors.h gensupport.h
-genattr.o : genattr.c $(RTL_H) $(BCONFIG_H) $(SYSTEM_H) coretypes.h $(GTM_H) errors.h \
+genattr.o : genattr.c $(RTL_BASE_H) $(BCONFIG_H) $(SYSTEM_H) coretypes.h $(GTM_H) errors.h \
gensupport.h
genattrtab$(build_exeext) : genattrtab.o genautomata.o \
$(BUILD_RTL) $(BUILD_SUPPORT) $(BUILD_PRINT) $(BUILD_ERRORS) \
$(BUILD_VARRAY) $(BUILD_LIBS) -lm
-genattrtab.o : genattrtab.c $(RTL_H) $(OBSTACK_H) $(BCONFIG_H) \
+genattrtab.o : genattrtab.c $(RTL_BASE_H) $(OBSTACK_H) $(BCONFIG_H) \
$(SYSTEM_H) coretypes.h $(GTM_H) errors.h $(GGC_H) gensupport.h genattrtab.h
-genautomata.o : genautomata.c $(RTL_H) $(OBSTACK_H) $(BCONFIG_H) \
+genautomata.o : genautomata.c $(RTL_BASE_H) $(OBSTACK_H) $(BCONFIG_H) \
$(SYSTEM_H) coretypes.h $(GTM_H) errors.h varray.h genattrtab.h $(HASHTAB_H)
-genoutput.o : genoutput.c $(RTL_H) $(BCONFIG_H) \
+genoutput.o : genoutput.c $(RTL_BASE_H) $(BCONFIG_H) \
$(SYSTEM_H) coretypes.h $(GTM_H) errors.h gensupport.h
gengenrtl$(build_exeext) : gengenrtl.o $(BUILD_LIBDEPS)
genconditions.o $(BUILD_EARLY_SUPPORT) $(BUILD_RTL) \
$(BUILD_ERRORS) $(BUILD_LIBS)
-genconditions.o : genconditions.c $(RTL_H) $(BCONFIG_H) $(SYSTEM_H) coretypes.h \
- $(GTM_H) errors.h
+genconditions.o : genconditions.c $(RTL_BASE_H) $(BCONFIG_H) $(SYSTEM_H) \
+ coretypes.h $(GTM_H) errors.h
+errors.o : errors.c $(BCONFIG_H) $(SYSTEM_H) errors.h
+ggc-none.o : ggc-none.c $(BCONFIG_H) $(SYSTEM_H) coretypes.h $(GGC_H)
+min-insn-modes.o : min-insn-modes.c $(BCONFIG_H) system.h $(MACHMODE_H)
#\f
# Compile the libraries to be used by gen*.
$(CC_FOR_BUILD) -c $(BUILD_CFLAGS) $(BUILD_CPPFLAGS) $(INCLUDES) $(BUILD_PREFIX)rtl.c $(OUTPUT_OPTION)
print-rtl1.o: $(srcdir)/print-rtl.c $(BCONFIG_H) $(SYSTEM_H) coretypes.h \
- $(GTM_H) $(RTL_H) $(TREE_H) hard-reg-set.h $(BASIC_BLOCK_H) $(TM_P_H)
+ $(GTM_H) $(RTL_H) $(TREE_H) hard-reg-set.h $(BASIC_BLOCK_H)
rm -f print-rtl1.c
sed -e 's/config[.]h/bconfig.h/' $(srcdir)/print-rtl.c > print-rtl1.c
$(CC_FOR_BUILD) -c $(BUILD_CFLAGS) $(BUILD_CPPFLAGS) $(INCLUDES) print-rtl1.c $(OUTPUT_OPTION)
-$(BUILD_PREFIX_1)errors.o: errors.c $(BCONFIG_H) $(SYSTEM_H) errors.h
- rm -f $(BUILD_PREFIX)errors.c
- sed -e 's/config[.]h/bconfig.h/' $(srcdir)/errors.c > $(BUILD_PREFIX)errors.c
- $(CC_FOR_BUILD) -c $(BUILD_CFLAGS) $(BUILD_CPPFLAGS) $(INCLUDES) $(BUILD_PREFIX)errors.c $(OUTPUT_OPTION)
-
$(BUILD_PREFIX_1)varray.o: varray.c $(BCONFIG_H) coretypes.h $(GTM_H) $(SYSTEM_H) varray.h \
$(RTL_H) $(GGC_H) $(TREE_H) bitmap.h errors.h
rm -f $(BUILD_PREFIX)varray.c
$(CC_FOR_BUILD) -c $(BUILD_CFLAGS) $(BUILD_CPPFLAGS) $(INCLUDES) \
$(BUILD_PREFIX)varray.c $(OUTPUT_OPTION)
-$(BUILD_PREFIX_1)ggc-none.o: ggc-none.c $(BCONFIG_H) coretypes.h $(GTM_H) $(SYSTEM_H) $(GGC_H)
- rm -f $(BUILD_PREFIX)ggc-none.c
- sed -e 's/config[.]h/bconfig.h/' $(srcdir)/ggc-none.c > $(BUILD_PREFIX)ggc-none.c
- $(CC_FOR_BUILD) -c $(BUILD_CFLAGS) $(BUILD_CPPFLAGS) $(INCLUDES) $(BUILD_PREFIX)ggc-none.c $(OUTPUT_OPTION)
-
-min-insn-modes.o: min-insn-modes.c $(BCONFIG_H) $(SYSTEM_H) $(MACHMODE_H)
- $(CC_FOR_BUILD) -c $(BUILD_CFLAGS) $(BUILD_CPPFLAGS) $(INCLUDES) \
- min-insn-modes.c $(OUTPUT_OPTION)
-
#\f
# Remake internationalization support.
intl.o: intl.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) intl.h Makefile
-rm -f *$(coverageexts)
-rm -rf libgcc
# Delete the temporary source copies for cross compilation.
- -rm -f $(BUILD_PREFIX_1)rtl.c $(BUILD_PREFIX_1)print-rtl.c
- -rm -f $(BUILD_PREFIX_1)bitmap.c $(BUILD_PREFIX_1)errors.c
- -rm -f $(BUILD_PREFIX_1)ggc-none.c print-rtl1.c
+ -rm -f $(BUILD_PREFIX_1)rtl.c $(BUILD_PREFIX_1)varray.c print-rtl1.c
# Delete the temp files made in the course of building libgcc.a.
-rm -f xlimits.h
# Delete other built files.
#ifndef GCC_RTL_H
#define GCC_RTL_H
-#include "statistics.h"
-
-struct function;
+#include "statistics.h"
#include "machmode.h"
#include "input.h"
extern rtx force_const_mem (enum machine_mode, rtx);
/* In varasm.c */
+
+struct function;
extern rtx get_pool_constant (rtx);
extern rtx get_pool_constant_mark (rtx, bool *);
extern enum machine_mode get_pool_mode (rtx);
/* Include the RTL generation functions. */
-#ifndef NO_GENRTL_H
+#ifndef GENERATOR_FILE
#include "genrtl.h"
#ifndef USE_MAPPED_LOCATION
#undef gen_rtx_ASM_OPERANDS
/* In cse.c */
extern int delete_trivially_dead_insns (rtx, int);
-#ifdef BUFSIZ
extern int cse_main (rtx, int, int, FILE *);
-#endif
extern void cse_condition_code_reg (void);
/* In jump.c */
extern int combine_instructions (rtx, unsigned int);
extern unsigned int extended_count (rtx, enum machine_mode, int);
extern rtx remove_death (unsigned int, rtx);
-#ifdef BUFSIZ
extern void dump_combine_stats (FILE *);
extern void dump_combine_total_stats (FILE *);
-#endif
/* In web.c */
extern void web_main (void);
/* In sched-rgn.c. */
-#ifdef BUFSIZ
extern void schedule_insns (FILE *);
-#endif
/* In sched-ebb.c. */
-#ifdef BUFSIZ
extern void schedule_ebbs (FILE *);
-#endif
/* In haifa-sched.c. */
extern void fix_sched_param (const char *, const char *);
extern void debug_rtx_list (rtx, int);
extern void debug_rtx_range (rtx, rtx);
extern rtx debug_rtx_find (rtx, int);
-#ifdef BUFSIZ
extern void print_mem_expr (FILE *, tree);
extern void print_rtl (FILE *, rtx);
extern void print_simple_rtl (FILE *, rtx);
extern int print_rtl_single (FILE *, rtx);
extern void print_inline_rtx (FILE *, rtx, int);
-#endif
/* In loop.c */
extern void init_loop (void);
-#ifdef BUFSIZ
extern void loop_optimize (rtx, FILE *, int);
-#endif
extern void branch_target_load_optimize (bool);
/* In function.c */
extern void recompute_reg_usage (rtx, int);
extern int initialize_uninitialized_subregs (void);
extern void delete_dead_jumptables (void);
-#ifdef BUFSIZ
extern void print_rtl_with_bb (FILE *, rtx);
extern void dump_flow_info (FILE *);
-#endif
/* In expmed.c */
extern void init_expmed (void);
/* In gcse.c */
extern bool can_copy_p (enum machine_mode);
extern rtx fis_get_condition (rtx);
-#ifdef BUFSIZ
extern int gcse_main (rtx, FILE *);
extern int bypass_jumps (FILE *);
extern void gcse_after_reload_main (rtx, FILE *);
-#endif
/* In global.c */
extern void mark_elimination (int, int);
-#ifdef BUFSIZ
extern int global_alloc (FILE *);
extern void dump_global_regs (FILE *);
-#endif
#ifdef HARD_CONST
/* Yes, this ifdef is silly, but HARD_REG_SET is not always defined. */
extern void retry_global_alloc (int, HARD_REG_SET);
enum machine_mode);
/* In regmove.c */
-#ifdef BUFSIZ
extern void regmove_optimize (rtx, int, FILE *);
-#endif
extern void combine_stack_adjustments (void);
/* In reorg.c */
-#ifdef BUFSIZ
extern void dbr_schedule (rtx, FILE *);
-#endif
/* In local-alloc.c */
-#ifdef BUFSIZ
extern void dump_local_alloc (FILE *);
-#endif
extern int local_alloc (void);
/* In reg-stack.c */
-#ifdef BUFSIZ
extern bool reg_to_stack (FILE *);
-#endif
/* In calls.c */
enum libcall_type
extern void traverse_md_constants (int (*) (void **, void *), void *);
struct md_constant { char *name, *value; };
-#ifdef BUFSIZ
+/* In read-rtl.c */
extern int read_skip_spaces (FILE *);
extern rtx read_rtx (FILE *);
-#endif
-
extern const char *read_rtx_filename;
extern int read_rtx_lineno;
extern void reg_alloc (void);
/* In modulo-sched.c. */
-#ifdef BUFSIZ
extern void sms_schedule (FILE *);
-#endif
\f
struct rtl_hooks
{