aco: use bit vectors for liveness sets

Graphics / Mesa 3D Graphics Library / Mesa - Rhys Perry [gmail.com] - 21 September 2020 13:47 UTC

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.

d2c18b7bf37 aco: use bit vectors for liveness sets
src/amd/compiler/aco_ir.h | 11 +-
src/amd/compiler/aco_live_var_analysis.cpp | 23 +++--
src/amd/compiler/aco_lower_to_cssa.cpp | 4 +-
src/amd/compiler/aco_register_allocation.cpp | 22 ++--
src/amd/compiler/aco_util.h | 146 +++++++++++++++++++++++++++
src/amd/compiler/aco_validate.cpp | 3 +-
6 files changed, 175 insertions(+), 34 deletions(-)

Upstream: cgit.freedesktop.org


  • Share