diff options
author | José Fonseca <[email protected]> | 2009-10-03 22:15:17 +0100 |
---|---|---|
committer | José Fonseca <[email protected]> | 2009-10-04 22:03:15 +0100 |
commit | cd0a39681377644b7d4574c9a33acbc9c844bb59 (patch) | |
tree | 4c26d40ac62fd2efbb19679e78e47ce4abefd29f /src/gallium/drivers/llvmpipe | |
parent | 2a929a08ab4fa4501dca88cc988cbf469b7deeb5 (diff) |
llvmpipe: Adjust format assertion.
We support array layout too -- if it has a single channel.
Diffstat (limited to 'src/gallium/drivers/llvmpipe')
-rw-r--r-- | src/gallium/drivers/llvmpipe/lp_bld_format_soa.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/gallium/drivers/llvmpipe/lp_bld_format_soa.c b/src/gallium/drivers/llvmpipe/lp_bld_format_soa.c index b5ff434e1ae..66bebdcdec8 100644 --- a/src/gallium/drivers/llvmpipe/lp_bld_format_soa.c +++ b/src/gallium/drivers/llvmpipe/lp_bld_format_soa.c @@ -119,7 +119,9 @@ lp_build_unpack_rgba_soa(LLVMBuilderRef builder, unsigned chan; /* FIXME: Support more formats */ - assert(format_desc->layout == UTIL_FORMAT_LAYOUT_ARITH); + assert(format_desc->layout == UTIL_FORMAT_LAYOUT_ARITH || + (format_desc->layout == UTIL_FORMAT_LAYOUT_ARRAY && + format_desc->block.bits == format_desc->channel[0].size)); assert(format_desc->block.width == 1); assert(format_desc->block.height == 1); assert(format_desc->block.bits <= 32); @@ -195,10 +197,9 @@ lp_build_load_rgba_soa(LLVMBuilderRef builder, { LLVMValueRef packed; - assert(format_desc->layout == UTIL_FORMAT_LAYOUT_ARITH); assert(format_desc->block.width == 1); assert(format_desc->block.height == 1); - assert(format_desc->block.bits <= 32); + assert(format_desc->block.bits <= type.width); packed = lp_build_gather(builder, type.length, format_desc->block.bits, type.width, |