aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-outof-ssa.c
diff options
context:
space:
mode:
authorRichard Biener <rguenther@suse.de>2019-03-18 13:59:11 +0000
committerRichard Biener <rguenth@gcc.gnu.org>2019-03-18 13:59:11 +0000
commitca6d4a08c120841654acb10b973b0d009b053ef3 (patch)
treead85bf9aa281b6f0ae99a6d52b1feae8ec504aa6 /gcc/tree-outof-ssa.c
parentf9cacebbde8427e0537e79fe87dd1c89251a2582 (diff)
downloadgcc-ca6d4a08c120841654acb10b973b0d009b053ef3.zip
gcc-ca6d4a08c120841654acb10b973b0d009b053ef3.tar.gz
gcc-ca6d4a08c120841654acb10b973b0d009b053ef3.tar.bz2
re PR tree-optimization/88945 (ICE in fold_convert_loc in FRE when using -fdump-tree-fre-details)
2019-03-18 Richard Biener <rguenther@suse.de> PR middle-end/88945 * tree-ssanames.c (release_ssa_name_fn): For released SSA names use a TREE_TYPE of error_mark_node to avoid ICEs when dumping basic-blocks that are removed. Remove restoring SSA_NAME_VAR. * tree-outof-ssa.c (eliminate_useless_phis): Remove redundant checking. From-SVN: r269765
Diffstat (limited to 'gcc/tree-outof-ssa.c')
-rw-r--r--gcc/tree-outof-ssa.c21
1 files changed, 1 insertions, 20 deletions
diff --git a/gcc/tree-outof-ssa.c b/gcc/tree-outof-ssa.c
index c75d727..6cac55b 100644
--- a/gcc/tree-outof-ssa.c
+++ b/gcc/tree-outof-ssa.c
@@ -809,26 +809,7 @@ eliminate_useless_phis (void)
gphi *phi = gsi.phi ();
result = gimple_phi_result (phi);
if (virtual_operand_p (result))
- {
- /* There should be no arguments which are not virtual, or the
- results will be incorrect. */
- if (flag_checking)
- for (size_t i = 0; i < gimple_phi_num_args (phi); i++)
- {
- tree arg = PHI_ARG_DEF (phi, i);
- if (TREE_CODE (arg) == SSA_NAME
- && !virtual_operand_p (arg))
- {
- fprintf (stderr, "Argument of PHI is not virtual (");
- print_generic_expr (stderr, arg, TDF_SLIM);
- fprintf (stderr, "), but the result is :");
- print_gimple_stmt (stderr, phi, 0, TDF_SLIM);
- internal_error ("SSA corruption");
- }
- }
-
- remove_phi_node (&gsi, true);
- }
+ remove_phi_node (&gsi, true);
else
{
/* Also remove real PHIs with no uses. */