summaryrefslogtreecommitdiff
path: root/gcc/tree-phinodes.c
diff options
context:
space:
mode:
authorkazu <kazu@138bc75d-0d04-0410-961f-82ee72b054a4>2004-11-02 13:18:32 +0000
committerkazu <kazu@138bc75d-0d04-0410-961f-82ee72b054a4>2004-11-02 13:18:32 +0000
commit36fddb4bfb031111da227b2bf1f34317f2599b55 (patch)
treeabaa1be5c85696330d85aa1caaa8ff1233fcbadd /gcc/tree-phinodes.c
parentb5e2184b7e5d517c66d12f5a64d844730e75510a (diff)
downloadgcc-36fddb4bfb031111da227b2bf1f34317f2599b55.tar.gz
* tree-phinodes.c (remove_phi_arg_num): Do not zero the
element that's being removed. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@89984 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/tree-phinodes.c')
-rw-r--r--gcc/tree-phinodes.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/gcc/tree-phinodes.c b/gcc/tree-phinodes.c
index 89fbb3d88a7..e7883e3951c 100644
--- a/gcc/tree-phinodes.c
+++ b/gcc/tree-phinodes.c
@@ -396,10 +396,10 @@ remove_phi_arg_num (tree phi, int i)
PHI_ARG_NONZERO (phi, i) = PHI_ARG_NONZERO (phi, num_elem - 1);
}
- /* Shrink the vector and return. */
- SET_PHI_ARG_DEF (phi, num_elem - 1, NULL_TREE);
- PHI_ARG_EDGE (phi, num_elem - 1) = NULL;
- PHI_ARG_NONZERO (phi, num_elem - 1) = false;
+ /* Shrink the vector and return. Note that we do not have to clear
+ PHI_ARG_DEF, PHI_ARG_EDGE, or PHI_ARG_NONZERO because the garbage
+ collector will not look at those elements beyond the first
+ PHI_NUM_ARGS elements of the array. */
PHI_NUM_ARGS (phi)--;
}