diff options
author | Richard Guenther <rguenther@suse.de> | 2012-05-18 12:09:49 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2012-05-18 12:09:49 +0000 |
commit | 7595989bb427bc128b6752ee312d4d1b7b945f99 (patch) | |
tree | 9aae7ac764f8a15c859e29be337d0f35b644b903 /gcc/tree-vect-data-refs.c | |
parent | 917a52020ad1cc0d799476bffcc900a1a14824f5 (diff) | |
download | gcc-7595989bb427bc128b6752ee312d4d1b7b945f99.zip gcc-7595989bb427bc128b6752ee312d4d1b7b945f99.tar.gz gcc-7595989bb427bc128b6752ee312d4d1b7b945f99.tar.bz2 |
re PR tree-optimization/53390 (ICE: tree check: expected integer_cst, have nop_expr in vect_compute_data_ref_alignmen on 32-bit x86 host)
2012-05-18 Richard Guenther <rguenther@suse.de>
PR tree-optimization/53390
* tree-vect-data-refs.c (vect_compute_data_ref_alignment): Ignore
strided loads.
* gcc.dg/torture/pr53390.c: New testcase.
From-SVN: r187653
Diffstat (limited to 'gcc/tree-vect-data-refs.c')
-rw-r--r-- | gcc/tree-vect-data-refs.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/gcc/tree-vect-data-refs.c b/gcc/tree-vect-data-refs.c index c8882ae..a5ed053 100644 --- a/gcc/tree-vect-data-refs.c +++ b/gcc/tree-vect-data-refs.c @@ -824,6 +824,11 @@ vect_compute_data_ref_alignment (struct data_reference *dr) /* Initialize misalignment to unknown. */ SET_DR_MISALIGNMENT (dr, -1); + /* Strided loads perform only component accesses, misalignment information + is irrelevant for them. */ + if (STMT_VINFO_STRIDE_LOAD_P (stmt_info)) + return true; + misalign = DR_INIT (dr); aligned_to = DR_ALIGNED_TO (dr); base_addr = DR_BASE_ADDRESS (dr); |