+2011-12-01 Jakub Jelinek <jakub@redhat.com>
+
+ PR rtl-optimization/51014
+ * loop-unroll.c (apply_opt_in_copies): Ignore label DEBUG_INSNs
+ both from bb and orig_bb.
+
2011-12-01 Joern Rennecke <joern.rennecke@embecosm.com>
PR tree-optimization/50802
/* Loop unrolling and peeling.
- Copyright (C) 2002, 2003, 2004, 2005, 2007, 2008, 2010
+ Copyright (C) 2002, 2003, 2004, 2005, 2007, 2008, 2010, 2011
Free Software Foundation, Inc.
This file is part of GCC.
for (insn = BB_HEAD (bb); insn != NEXT_INSN (BB_END (bb)); insn = next)
{
next = NEXT_INSN (insn);
- if (!INSN_P (insn))
+ if (!INSN_P (insn)
+ || (DEBUG_INSN_P (insn)
+ && TREE_CODE (INSN_VAR_LOCATION_DECL (insn)) == LABEL_DECL))
continue;
- while (!INSN_P (orig_insn))
+ while (!INSN_P (orig_insn)
+ || (DEBUG_INSN_P (orig_insn)
+ && (TREE_CODE (INSN_VAR_LOCATION_DECL (orig_insn))
+ == LABEL_DECL)))
orig_insn = NEXT_INSN (orig_insn);
ivts_templ.insn = orig_insn;
+2011-12-01 Jakub Jelinek <jakub@redhat.com>
+
+ PR rtl-optimization/51014
+ * g++.dg/opt/pr51014.C: New test.
+
2011-12-01 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/51367