+2004-10-27 Steven Bosscher <stevenb@suse.de>
+
+ * tree-phinodes.c (remove_phi_arg_num): Don't remove PHIs
+ without any PHI arguments left. Make sure the argument that
+ we're supposed to remove exists at all.
+
2004-10-27 Paul Brook <paul@codesourcery.com>
* configure.ac: Don't test for [build] __cxa_atexit when building a
2004-10-26 Fariborz Jahanian <fjahanian@apple.com>
- * config/rs6000/rs6000.md (andsi3_internal8): Set CR when splitting
+ * config/rs6000/rs6000.md (andsi3_internal8): Set CR when splitting
into rotlsi3.
2004-10-26 Kazu Hirata <kazu@cs.umass.edu>
{
int num_elem = PHI_NUM_ARGS (phi);
+ gcc_assert (i < num_elem);
+
/* If we are not at the last element, switch the last element
with the element we want to delete. */
if (i != num_elem - 1)
PHI_ARG_EDGE (phi, num_elem - 1) = NULL;
PHI_ARG_NONZERO (phi, num_elem - 1) = false;
PHI_NUM_ARGS (phi)--;
-
- /* If we removed the last PHI argument, then go ahead and
- remove the PHI node. */
- if (PHI_NUM_ARGS (phi) == 0)
- remove_phi_node (phi, NULL, bb_for_stmt (phi));
}
/* Remove PHI node PHI from basic block BB. If PREV is non-NULL, it is