diff options
author | Jakub Jelinek <jakub@redhat.com> | 2013-02-26 10:59:12 +0100 |
---|---|---|
committer | Jakub Jelinek <jakub@gcc.gnu.org> | 2013-02-26 10:59:12 +0100 |
commit | aca43c6c06d60c7a9b7f53185ead6ce34df0308e (patch) | |
tree | 32a84c63a5a68adef879c2b408c89347cf365232 /gcc/tree-vect-stmts.c | |
parent | bed152e3743060ee0b91e890ad470ebd6c35c285 (diff) | |
download | gcc-aca43c6c06d60c7a9b7f53185ead6ce34df0308e.zip gcc-aca43c6c06d60c7a9b7f53185ead6ce34df0308e.tar.gz gcc-aca43c6c06d60c7a9b7f53185ead6ce34df0308e.tar.bz2 |
re PR middle-end/56443 (internal compiler error: verify_gimple failed at -O[1-2] -ftree-vectorize)
PR tree-optimization/56443
* tree-vect-stmts.c (get_vectype_for_scalar_type_and_size): For
overaligned types, pass TYPE_UNSIGNED (scalar_type) as second argument
to type_for_mode langhook.
* gcc.dg/torture/pr56443.c: New test.
From-SVN: r196277
Diffstat (limited to 'gcc/tree-vect-stmts.c')
-rw-r--r-- | gcc/tree-vect-stmts.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/tree-vect-stmts.c b/gcc/tree-vect-stmts.c index 1712d95..37f2423 100644 --- a/gcc/tree-vect-stmts.c +++ b/gcc/tree-vect-stmts.c @@ -6071,7 +6071,8 @@ get_vectype_for_scalar_type_and_size (tree scalar_type, unsigned size) /* We can't build a vector type of elements with alignment bigger than their size. */ else if (nbytes < TYPE_ALIGN_UNIT (scalar_type)) - scalar_type = lang_hooks.types.type_for_mode (inner_mode, 1); + scalar_type = lang_hooks.types.type_for_mode (inner_mode, + TYPE_UNSIGNED (scalar_type)); /* If we felt back to using the mode fail if there was no scalar type for it. */ |