From 406b76ca3248869f67147c27165dedf6f2bb989f Mon Sep 17 00:00:00 2001 From: Roland Scheidegger Date: Wed, 28 Nov 2012 18:07:27 +0100 Subject: [PATCH] gallivm: fix multiple lods with different min/mag filter and wide vectors broken since 529fe420ba6836479619ba42e53665724755fc1c, I forgot some code, only added the comment... Fixes bug 57644. --- src/gallium/auxiliary/gallivm/lp_bld_sample_soa.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/gallium/auxiliary/gallivm/lp_bld_sample_soa.c b/src/gallium/auxiliary/gallivm/lp_bld_sample_soa.c index 97a23df4a87..35eb9cd8d08 100644 --- a/src/gallium/auxiliary/gallivm/lp_bld_sample_soa.c +++ b/src/gallium/auxiliary/gallivm/lp_bld_sample_soa.c @@ -1155,6 +1155,9 @@ lp_build_sample_general(struct lp_build_sample_context *bld, * least unless we have explicit lod (and who uses different * min/mag filter with that?) */ + if (bld->num_lods > 1) + lod_ipart = LLVMBuildExtractElement(builder, lod_ipart, + lp_build_const_int32(bld->gallivm, 0), ""); /* minify = lod >= 0.0 */ minify = LLVMBuildICmp(builder, LLVMIntSGE, -- 2.30.2