aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-vectorizer.h
diff options
context:
space:
mode:
authorBin Cheng <bin.cheng@arm.com>2016-06-17 09:05:05 +0000
committerBin Cheng <amker@gcc.gnu.org>2016-06-17 09:05:05 +0000
commit97816be433afedd0a407672b6f2fad23d179447b (patch)
tree201086e3720f21a3b75bfb89f8db7b84f7824354 /gcc/tree-vectorizer.h
parent7c80a459b96715dfb44708b7cef9f2813a7ff0ef (diff)
downloadgcc-97816be433afedd0a407672b6f2fad23d179447b.zip
gcc-97816be433afedd0a407672b6f2fad23d179447b.tar.gz
gcc-97816be433afedd0a407672b6f2fad23d179447b.tar.bz2
tree-vectorizer.h (struct dr_with_seg_len): Remove class member OFFSET.
* tree-vectorizer.h (struct dr_with_seg_len): Remove class member OFFSET. * tree-vect-data-refs.c (operator ==): Handle DR_OFFSET directly, rather than OFFSET. (comp_dr_with_seg_len_pair): Ditto. (vect_prune_runtime_alias_test_list): Ditto. Also Canonicalize struct dr_with_seg_len_pair against DR_OFFSET. * tree-vect-loop-manip.c (vect_create_cond_for_alias_checks): Handle DR_OFFSET directly. * gcc.dg/vect/vect-alias-check-1.c: New test. From-SVN: r237549
Diffstat (limited to 'gcc/tree-vectorizer.h')
-rw-r--r--gcc/tree-vectorizer.h10
1 files changed, 3 insertions, 7 deletions
diff --git a/gcc/tree-vectorizer.h b/gcc/tree-vectorizer.h
index 6d52b55..f15672f 100644
--- a/gcc/tree-vectorizer.h
+++ b/gcc/tree-vectorizer.h
@@ -146,19 +146,15 @@ typedef struct _slp_instance {
/* This struct is used to store the information of a data reference,
- including the data ref itself, the access offset (calculated by summing its
- offset and init) and the segment length for aliasing checks.
- This is used to merge alias checks. */
+ including the data ref itself and the segment length for aliasing
+ checks. This is used to merge alias checks. */
struct dr_with_seg_len
{
dr_with_seg_len (data_reference_p d, tree len)
- : dr (d),
- offset (size_binop (PLUS_EXPR, DR_OFFSET (d), DR_INIT (d))),
- seg_len (len) {}
+ : dr (d), seg_len (len) {}
data_reference_p dr;
- tree offset;
tree seg_len;
};