nir: Add a pass to combine stores
This MR is on top of !409 (merged). After the vectorization step, we end up with some sequences of stores to the same destination but with different masks. This pass combines them into a single store.
Shader-db results for skl:
total instructions in shared programs: 15179343 -> 15171231 (-0.05%)
instructions in affected programs: 60924 -> 52812 (-13.31%)
helped: 219
HURT: 0
total cycles in shared programs: 370888336 -> 370845932 (-0.01%)
cycles in affected programs: 278853 -> 236449 (-15.21%)
helped: 219
HURT: 0
Results for bdw are very similar.
Edited by Caio Oliveira