From 3dcbc5cdaa871f6ad2f123d0eb81f32fbfa7070b Mon Sep 17 00:00:00 2001 From: Jordan Justen Date: Sat, 21 Oct 2017 20:55:45 -0700 Subject: [PATCH] intel/compiler: Remove final_program_size from brw_compile_* The caller can now use brw_stage_prog_data::program_size which is set by the brw_compile_* functions. Cc: Jason Ekstrand Signed-off-by: Jordan Justen Reviewed-by: Jason Ekstrand --- src/intel/blorp/blorp.c | 10 ++++------ src/intel/blorp/blorp_blit.c | 5 ++--- src/intel/blorp/blorp_clear.c | 15 ++++++-------- src/intel/blorp/blorp_priv.h | 6 ++---- src/intel/compiler/brw_compiler.h | 6 ------ src/intel/compiler/brw_fs.cpp | 10 ++-------- src/intel/compiler/brw_shader.cpp | 6 ++---- src/intel/compiler/brw_vec4.cpp | 6 ++---- src/intel/compiler/brw_vec4_gs_visitor.cpp | 18 ++++++----------- src/intel/compiler/brw_vec4_tcs.cpp | 6 ++---- src/intel/vulkan/anv_pipeline.c | 23 +++++++++++----------- src/mesa/drivers/dri/i965/brw_cs.c | 5 ++--- src/mesa/drivers/dri/i965/brw_gs.c | 5 ++--- src/mesa/drivers/dri/i965/brw_tcs.c | 5 ++--- src/mesa/drivers/dri/i965/brw_tes.c | 5 ++--- src/mesa/drivers/dri/i965/brw_vs.c | 11 +++++------ src/mesa/drivers/dri/i965/brw_wm.c | 5 ++--- 17 files changed, 55 insertions(+), 92 deletions(-) diff --git a/src/intel/blorp/blorp.c b/src/intel/blorp/blorp.c index 7cc6335f2f6..5faba75b8db 100644 --- a/src/intel/blorp/blorp.c +++ b/src/intel/blorp/blorp.c @@ -162,8 +162,7 @@ blorp_compile_fs(struct blorp_context *blorp, void *mem_ctx, struct nir_shader *nir, struct brw_wm_prog_key *wm_key, bool use_repclear, - struct brw_wm_prog_data *wm_prog_data, - unsigned *program_size) + struct brw_wm_prog_data *wm_prog_data) { const struct brw_compiler *compiler = blorp->compiler; @@ -194,7 +193,7 @@ blorp_compile_fs(struct blorp_context *blorp, void *mem_ctx, const unsigned *program = brw_compile_fs(compiler, blorp->driver_ctx, mem_ctx, wm_key, wm_prog_data, nir, NULL, -1, -1, false, use_repclear, - NULL, program_size, NULL); + NULL, NULL); return program; } @@ -202,8 +201,7 @@ blorp_compile_fs(struct blorp_context *blorp, void *mem_ctx, const unsigned * blorp_compile_vs(struct blorp_context *blorp, void *mem_ctx, struct nir_shader *nir, - struct brw_vs_prog_data *vs_prog_data, - unsigned *program_size) + struct brw_vs_prog_data *vs_prog_data) { const struct brw_compiler *compiler = blorp->compiler; @@ -225,7 +223,7 @@ blorp_compile_vs(struct blorp_context *blorp, void *mem_ctx, const unsigned *program = brw_compile_vs(compiler, blorp->driver_ctx, mem_ctx, &vs_key, vs_prog_data, nir, - false, -1, program_size, NULL); + false, -1, NULL); return program; } diff --git a/src/intel/blorp/blorp_blit.c b/src/intel/blorp/blorp_blit.c index 4507046dae5..9b5c1f1f8c1 100644 --- a/src/intel/blorp/blorp_blit.c +++ b/src/intel/blorp/blorp_blit.c @@ -1308,7 +1308,6 @@ brw_blorp_get_blit_kernel(struct blorp_context *blorp, void *mem_ctx = ralloc_context(NULL); const unsigned *program; - unsigned program_size; struct brw_wm_prog_data prog_data; nir_shader *nir = brw_blorp_build_nir_shader(blorp, mem_ctx, prog_key); @@ -1322,11 +1321,11 @@ brw_blorp_get_blit_kernel(struct blorp_context *blorp, wm_key.multisample_fbo = prog_key->rt_samples > 1; program = blorp_compile_fs(blorp, mem_ctx, nir, &wm_key, false, - &prog_data, &program_size); + &prog_data); bool result = blorp->upload_shader(blorp, prog_key, sizeof(*prog_key), - program, program_size, + program, prog_data.base.program_size, &prog_data.base, sizeof(prog_data), ¶ms->wm_prog_kernel, ¶ms->wm_prog_data); diff --git a/src/intel/blorp/blorp_clear.c b/src/intel/blorp/blorp_clear.c index cd83fa13caf..8d758df155f 100644 --- a/src/intel/blorp/blorp_clear.c +++ b/src/intel/blorp/blorp_clear.c @@ -75,14 +75,13 @@ blorp_params_get_clear_kernel(struct blorp_context *blorp, brw_blorp_init_wm_prog_key(&wm_key); struct brw_wm_prog_data prog_data; - unsigned program_size; const unsigned *program = blorp_compile_fs(blorp, mem_ctx, b.shader, &wm_key, use_replicated_data, - &prog_data, &program_size); + &prog_data); bool result = blorp->upload_shader(blorp, &blorp_key, sizeof(blorp_key), - program, program_size, + program, prog_data.base.program_size, &prog_data.base, sizeof(prog_data), ¶ms->wm_prog_kernel, ¶ms->wm_prog_data); @@ -167,13 +166,12 @@ blorp_params_get_layer_offset_vs(struct blorp_context *blorp, struct brw_vs_prog_data vs_prog_data; memset(&vs_prog_data, 0, sizeof(vs_prog_data)); - unsigned program_size; const unsigned *program = - blorp_compile_vs(blorp, mem_ctx, b.shader, &vs_prog_data, &program_size); + blorp_compile_vs(blorp, mem_ctx, b.shader, &vs_prog_data); bool result = blorp->upload_shader(blorp, &blorp_key, sizeof(blorp_key), - program, program_size, + program, vs_prog_data.base.base.program_size, &vs_prog_data.base.base, sizeof(vs_prog_data), ¶ms->vs_prog_kernel, ¶ms->vs_prog_data); @@ -864,14 +862,13 @@ blorp_params_get_mcs_partial_resolve_kernel(struct blorp_context *blorp, wm_key.multisample_fbo = true; struct brw_wm_prog_data prog_data; - unsigned program_size; const unsigned *program = blorp_compile_fs(blorp, mem_ctx, b.shader, &wm_key, false, - &prog_data, &program_size); + &prog_data); bool result = blorp->upload_shader(blorp, &blorp_key, sizeof(blorp_key), - program, program_size, + program, prog_data.base.program_size, &prog_data.base, sizeof(prog_data), ¶ms->wm_prog_kernel, ¶ms->wm_prog_data); diff --git a/src/intel/blorp/blorp_priv.h b/src/intel/blorp/blorp_priv.h index c7d5d308da7..d91e436c1c5 100644 --- a/src/intel/blorp/blorp_priv.h +++ b/src/intel/blorp/blorp_priv.h @@ -342,14 +342,12 @@ blorp_compile_fs(struct blorp_context *blorp, void *mem_ctx, struct nir_shader *nir, struct brw_wm_prog_key *wm_key, bool use_repclear, - struct brw_wm_prog_data *wm_prog_data, - unsigned *program_size); + struct brw_wm_prog_data *wm_prog_data); const unsigned * blorp_compile_vs(struct blorp_context *blorp, void *mem_ctx, struct nir_shader *nir, - struct brw_vs_prog_data *vs_prog_data, - unsigned *program_size); + struct brw_vs_prog_data *vs_prog_data); bool blorp_ensure_sf_program(struct blorp_context *blorp, diff --git a/src/intel/compiler/brw_compiler.h b/src/intel/compiler/brw_compiler.h index fa5a3bf0274..17fc4e1b17c 100644 --- a/src/intel/compiler/brw_compiler.h +++ b/src/intel/compiler/brw_compiler.h @@ -1100,7 +1100,6 @@ brw_compile_vs(const struct brw_compiler *compiler, void *log_data, const struct nir_shader *shader, bool use_legacy_snorm_formula, int shader_time_index, - unsigned *final_assembly_size, char **error_str); /** @@ -1116,7 +1115,6 @@ brw_compile_tcs(const struct brw_compiler *compiler, struct brw_tcs_prog_data *prog_data, const struct nir_shader *nir, int shader_time_index, - unsigned *final_assembly_size, char **error_str); /** @@ -1133,7 +1131,6 @@ brw_compile_tes(const struct brw_compiler *compiler, void *log_data, const struct nir_shader *shader, struct gl_program *prog, int shader_time_index, - unsigned *final_assembly_size, char **error_str); /** @@ -1149,7 +1146,6 @@ brw_compile_gs(const struct brw_compiler *compiler, void *log_data, const struct nir_shader *shader, struct gl_program *prog, int shader_time_index, - unsigned *final_assembly_size, char **error_str); /** @@ -1200,7 +1196,6 @@ brw_compile_fs(const struct brw_compiler *compiler, void *log_data, int shader_time_index16, bool allow_spilling, bool use_rep_send, struct brw_vue_map *vue_map, - unsigned *final_assembly_size, char **error_str); /** @@ -1215,7 +1210,6 @@ brw_compile_cs(const struct brw_compiler *compiler, void *log_data, struct brw_cs_prog_data *prog_data, const struct nir_shader *shader, int shader_time_index, - unsigned *final_assembly_size, char **error_str); static inline uint32_t diff --git a/src/intel/compiler/brw_fs.cpp b/src/intel/compiler/brw_fs.cpp index d355675b2b8..814da8ad94d 100644 --- a/src/intel/compiler/brw_fs.cpp +++ b/src/intel/compiler/brw_fs.cpp @@ -6542,7 +6542,6 @@ brw_compile_fs(const struct brw_compiler *compiler, void *log_data, int shader_time_index8, int shader_time_index16, bool allow_spilling, bool use_rep_send, struct brw_vue_map *vue_map, - unsigned *final_assembly_size, char **error_str) { const struct gen_device_info *devinfo = compiler->devinfo; @@ -6691,9 +6690,7 @@ brw_compile_fs(const struct brw_compiler *compiler, void *log_data, prog_data->reg_blocks_0 = brw_register_blocks(simd16_grf_used); } - const unsigned *assembly = g.get_assembly(final_assembly_size); - prog_data->base.program_size = *final_assembly_size; - return assembly; + return g.get_assembly(&prog_data->base.program_size); } fs_reg * @@ -6780,7 +6777,6 @@ brw_compile_cs(const struct brw_compiler *compiler, void *log_data, struct brw_cs_prog_data *prog_data, const nir_shader *src_shader, int shader_time_index, - unsigned *final_assembly_size, char **error_str) { nir_shader *shader = nir_shader_clone(mem_ctx, src_shader); @@ -6892,9 +6888,7 @@ brw_compile_cs(const struct brw_compiler *compiler, void *log_data, g.generate_code(cfg, prog_data->simd_size); - const unsigned *assembly = g.get_assembly(final_assembly_size); - prog_data->base.program_size = *final_assembly_size; - return assembly; + return g.get_assembly(&prog_data->base.program_size); } /** diff --git a/src/intel/compiler/brw_shader.cpp b/src/intel/compiler/brw_shader.cpp index 7253f5d5531..fe230cd7cc2 100644 --- a/src/intel/compiler/brw_shader.cpp +++ b/src/intel/compiler/brw_shader.cpp @@ -1157,7 +1157,6 @@ brw_compile_tes(const struct brw_compiler *compiler, const nir_shader *src_shader, struct gl_program *prog, int shader_time_index, - unsigned *final_assembly_size, char **error_str) { const struct gen_device_info *devinfo = compiler->devinfo; @@ -1271,7 +1270,7 @@ brw_compile_tes(const struct brw_compiler *compiler, g.generate_code(v.cfg, 8); - assembly = g.get_assembly(final_assembly_size); + assembly = g.get_assembly(&prog_data->base.base.program_size); } else { brw::vec4_tes_visitor v(compiler, log_data, key, prog_data, nir, mem_ctx, shader_time_index); @@ -1286,9 +1285,8 @@ brw_compile_tes(const struct brw_compiler *compiler, assembly = brw_vec4_generate_assembly(compiler, log_data, mem_ctx, nir, &prog_data->base, v.cfg, - final_assembly_size); + &prog_data->base.base.program_size); } - prog_data->base.base.program_size = *final_assembly_size; return assembly; } diff --git a/src/intel/compiler/brw_vec4.cpp b/src/intel/compiler/brw_vec4.cpp index 7d8cdfa74a3..bbe4585e0c7 100644 --- a/src/intel/compiler/brw_vec4.cpp +++ b/src/intel/compiler/brw_vec4.cpp @@ -2741,7 +2741,6 @@ brw_compile_vs(const struct brw_compiler *compiler, void *log_data, const nir_shader *src_shader, bool use_legacy_snorm_formula, int shader_time_index, - unsigned *final_assembly_size, char **error_str) { const bool is_scalar = compiler->scalar_stage[MESA_SHADER_VERTEX]; @@ -2880,7 +2879,7 @@ brw_compile_vs(const struct brw_compiler *compiler, void *log_data, g.enable_debug(debug_name); } g.generate_code(v.cfg, 8); - assembly = g.get_assembly(final_assembly_size); + assembly = g.get_assembly(&prog_data->base.base.program_size); } if (!assembly) { @@ -2898,10 +2897,9 @@ brw_compile_vs(const struct brw_compiler *compiler, void *log_data, assembly = brw_vec4_generate_assembly(compiler, log_data, mem_ctx, shader, &prog_data->base, v.cfg, - final_assembly_size); + &prog_data->base.base.program_size); } - prog_data->base.base.program_size = *final_assembly_size; return assembly; } diff --git a/src/intel/compiler/brw_vec4_gs_visitor.cpp b/src/intel/compiler/brw_vec4_gs_visitor.cpp index 11b73f187cf..7848832e412 100644 --- a/src/intel/compiler/brw_vec4_gs_visitor.cpp +++ b/src/intel/compiler/brw_vec4_gs_visitor.cpp @@ -618,7 +618,6 @@ brw_compile_gs(const struct brw_compiler *compiler, void *log_data, const nir_shader *src_shader, struct gl_program *prog, int shader_time_index, - unsigned *final_assembly_size, char **error_str) { struct brw_gs_compile c; @@ -868,9 +867,7 @@ brw_compile_gs(const struct brw_compiler *compiler, void *log_data, g.enable_debug(name); } g.generate_code(v.cfg, 8); - const unsigned *ret = g.get_assembly(final_assembly_size); - prog_data->base.base.program_size = *final_assembly_size; - return ret; + return g.get_assembly(&prog_data->base.base.program_size); } } @@ -899,12 +896,10 @@ brw_compile_gs(const struct brw_compiler *compiler, void *log_data, if (v.run()) { /* Success! Backup is not needed */ ralloc_free(param); - const unsigned *ret = - brw_vec4_generate_assembly(compiler, log_data, mem_ctx, shader, - &prog_data->base, v.cfg, - final_assembly_size); - prog_data->base.base.program_size = *final_assembly_size; - return ret; + return brw_vec4_generate_assembly(compiler, log_data, mem_ctx, + shader, &prog_data->base, v.cfg, + &prog_data->base.base. + program_size); } else { /* These variables could be modified by the execution of the GS * visitor if it packed the uniforms in the push constant buffer. @@ -968,11 +963,10 @@ brw_compile_gs(const struct brw_compiler *compiler, void *log_data, } else { ret = brw_vec4_generate_assembly(compiler, log_data, mem_ctx, shader, &prog_data->base, gs->cfg, - final_assembly_size); + &prog_data->base.base.program_size); } delete gs; - prog_data->base.base.program_size = *final_assembly_size; return ret; } diff --git a/src/intel/compiler/brw_vec4_tcs.cpp b/src/intel/compiler/brw_vec4_tcs.cpp index 04feb6bdf17..fdc44f1e544 100644 --- a/src/intel/compiler/brw_vec4_tcs.cpp +++ b/src/intel/compiler/brw_vec4_tcs.cpp @@ -382,7 +382,6 @@ brw_compile_tcs(const struct brw_compiler *compiler, struct brw_tcs_prog_data *prog_data, const nir_shader *src_shader, int shader_time_index, - unsigned *final_assembly_size, char **error_str) { const struct gen_device_info *devinfo = compiler->devinfo; @@ -488,7 +487,7 @@ brw_compile_tcs(const struct brw_compiler *compiler, g.generate_code(v.cfg, 8); - assembly = g.get_assembly(final_assembly_size); + assembly = g.get_assembly(&prog_data->base.base.program_size); } else { vec4_tcs_visitor v(compiler, log_data, key, prog_data, nir, mem_ctx, shader_time_index, &input_vue_map); @@ -504,10 +503,9 @@ brw_compile_tcs(const struct brw_compiler *compiler, assembly = brw_vec4_generate_assembly(compiler, log_data, mem_ctx, nir, &prog_data->base, v.cfg, - final_assembly_size); + &prog_data->base.base.program_size); } - prog_data->base.base.program_size = *final_assembly_size; return assembly; } diff --git a/src/intel/vulkan/anv_pipeline.c b/src/intel/vulkan/anv_pipeline.c index 8a2e4f83ca7..907b24a758d 100644 --- a/src/intel/vulkan/anv_pipeline.c +++ b/src/intel/vulkan/anv_pipeline.c @@ -535,15 +535,15 @@ anv_pipeline_compile_vs(struct anv_pipeline *pipeline, nir->info.outputs_written, nir->info.separate_shader); - unsigned code_size; const unsigned *shader_code = brw_compile_vs(compiler, NULL, mem_ctx, &key, &prog_data, nir, - false, -1, &code_size, NULL); + false, -1, NULL); if (shader_code == NULL) { ralloc_free(mem_ctx); return vk_error(VK_ERROR_OUT_OF_HOST_MEMORY); } + unsigned code_size = prog_data.base.base.program_size; bin = anv_pipeline_upload_kernel(pipeline, cache, sha1, 20, shader_code, code_size, &prog_data.base.base, sizeof(prog_data), @@ -694,18 +694,18 @@ anv_pipeline_compile_tcs_tes(struct anv_pipeline *pipeline, tes_key.inputs_read = tcs_key.outputs_written; tes_key.patch_inputs_read = tcs_key.patch_outputs_written; - unsigned code_size; const int shader_time_index = -1; const unsigned *shader_code; shader_code = brw_compile_tcs(compiler, NULL, mem_ctx, &tcs_key, &tcs_prog_data, - tcs_nir, shader_time_index, &code_size, NULL); + tcs_nir, shader_time_index, NULL); if (shader_code == NULL) { ralloc_free(mem_ctx); return vk_error(VK_ERROR_OUT_OF_HOST_MEMORY); } + unsigned code_size = tcs_prog_data.base.base.program_size; tcs_bin = anv_pipeline_upload_kernel(pipeline, cache, tcs_sha1, sizeof(tcs_sha1), shader_code, code_size, @@ -720,12 +720,13 @@ anv_pipeline_compile_tcs_tes(struct anv_pipeline *pipeline, shader_code = brw_compile_tes(compiler, NULL, mem_ctx, &tes_key, &tcs_prog_data.base.vue_map, &tes_prog_data, tes_nir, - NULL, shader_time_index, &code_size, NULL); + NULL, shader_time_index, NULL); if (shader_code == NULL) { ralloc_free(mem_ctx); return vk_error(VK_ERROR_OUT_OF_HOST_MEMORY); } + code_size = tes_prog_data.base.base.program_size; tes_bin = anv_pipeline_upload_kernel(pipeline, cache, tes_sha1, sizeof(tes_sha1), shader_code, code_size, @@ -797,16 +798,16 @@ anv_pipeline_compile_gs(struct anv_pipeline *pipeline, nir->info.outputs_written, nir->info.separate_shader); - unsigned code_size; const unsigned *shader_code = brw_compile_gs(compiler, NULL, mem_ctx, &key, &prog_data, nir, - NULL, -1, &code_size, NULL); + NULL, -1, NULL); if (shader_code == NULL) { ralloc_free(mem_ctx); return vk_error(VK_ERROR_OUT_OF_HOST_MEMORY); } /* TODO: SIMD8 GS */ + const unsigned code_size = prog_data.base.base.program_size; bin = anv_pipeline_upload_kernel(pipeline, cache, sha1, 20, shader_code, code_size, &prog_data.base.base, sizeof(prog_data), @@ -921,15 +922,15 @@ anv_pipeline_compile_fs(struct anv_pipeline *pipeline, anv_fill_binding_table(&prog_data.base, num_rts); - unsigned code_size; const unsigned *shader_code = brw_compile_fs(compiler, NULL, mem_ctx, &key, &prog_data, nir, - NULL, -1, -1, true, false, NULL, &code_size, NULL); + NULL, -1, -1, true, false, NULL, NULL); if (shader_code == NULL) { ralloc_free(mem_ctx); return vk_error(VK_ERROR_OUT_OF_HOST_MEMORY); } + unsigned code_size = prog_data.base.program_size; bin = anv_pipeline_upload_kernel(pipeline, cache, sha1, 20, shader_code, code_size, &prog_data.base, sizeof(prog_data), @@ -993,15 +994,15 @@ anv_pipeline_compile_cs(struct anv_pipeline *pipeline, anv_fill_binding_table(&prog_data.base, 1); - unsigned code_size; const unsigned *shader_code = brw_compile_cs(compiler, NULL, mem_ctx, &key, &prog_data, nir, - -1, &code_size, NULL); + -1, NULL); if (shader_code == NULL) { ralloc_free(mem_ctx); return vk_error(VK_ERROR_OUT_OF_HOST_MEMORY); } + const unsigned code_size = prog_data.base.program_size; bin = anv_pipeline_upload_kernel(pipeline, cache, sha1, 20, shader_code, code_size, &prog_data.base, sizeof(prog_data), diff --git a/src/mesa/drivers/dri/i965/brw_cs.c b/src/mesa/drivers/dri/i965/brw_cs.c index be7680def7c..1a0e9f62c63 100644 --- a/src/mesa/drivers/dri/i965/brw_cs.c +++ b/src/mesa/drivers/dri/i965/brw_cs.c @@ -55,7 +55,6 @@ brw_codegen_cs_prog(struct brw_context *brw, const struct gen_device_info *devinfo = &brw->screen->devinfo; const GLuint *program; void *mem_ctx = ralloc_context(NULL); - GLuint program_size; struct brw_cs_prog_data prog_data; bool start_busy = false; double start_time = 0; @@ -93,7 +92,7 @@ brw_codegen_cs_prog(struct brw_context *brw, char *error_str; program = brw_compile_cs(brw->screen->compiler, brw, mem_ctx, key, &prog_data, cp->program.nir, st_index, - &program_size, &error_str); + &error_str); if (program == NULL) { cp->program.sh.data->LinkStatus = linking_failure; ralloc_strcat(&cp->program.sh.data->InfoLog, error_str); @@ -144,7 +143,7 @@ brw_codegen_cs_prog(struct brw_context *brw, ralloc_steal(NULL, prog_data.base.pull_param); brw_upload_cache(&brw->cache, BRW_CACHE_CS_PROG, key, sizeof(*key), - program, program_size, + program, prog_data.base.program_size, &prog_data, sizeof(prog_data), &brw->cs.base.prog_offset, &brw->cs.base.prog_data); ralloc_free(mem_ctx); diff --git a/src/mesa/drivers/dri/i965/brw_gs.c b/src/mesa/drivers/dri/i965/brw_gs.c index 007629cbbbe..e6e757ce686 100644 --- a/src/mesa/drivers/dri/i965/brw_gs.c +++ b/src/mesa/drivers/dri/i965/brw_gs.c @@ -112,12 +112,11 @@ brw_codegen_gs_prog(struct brw_context *brw, start_time = get_time(); } - unsigned program_size; char *error_str; const unsigned *program = brw_compile_gs(brw->screen->compiler, brw, mem_ctx, key, &prog_data, gp->program.nir, &gp->program, - st_index, &program_size, &error_str); + st_index, &error_str); if (program == NULL) { ralloc_strcat(&gp->program.sh.data->InfoLog, error_str); _mesa_problem(NULL, "Failed to compile geometry shader: %s\n", error_str); @@ -147,7 +146,7 @@ brw_codegen_gs_prog(struct brw_context *brw, ralloc_steal(NULL, prog_data.base.base.pull_param); brw_upload_cache(&brw->cache, BRW_CACHE_GS_PROG, key, sizeof(*key), - program, program_size, + program, prog_data.base.base.program_size, &prog_data, sizeof(prog_data), &stage_state->prog_offset, &brw->gs.base.prog_data); ralloc_free(mem_ctx); diff --git a/src/mesa/drivers/dri/i965/brw_tcs.c b/src/mesa/drivers/dri/i965/brw_tcs.c index 6c9cb153d31..5ac728ee68f 100644 --- a/src/mesa/drivers/dri/i965/brw_tcs.c +++ b/src/mesa/drivers/dri/i965/brw_tcs.c @@ -226,11 +226,10 @@ brw_codegen_tcs_prog(struct brw_context *brw, struct brw_program *tcp, start_time = get_time(); } - unsigned program_size; char *error_str; const unsigned *program = brw_compile_tcs(compiler, brw, mem_ctx, key, &prog_data, nir, st_index, - &program_size, &error_str); + &error_str); if (program == NULL) { if (tep) { tep->program.sh.data->LinkStatus = linking_failure; @@ -268,7 +267,7 @@ brw_codegen_tcs_prog(struct brw_context *brw, struct brw_program *tcp, ralloc_steal(NULL, prog_data.base.base.pull_param); brw_upload_cache(&brw->cache, BRW_CACHE_TCS_PROG, key, sizeof(*key), - program, program_size, + program, prog_data.base.base.program_size, &prog_data, sizeof(prog_data), &stage_state->prog_offset, &brw->tcs.base.prog_data); ralloc_free(mem_ctx); diff --git a/src/mesa/drivers/dri/i965/brw_tes.c b/src/mesa/drivers/dri/i965/brw_tes.c index 47f3b510a54..21f44ae74af 100644 --- a/src/mesa/drivers/dri/i965/brw_tes.c +++ b/src/mesa/drivers/dri/i965/brw_tes.c @@ -101,11 +101,10 @@ brw_codegen_tes_prog(struct brw_context *brw, brw_compute_tess_vue_map(&input_vue_map, key->inputs_read, key->patch_inputs_read); - unsigned program_size; char *error_str; const unsigned *program = brw_compile_tes(compiler, brw, mem_ctx, key, &input_vue_map, &prog_data, - nir, &tep->program, st_index, &program_size, &error_str); + nir, &tep->program, st_index, &error_str); if (program == NULL) { tep->program.sh.data->LinkStatus = linking_failure; ralloc_strcat(&tep->program.sh.data->InfoLog, error_str); @@ -138,7 +137,7 @@ brw_codegen_tes_prog(struct brw_context *brw, ralloc_steal(NULL, prog_data.base.base.pull_param); brw_upload_cache(&brw->cache, BRW_CACHE_TES_PROG, key, sizeof(*key), - program, program_size, + program, prog_data.base.base.program_size, &prog_data, sizeof(prog_data), &stage_state->prog_offset, &brw->tes.base.prog_data); ralloc_free(mem_ctx); diff --git a/src/mesa/drivers/dri/i965/brw_vs.c b/src/mesa/drivers/dri/i965/brw_vs.c index fb5ea4e7ed1..d308bb83332 100644 --- a/src/mesa/drivers/dri/i965/brw_vs.c +++ b/src/mesa/drivers/dri/i965/brw_vs.c @@ -159,7 +159,6 @@ brw_codegen_vs_prog(struct brw_context *brw, { const struct brw_compiler *compiler = brw->screen->compiler; const struct gen_device_info *devinfo = &brw->screen->devinfo; - GLuint program_size; const GLuint *program; struct brw_vs_prog_data prog_data; struct brw_stage_prog_data *stage_prog_data = &prog_data.base.base; @@ -223,7 +222,7 @@ brw_codegen_vs_prog(struct brw_context *brw, program = brw_compile_vs(compiler, brw, mem_ctx, key, &prog_data, vp->program.nir, !_mesa_is_gles3(&brw->ctx), - st_index, &program_size, &error_str); + st_index, &error_str); if (program == NULL) { if (!vp->program.is_arb_asm) { vp->program.sh.data->LinkStatus = linking_failure; @@ -256,10 +255,10 @@ brw_codegen_vs_prog(struct brw_context *brw, ralloc_steal(NULL, prog_data.base.base.param); ralloc_steal(NULL, prog_data.base.base.pull_param); brw_upload_cache(&brw->cache, BRW_CACHE_VS_PROG, - key, sizeof(struct brw_vs_prog_key), - program, program_size, - &prog_data, sizeof(prog_data), - &brw->vs.base.prog_offset, &brw->vs.base.prog_data); + key, sizeof(struct brw_vs_prog_key), + program, prog_data.base.base.program_size, + &prog_data, sizeof(prog_data), + &brw->vs.base.prog_offset, &brw->vs.base.prog_data); 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 2105d1a8f1e..4144cd11ee4 100644 --- a/src/mesa/drivers/dri/i965/brw_wm.c +++ b/src/mesa/drivers/dri/i965/brw_wm.c @@ -141,7 +141,6 @@ brw_codegen_wm_prog(struct brw_context *brw, void *mem_ctx = ralloc_context(NULL); struct brw_wm_prog_data prog_data; const GLuint *program; - GLuint program_size; bool start_busy = false; double start_time = 0; @@ -185,7 +184,7 @@ brw_codegen_wm_prog(struct brw_context *brw, key, &prog_data, fp->program.nir, &fp->program, st_index8, st_index16, true, false, vue_map, - &program_size, &error_str); + &error_str); if (program == NULL) { if (!fp->program.is_arb_asm) { @@ -222,7 +221,7 @@ brw_codegen_wm_prog(struct brw_context *brw, ralloc_steal(NULL, prog_data.base.pull_param); brw_upload_cache(&brw->cache, BRW_CACHE_FS_PROG, key, sizeof(struct brw_wm_prog_key), - program, program_size, + program, prog_data.base.program_size, &prog_data, sizeof(prog_data), &brw->wm.base.prog_offset, &brw->wm.base.prog_data); -- 2.30.2