summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoramker <amker@138bc75d-0d04-0410-961f-82ee72b054a4>2016-05-23 14:44:07 +0000
committeramker <amker@138bc75d-0d04-0410-961f-82ee72b054a4>2016-05-23 14:44:07 +0000
commit71c6897652b5b4d4d4221cd6955ed4f044302827 (patch)
treea66e462485658cc06e3f5257aab53489dd34ef20
parent5403ed8bf2a38fe3ad31052ac67da1eafc373b43 (diff)
downloadgcc-71c6897652b5b4d4d4221cd6955ed4f044302827.tar.gz
* tree-ssa-address.c (copy_ref_info): Check NULL TMR_STEP when
TMR_INDEX is non-NULL. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@236593 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/tree-ssa-address.c4
2 files changed, 9 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index d85700a6bb4..311e632fd65 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2016-05-23 Bin Cheng <bin.cheng@arm.com>
+
+ * tree-ssa-address.c (copy_ref_info): Check NULL TMR_STEP when
+ TMR_INDEX is non-NULL.
+
2016-05-23 Richard Biener <rguenther@suse.de>
PR tree-optimization/71230
diff --git a/gcc/tree-ssa-address.c b/gcc/tree-ssa-address.c
index 9e49f3d3f68..b04545c2ed5 100644
--- a/gcc/tree-ssa-address.c
+++ b/gcc/tree-ssa-address.c
@@ -877,6 +877,10 @@ copy_ref_info (tree new_ref, tree old_ref)
&& TREE_CODE (old_ref) == MEM_REF
&& !(TREE_CODE (new_ref) == TARGET_MEM_REF
&& (TMR_INDEX2 (new_ref)
+ /* TODO: Below conditions can be relaxed if TMR_INDEX
+ is an indcution variable and its initial value and
+ step are aligned. */
+ || (TMR_INDEX (new_ref) && !TMR_STEP (new_ref))
|| (TMR_STEP (new_ref)
&& (TREE_INT_CST_LOW (TMR_STEP (new_ref))
< align)))))