gallivm: support array textures
authorRoland Scheidegger <sroland@vmware.com>
Thu, 29 Nov 2012 03:06:48 +0000 (04:06 +0100)
committerRoland Scheidegger <sroland@vmware.com>
Thu, 29 Nov 2012 14:28:25 +0000 (15:28 +0100)
commit95e03914d82f4a3722cda00cd6eda54a6f328a73
treebfc1e987dc5896538272b1cfdaa648f149a82679
parent88e92f5bcd41a4affc0f5fc4433f7c9029cb8c03
gallivm: support array textures

Support 1d and 2d array textures (including shadow samplers),
and (as a side effect mostly) also shadow cube samplers.
Seems to pass the relevant piglit tests both for sampling and rendering
to (though some require version overrides).
Since we don't support render target indices rendering to array textures
is still restricted to a single layer at a time.
Also, the min/max layer in the sampler view (which is unnecessary for GL)
is ignored (always use all layers).

Reviewed-by: José Fonseca <jfonseca@vmware.com>
src/gallium/auxiliary/gallivm/lp_bld_sample.c
src/gallium/auxiliary/gallivm/lp_bld_sample.h
src/gallium/auxiliary/gallivm/lp_bld_sample_aos.c
src/gallium/auxiliary/gallivm/lp_bld_sample_soa.c
src/gallium/auxiliary/gallivm/lp_bld_tgsi_info.c
src/gallium/auxiliary/gallivm/lp_bld_tgsi_soa.c