diff options
author | Matt Turner <mattst88@gmail.com> | 2016-03-14 17:39:19 -0700 |
---|---|---|
committer | Matt Turner <mattst88@gmail.com> | 2016-03-30 19:54:30 -0700 |
commit | f60750968c66f7aa15181c4ba315bb594e615044 (patch) | |
tree | 941e914dab612b03df3ca408c0c427339389a56f /src/mesa/drivers/dri/i965/brw_vec4_tcs.cpp | |
parent | 436bdd7403bfa260ce6dedcbd0ba96df2ae40ce8 (diff) | |
download | external_mesa3d-f60750968c66f7aa15181c4ba315bb594e615044.zip external_mesa3d-f60750968c66f7aa15181c4ba315bb594e615044.tar.gz external_mesa3d-f60750968c66f7aa15181c4ba315bb594e615044.tar.bz2 |
i965/vec4/tcs: Set conditional mod on TCS_OPCODE_SRC0_010_IS_ZERO.
Missing this causes an assertion failure in the scheduler with the next
patch.
Additionally, this gives cmod propagation enough information to optimize
code better.
total instructions in shared programs: 7112991 -> 7112852 (-0.00%)
instructions in affected programs: 25704 -> 25565 (-0.54%)
helped: 139
total cycles in shared programs: 64812898 -> 64810674 (-0.00%)
cycles in affected programs: 127224 -> 125000 (-1.75%)
helped: 139
Acked-by: Francisco Jerez <currojerez@riseup.net>
Diffstat (limited to 'src/mesa/drivers/dri/i965/brw_vec4_tcs.cpp')
-rw-r--r-- | src/mesa/drivers/dri/i965/brw_vec4_tcs.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_vec4_tcs.cpp b/src/mesa/drivers/dri/i965/brw_vec4_tcs.cpp index 2046b94..84aa89a 100644 --- a/src/mesa/drivers/dri/i965/brw_vec4_tcs.cpp +++ b/src/mesa/drivers/dri/i965/brw_vec4_tcs.cpp @@ -184,7 +184,9 @@ vec4_tcs_visitor::emit_thread_end() * we don't have stride in the vec4 world, nor UV immediates in * align16, so we need an opcode to get invocation_id<0,4,0>. */ - emit(TCS_OPCODE_SRC0_010_IS_ZERO, dst_null_d(), invocation_id); + set_condmod(BRW_CONDITIONAL_Z, + emit(TCS_OPCODE_SRC0_010_IS_ZERO, dst_null_d(), + invocation_id)); emit(IF(BRW_PREDICATE_NORMAL)); for (unsigned i = 0; i < key->input_vertices; i += 2) { /* If we have an odd number of input vertices, the last will be |