diff options
author | Jakub Jelinek <jakub@redhat.com> | 2007-12-10 23:49:43 +0100 |
---|---|---|
committer | Jakub Jelinek <jakub@gcc.gnu.org> | 2007-12-10 23:49:43 +0100 |
commit | 4f1f33aa8255271e5504ca6a0dcdea0f4f9b0b79 (patch) | |
tree | b3d2088e27b5f07e19b2e68b56260c2086c9d5ae /gcc/tree-vectorizer.h | |
parent | 0197270c6e3826925ce65bcca780ea218b770bf6 (diff) | |
download | gcc-4f1f33aa8255271e5504ca6a0dcdea0f4f9b0b79.zip gcc-4f1f33aa8255271e5504ca6a0dcdea0f4f9b0b79.tar.gz gcc-4f1f33aa8255271e5504ca6a0dcdea0f4f9b0b79.tar.bz2 |
re PR tree-optimization/34371 (verify_stmts failed (incorrect sharing of tree nodes))
PR tree-optimization/34371
* tree-vectorizer.h (struct _loop_vec_info): Add num_iters_unchanged
field.
(LOOP_VINFO_NITERS_UNCHANGED): Define to num_iters_unchanged field.
* tree-vectorizer.c (set_prologue_iterations,
slpeel_tree_peel_loop_to_edge): Call unshare_expr on
LOOP_VINFO_NITERS_UNCHANGED before using it.
* gcc.c-torture/compile/20071207-1.c: New test.
From-SVN: r130755
Diffstat (limited to 'gcc/tree-vectorizer.h')
-rw-r--r-- | gcc/tree-vectorizer.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/tree-vectorizer.h b/gcc/tree-vectorizer.h index d7d4476..0f3c34e 100644 --- a/gcc/tree-vectorizer.h +++ b/gcc/tree-vectorizer.h @@ -164,6 +164,7 @@ typedef struct _loop_vec_info { /* Number of iterations. */ tree num_iters; + tree num_iters_unchanged; /* Minimum number of iterations below which vectorization is expected to not be profitable (as estimated by the cost model). @@ -230,7 +231,7 @@ typedef struct _loop_vec_info { #define LOOP_VINFO_NITERS(L) (L)->num_iters /* Since LOOP_VINFO_NITERS can change after prologue peeling retain total unchanged scalar loop iterations for cost model. */ -#define LOOP_VINFO_NITERS_UNCHANGED(L) (L)->num_iters +#define LOOP_VINFO_NITERS_UNCHANGED(L) (L)->num_iters_unchanged #define LOOP_VINFO_COST_MODEL_MIN_ITERS(L) (L)->min_profitable_iters #define LOOP_VINFO_VECTORIZABLE_P(L) (L)->vectorizable #define LOOP_VINFO_VECT_FACTOR(L) (L)->vectorization_factor |