diff options
author | Kazu Hirata <kazu@cs.umass.edu> | 2004-11-23 17:45:50 +0000 |
---|---|---|
committer | Kazu Hirata <kazu@gcc.gnu.org> | 2004-11-23 17:45:50 +0000 |
commit | 6b66c71882bde3e130b6fca319ea6a1a3a964d06 (patch) | |
tree | 5276b730983237b937ef366760754e81460875fc /gcc/tree-flow-inline.h | |
parent | b3d31392c8d1782821f60d1e9acd34464dd8e163 (diff) | |
download | gcc-6b66c71882bde3e130b6fca319ea6a1a3a964d06.zip gcc-6b66c71882bde3e130b6fca319ea6a1a3a964d06.tar.gz gcc-6b66c71882bde3e130b6fca319ea6a1a3a964d06.tar.bz2 |
tree-phinode.c (resize_phi_node): Abort when LEN is strictly greater than PHI_ARG_CAPACITY.
* tree-phinode.c (resize_phi_node): Abort when LEN is strictly
greater than PHI_ARG_CAPACITY.
(reserve_phi_args_for_new_edge): Initialize the new PHI
argument to NULL_TREE. Increment PHI_NUM_ARGS.
(add_phi_arg): Add a PHI argument to the slot given by
E->dest_idx.
(remove_phi_arg_num): Do not write to PHI_ARG_EDGE.
* tree-flow-inline (phi_arg_from_edge): Return E->dest_idx.
* tree-ssa.c (ssa_redirect_edge): Check for a missing PHI
argument by looking at PHI_ARG_DEF.
(verify_phi_args): Check for a missing PHI argument. Remove
the check for duplicate PHI arguments.
* tree.h (PHI_ARG_EDGE): Redefine in terms of EDGE_PRED.
(phi_arg_d): Remove e.
From-SVN: r91097
Diffstat (limited to 'gcc/tree-flow-inline.h')
-rw-r--r-- | gcc/tree-flow-inline.h | 8 |
1 files changed, 1 insertions, 7 deletions
diff --git a/gcc/tree-flow-inline.h b/gcc/tree-flow-inline.h index e3c955e..ea5e741 100644 --- a/gcc/tree-flow-inline.h +++ b/gcc/tree-flow-inline.h @@ -393,15 +393,9 @@ set_phi_nodes (basic_block bb, tree l) static inline int phi_arg_from_edge (tree phi, edge e) { - int i; gcc_assert (phi); gcc_assert (TREE_CODE (phi) == PHI_NODE); - - for (i = 0; i < PHI_NUM_ARGS (phi); i++) - if (PHI_ARG_EDGE (phi, i) == e) - return i; - - return -1; + return e->dest_idx; } /* Mark VAR as used, so that it'll be preserved during rtl expansion. */ |