summaryrefslogtreecommitdiffstats
path: root/gcc/tree-predcom.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/tree-predcom.c')
-rw-r--r--gcc/tree-predcom.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/gcc/tree-predcom.c b/gcc/tree-predcom.c
index b5c82923ee2..15fcafe76e1 100644
--- a/gcc/tree-predcom.c
+++ b/gcc/tree-predcom.c
@@ -628,6 +628,13 @@ determine_offset (struct data_reference *a, struct data_reference *b,
double_int *off)
{
aff_tree diff, baseb, step;
+ tree typea, typeb;
+
+ /* Check that both the references access the location in the same type. */
+ typea = TREE_TYPE (DR_REF (a));
+ typeb = TREE_TYPE (DR_REF (b));
+ if (!tree_ssa_useless_type_conversion_1 (typeb, typea))
+ return false;
/* Check whether the base address and the step of both references is the
same. */
OpenPOWER on IntegriCloud