aboutsummaryrefslogtreecommitdiff
path: root/gcc/flow.c
diff options
context:
space:
mode:
authorRichard Henderson <rth@cygnus.com>2000-07-30 16:05:52 -0700
committerRichard Henderson <rth@gcc.gnu.org>2000-07-30 16:05:52 -0700
commit3a8c5c77d573036d25982d47366164bc05112f61 (patch)
treeba4aa1819c914c257dfbac2cf74c788ea6475803 /gcc/flow.c
parent9145715ca3531ed3fb912415adf96080b08983a5 (diff)
downloadgcc-3a8c5c77d573036d25982d47366164bc05112f61.zip
gcc-3a8c5c77d573036d25982d47366164bc05112f61.tar.gz
gcc-3a8c5c77d573036d25982d47366164bc05112f61.tar.bz2
* flow.c (init_propagate_block_info): Use pc_set.
From-SVN: r35353
Diffstat (limited to 'gcc/flow.c')
-rw-r--r--gcc/flow.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/gcc/flow.c b/gcc/flow.c
index 0d27ed9..4f64de9 100644
--- a/gcc/flow.c
+++ b/gcc/flow.c
@@ -3651,7 +3651,7 @@ init_propagate_block_info (bb, live, local_set, flags)
regset_head diff_head;
regset diff = INITIALIZE_REG_SET (diff_head);
basic_block bb_true, bb_false;
- rtx cond_true, cond_false;
+ rtx cond_true, cond_false, set_src;
int i;
/* Identify the successor blocks. */
@@ -3680,11 +3680,12 @@ init_propagate_block_info (bb, live, local_set, flags)
}
/* Extract the condition from the branch. */
- cond_true = XEXP (SET_SRC (PATTERN (bb->end)), 0);
+ set_src = SET_SRC (pc_set (bb->end));
+ cond_true = XEXP (set_src, 0);
cond_false = gen_rtx_fmt_ee (reverse_condition (GET_CODE (cond_true)),
GET_MODE (cond_true), XEXP (cond_true, 0),
XEXP (cond_true, 1));
- if (GET_CODE (XEXP (SET_SRC (PATTERN (bb->end)), 1)) == PC)
+ if (GET_CODE (XEXP (set_src, 1)) == PC)
{
rtx t = cond_false;
cond_false = cond_true;