aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-ssa-alias.c
diff options
context:
space:
mode:
authorRichard Biener <rguenther@suse.de>2017-05-03 10:59:25 +0000
committerRichard Biener <rguenth@gcc.gnu.org>2017-05-03 10:59:25 +0000
commit8d5f521a5c09313c5c01005a69440f21bc80bc97 (patch)
tree1586272b5224975c8d6cb3cdf79a0e82055ec87a /gcc/tree-ssa-alias.c
parent3cff0135a6cf74c4cb8c03c514a91a6b0ea5b61a (diff)
downloadgcc-8d5f521a5c09313c5c01005a69440f21bc80bc97.zip
gcc-8d5f521a5c09313c5c01005a69440f21bc80bc97.tar.gz
gcc-8d5f521a5c09313c5c01005a69440f21bc80bc97.tar.bz2
revert: re PR tree-optimization/80492 (Wrong code when unrolling a loop with inline asm and local regs)
2017-05-03 Richard Biener <rguenther@suse.de> Revert PR tree-optimization/80492 * tree-ssa-alias.c (decl_refs_may_alias_p): Handle compare_base_decls returning dont-know properly. From-SVN: r247543
Diffstat (limited to 'gcc/tree-ssa-alias.c')
-rw-r--r--gcc/tree-ssa-alias.c7
1 files changed, 2 insertions, 5 deletions
diff --git a/gcc/tree-ssa-alias.c b/gcc/tree-ssa-alias.c
index 8cab159..dc54533 100644
--- a/gcc/tree-ssa-alias.c
+++ b/gcc/tree-ssa-alias.c
@@ -1096,16 +1096,13 @@ decl_refs_may_alias_p (tree ref1, tree base1,
{
gcc_checking_assert (DECL_P (base1) && DECL_P (base2));
- int cmp = compare_base_decls (base1, base2);
-
/* If both references are based on different variables, they cannot alias. */
- if (cmp == 0)
+ if (compare_base_decls (base1, base2) == 0)
return false;
/* If both references are based on the same variable, they cannot alias if
the accesses do not overlap. */
- if (cmp == 1
- && !ranges_overlap_p (offset1, max_size1, offset2, max_size2))
+ if (!ranges_overlap_p (offset1, max_size1, offset2, max_size2))
return false;
/* For components with variable position, the above test isn't sufficient,