gallivm: use llvm jit code for decoding s3tc

Graphics / Mesa 3D Graphics Library / Mesa - Roland Scheidegger [vmware.com] - 20 December 2018 05:03 EST

This is (much) faster than using the util fallback. (Note that there's two methods here, one would use a cache, similar to the existing code (although the cache was disabled), except the block decode is done with jit code, the other directly decodes the required pixels. For now don't use the cache (being direct-mapped is suboptimal, but it's difficult to come up with something better which doesn't have too much overhead.)

6f4083143b gallivm: use llvm jit code for decoding s3tc
src/gallium/auxiliary/Makefile.sources | 2 +-
src/gallium/auxiliary/gallivm/lp_bld_format.h | 6 +-
src/gallium/auxiliary/gallivm/lp_bld_format_aos.c | 5 +-
.../auxiliary/gallivm/lp_bld_format_cached.c | 374 ----
src/gallium/auxiliary/gallivm/lp_bld_format_s3tc.c | 2229 ++++++++++++++++++++
src/gallium/auxiliary/gallivm/lp_bld_sample_soa.c | 4 -
src/gallium/auxiliary/meson.build | 2 +-
7 files changed, 2239 insertions(+), 383 deletions(-)

Upstream: cgit.freedesktop.org


  • Share