From 67b3f7166a8a400227ed91b47f12470e1bf36693 Mon Sep 17 00:00:00 2001 From: Job Noorman Date: Wed, 3 Jun 2026 14:11:59 +0200 Subject: [PATCH] ir3: don't store shader_options in the cache It's quite large (228B) and is only needed during compilation. Signed-off-by: Job Noorman Part-of: --- src/freedreno/ir3/ir3_shader.h | 4 ++-- src/freedreno/vulkan/tu_pipeline.cc | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/freedreno/ir3/ir3_shader.h b/src/freedreno/ir3/ir3_shader.h index 283cb5e7c84..45fd7da84bb 100644 --- a/src/freedreno/ir3/ir3_shader.h +++ b/src/freedreno/ir3/ir3_shader.h @@ -691,6 +691,8 @@ struct ir3_shader_variant { */ struct ir3_imm_const_state imm_state; + struct ir3_shader_options shader_options; + /* * The following macros are used by the shader disk cache save/ * restore paths to serialize/deserialize the variant. Any @@ -706,8 +708,6 @@ struct ir3_shader_variant { char blake3_str[BLAKE3_HEX_LEN]; - struct ir3_shader_options shader_options; - uint32_t constant_data_size; /* Levels of nesting of flow control: diff --git a/src/freedreno/vulkan/tu_pipeline.cc b/src/freedreno/vulkan/tu_pipeline.cc index 05f464e704e..0297ceb19c1 100644 --- a/src/freedreno/vulkan/tu_pipeline.cc +++ b/src/freedreno/vulkan/tu_pipeline.cc @@ -359,7 +359,7 @@ sp_xs_config(const struct ir3_shader_variant *v) static bool push_shared_consts(const struct ir3_shader_variant *v) { - return v && v->shader_options.push_consts_type == IR3_PUSH_CONSTS_SHARED_PREAMBLE; + return v && v->const_state->push_consts_type == IR3_PUSH_CONSTS_SHARED_PREAMBLE; } template