summaryrefslogtreecommitdiff
path: root/gcc/genemit.c
diff options
context:
space:
mode:
authorrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>1999-09-02 17:29:25 +0000
committerrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>1999-09-02 17:29:25 +0000
commitd5197c9894a1f7f3c6beddacf2a0c8324934aaea (patch)
tree983023b55501936201b52db239d4a15278e92b74 /gcc/genemit.c
parent0dcdeb0d5d7a31795429b1a1d60c76c68dd89d46 (diff)
downloadgcc-d5197c9894a1f7f3c6beddacf2a0c8324934aaea.tar.gz
* dwarf2out.c (dwarf2out_line): Constify `lastfile'.
* except.c (expand_rethrow): Remove unused variable. * expr.c (do_jump_by_parts_greater_rtx): Likewise. * flow.c (replace_insns): Likewise. (create_edge_list, verify_edge_list): Likewise. * gcse.c (cprop_cc0_jump): Protect declaration with HAVE_cc0. * genemit.c (gen_expand): Only emit `operands[N]' decl if there is special code to run. (main): Don't define operands to emit_operand. * genrecog.c (main): Don't emit an empty peephole2_insn function. * rtl.h (NOTE_BASIC_BLOCK): Use X0BBDEF. * alpha/alpha.h (normal_memory_operand): Declare. (reg_no_subreg_operand): Declare. * alpha/elf.h (ASM_DECLARE_OBJECT_NAME): Use HOST_WIDE_INT_PRINT_DEC. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@29061 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/genemit.c')
-rw-r--r--gcc/genemit.c17
1 files changed, 9 insertions, 8 deletions
diff --git a/gcc/genemit.c b/gcc/genemit.c
index 68188e6c2ea..f9d917e3245 100644
--- a/gcc/genemit.c
+++ b/gcc/genemit.c
@@ -459,9 +459,6 @@ gen_expand (expand)
printf (" rtx operand%d;\n", i);
for (; i <= max_scratch_opno; i++)
printf (" rtx operand%d;\n", i);
- if (operands > 0 || max_dup_opno >= 0 || max_scratch_opno >= 0)
- printf (" rtx operands[%d];\n",
- MAX (operands, MAX (max_scratch_opno, max_dup_opno) + 1));
printf (" rtx _val = 0;\n");
printf (" start_sequence ();\n");
@@ -473,9 +470,13 @@ gen_expand (expand)
So copy the operand values there before executing it. */
if (XSTR (expand, 3) && *XSTR (expand, 3))
{
+ printf (" {\n");
+ if (operands > 0 || max_dup_opno >= 0 || max_scratch_opno >= 0)
+ printf (" rtx operands[%d];\n",
+ MAX (operands, MAX (max_scratch_opno, max_dup_opno) + 1));
/* Output code to copy the arguments into `operands'. */
for (i = 0; i < operands; i++)
- printf (" operands[%d] = operand%d;\n", i, i);
+ printf (" operands[%d] = operand%d;\n", i, i);
/* Output the special code to be executed before the sequence
is generated. */
@@ -486,12 +487,13 @@ gen_expand (expand)
if (XVEC (expand, 1) != 0)
{
for (i = 0; i < operands; i++)
- printf (" operand%d = operands[%d];\n", i, i);
+ printf (" operand%d = operands[%d];\n", i, i);
for (; i <= max_dup_opno; i++)
- printf (" operand%d = operands[%d];\n", i, i);
+ printf (" operand%d = operands[%d];\n", i, i);
for (; i <= max_scratch_opno; i++)
- printf (" operand%d = operands[%d];\n", i, i);
+ printf (" operand%d = operands[%d];\n", i, i);
}
+ printf (" }\n");
}
/* Output code to construct the rtl for the instruction bodies.
@@ -815,7 +817,6 @@ from the machine description file `md'. */\n\n");
printf ("#include \"resource.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");
printf ("#define DONE return (_val = gen_sequence (), end_sequence (), _val)\n");