intel/cs: Re-run final NIR optimizations for each SIMD size
authorJason Ekstrand <jason.ekstrand@intel.com>
Tue, 22 Aug 2017 04:27:19 +0000 (21:27 -0700)
committerJason Ekstrand <jason.ekstrand@intel.com>
Tue, 7 Nov 2017 18:37:52 +0000 (10:37 -0800)
commit6411defdcd6f560e74eaaaf3266f9efbb6dd81da
treef359e9537d6a34d436b6ffbb5aac6410bacd3af2
parent4e79a77cdc65af621f77c685b01cd18ace187965
intel/cs: Re-run final NIR optimizations for each SIMD size

With the advent of SPIR-V subgroup operations, compute shaders will have
to be slightly different depending on the SIMD size at which they
execute.  In order to allow us to do dispatch-width specific things in
NIR, we re-run the final NIR stages for each sIMD width.

One side-effect of this change is that we start rallocing fs_visitors
which means we need DECLARE_RALLOC_CXX_OPERATORS.

Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
src/intel/compiler/brw_fs.cpp