diff options
author | amacleod <amacleod@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-09-16 18:45:33 +0000 |
---|---|---|
committer | amacleod <amacleod@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-09-16 18:45:33 +0000 |
commit | 1525d090ebf9fe0636f3538d162aad92c9133e7f (patch) | |
tree | 2745e6d5213d5831b375b7e3991cca3abb14e1e8 /gcc/tree-ssa-copyrename.c | |
parent | 50caf588c7dc25dbfaf4e0f300ecb2ad2d0d8980 (diff) | |
download | gcc-1525d090ebf9fe0636f3538d162aad92c9133e7f.tar.gz |
2004-09-16 Andrew MacLeod <amacleod@redhat.com>
PR tree-optimization/17517
* tree-ssa-copyrename.c (copy_rename_partition_coalesce): Don't
coalesce same-root variables without checking for abnormal PHI usage.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@87609 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/tree-ssa-copyrename.c')
-rw-r--r-- | gcc/tree-ssa-copyrename.c | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/gcc/tree-ssa-copyrename.c b/gcc/tree-ssa-copyrename.c index 494e3a57dd5..49225d09b20 100644 --- a/gcc/tree-ssa-copyrename.c +++ b/gcc/tree-ssa-copyrename.c @@ -169,6 +169,16 @@ copy_rename_partition_coalesce (var_map map, tree var1, tree var2, FILE *debug) return; } + /* Don't coalesce if one of the variables occurs in an abnormal PHI. */ + abnorm = (SSA_NAME_OCCURS_IN_ABNORMAL_PHI (rep1) + || SSA_NAME_OCCURS_IN_ABNORMAL_PHI (rep2)); + if (abnorm) + { + if (debug) + fprintf (debug, " : Abnormal PHI barrier. No coalesce.\n"); + return; + } + /* Partitions already have the same root, simply merge them. */ if (root1 == root2) { @@ -251,16 +261,6 @@ copy_rename_partition_coalesce (var_map map, tree var1, tree var2, FILE *debug) return; } - /* Don't coalesce if one of the variables occurs in an abnormal PHI. */ - abnorm = (SSA_NAME_OCCURS_IN_ABNORMAL_PHI (rep1) - || SSA_NAME_OCCURS_IN_ABNORMAL_PHI (rep2)); - if (abnorm) - { - if (debug) - fprintf (debug, " : Abnormal PHI barrier. No coalesce.\n"); - return; - } - /* Merge the two partitions. */ p3 = partition_union (map->var_partition, p1, p2); |