[Mesa-dev] [PATCH 00/10] i965: Separate VS/FS sampler tables.
Kenneth Graunke
kenneth at whitecape.org
Wed Aug 14 18:55:06 PDT 2013
Currently, i965 uploads a single SAMPLER_STATE table shared across all
shader stages (VS, FS). This series splits it out, uploading a unique
table for each stage.
I think this may actually fix some bugs with vertex texturing:
Piglit's fragment-and-vertex-texturing uses two textures (unit 0 and
unit 1), one in each shader. vs->SamplersUsed and fs->SamplersUsed
both only have one bit set (bit 0), but vs->SamplerUnits and
fs->SamplerUnits map them differently (units 0 and 1). The existing
code would select fs->SamplerUnits[0], ignoring vs->SamplerUnits[0].
If the two textures had, say, different wrap modes, this would probably
illustrate the problem.
It also just seems like a good idea. The border color code in particular
is much nicer after this change, as it's not directly tied to brw->wm
any longer (even though textures can be used in all shader stages).
No observed Piglit changes on Ivybridge.
More information about the mesa-dev
mailing list