diff options
author | Kenneth Graunke <[email protected]> | 2016-04-20 03:32:24 -0700 |
---|---|---|
committer | Kenneth Graunke <[email protected]> | 2016-04-22 10:26:30 -0700 |
commit | 42dea145d9c83d1ad59dfb275072a4ed67233d1d (patch) | |
tree | d584f54c2ede96a545950c2da4ac40882b976bd4 /src/mesa/drivers | |
parent | 1883613a24d8aaa4c43b18bca3d7e2daa46ebca0 (diff) |
i965: Disable channel expressions for scalar GS, TCS, TES.
On Broadwell, I get the following shader-db statistics:
Tessellation Control Shaders:
total instructions in shared programs: 57327 -> 57012 (-0.55%)
instructions in affected programs: 27334 -> 27019 (-1.15%)
helped: 45
HURT: 0
total cycles in shared programs: 265692 -> 255188 (-3.95%)
cycles in affected programs: 263122 -> 252618 (-3.99%)
helped: 184
HURT: 26
Tessellation Evaluation Shaders:
total instructions in shared programs: 23236 -> 23157 (-0.34%)
instructions in affected programs: 2791 -> 2712 (-2.83%)
helped: 27
HURT: 0
total cycles in shared programs: 151858 -> 149704 (-1.42%)
cycles in affected programs: 151858 -> 149704 (-1.42%)
helped: 101
HURT: 114
Geometry Shaders:
Orbital Explorer goes from 6442 -> 6356 instructions.
Two Shadow of Mordor shaders increase by a single instruction.
Signed-off-by: Kenneth Graunke <[email protected]>
Reviewed-by: Matt Turner <[email protected]>
Diffstat (limited to 'src/mesa/drivers')
-rw-r--r-- | src/mesa/drivers/dri/i965/brw_link.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_link.cpp b/src/mesa/drivers/dri/i965/brw_link.cpp index ee62adaf931..d4bbd8b3b5b 100644 --- a/src/mesa/drivers/dri/i965/brw_link.cpp +++ b/src/mesa/drivers/dri/i965/brw_link.cpp @@ -146,7 +146,9 @@ process_glsl_ir(gl_shader_stage stage, progress = false; if (compiler->scalar_stage[shader->Stage]) { - brw_do_channel_expressions(shader->ir); + if (shader->Stage == MESA_SHADER_VERTEX || + shader->Stage == MESA_SHADER_FRAGMENT) + brw_do_channel_expressions(shader->ir); brw_do_vector_splitting(shader->ir); } |