diff options
author | Kazu Hirata <kazu@cs.umass.edu> | 2004-11-09 14:59:49 +0000 |
---|---|---|
committer | Kazu Hirata <kazu@gcc.gnu.org> | 2004-11-09 14:59:49 +0000 |
commit | 5ae717192480a725e5bd7f55acefc10ca47bbc07 (patch) | |
tree | 8c76c150e9f39fa9475275c99247a8e8042e0b7f /gcc/tree-phinodes.c | |
parent | 6571838f58d19afb32c2b8e4b03d2855373dd0e5 (diff) | |
download | gcc-5ae717192480a725e5bd7f55acefc10ca47bbc07.zip gcc-5ae717192480a725e5bd7f55acefc10ca47bbc07.tar.gz gcc-5ae717192480a725e5bd7f55acefc10ca47bbc07.tar.bz2 |
tree-phinodes.c (phi_reverse): New.
* tree-phinodes.c (phi_reverse): New.
* tree-cfg.c (tree_make_forwarder_block, tree_duplicate_bb):
Use it.
* tree-flow.h: Add a prototype for phi_reverse.
From-SVN: r90344
Diffstat (limited to 'gcc/tree-phinodes.c')
-rw-r--r-- | gcc/tree-phinodes.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/gcc/tree-phinodes.c b/gcc/tree-phinodes.c index 0d621b5..a38a572 100644 --- a/gcc/tree-phinodes.c +++ b/gcc/tree-phinodes.c @@ -491,6 +491,21 @@ remove_all_phi_nodes_for (bitmap vars) } } +/* Reverse the order of PHI nodes in the chain PHI. + Return the new head of the chain (old last PHI node). */ + +tree +phi_reverse (tree phi) +{ + tree prev = NULL_TREE, next; + for (; phi; phi = next) + { + next = PHI_CHAIN (phi); + PHI_CHAIN (phi) = prev; + prev = phi; + } + return prev; +} #include "gt-tree-phinodes.h" |