summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorKenneth Graunke <[email protected]>2014-10-15 18:57:07 -0700
committerKenneth Graunke <[email protected]>2014-10-21 21:14:03 -0700
commit6dc6e6e0d979aa666e2934ae40477195e4d37ceb (patch)
tree6eb446c75b75e282379a1856ce555bc64f7f3007 /include
parentf5c3f095b97dc5d8997ca448ffffbca67b3db4d5 (diff)
i965/vec4: Generate better code for ir_triop_csel.
Previously, we generated an extra CMP instruction: cmp.ge.f0(8) g6<1>D g1<0,4,1>F 0F cmp.nz.f0(8) null g6<4,4,1>D 0D (+f0) sel(8) g5<1>F g1.4<0,4,1>F g2<0,4,1>F The first operand is always a boolean, and we want to predicate the SEL on that. Rather than producing a boolean value and comparing it against zero, we can just produce a condition code in the flag register. Now we generate: cmp.ge.f0(8) null g1<0,4,1>F 0F (+f0) sel(8) g5<1>F g1.4<0,4,1>F g2<0,4,1>F No difference in shader-db. v2: Remember to delete the old code (thanks Matt). Signed-off-by: Kenneth Graunke <[email protected]> Reviewed-by: Matt Turner <[email protected]>
Diffstat (limited to 'include')
0 files changed, 0 insertions, 0 deletions