From c485684d0acd2d99cd81c327bd4b33f4d0a5872e Mon Sep 17 00:00:00 2001 From: Alexandre Oliva Date: Wed, 8 Sep 2010 21:54:02 +0000 Subject: [PATCH] re PR debug/45531 (-fcompare-debug failure with -fvar-tracking-uninit, codegen differences) PR debug/45531 * cfglayout.c (fixup_reorder_chain): Skip debug insns. From-SVN: r164032 --- gcc/ChangeLog | 5 +++++ gcc/cfglayout.c | 4 ++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index e02f98fbb610..a6c6db31c5bc 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2010-09-08 Alexandre Oliva + + PR debug/45531 + * cfglayout.c (fixup_reorder_chain): Skip debug insns. + 2010-09-08 Alexandre Oliva PR debug/45419 diff --git a/gcc/cfglayout.c b/gcc/cfglayout.c index 58c04787423c..e93e4077088c 100644 --- a/gcc/cfglayout.c +++ b/gcc/cfglayout.c @@ -955,7 +955,7 @@ fixup_reorder_chain (void) insn = BB_END (e->src); end = PREV_INSN (BB_HEAD (e->src)); while (insn != end - && (!INSN_P (insn) || INSN_LOCATOR (insn) == 0)) + && (!NONDEBUG_INSN_P (insn) || INSN_LOCATOR (insn) == 0)) insn = PREV_INSN (insn); if (insn != end && locator_eq (INSN_LOCATOR (insn), (int) e->goto_locus)) @@ -970,7 +970,7 @@ fixup_reorder_chain (void) { insn = BB_HEAD (e->dest); end = NEXT_INSN (BB_END (e->dest)); - while (insn != end && !INSN_P (insn)) + while (insn != end && !NONDEBUG_INSN_P (insn)) insn = NEXT_INSN (insn); if (insn != end && INSN_LOCATOR (insn) && locator_eq (INSN_LOCATOR (insn), (int) e->goto_locus))