From fe8b1e839ca91a61440288049a868944346eef4b Mon Sep 17 00:00:00 2001 From: Doug Gilmore Date: Tue, 4 Oct 2016 15:28:23 +0000 Subject: re PR tree-optimization/77808 (ICE in duplicate_ssa_name_ptr_info, at tree-ssanames.c:630 starting with r240439) Fix PR tree-optimization/77808 gcc/ PR tree-optimization/77808 * tree-ssa-loop-prefetch.c (issue_prefetch_ref): Check base_addr and addr are different before copying points-to information. gcc/testsuite/ PR tree-optimization/77808 * gcc.dg/tree-ssa/pr77808.c: New testcase. From-SVN: r240749 --- gcc/tree-ssa-loop-prefetch.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'gcc/tree-ssa-loop-prefetch.c') diff --git a/gcc/tree-ssa-loop-prefetch.c b/gcc/tree-ssa-loop-prefetch.c index 056815d..43ee85a 100644 --- a/gcc/tree-ssa-loop-prefetch.c +++ b/gcc/tree-ssa-loop-prefetch.c @@ -1162,7 +1162,8 @@ issue_prefetch_ref (struct mem_ref *ref, unsigned unroll_factor, unsigned ahead) NULL, true, GSI_SAME_STMT); } - if (TREE_CODE (addr_base) == SSA_NAME + if (addr_base != addr + && TREE_CODE (addr_base) == SSA_NAME && TREE_CODE (addr) == SSA_NAME) { duplicate_ssa_name_ptr_info (addr, SSA_NAME_PTR_INFO (addr_base)); -- cgit v1.1