Handle vectors that don't fit in an integer.
authorAndrew Stubbs <ams@codesourcery.com>
Thu, 15 Nov 2018 17:14:15 +0000 (17:14 +0000)
committerAndrew Stubbs <ams@gcc.gnu.org>
Thu, 15 Nov 2018 17:14:15 +0000 (17:14 +0000)
commit1ec7f4929a286da7aa03d413a0fe99c9c36be915
tree8b4f15e343837ad357e3109beffa90c0c88fc487
parent2bd652d265f8158e9deed8715e5d1972bf8cd7c4
Handle vectors that don't fit in an integer.

GCN vector sizes range between 64 and 512 bytes, none of which have
correspondingly sized integer modes.  This breaks a number of assumptions
throughout the compiler, but I don't really want to create modes just for this
purpose.

Instead, this patch fixes up the cases that I've found, so far, such that the
compiler tries something else, or fails to optimize, rather than just ICE.

2018-11-15  Andrew Stubbs  <ams@codesourcery.com>
            Kwok Cheung Yeung  <kcy@codesourcery.com>

gcc/
* tree-vect-stmts.c (vectorizable_store): Don't ICE when
int_mode_for_size fails.
(vectorizable_load): Likewise.

Co-Authored-By: Kwok Cheung Yeung <kcy@codesourcery.com>
From-SVN: r266190
gcc/ChangeLog
gcc/tree-vect-stmts.c