aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/cfgexpand.c7
2 files changed, 13 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 811c61a..9bbb498 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2004-10-17 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR middle-end/17925
+ * cfgexpand.c (expand_gimple_cond_expr): Emit line notes for next basic
+ block if there is a goto with a locus.
+
2004-10-17 Kazu Hirata <kazu@cs.umass.edu>
* config/elfos.h, config/gofast.h, config/interix.h,
diff --git a/gcc/cfgexpand.c b/gcc/cfgexpand.c
index a04f3ae..df0c695 100644
--- a/gcc/cfgexpand.c
+++ b/gcc/cfgexpand.c
@@ -886,6 +886,8 @@ expand_gimple_cond_expr (basic_block bb, tree stmt)
jumpif (pred, label_rtx (GOTO_DESTINATION (then_exp)));
add_reg_br_prob_note (dump_file, last, true_edge->probability);
maybe_dump_rtl_for_tree_stmt (stmt, last);
+ if (EXPR_LOCUS (then_exp))
+ emit_line_note (*(EXPR_LOCUS (then_exp)));
return NULL;
}
if (TREE_CODE (else_exp) == GOTO_EXPR && IS_EMPTY_STMT (then_exp))
@@ -893,6 +895,8 @@ expand_gimple_cond_expr (basic_block bb, tree stmt)
jumpifnot (pred, label_rtx (GOTO_DESTINATION (else_exp)));
add_reg_br_prob_note (dump_file, last, false_edge->probability);
maybe_dump_rtl_for_tree_stmt (stmt, last);
+ if (EXPR_LOCUS (else_exp))
+ emit_line_note (*(EXPR_LOCUS (else_exp)));
return NULL;
}
gcc_assert (TREE_CODE (then_exp) == GOTO_EXPR
@@ -922,6 +926,9 @@ expand_gimple_cond_expr (basic_block bb, tree stmt)
update_bb_for_insn (new_bb);
maybe_dump_rtl_for_tree_stmt (stmt, last2);
+
+ if (EXPR_LOCUS (else_exp))
+ emit_line_note (*(EXPR_LOCUS (else_exp)));
return new_bb;
}