aco: use bit vectors for liveness sets
authorRhys Perry <pendingchaos02@gmail.com>
Mon, 14 Sep 2020 15:45:55 +0000 (16:45 +0100)
committerMarge Bot <eric+marge@anholt.net>
Mon, 21 Sep 2020 13:47:28 +0000 (13:47 +0000)
commitd2c18b7bf37f6b4fd7b0a2f7cf2fc97c5305ea4c
tree9361e3bf4bc50f9fc7c0189bb95e6a3d83808555
parentec2185c5984b66fb9cae33bd561cf35096c9861e
aco: use bit vectors for liveness sets

This seems to be much faster than hash sets. When compiling pipelines from
5 games, live_var_analysis takes about a third the time it used to and
fossilize-replay is ~1.77% faster.

Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Reviewed-by: Tony Wasserka <tony.wasserka@gmx.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6733>
src/amd/compiler/aco_ir.h
src/amd/compiler/aco_live_var_analysis.cpp
src/amd/compiler/aco_lower_to_cssa.cpp
src/amd/compiler/aco_register_allocation.cpp
src/amd/compiler/aco_util.h
src/amd/compiler/aco_validate.cpp