This series implements a vec4 equivalent to fs_cmod_propagation optimization.
The last two commits are not really needed for the optimization, are just nice-to-have (imho) that I added while implementing the optimization. Alejandro Piñeiro (5): i965/vec4: nir_emit_if doesn't need to predicate based on all the channels i965/vec4: adding vec4_cmod_propagation optimization i965/vec4: Add unit tests for cmod propagation pass. i965/vec4: use a custom envvar to decide to print the assembly on test_vec4_cmod_propagation i965/vec4: print predicate control at brw_vec4 dump_instruction src/mesa/drivers/dri/i965/Makefile.am | 7 + src/mesa/drivers/dri/i965/Makefile.sources | 1 + src/mesa/drivers/dri/i965/brw_vec4.cpp | 17 +- src/mesa/drivers/dri/i965/brw_vec4.h | 1 + .../drivers/dri/i965/brw_vec4_cmod_propagation.cpp | 163 +++++ src/mesa/drivers/dri/i965/brw_vec4_nir.cpp | 4 +- .../dri/i965/test_vec4_cmod_propagation.cpp | 736 +++++++++++++++++++++ 7 files changed, 926 insertions(+), 3 deletions(-) create mode 100644 src/mesa/drivers/dri/i965/brw_vec4_cmod_propagation.cpp create mode 100644 src/mesa/drivers/dri/i965/test_vec4_cmod_propagation.cpp -- 2.1.4 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev