gallivm: do some hack heuristic to disable texture functions
authorRoland Scheidegger <sroland@vmware.com>
Tue, 31 Mar 2015 22:56:12 +0000 (00:56 +0200)
committerRoland Scheidegger <sroland@vmware.com>
Tue, 31 Mar 2015 22:56:12 +0000 (00:56 +0200)
commit611bd80f3b4972622a9f2c155c95d3241668e4d9
tree039c81641c0fd302ec82eb5b6feb793e3188d19a
parent47c4b3854076adfe5a27b537f36262ac4ec4530d
gallivm: do some hack heuristic to disable texture functions

We've seen some cases where performance can hurt quite a bit.
Technically, the more simple the function the more overhead there is
for using a function for this (and the less benefits this provides).
Hence don't do this if we expect the generated code to be simple.
There's an even more important reason why this hurts performance,
which is shaders reusing the same unit with some of the same inputs,
as llvm cannot figure out the calculations are the same if they
are performned in the function (even just reusing the same unit without
any input being the same provides such optimization opportunities though
not very much). This is something which would need to be handled by IPO
passes however.
src/gallium/auxiliary/gallivm/lp_bld_sample_soa.c