Mesa (master): i965/fs: Emit compressed BFI2 instructions on Gen > 7.

Matt Turner mattst88 at kemper.freedesktop.org
Wed Oct 1 00:10:02 UTC 2014


Module: Mesa
Branch: master
Commit: 3e7f8005db3e8f5f493ab83c1438bb6cf8c840b5
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=3e7f8005db3e8f5f493ab83c1438bb6cf8c840b5

Author: Matt Turner <mattst88 at gmail.com>
Date:   Tue Sep 30 15:06:23 2014 -0700

i965/fs: Emit compressed BFI2 instructions on Gen > 7.

IVB had a restriction that prevented us from emitting compressed
three-source instructions, and although that was lifted on Haswell,
Haswell had a new restriction that said BFI instructions specifically
couldn't be compressed.

---

 src/mesa/drivers/dri/i965/brw_fs_generator.cpp |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/mesa/drivers/dri/i965/brw_fs_generator.cpp b/src/mesa/drivers/dri/i965/brw_fs_generator.cpp
index 145e0ea..e20d3cc 100644
--- a/src/mesa/drivers/dri/i965/brw_fs_generator.cpp
+++ b/src/mesa/drivers/dri/i965/brw_fs_generator.cpp
@@ -1729,7 +1729,7 @@ fs_generator::generate_code(const cfg_t *cfg)
           * Otherwise we would be able to emit compressed instructions like we
           * do for the other three-source instructions.
           */
-         if (dispatch_width == 16) {
+         if (dispatch_width == 16 && brw->gen < 8) {
             brw_set_default_compression_control(p, BRW_COMPRESSION_NONE);
             brw_BFI2(p, firsthalf(dst), firsthalf(src[0]), firsthalf(src[1]), firsthalf(src[2]));
             brw_set_default_compression_control(p, BRW_COMPRESSION_2NDHALF);




More information about the mesa-commit mailing list