From: Carl Worth <cwo...@cworth.org> This will be used by the on disk shader cache.
Signed-off-by: Timothy Arceri <timothy.arc...@collabora.com> [jordan.l.jus...@intel.com: Only add to brw_stage_prog_data] Signed-off-by: Jordan Justen <jordan.l.jus...@intel.com> --- src/intel/compiler/brw_compiler.h | 2 ++ src/mesa/drivers/dri/i965/brw_cs.c | 2 ++ src/mesa/drivers/dri/i965/brw_gs.c | 2 ++ src/mesa/drivers/dri/i965/brw_tcs.c | 2 ++ src/mesa/drivers/dri/i965/brw_tes.c | 2 ++ src/mesa/drivers/dri/i965/brw_vs.c | 3 +++ src/mesa/drivers/dri/i965/brw_wm.c | 2 ++ 7 files changed, 15 insertions(+) diff --git a/src/intel/compiler/brw_compiler.h b/src/intel/compiler/brw_compiler.h index 66d6a6f5ee..9d29172577 100644 --- a/src/intel/compiler/brw_compiler.h +++ b/src/intel/compiler/brw_compiler.h @@ -521,6 +521,8 @@ struct brw_stage_prog_data { unsigned total_scratch; unsigned total_shared; + unsigned program_size; + /** * Register where the thread expects to find input data from the URB * (typically uniforms, followed by vertex or fragment attributes). diff --git a/src/mesa/drivers/dri/i965/brw_cs.c b/src/mesa/drivers/dri/i965/brw_cs.c index cc564a012b..f8aee239a8 100644 --- a/src/mesa/drivers/dri/i965/brw_cs.c +++ b/src/mesa/drivers/dri/i965/brw_cs.c @@ -168,6 +168,8 @@ brw_codegen_cs_prog(struct brw_context *brw, &brw->cs.base.prog_offset, &brw->cs.base.prog_data); ralloc_free(mem_ctx); + brw->cs.base.prog_data->program_size = program_size; + return true; } diff --git a/src/mesa/drivers/dri/i965/brw_gs.c b/src/mesa/drivers/dri/i965/brw_gs.c index bd8f993d11..a3c058fe9c 100644 --- a/src/mesa/drivers/dri/i965/brw_gs.c +++ b/src/mesa/drivers/dri/i965/brw_gs.c @@ -168,6 +168,8 @@ brw_codegen_gs_prog(struct brw_context *brw, &stage_state->prog_offset, &brw->gs.base.prog_data); ralloc_free(mem_ctx); + brw->gs.base.prog_data->program_size = program_size; + return true; } diff --git a/src/mesa/drivers/dri/i965/brw_tcs.c b/src/mesa/drivers/dri/i965/brw_tcs.c index 1ed622eebb..cf613a261b 100644 --- a/src/mesa/drivers/dri/i965/brw_tcs.c +++ b/src/mesa/drivers/dri/i965/brw_tcs.c @@ -287,6 +287,8 @@ brw_codegen_tcs_prog(struct brw_context *brw, struct brw_program *tcp, &stage_state->prog_offset, &brw->tcs.base.prog_data); ralloc_free(mem_ctx); + brw->tcs.base.prog_data->program_size = program_size; + return true; } diff --git a/src/mesa/drivers/dri/i965/brw_tes.c b/src/mesa/drivers/dri/i965/brw_tes.c index 20ce1f4c15..8b16a26408 100644 --- a/src/mesa/drivers/dri/i965/brw_tes.c +++ b/src/mesa/drivers/dri/i965/brw_tes.c @@ -158,6 +158,8 @@ brw_codegen_tes_prog(struct brw_context *brw, &stage_state->prog_offset, &brw->tes.base.prog_data); ralloc_free(mem_ctx); + brw->tes.base.prog_data->program_size = program_size; + return true; } diff --git a/src/mesa/drivers/dri/i965/brw_vs.c b/src/mesa/drivers/dri/i965/brw_vs.c index c0a0a13f23..055ea9d742 100644 --- a/src/mesa/drivers/dri/i965/brw_vs.c +++ b/src/mesa/drivers/dri/i965/brw_vs.c @@ -279,6 +279,9 @@ brw_codegen_vs_prog(struct brw_context *brw, program, program_size, &prog_data, sizeof(prog_data), &brw->vs.base.prog_offset, &brw->vs.base.prog_data); + + brw->vs.base.prog_data->program_size = program_size; + ralloc_free(mem_ctx); return true; diff --git a/src/mesa/drivers/dri/i965/brw_wm.c b/src/mesa/drivers/dri/i965/brw_wm.c index 2ff1c1e877..40b23fc0e6 100644 --- a/src/mesa/drivers/dri/i965/brw_wm.c +++ b/src/mesa/drivers/dri/i965/brw_wm.c @@ -232,6 +232,8 @@ brw_codegen_wm_prog(struct brw_context *brw, &prog_data, sizeof(prog_data), &brw->wm.base.prog_offset, &brw->wm.base.prog_data); + brw->wm.base.prog_data->program_size = program_size; + ralloc_free(mem_ctx); return true; -- 2.14.0 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev