summaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog26
-rw-r--r--gcc/Makefile.in7
-rw-r--r--gcc/combine.c1
-rw-r--r--gcc/final.c2
-rw-r--r--gcc/genemit.c10
-rw-r--r--gcc/genpeep.c2
-rw-r--r--gcc/recog.c2
-rw-r--r--gcc/regclass.c7
8 files changed, 44 insertions, 13 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index ccabdef2316..b4e81f71726 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,29 @@
+Sun Oct 25 15:49:57 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * Makefile.in (recog.o): Depend on toplev.h.
+ (insn-emit.o): Depend on recog.h.
+ (insn-peep.o): Depend on recog.h and insn-config.h.
+
+ * combine.c (simplify_set): Remove unused variable `scratches'.
+
+ * final.c (final_scan_insn): Wrap declaration of variables `vlen'
+ and `idx' in macro conditional controlling their use.
+
+ * genemit.c (main): Make the generated output file include
+ recog.h. Don't have it declare `insn_operand_constraint', since
+ we get it from recog.h.
+
+ * genpeep.c (main): Make the generated output file include
+ insn-config.h and recog.h.
+
+ * recog.c: Include toplev.h.
+ (extract_insn): Remove unused variable `p'.
+
+ * regclass.c (fix_register): Add missing braces around initializer
+ for `what_option'.
+ (allocate_reg_info): Move variable `i' into the scope where it is
+ used. Change its type to `size_t'.
+
Sun Oct 25 13:10:15 1998 Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
* reload.c (push_reload): When merging reloads, make sure
diff --git a/gcc/Makefile.in b/gcc/Makefile.in
index a346620c588..959374a5645 100644
--- a/gcc/Makefile.in
+++ b/gcc/Makefile.in
@@ -1526,7 +1526,7 @@ final.o : final.c $(CONFIG_H) system.h $(RTL_H) $(TREE_H) flags.h $(REGS_H) \
toplev.h reload.h dwarfout.h dwarf2out.h sdbout.h dbxout.h
recog.o : recog.c $(CONFIG_H) system.h $(RTL_H) \
$(REGS_H) $(RECOG_H) hard-reg-set.h flags.h insn-config.h insn-attr.h \
- insn-flags.h insn-codes.h real.h
+ insn-flags.h insn-codes.h real.h toplev.h
reg-stack.o : reg-stack.c $(CONFIG_H) system.h $(RTL_H) $(TREE_H) \
$(REGS_H) hard-reg-set.h flags.h insn-config.h insn-flags.h toplev.h
dyn-string.o: dyn-string.c dyn-string.h $(CONFIG_H) system.h gansidecl.h
@@ -1605,7 +1605,7 @@ s-codes : $(md_file) gencodes $(srcdir)/move-if-change
touch s-codes
insn-emit.o : insn-emit.c $(CONFIG_H) $(RTL_H) $(EXPR_H) real.h output.h \
- insn-config.h insn-flags.h insn-codes.h system.h reload.h
+ insn-config.h insn-flags.h insn-codes.h system.h reload.h recog.h
$(CC) $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) -c insn-emit.c
insn-emit.c: s-emit ; @true
@@ -1644,7 +1644,8 @@ s-extract : $(md_file) genextract $(srcdir)/move-if-change
$(srcdir)/move-if-change tmp-extract.c insn-extract.c
touch s-extract
-insn-peep.o : insn-peep.c $(CONFIG_H) $(RTL_H) $(REGS_H) output.h real.h system.h
+insn-peep.o : insn-peep.c $(CONFIG_H) $(RTL_H) $(REGS_H) output.h real.h \
+ system.h insn-config.h recog.h
$(CC) $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) -c insn-peep.c
insn-peep.c: s-peep ; @true
diff --git a/gcc/combine.c b/gcc/combine.c
index 19df1047684..88cc6c55e67 100644
--- a/gcc/combine.c
+++ b/gcc/combine.c
@@ -4632,7 +4632,6 @@ simplify_set (x)
&& exact_log2 (mask = nonzero_bits (op0, GET_MODE (op0))) >= 0)
{
rtx pat = PATTERN (other_insn), note = 0;
- int scratches;
if ((recog_for_combine (&pat, other_insn, &note) < 0
&& ! check_asm_operands (pat)))
diff --git a/gcc/final.c b/gcc/final.c
index cb779497a83..5b7874e7587 100644
--- a/gcc/final.c
+++ b/gcc/final.c
@@ -2425,7 +2425,9 @@ final_scan_insn (insn, file, optimize, prescan, nopeepholes)
if (GET_CODE (body) == ADDR_VEC || GET_CODE (body) == ADDR_DIFF_VEC)
{
+#if !(defined(ASM_OUTPUT_ADDR_VEC) || defined(ASM_OUTPUT_ADDR_DIFF_VEC))
register int vlen, idx;
+#endif
if (prescan > 0)
break;
diff --git a/gcc/genemit.c b/gcc/genemit.c
index c9e2836cc5a..d9281301b92 100644
--- a/gcc/genemit.c
+++ b/gcc/genemit.c
@@ -771,11 +771,11 @@ from the machine description file `md'. */\n\n");
printf ("#include \"real.h\"\n");
printf ("#include \"flags.h\"\n");
printf ("#include \"output.h\"\n");
- printf ("#include \"insn-config.h\"\n\n");
- printf ("#include \"insn-flags.h\"\n\n");
- printf ("#include \"insn-codes.h\"\n\n");
- printf ("#include \"reload.h\"\n");
- printf ("extern char *insn_operand_constraint[][MAX_RECOG_OPERANDS];\n\n");
+ printf ("#include \"insn-config.h\"\n");
+ printf ("#include \"insn-flags.h\"\n");
+ printf ("#include \"insn-codes.h\"\n");
+ printf ("#include \"recog.h\"\n");
+ printf ("#include \"reload.h\"\n\n");
printf ("extern rtx recog_operand[];\n");
printf ("#define operands emit_operand\n\n");
printf ("#define FAIL return (end_sequence (), _val)\n");
diff --git a/gcc/genpeep.c b/gcc/genpeep.c
index 076f7603560..1430b63665a 100644
--- a/gcc/genpeep.c
+++ b/gcc/genpeep.c
@@ -467,10 +467,12 @@ from the machine description file `md'. */\n\n");
printf ("#include \"config.h\"\n");
printf ("#include \"system.h\"\n");
+ printf ("#include \"insn-config.h\"\n");
printf ("#include \"rtl.h\"\n");
printf ("#include \"regs.h\"\n");
printf ("#include \"output.h\"\n");
printf ("#include \"real.h\"\n");
+ printf ("#include \"recog.h\"\n");
printf ("#include \"except.h\"\n\n");
printf ("extern rtx peep_operand[];\n\n");
diff --git a/gcc/recog.c b/gcc/recog.c
index d525d47a051..17ec357f084 100644
--- a/gcc/recog.c
+++ b/gcc/recog.c
@@ -31,6 +31,7 @@ Boston, MA 02111-1307, USA. */
#include "hard-reg-set.h"
#include "flags.h"
#include "real.h"
+#include "toplev.h"
#ifndef STACK_PUSH_CODE
#ifdef STACK_GROWS_DOWNWARD
@@ -1758,7 +1759,6 @@ extract_insn (insn)
recog_n_operands = noperands = asm_noperands (body);
if (noperands >= 0)
{
- char *p;
/* This insn is an `asm' with operands. */
/* expand_asm_operands makes sure there aren't too many operands. */
diff --git a/gcc/regclass.c b/gcc/regclass.c
index ef1dce2bdea..5c23453e0df 100644
--- a/gcc/regclass.c
+++ b/gcc/regclass.c
@@ -584,8 +584,8 @@ fix_register (name, fixed, call_used)
&& (fixed == 0 || call_used == 0))
{
static char* what_option[2][2] = {
- "call-saved", "call-used",
- "no-such-option", "fixed" };
+ { "call-saved", "call-used" },
+ { "no-such-option", "fixed" }};
error ("can't use '%s' as a %s register", name,
what_option[fixed][call_used]);
@@ -1842,7 +1842,6 @@ allocate_reg_info (num_regs, new_p, renumber_p)
{
static size_t regno_allocated = 0;
static short *renumber = (short *)0;
- int i;
size_t size_info;
size_t size_renumber;
size_t min = (new_p) ? 0 : reg_n_max;
@@ -1937,6 +1936,8 @@ allocate_reg_info (num_regs, new_p, renumber_p)
{
size_t max = max_index;
size_t local_min = min - min_index;
+ size_t i;
+
if (min < min_index)
local_min = 0;
if (!reg_data->used_p) /* page just allocated with calloc */