aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-vectorizer.h
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/tree-vectorizer.h')
-rw-r--r--gcc/tree-vectorizer.h48
1 files changed, 24 insertions, 24 deletions
diff --git a/gcc/tree-vectorizer.h b/gcc/tree-vectorizer.h
index e572511..1f5e3ef 100644
--- a/gcc/tree-vectorizer.h
+++ b/gcc/tree-vectorizer.h
@@ -468,15 +468,15 @@ typedef struct _stmt_vec_info {
/* Whether the stmt is SLPed, loop-based vectorized, or both. */
enum slp_vect_type slp_type;
- /* Interleaving info. */
- /* First data-ref in the interleaving group. */
- gimple first_dr;
- /* Pointer to the next data-ref in the group. */
- gimple next_dr;
- /* In case that two or more stmts share data-ref, this is the pointer to the
- previously detected stmt with the same dr. */
+ /* Interleaving and reduction chains info. */
+ /* First element in the group. */
+ gimple first_element;
+ /* Pointer to the next element in the group. */
+ gimple next_element;
+ /* For data-refs, in case that two or more stmts share data-ref, this is the
+ pointer to the previously detected stmt with the same dr. */
gimple same_dr_stmt;
- /* The size of the interleaving group. */
+ /* The size of the group. */
unsigned int size;
/* For stores, number of stores from this group seen. We vectorize the last
one. */
@@ -527,22 +527,22 @@ typedef struct _stmt_vec_info {
#define STMT_VINFO_RELATED_STMT(S) (S)->related_stmt
#define STMT_VINFO_SAME_ALIGN_REFS(S) (S)->same_align_refs
#define STMT_VINFO_DEF_TYPE(S) (S)->def_type
-#define STMT_VINFO_DR_GROUP_FIRST_DR(S) (S)->first_dr
-#define STMT_VINFO_DR_GROUP_NEXT_DR(S) (S)->next_dr
-#define STMT_VINFO_DR_GROUP_SIZE(S) (S)->size
-#define STMT_VINFO_DR_GROUP_STORE_COUNT(S) (S)->store_count
-#define STMT_VINFO_DR_GROUP_GAP(S) (S)->gap
-#define STMT_VINFO_DR_GROUP_SAME_DR_STMT(S)(S)->same_dr_stmt
-#define STMT_VINFO_DR_GROUP_READ_WRITE_DEPENDENCE(S) (S)->read_write_dep
-#define STMT_VINFO_STRIDED_ACCESS(S) ((S)->first_dr != NULL)
-
-#define DR_GROUP_FIRST_DR(S) (S)->first_dr
-#define DR_GROUP_NEXT_DR(S) (S)->next_dr
-#define DR_GROUP_SIZE(S) (S)->size
-#define DR_GROUP_STORE_COUNT(S) (S)->store_count
-#define DR_GROUP_GAP(S) (S)->gap
-#define DR_GROUP_SAME_DR_STMT(S) (S)->same_dr_stmt
-#define DR_GROUP_READ_WRITE_DEPENDENCE(S) (S)->read_write_dep
+#define STMT_VINFO_GROUP_FIRST_ELEMENT(S) (S)->first_element
+#define STMT_VINFO_GROUP_NEXT_ELEMENT(S) (S)->next_element
+#define STMT_VINFO_GROUP_SIZE(S) (S)->size
+#define STMT_VINFO_GROUP_STORE_COUNT(S) (S)->store_count
+#define STMT_VINFO_GROUP_GAP(S) (S)->gap
+#define STMT_VINFO_GROUP_SAME_DR_STMT(S) (S)->same_dr_stmt
+#define STMT_VINFO_GROUP_READ_WRITE_DEPENDENCE(S) (S)->read_write_dep
+#define STMT_VINFO_STRIDED_ACCESS(S) ((S)->first_element != NULL && (S)->data_ref_info)
+
+#define GROUP_FIRST_ELEMENT(S) (S)->first_element
+#define GROUP_NEXT_ELEMENT(S) (S)->next_element
+#define GROUP_SIZE(S) (S)->size
+#define GROUP_STORE_COUNT(S) (S)->store_count
+#define GROUP_GAP(S) (S)->gap
+#define GROUP_SAME_DR_STMT(S) (S)->same_dr_stmt
+#define GROUP_READ_WRITE_DEPENDENCE(S) (S)->read_write_dep
#define STMT_VINFO_RELEVANT_P(S) ((S)->relevant != vect_unused_in_scope)
#define STMT_VINFO_OUTSIDE_OF_LOOP_COST(S) (S)->cost.outside_of_loop