util: Split the pack/unpack functions out of the format desc.
authorEric Anholt <eric@anholt.net>
Wed, 1 Jul 2020 20:19:47 +0000 (13:19 -0700)
committerEric Anholt <eric@anholt.net>
Wed, 12 Aug 2020 20:13:39 +0000 (13:13 -0700)
commit4064a6cd207811434e5400a613b3833fbda6b787
tree1c7710219973394dc478d23abbdcb32404dcd1a6
parent6723addd8a70069517dd337939fe77ef6cea1a4c
util: Split the pack/unpack functions out of the format desc.

This gives the compiler a chance to GC pack/unpack functions separate from
the format descriptions.  For drivers that use everything, this is
+10-20kb, while for libvulkan_intel it's -1.3MB.

Bug: https://bugs.chromium.org/p/chromium/issues/detail?id=1048434
Acked-by: Matt Turner <mattst88@gmail.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5826>
src/gallium/auxiliary/gallivm/lp_bld_format_aos.c
src/gallium/auxiliary/translate/translate_generic.c
src/gallium/drivers/iris/iris_clear.c
src/gallium/drivers/llvmpipe/lp_test_format.c
src/gallium/drivers/svga/svga_pipe_clear.c
src/gallium/tests/unit/translate_test.c
src/util/format/u_format.c
src/util/format/u_format.h
src/util/format/u_format_table.py
src/util/tests/format/u_format_test.c