intel/fs: the maximum supported stride width is 16
authorPaulo Zanoni <paulo.r.zanoni@intel.com>
Sat, 31 Aug 2019 00:16:28 +0000 (17:16 -0700)
committerJason Ekstrand <jason@jlekstrand.net>
Thu, 19 Sep 2019 02:48:27 +0000 (02:48 +0000)
commitc99df5287393cdb88e7ff2d9196be1eda67cd5ef
treee2b27b65940bed3514532d129d68defc72fd918a
parentcebf447d167b89f017382810d4ac1f43bca3c4d6
intel/fs: the maximum supported stride width is 16

There are cases where we try to generate registers with a stride of
32, while the hardware maximum is just 16. This happens, for example,
when using 8 bit integers on SIMD32. This results in a crash because
the variable 'width' has a value of 32:

../../src/intel/compiler/brw_reg.h:550: brw_reg brw_vecn_reg(unsigned
int, brw_reg_file, unsigned int, unsigned int): Assertion `!"Invalid
register width"' failed.

This change prevents the crash and makes the tests pass.

Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Signed-off-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
src/intel/compiler/brw_fs_generator.cpp