diff options
author | Jeff Law <law@redhat.com> | 2011-03-24 10:44:17 -0600 |
---|---|---|
committer | Jeff Law <law@gcc.gnu.org> | 2011-03-24 10:44:17 -0600 |
commit | 67295642aaa617fe2419ab877e66aa280fb32802 (patch) | |
tree | 5c77c1979d07ecb5e2c5b708bf2756a6c827b543 /gcc/cfglayout.c | |
parent | 3a4639b4a6e06bc17482d8c7bd156ff0ebd35fb6 (diff) | |
download | gcc-67295642aaa617fe2419ab877e66aa280fb32802.zip gcc-67295642aaa617fe2419ab877e66aa280fb32802.tar.gz gcc-67295642aaa617fe2419ab877e66aa280fb32802.tar.bz2 |
tree-ssa-live.c (remove_unused_scope_block_p): Remove set but unused variable "ann".
* tree-ssa-live.c (remove_unused_scope_block_p): Remove set but
unused variable "ann".
(remove_unused_locals): Likewise.
* tree-ssa-copy.c (propagate_tree_value_into_stmt): Remove useless
statement.
* cfglayout.c (fixup_reorder_chain): Do not dereference E_FALL
after it is freed.
From-SVN: r171408
Diffstat (limited to 'gcc/cfglayout.c')
-rw-r--r-- | gcc/cfglayout.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/gcc/cfglayout.c b/gcc/cfglayout.c index 76925a5..05aed22 100644 --- a/gcc/cfglayout.c +++ b/gcc/cfglayout.c @@ -766,7 +766,7 @@ fixup_reorder_chain (void) { edge e_fall, e_taken, e; rtx bb_end_insn; - basic_block nb; + basic_block nb, src_bb; edge_iterator ei; if (EDGE_COUNT (bb->succs) == 0) @@ -894,7 +894,10 @@ fixup_reorder_chain (void) continue; } - /* We got here if we need to add a new jump insn. */ + /* We got here if we need to add a new jump insn. + Note force_nonfallthru can delete E_FALL and thus we have to + save E_FALL->src prior to the call to force_nonfallthru. */ + src_bb = e_fall->src; nb = force_nonfallthru (e_fall); if (nb) { @@ -905,9 +908,9 @@ fixup_reorder_chain (void) bb = nb; /* Make sure new bb is tagged for correct section (same as - fall-thru source, since you cannot fall-throu across + fall-thru source, since you cannot fall-thru across section boundaries). */ - BB_COPY_PARTITION (e_fall->src, single_pred (bb)); + BB_COPY_PARTITION (src_bb, single_pred (bb)); if (flag_reorder_blocks_and_partition && targetm.have_named_sections && JUMP_P (BB_END (bb)) |