diff options
author | Kazu Hirata <kazu@cs.umass.edu> | 2004-10-28 13:31:53 +0000 |
---|---|---|
committer | Kazu Hirata <kazu@gcc.gnu.org> | 2004-10-28 13:31:53 +0000 |
commit | 71882046281f1414174fb8ff14b072e159c5a2d4 (patch) | |
tree | 0f497db2d97527ca7579bbfe5ed4c65acb24d5e8 /gcc/tree-ssa.c | |
parent | 63058091fa0045a82d1777bd5046a80f920797ab (diff) | |
download | gcc-71882046281f1414174fb8ff14b072e159c5a2d4.zip gcc-71882046281f1414174fb8ff14b072e159c5a2d4.tar.gz gcc-71882046281f1414174fb8ff14b072e159c5a2d4.tar.bz2 |
lambda-code.c (nestify_update_pending_stmts): Remove.
* lambda-code.c (nestify_update_pending_stmts): Remove.
(perfect_nestify): Use flush_pending_stmts instead of
nestify_update_pending_stmts.
* tree-cfg.c (tree_make_forwarder_block): Use
flush_pending_stmts.
* tree-flow.h: Add a prototype for flush_pending_stmts.
* tree-ssa-loop-manip.c (tree_duplicate_loop_to_header_edge):
Use flush_pending_stmts.
(lv_update_pending_stmts): Remove.
(tree_ssa_loop_version): Use flush_pending_stmts instead of
lv_update_pending_stmts.
* tree-ssa.c (flush_pending_stmts): New.
From-SVN: r89757
Diffstat (limited to 'gcc/tree-ssa.c')
-rw-r--r-- | gcc/tree-ssa.c | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/gcc/tree-ssa.c b/gcc/tree-ssa.c index d9379ba..6fb711a 100644 --- a/gcc/tree-ssa.c +++ b/gcc/tree-ssa.c @@ -100,6 +100,27 @@ ssa_redirect_edge (edge e, basic_block dest) return e; } +/* Add PHI arguments queued in PENDINT_STMT list on edge E to edge + E->dest. */ + +void +flush_pending_stmts (edge e) +{ + tree phi, arg; + + if (!PENDING_STMT (e)) + return; + + for (phi = phi_nodes (e->dest), arg = PENDING_STMT (e); + phi; + phi = TREE_CHAIN (phi), arg = TREE_CHAIN (arg)) + { + tree def = TREE_VALUE (arg); + add_phi_arg (&phi, def, e); + } + + PENDING_STMT (e) = NULL; +} /* Return true if SSA_NAME is malformed and mark it visited. |