mesa/src
Erico Nunes ab71c0ba44 lima/ppir: rework liveness data structures to bitset
The liveness code in ppir can be a bottleneck in complicated shaders
with multiple spills, and the use of the mesa set data structure is one
of the main reasons it is expensive to run.
With some changes, it can be adapted to using bitsets which makes it run
substantially faster.
ppir liveness can't run with a regular bitset for registers since we
need to track inviditual component masks for non-ssa registers, but we
can switch to using a separate packed bit array just for the masks,
rather than a full blown hash set. This also makes operations such as
liveness propagation much more straightforward.

Signed-off-by: Erico Nunes <nunes.erico@gmail.com>
Reviewed-by: Vasily Khoruzhick <anarsoul@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9745>
2021-03-25 14:17:26 +00:00
..
amd ac: invalidate metadata after hs_emit_write_tess_factors() 2021-03-25 10:46:21 +00:00
android_stub android: add some more stub functions for cross compilation 2021-03-25 06:06:16 +00:00
broadcom broadcom/compiler: convert add to mul when possible to allow merge 2021-03-25 09:51:42 +00:00
compiler nir: add nir_shader_as_str function 2021-03-25 13:53:33 +00:00
drm-shim drm-shim: report support for timeline semaphores 2021-02-09 21:08:52 +00:00
egl egl/wayland: avoid unnecessary roundtrip when authenticated 2021-03-19 14:45:33 +00:00
etnaviv etnaviv, v3d: Fix valgrind include paths. 2020-12-15 19:39:29 +00:00
freedreno turnip: implement VK_KHR_pipeline_executable_properties 2021-03-25 13:53:33 +00:00
gallium lima/ppir: rework liveness data structures to bitset 2021-03-25 14:17:26 +00:00
gbm gbm: add gbm_bo_get_fd_for_plane 2021-03-25 05:48:00 +00:00
getopt scons: Remove. 2021-03-20 10:38:55 +00:00
glx glx/drisw: Implement WaitX and WaitGL 2021-03-19 15:43:49 +00:00
gtest
hgl hgl: Major refactor and cleanup 2021-01-09 20:51:35 -06:00
imgui
intel nir: add nir_shader_as_str function 2021-03-25 13:53:33 +00:00
loader scons: Remove. 2021-03-20 10:38:55 +00:00
mapi scons: Remove. 2021-03-20 10:38:55 +00:00
mesa intel/compiler: Use a struct for brw_compile_cs parameters 2021-03-24 23:18:46 +00:00
microsoft nir: port fp16 casting code from dxil 2021-03-22 12:16:59 +10:00
nouveau nouveau: add drm-shim support 2021-01-11 22:45:01 +00:00
panfrost pan/mdg: Use appropriate sizes for global loads/stores 2021-03-25 13:23:47 +00:00
util util/set: stop leaking u32 key sets which pass a mem ctx 2021-03-24 23:32:40 +00:00
virtio virgl: implement support for PIPE_CAP_STRING_MARKER 2021-03-09 13:57:05 +00:00
vulkan vulkan: add common entrypoints for VK_KHR_create_renderpass2 2021-03-24 11:21:53 +00:00
meson.build nouveau: add drm-shim support 2021-01-11 22:45:01 +00:00