summaryrefslogtreecommitdiff
path: root/gcc/cfgrtl.c
diff options
context:
space:
mode:
authorhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>2001-11-19 17:08:48 +0000
committerhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>2001-11-19 17:08:48 +0000
commit4270b4b9847f7bb93e010f2d96cb2c17aedd9fae (patch)
treeb294c67de998851f229c1f90e61eb62fdc07c65f /gcc/cfgrtl.c
parentdf21ac14d9aeff8e2e3539a2bb9699ef3f335445 (diff)
downloadgcc-4270b4b9847f7bb93e010f2d96cb2c17aedd9fae.tar.gz
* gcse.c (try_replace_reg): Copy RTX before creating note.
* df.h (df_ref_flags): New uenum. (DF_REF_FLAGS): New macro. (struct ref): Add field "flags". * df.c (HANDLE_SUBREG): Remove. (df_ref_create): Likewise; set flags field of ref. (df_def_record_1): Strip down read_write subreg; remove commented out code; set READ_WRITE flag. (read_modify_subreg_p): New static function. (df_uses_record): Cleanup SET handling; set READ_WRITE flag; new argument "flags". (df_insn_refs_record): Update call of df_uses_record. (df_insn_modify): Avoid #if 0 around comment. (df_dump): Dump the read/write flag. * predict.c (propagate_freq): Make cyclic_probability and frequency volatile * i386.c (ix86_cc_mode): Accept USE. * cfgrtl.c (purge_dead_edges): Cleanup EDGE_ABNORMAL flag if computed jump is turned into simplejump. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@47175 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/cfgrtl.c')
-rw-r--r--gcc/cfgrtl.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/gcc/cfgrtl.c b/gcc/cfgrtl.c
index e6170f0bf23..2687e73d358 100644
--- a/gcc/cfgrtl.c
+++ b/gcc/cfgrtl.c
@@ -1837,6 +1837,11 @@ purge_dead_edges (bb)
{
next = e->succ_next;
+ /* Avoid abnormal flags to leak from computed jumps turned
+ into simplejumps. */
+
+ e->flags &= EDGE_ABNORMAL;
+
/* Check purposes we can have edge. */
if ((e->flags & EDGE_FALLTHRU)
&& any_condjump_p (insn))