mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-04 18:28:12 +02:00
util: Make util_format_xxx_pack_xxx take pointer as arguments.
This commit is contained in:
parent
bce109c944
commit
325d55303d
2 changed files with 12 additions and 8 deletions
|
|
@ -60,13 +60,17 @@ test_format_unpack_4f(const struct util_format_test_case *test)
|
|||
static boolean
|
||||
test_format_pack_4f(const struct util_format_test_case *test)
|
||||
{
|
||||
float unpacked[4];
|
||||
uint8_t packed[UTIL_FORMAT_MAX_PACKED_BYTES];
|
||||
unsigned i;
|
||||
boolean success;
|
||||
|
||||
memset(packed, 0, sizeof packed);
|
||||
|
||||
util_format_pack_4f(test->format, packed, test->unpacked[0], test->unpacked[1], test->unpacked[2], test->unpacked[3]);
|
||||
for (i = 0; i < 4; ++i)
|
||||
unpacked[i] = (float) test->unpacked[i];
|
||||
|
||||
util_format_pack_4f(test->format, packed, unpacked);
|
||||
|
||||
success = TRUE;
|
||||
for (i = 0; i < UTIL_FORMAT_MAX_PACKED_BYTES; ++i)
|
||||
|
|
@ -158,7 +162,7 @@ test_format_pack_4ub(const struct util_format_test_case *test)
|
|||
|
||||
memset(packed, 0, sizeof packed);
|
||||
|
||||
util_format_pack_4ub(test->format, packed, unpacked[0], unpacked[1], unpacked[2], unpacked[3]);
|
||||
util_format_pack_4ub(test->format, packed, unpacked);
|
||||
|
||||
success = TRUE;
|
||||
for (i = 0; i < UTIL_FORMAT_MAX_PACKED_BYTES; ++i)
|
||||
|
|
|
|||
|
|
@ -423,7 +423,7 @@ def generate_format_pack(format, src_channel, src_native_type, src_suffix):
|
|||
inv_swizzle = format.inv_swizzles()
|
||||
|
||||
print 'static INLINE void'
|
||||
print 'util_format_%s_pack_%s(void *dst, %s r, %s g, %s b, %s a)' % (name, src_suffix, src_native_type, src_native_type, src_native_type, src_native_type)
|
||||
print 'util_format_%s_pack_%s(void *dst, const %s *src)' % (name, src_suffix, src_native_type)
|
||||
print '{'
|
||||
|
||||
if format.is_bitmask():
|
||||
|
|
@ -434,7 +434,7 @@ def generate_format_pack(format, src_channel, src_native_type, src_suffix):
|
|||
for i in range(4):
|
||||
dst_channel = format.channels[i]
|
||||
if inv_swizzle[i] is not None:
|
||||
value = 'rgba'[inv_swizzle[i]]
|
||||
value ='src[%u]' % inv_swizzle[i]
|
||||
value = conversion_expr(src_channel, dst_channel, dst_native_type, value)
|
||||
if format.colorspace == ZS:
|
||||
if i == 3:
|
||||
|
|
@ -470,7 +470,7 @@ def generate_format_pack(format, src_channel, src_native_type, src_suffix):
|
|||
width = dst_channel.size
|
||||
if inv_swizzle[i] is None:
|
||||
continue
|
||||
value = 'rgba'[inv_swizzle[i]]
|
||||
value ='src[%u]' % inv_swizzle[i]
|
||||
value = conversion_expr(src_channel, dst_channel, dst_native_type, value)
|
||||
if format.colorspace == ZS:
|
||||
if i == 3:
|
||||
|
|
@ -520,9 +520,9 @@ def generate_pack(formats, src_channel, src_native_type, src_suffix):
|
|||
generate_format_pack(format, src_channel, src_native_type, src_suffix)
|
||||
|
||||
print 'static INLINE void'
|
||||
print 'util_format_pack_%s(enum pipe_format format, void *dst, %s r, %s g, %s b, %s a)' % (src_suffix, src_native_type, src_native_type, src_native_type, src_native_type)
|
||||
print 'util_format_pack_%s(enum pipe_format format, void *dst, %s *src)' % (src_suffix, src_native_type)
|
||||
print '{'
|
||||
print ' void (*func)(void *dst, %s r, %s g, %s b, %s a);' % (src_native_type, src_native_type, src_native_type, src_native_type)
|
||||
print ' void (*func)(void *dst, const %s *src);' % (src_native_type,)
|
||||
print ' switch(format) {'
|
||||
for format in formats:
|
||||
if is_format_supported(format):
|
||||
|
|
@ -533,7 +533,7 @@ def generate_pack(formats, src_channel, src_native_type, src_suffix):
|
|||
print ' debug_printf("%s: unsupported format\\n", __FUNCTION__);'
|
||||
print ' return;'
|
||||
print ' }'
|
||||
print ' func(dst, r, g, b, a);'
|
||||
print ' func(dst, src);'
|
||||
print '}'
|
||||
print
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue