summaryrefslogtreecommitdiffstats
path: root/src/mesa/drivers/dri/i965/brw_fs_copy_propagation.cpp
diff options
context:
space:
mode:
authorFrancisco Jerez <currojerez@riseup.net>2016-06-03 12:32:15 -0700
committerFrancisco Jerez <currojerez@riseup.net>2016-06-03 18:47:29 -0700
commit7244dc1e0651958b62222cafb15e34487851a6cd (patch)
treecbb19551c35a11f4d519f1566739f08daf6f3f44 /src/mesa/drivers/dri/i965/brw_fs_copy_propagation.cpp
parenta2135c6fd95d3e48f222a702c2b814e3cf37eb7d (diff)
downloadexternal_mesa3d-7244dc1e0651958b62222cafb15e34487851a6cd.zip
external_mesa3d-7244dc1e0651958b62222cafb15e34487851a6cd.tar.gz
external_mesa3d-7244dc1e0651958b62222cafb15e34487851a6cd.tar.bz2
Revert "i965/fs: Allow scalar source regions on SNB math instructions."
This reverts commit c1107cec44ab030c7fcc97c67baa12df1cc9d7b5. Apparently the hardware spec text I quoted in the commit message was outright lying about scalar source math being supported on SNB, the hardware seems to load 32 contiguous bits of data for each channel regardless of the regioning mode. Fixes regressions in the following CTS tests (which we didn't catch early due to CTS being temporarily disabled in our CI system): es2-cts.gtf.gl.atan.atan_vec3_frag_xvary es2-cts.gtf.gl.cos.cos_vec2_frag_xvary es2-cts.gtf.gl.atan.atan_vec2_frag_xvary es2-cts.gtf.gl.pow.pow_vec2_frag_xvary_yconsthalf es2-cts.gtf.gl.cos.cos_float_frag_xvary es2-cts.gtf.gl.pow.pow_float_frag_xvary_yconsthalf es2-cts.gtf.gl.atan.atan_vec3_frag_xvaryyvary es2-cts.gtf.gl.pow.pow_vec3_frag_xvary_yconsthalf es2-cts.gtf.gl.cos.cos_vec3_frag_xvary es2-cts.gtf.gl.atan.atan_vec2_frag_xvaryyvary Cc: mesa-stable@lists.freedesktop.org Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=96346 Reported-by: Mark Janes <mark.a.janes@intel.com> Acked-by: Matt Turner <mattst88@gmail.com>
Diffstat (limited to 'src/mesa/drivers/dri/i965/brw_fs_copy_propagation.cpp')
-rw-r--r--src/mesa/drivers/dri/i965/brw_fs_copy_propagation.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_fs_copy_propagation.cpp b/src/mesa/drivers/dri/i965/brw_fs_copy_propagation.cpp
index 2a83eb9..438f681 100644
--- a/src/mesa/drivers/dri/i965/brw_fs_copy_propagation.cpp
+++ b/src/mesa/drivers/dri/i965/brw_fs_copy_propagation.cpp
@@ -578,9 +578,12 @@ fs_visitor::try_constant_propagate(fs_inst *inst, acp_entry *entry)
break;
/* fallthrough */
case SHADER_OPCODE_POW:
- /* Allow constant propagation into src1, and let constant combining
+ /* Allow constant propagation into src1 (except on Gen 6 which
+ * doesn't support scalar source math), and let constant combining
* promote the constant on Gen < 8.
*/
+ if (devinfo->gen == 6)
+ break;
/* fallthrough */
case BRW_OPCODE_BFI1:
case BRW_OPCODE_ASR: