diff --git a/src/asahi/lib/agx_meta.c b/src/asahi/lib/agx_meta.c index bab4c3c9644..e536c755e0a 100644 --- a/src/asahi/lib/agx_meta.c +++ b/src/asahi/lib/agx_meta.c @@ -79,6 +79,7 @@ agx_build_background_shader(struct agx_meta_cache *cache, struct agx_shader_key compiler_key = { .fs.ignore_tib_dependencies = true, .fs.nr_samples = key->tib.nr_samples, + .reserved_preamble = key->reserved_preamble, }; for (unsigned rt = 0; rt < ARRAY_SIZE(key->op); ++rt) { @@ -131,7 +132,10 @@ agx_build_end_of_tile_shader(struct agx_meta_cache *cache, .image_dim = dim); } - struct agx_shader_key compiler_key = {0}; + struct agx_shader_key compiler_key = { + .reserved_preamble = key->reserved_preamble, + }; + return agx_compile_meta_shader(cache, b.shader, &compiler_key, NULL); } diff --git a/src/asahi/lib/agx_meta.h b/src/asahi/lib/agx_meta.h index 8bc84a9ecac..4a1a6ab2b5f 100644 --- a/src/asahi/lib/agx_meta.h +++ b/src/asahi/lib/agx_meta.h @@ -27,6 +27,7 @@ enum agx_meta_op { struct agx_meta_key { struct agx_tilebuffer_layout tib; enum agx_meta_op op[8]; + unsigned reserved_preamble; }; struct agx_meta_shader {