freedreno/ir3: disk-cache support
authorRob Clark <robdclark@chromium.org>
Fri, 5 Jun 2020 17:05:45 +0000 (10:05 -0700)
committerRob Clark <robdclark@chromium.org>
Fri, 26 Jun 2020 15:55:19 +0000 (08:55 -0700)
commitf97acb4bb4b18f127b62aa8eeb57cdf3d8fe3aa2
treed81503ddb51d67a932ecf08b6f9ec8047a9a3cb3
parent6aadb00e60fcf37bbef0dfe03e76e72e7c08bf33
freedreno/ir3: disk-cache support

Adds a shader disk-cache for ir3 shader variants.  Note that builds with
`-Dshader-cache=false` have no-op stubs with `disk_cache_create()` that
returns NULL.

Binning pass variants are serialized together with their draw-pass
counterparts, due to shared const-state.

Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5372>
src/freedreno/Makefile.sources
src/freedreno/ir3/ir3_compiler.c
src/freedreno/ir3/ir3_compiler.h
src/freedreno/ir3/ir3_disk_cache.c [new file with mode: 0644]
src/freedreno/ir3/ir3_shader.c
src/freedreno/ir3/ir3_shader.h
src/freedreno/ir3/meson.build
src/gallium/drivers/freedreno/freedreno_screen.c