From: Jan Hubicka Date: Tue, 1 Jun 2010 14:21:57 +0000 (+0200) Subject: gegenrtl.c: Remove unnecesary prototypes. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=6ac9d3a3c3ede0fd799548829eb08341d9c8b784;p=gcc.git gegenrtl.c: Remove unnecesary prototypes. * gegenrtl.c: Remove unnecesary prototypes. (gendecl): Remove. (gendef): Produce static inline. (gencode): Remove. (main): Do not decode parameters; generate header only. * Makefile.in (genrtl.c): Remove. From-SVN: r160108 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index ebf92c71fdd..c1317965b86 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,12 @@ +2010-06-01 Jan Hubicka + + * gegenrtl.c: Remove unnecesary prototypes. + (gendecl): Remove. + (gendef): Produce static inline. + (gencode): Remove. + (main): Do not decode parameters; generate header only. + * Makefile.in (genrtl.c): Remove. + 2010-06-01 Jan Hubicka * tree-switch-conversion.c (build_one_array): Make it readonly. diff --git a/gcc/Makefile.in b/gcc/Makefile.in index 27e52b662a9..bbc4d2aed4d 100644 --- a/gcc/Makefile.in +++ b/gcc/Makefile.in @@ -1211,7 +1211,6 @@ OBJS-common = \ function.o \ fwprop.o \ gcse.o \ - genrtl.o \ ggc-common.o \ gimple.o \ gimple-iterator.o \ @@ -1469,7 +1468,7 @@ MOSTLYCLEANFILES = insn-flags.h insn-config.h insn-codes.h \ insn-attr.h insn-attrtab.c insn-opinit.c insn-preds.c insn-constants.h \ tm-preds.h tm-constrs.h \ tree-check.h min-insn-modes.c insn-modes.c insn-modes.h \ - genrtl.c genrtl.h gt-*.h gtype-*.h gtype-desc.c gtyp-input.list \ + genrtl.h gt-*.h gtype-*.h gtype-desc.c gtyp-input.list \ xgcc$(exeext) cpp$(exeext) cc1$(exeext) cc1*-dummy$(exeext) $(EXTRA_PASSES) \ $(EXTRA_PARTS) $(EXTRA_PROGRAMS) gcc-cross$(exeext) \ $(SPECS) collect2$(exeext) lto-wrapper$(exeext) \ @@ -3486,8 +3485,6 @@ s-mddeps: $(md_file) $(MD_INCLUDES) build/genmddeps$(build_exeext) $(STAMP) s-mddeps # Header dependencies for generated source files. -genrtl.o : genrtl.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H)\ - $(GGC_H) $(OBSTACK_H) insn-attrtab.o : insn-attrtab.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \ $(TM_H) $(RTL_H) $(REGS_H) output.h $(INSN_ATTR_H) \ insn-config.h $(TOPLEV_H) $(RECOG_H) $(TM_P_H) $(FLAGS_H) @@ -3597,16 +3594,10 @@ s-condmd: build/gencondmd$(build_exeext) # These files are generated by running the same generator more than # once with different options, so they have custom rules. The # stampfile idiom is the same. -genrtl.c: s-genrtl; @true genrtl.h: s-genrtl-h; @true -s-genrtl: build/gengenrtl$(build_exeext) - $(RUN_GEN) build/gengenrtl$(build_exeext) > tmp-genrtl.c - $(SHELL) $(srcdir)/../move-if-change tmp-genrtl.c genrtl.c - $(STAMP) s-genrtl - s-genrtl-h: build/gengenrtl$(build_exeext) - $(RUN_GEN) build/gengenrtl$(build_exeext) -h > tmp-genrtl.h + $(RUN_GEN) build/gengenrtl$(build_exeext) > tmp-genrtl.h $(SHELL) $(srcdir)/../move-if-change tmp-genrtl.h genrtl.h $(STAMP) s-genrtl-h diff --git a/gcc/gengenrtl.c b/gcc/gengenrtl.c index 149e54ba7d4..afc9709cd6e 100644 --- a/gcc/gengenrtl.c +++ b/gcc/gengenrtl.c @@ -41,19 +41,6 @@ static const struct rtx_definition defs[] = #define NUM_RTX_CODE ARRAY_SIZE(defs) static const char *formats[NUM_RTX_CODE]; - -static const char *type_from_format (int); -static const char *accessor_from_format (int); -static int special_format (const char *); -static int special_rtx (int); -static int excluded_rtx (int); -static void find_formats (void); -static void gendecl (const char *); -static void genmacro (int); -static void gendef (const char *); -static void genlegend (void); -static void genheader (void); -static void gencode (void); /* Decode a format letter into a C type string. */ @@ -178,44 +165,6 @@ find_formats (void) } } -/* Write the declarations for the routine to allocate RTL with FORMAT. */ - -static void -gendecl (const char *format) -{ - const char *p; - int i, pos; - - printf ("extern rtx gen_rtx_fmt_%s_stat\t (RTX_CODE, ", format); - printf ("enum machine_mode mode"); - - /* Write each parameter that is needed and start a new line when the line - would overflow. */ - for (p = format, i = 0, pos = 75; *p != 0; p++) - if (*p != '0') - { - int ourlen = strlen (type_from_format (*p)) + 6 + (i > 9); - - printf (","); - if (pos + ourlen > 76) - printf ("\n\t\t\t\t "), pos = 39; - - printf (" %sarg%d", type_from_format (*p), i++); - pos += ourlen; - } - printf (" MEM_STAT_DECL"); - - printf (");\n"); - printf ("#define gen_rtx_fmt_%s(c, m", format); - for (p = format, i = 0; *p != 0; p++) - if (*p != '0') - printf (", p%i",i++); - printf (")\\\n gen_rtx_fmt_%s_stat (c, m", format); - for (p = format, i = 0; *p != 0; p++) - if (*p != '0') - printf (", p%i",i++); - printf (" MEM_STAT_INFO)\n\n"); -} /* Generate macros to generate RTL of code IDX using the functions we write. */ @@ -262,7 +211,7 @@ gendef (const char *format) /* Start by writing the definition of the function name and the types of the arguments. */ - printf ("rtx\ngen_rtx_fmt_%s_stat (RTX_CODE code, enum machine_mode mode", format); + printf ("static inline rtx\ngen_rtx_fmt_%s_stat (RTX_CODE code, enum machine_mode mode", format); for (p = format, i = 0; *p != 0; p++) if (*p != '0') printf (",\n\t%sarg%d", type_from_format (*p), i++); @@ -284,6 +233,15 @@ gendef (const char *format) printf (" X0EXP (rt, %d) = NULL_RTX;\n", i); puts ("\n return rt;\n}\n"); + printf ("#define gen_rtx_fmt_%s(c, m", format); + for (p = format, i = 0; *p != 0; p++) + if (*p != '0') + printf (", p%i",i++); + printf (")\\\n gen_rtx_fmt_%s_stat (c, m", format); + for (p = format, i = 0; *p != 0; p++) + if (*p != '0') + printf (", p%i",i++); + printf (" MEM_STAT_INFO)\n\n"); } /* Generate the documentation header for files we write. */ @@ -307,7 +265,7 @@ genheader (void) puts ("#include \"statistics.h\"\n"); for (fmt = formats; *fmt; ++fmt) - gendecl (*fmt); + gendef (*fmt); putchar ('\n'); @@ -318,39 +276,15 @@ genheader (void) puts ("\n#endif /* GCC_GENRTL_H */"); } -/* Generate the text of the code file we write, genrtl.c. */ - -static void -gencode (void) -{ - const char **fmt; - - puts ("#include \"config.h\""); - puts ("#include \"system.h\""); - puts ("#include \"coretypes.h\""); - puts ("#include \"tm.h\""); - puts ("#include \"obstack.h\""); - puts ("#include \"rtl.h\""); - puts ("#include \"ggc.h\"\n"); - - for (fmt = formats; *fmt != 0; fmt++) - gendef (*fmt); -} - -/* This is the main program. We accept only one argument, "-h", which - says we are writing the genrtl.h file. Otherwise we are writing the - genrtl.c file. */ +/* This is the main program. */ int -main (int argc, char **argv) +main (void) { find_formats (); genlegend (); - if (argc == 2 && argv[1][0] == '-' && argv[1][1] == 'h') - genheader (); - else - gencode (); + genheader (); if (ferror (stdout) || fflush (stdout) || fclose (stdout)) return FATAL_EXIT_CODE;