From 36fddb4bfb031111da227b2bf1f34317f2599b55 Mon Sep 17 00:00:00 2001 From: kazu Date: Tue, 2 Nov 2004 13:18:32 +0000 Subject: * 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 --- gcc/tree-phinodes.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'gcc/tree-phinodes.c') 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)--; } -- cgit v1.2.1