From 279dc72feede56719335d771f23babe9330096a3 Mon Sep 17 00:00:00 2001 From: bstarynk Date: Mon, 30 Nov 2009 09:27:48 +0000 Subject: 2009-11-30 Basile Starynkevitch MELT branch merged with trunk rev 154750 (or near) git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@154757 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/genemit.c | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) (limited to 'gcc/genemit.c') diff --git a/gcc/genemit.c b/gcc/genemit.c index d7cbd10b38e..7ac3c917067 100644 --- a/gcc/genemit.c +++ b/gcc/genemit.c @@ -1,6 +1,6 @@ /* Generate code from machine description to emit insns as rtl. Copyright (C) 1987, 1988, 1991, 1994, 1995, 1997, 1998, 1999, 2000, 2001, - 2003, 2004, 2005, 2007, 2008 Free Software Foundation, Inc. + 2003, 2004, 2005, 2007, 2008, 2009 Free Software Foundation, Inc. This file is part of GCC. @@ -782,9 +782,7 @@ output_peephole2_scratches (rtx split) { int i; int insn_nr = 0; - - printf (" HARD_REG_SET _regs_allocated;\n"); - printf (" CLEAR_HARD_REG_SET (_regs_allocated);\n"); + bool first = true; for (i = 0; i < XVECLEN (split, 0); i++) { @@ -803,6 +801,13 @@ output_peephole2_scratches (rtx split) else if (GET_CODE (XVECEXP (split, 0, j)) != MATCH_SCRATCH) cur_insn_nr++; + if (first) + { + printf (" HARD_REG_SET _regs_allocated;\n"); + printf (" CLEAR_HARD_REG_SET (_regs_allocated);\n"); + first = false; + } + printf (" if ((operands[%d] = peep2_find_free_register (%d, %d, \"%s\", %smode, &_regs_allocated)) == NULL_RTX)\n\ return NULL;\n", XINT (elt, 0), -- cgit v1.2.1