summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorJosé Fonseca <[email protected]>2010-09-10 20:09:00 +0100
committerJosé Fonseca <[email protected]>2010-09-11 13:34:54 +0100
commit552e2b5065a931f8787012a94fadf66566982050 (patch)
treed772135d393eecffa6e17a2adce2d5a12ba04044 /src
parent74f6edaee46505935b21e1d34f621b4aaf52fd35 (diff)
gallivm: nr_channels is only valid for formats with plain layout.
This is erroneously throwing non plain formats out of the faster AoS sampling path. Doing 8bit interpolation for single channels such as L8 should be no worse than with floating point. But this may need more investigation.
Diffstat (limited to 'src')
-rw-r--r--src/gallium/auxiliary/gallivm/lp_bld_sample_soa.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/src/gallium/auxiliary/gallivm/lp_bld_sample_soa.c b/src/gallium/auxiliary/gallivm/lp_bld_sample_soa.c
index 93cbf159aa4..baf0402f56a 100644
--- a/src/gallium/auxiliary/gallivm/lp_bld_sample_soa.c
+++ b/src/gallium/auxiliary/gallivm/lp_bld_sample_soa.c
@@ -2190,9 +2190,8 @@ lp_build_sample_soa(LLVMBuilderRef builder,
lp_build_sample_nop(&bld, texel_out);
}
else if (util_format_fits_8unorm(bld.format_desc) &&
- bld.format_desc->nr_channels > 1 &&
(static_state->target == PIPE_TEXTURE_2D ||
- static_state->target == PIPE_TEXTURE_RECT) &&
+ static_state->target == PIPE_TEXTURE_RECT) &&
static_state->min_img_filter == PIPE_TEX_FILTER_LINEAR &&
static_state->mag_img_filter == PIPE_TEX_FILTER_LINEAR &&
static_state->min_mip_filter == PIPE_TEX_MIPFILTER_NONE &&
@@ -2204,7 +2203,6 @@ lp_build_sample_soa(LLVMBuilderRef builder,
}
else {
if (gallivm_debug & GALLIVM_DEBUG_PERF &&
- bld.format_desc->nr_channels > 1 &&
(static_state->min_img_filter != PIPE_TEX_FILTER_NEAREST ||
static_state->mag_img_filter != PIPE_TEX_FILTER_NEAREST ||
static_state->min_mip_filter == PIPE_TEX_MIPFILTER_LINEAR) &&