summaryrefslogtreecommitdiff
path: root/gcc/genextract.c
diff options
context:
space:
mode:
authorBernd Schmidt <crux@pool.informatik.rwth-aachen.de>1998-10-17 01:28:57 +0000
committerJeff Law <law@gcc.gnu.org>1998-10-16 19:28:57 -0600
commit0a578fee772469fe17168079f48b5b1a37b30522 (patch)
tree1c32cb74e56fdcc9e94bba84731ea49ea1e5910f /gcc/genextract.c
parente02bdac1315357e99067a279385d0e39fa66ee33 (diff)
downloadgcc-0a578fee772469fe17168079f48b5b1a37b30522.tar.gz
Makefile.in (insn-extract.o): Fix dependencies.
* Makefile.in (insn-extract.o): Fix dependencies. * genextract.c (main): Generate includes for insn-config.h and recog.h. Delete generation of declarations which are now in recog.h. * genrecog.c (main): Delete generation of definitions which are now in recog.c. * local-alloc.c (block_alloc): Use extract_insn and the variables it sets up instead of looking up values by insn_code. * recog.c (recog_operand, recog_operand_loc, recog_dup_loc, recog_dup_num): Define here instead of generating the definition in genrecog.c. (recog_n_operands, recog_n_dups, recog_n_alternatives, recog_operand_mode, recog_constraints, recog_operand_address_p): New variables. (extract_insn): New function. * recog.h (extract_insn): Declare function. (which_alternative, recog_n_operands, recog_n_dups, recog_n_alternatives, recog_operand_mode, recog_constraints, recog_operand_address_p): Declare variables. * regclass.c (n_occurrences): New static function. * reload.c (n_occurrences): Delete function. (find_reloads): Use extract_insn. * reload.h (n_occurrences): Delete declaration. From-SVN: r23147
Diffstat (limited to 'gcc/genextract.c')
-rw-r--r--gcc/genextract.c7
1 files changed, 2 insertions, 5 deletions
diff --git a/gcc/genextract.c b/gcc/genextract.c
index 991d1d0a5e5..a1e48ed92ea 100644
--- a/gcc/genextract.c
+++ b/gcc/genextract.c
@@ -460,17 +460,14 @@ from the machine description file `md'. */\n\n");
printf ("#include \"config.h\"\n");
printf ("#include \"system.h\"\n");
printf ("#include \"rtl.h\"\n");
+ printf ("#include \"insn-config.h\"\n");
+ printf ("#include \"recog.h\"\n");
printf ("#include \"toplev.h\"\n\n");
/* This variable exists only so it can be the "location"
of any missing operand whose numbers are skipped by a given pattern. */
printf ("static rtx junk ATTRIBUTE_UNUSED;\n");
- printf ("extern rtx recog_operand[];\n");
- printf ("extern rtx *recog_operand_loc[];\n");
- printf ("extern rtx *recog_dup_loc[];\n");
- printf ("extern char recog_dup_num[];\n");
-
printf ("void\ninsn_extract (insn)\n");
printf (" rtx insn;\n");
printf ("{\n");