From f58e0405b6ca15d9b82122d82311e8b82f4a0939 Mon Sep 17 00:00:00 2001 From: Jason Ekstrand Date: Fri, 23 Aug 2019 15:33:24 -0500 Subject: [PATCH] intel/fs: Drop the gl_program from fs_visitor It's not used by anything anymore now that so much lowering has been moved into NIR. Sadly, we still need on in brw_compile_gs() for geometry shaders on Sandy Bridge. Short of a lot of pointless work, that one's probably not going away. Reviewed-by: Kenneth Graunke --- src/gallium/drivers/iris/iris_program.c | 4 ++-- src/intel/blorp/blorp.c | 2 +- src/intel/compiler/brw_compiler.h | 2 -- src/intel/compiler/brw_fs.cpp | 10 +++------- src/intel/compiler/brw_fs.h | 2 -- src/intel/compiler/brw_fs_visitor.cpp | 5 ++--- src/intel/compiler/brw_shader.cpp | 3 +-- src/intel/compiler/brw_vec4.cpp | 1 - src/intel/compiler/brw_vec4_tcs.cpp | 2 +- src/intel/compiler/test_fs_cmod_propagation.cpp | 3 +-- src/intel/compiler/test_fs_copy_propagation.cpp | 3 +-- src/intel/compiler/test_fs_saturate_propagation.cpp | 3 +-- src/intel/vulkan/anv_pipeline.c | 4 ++-- src/mesa/drivers/dri/i965/brw_tes.c | 2 +- src/mesa/drivers/dri/i965/brw_wm.c | 2 +- 15 files changed, 17 insertions(+), 31 deletions(-) diff --git a/src/gallium/drivers/iris/iris_program.c b/src/gallium/drivers/iris/iris_program.c index 579055ea345..b1830fbdcbf 100644 --- a/src/gallium/drivers/iris/iris_program.c +++ b/src/gallium/drivers/iris/iris_program.c @@ -1304,7 +1304,7 @@ iris_compile_tes(struct iris_context *ice, char *error_str = NULL; const unsigned *program = brw_compile_tes(compiler, &ice->dbg, mem_ctx, key, &input_vue_map, - tes_prog_data, nir, NULL, -1, NULL, &error_str); + tes_prog_data, nir, -1, NULL, &error_str); if (program == NULL) { dbg_printf("Failed to compile evaluation shader: %s\n", error_str); ralloc_free(mem_ctx); @@ -1534,7 +1534,7 @@ iris_compile_fs(struct iris_context *ice, char *error_str = NULL; const unsigned *program = brw_compile_fs(compiler, &ice->dbg, mem_ctx, key, fs_prog_data, - nir, NULL, -1, -1, -1, true, false, vue_map, + nir, -1, -1, -1, true, false, vue_map, NULL, &error_str); if (program == NULL) { dbg_printf("Failed to compile fragment shader: %s\n", error_str); diff --git a/src/intel/blorp/blorp.c b/src/intel/blorp/blorp.c index 480107d2a34..498457572db 100644 --- a/src/intel/blorp/blorp.c +++ b/src/intel/blorp/blorp.c @@ -205,7 +205,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, -1, false, use_repclear, + wm_prog_data, nir, -1, -1, -1, false, use_repclear, NULL, NULL, NULL); return program; diff --git a/src/intel/compiler/brw_compiler.h b/src/intel/compiler/brw_compiler.h index 5eb9fc99406..340c8db566c 100644 --- a/src/intel/compiler/brw_compiler.h +++ b/src/intel/compiler/brw_compiler.h @@ -1319,7 +1319,6 @@ brw_compile_tes(const struct brw_compiler *compiler, void *log_data, const struct brw_vue_map *input_vue_map, struct brw_tes_prog_data *prog_data, struct nir_shader *shader, - struct gl_program *prog, int shader_time_index, struct brw_compile_stats *stats, char **error_str); @@ -1383,7 +1382,6 @@ brw_compile_fs(const struct brw_compiler *compiler, void *log_data, const struct brw_wm_prog_key *key, struct brw_wm_prog_data *prog_data, struct nir_shader *shader, - struct gl_program *prog, int shader_time_index8, int shader_time_index16, int shader_time_index32, diff --git a/src/intel/compiler/brw_fs.cpp b/src/intel/compiler/brw_fs.cpp index ebac22d690c..a234450887f 100644 --- a/src/intel/compiler/brw_fs.cpp +++ b/src/intel/compiler/brw_fs.cpp @@ -8029,7 +8029,6 @@ brw_compile_fs(const struct brw_compiler *compiler, void *log_data, const struct brw_wm_prog_key *key, struct brw_wm_prog_data *prog_data, nir_shader *shader, - struct gl_program *prog, int shader_time_index8, int shader_time_index16, int shader_time_index32, bool allow_spilling, bool use_rep_send, struct brw_vue_map *vue_map, @@ -8086,7 +8085,7 @@ brw_compile_fs(const struct brw_compiler *compiler, void *log_data, cfg_t *simd8_cfg = NULL, *simd16_cfg = NULL, *simd32_cfg = NULL; fs_visitor v8(compiler, log_data, mem_ctx, &key->base, - &prog_data->base, prog, shader, 8, + &prog_data->base, shader, 8, shader_time_index8); if (!v8.run_fs(allow_spilling, false /* do_rep_send */)) { if (error_str) @@ -8103,7 +8102,7 @@ brw_compile_fs(const struct brw_compiler *compiler, void *log_data, likely(!(INTEL_DEBUG & DEBUG_NO16) || use_rep_send)) { /* Try a SIMD16 compile */ fs_visitor v16(compiler, log_data, mem_ctx, &key->base, - &prog_data->base, prog, shader, 16, + &prog_data->base, shader, 16, shader_time_index16); v16.import_uniforms(&v8); if (!v16.run_fs(allow_spilling, use_rep_send)) { @@ -8123,7 +8122,7 @@ brw_compile_fs(const struct brw_compiler *compiler, void *log_data, unlikely(INTEL_DEBUG & DEBUG_DO32)) { /* Try a SIMD32 compile */ fs_visitor v32(compiler, log_data, mem_ctx, &key->base, - &prog_data->base, prog, shader, 32, + &prog_data->base, shader, 32, shader_time_index32); v32.import_uniforms(&v8); if (!v32.run_fs(allow_spilling, false)) { @@ -8368,7 +8367,6 @@ brw_compile_cs(const struct brw_compiler *compiler, void *log_data, src_shader, 8); v8 = new fs_visitor(compiler, log_data, mem_ctx, &key->base, &prog_data->base, - NULL, /* Never used in core profile */ nir8, 8, shader_time_index); if (!v8->run_cs(min_dispatch_width)) { fail_msg = v8->fail_msg; @@ -8389,7 +8387,6 @@ brw_compile_cs(const struct brw_compiler *compiler, void *log_data, src_shader, 16); v16 = new fs_visitor(compiler, log_data, mem_ctx, &key->base, &prog_data->base, - NULL, /* Never used in core profile */ nir16, 16, shader_time_index); if (v8) v16->import_uniforms(v8); @@ -8423,7 +8420,6 @@ brw_compile_cs(const struct brw_compiler *compiler, void *log_data, src_shader, 32); v32 = new fs_visitor(compiler, log_data, mem_ctx, &key->base, &prog_data->base, - NULL, /* Never used in core profile */ nir32, 32, shader_time_index); if (v8) v32->import_uniforms(v8); diff --git a/src/intel/compiler/brw_fs.h b/src/intel/compiler/brw_fs.h index 14c736a4c81..cce846908b0 100644 --- a/src/intel/compiler/brw_fs.h +++ b/src/intel/compiler/brw_fs.h @@ -69,7 +69,6 @@ public: void *mem_ctx, const brw_base_prog_key *key, struct brw_stage_prog_data *prog_data, - struct gl_program *prog, const nir_shader *shader, unsigned dispatch_width, int shader_time_index, @@ -312,7 +311,6 @@ public: struct brw_gs_compile *gs_compile; struct brw_stage_prog_data *prog_data; - struct gl_program *prog; const struct brw_vue_map *input_vue_map; diff --git a/src/intel/compiler/brw_fs_visitor.cpp b/src/intel/compiler/brw_fs_visitor.cpp index 273433f3e5e..e8ff5568330 100644 --- a/src/intel/compiler/brw_fs_visitor.cpp +++ b/src/intel/compiler/brw_fs_visitor.cpp @@ -890,13 +890,12 @@ fs_visitor::fs_visitor(const struct brw_compiler *compiler, void *log_data, void *mem_ctx, const brw_base_prog_key *key, struct brw_stage_prog_data *prog_data, - struct gl_program *prog, const nir_shader *shader, unsigned dispatch_width, int shader_time_index, const struct brw_vue_map *input_vue_map) : backend_shader(compiler, log_data, mem_ctx, shader, prog_data), - key(key), gs_compile(NULL), prog_data(prog_data), prog(prog), + key(key), gs_compile(NULL), prog_data(prog_data), input_vue_map(input_vue_map), dispatch_width(dispatch_width), shader_time_index(shader_time_index), @@ -914,7 +913,7 @@ fs_visitor::fs_visitor(const struct brw_compiler *compiler, void *log_data, : backend_shader(compiler, log_data, mem_ctx, shader, &prog_data->base.base), key(&c->key.base), gs_compile(c), - prog_data(&prog_data->base.base), prog(NULL), + prog_data(&prog_data->base.base), dispatch_width(8), shader_time_index(shader_time_index), bld(fs_builder(this, dispatch_width).at_end()) diff --git a/src/intel/compiler/brw_shader.cpp b/src/intel/compiler/brw_shader.cpp index ba801c94eb2..1a414cf9d12 100644 --- a/src/intel/compiler/brw_shader.cpp +++ b/src/intel/compiler/brw_shader.cpp @@ -1233,7 +1233,6 @@ brw_compile_tes(const struct brw_compiler *compiler, const struct brw_vue_map *input_vue_map, struct brw_tes_prog_data *prog_data, nir_shader *nir, - struct gl_program *prog, int shader_time_index, struct brw_compile_stats *stats, char **error_str) @@ -1324,7 +1323,7 @@ brw_compile_tes(const struct brw_compiler *compiler, if (is_scalar) { fs_visitor v(compiler, log_data, mem_ctx, &key->base, - &prog_data->base.base, NULL, nir, 8, + &prog_data->base.base, nir, 8, shader_time_index, input_vue_map); if (!v.run_tes()) { if (error_str) diff --git a/src/intel/compiler/brw_vec4.cpp b/src/intel/compiler/brw_vec4.cpp index 7309afc778e..9fa946ccdb4 100644 --- a/src/intel/compiler/brw_vec4.cpp +++ b/src/intel/compiler/brw_vec4.cpp @@ -2964,7 +2964,6 @@ brw_compile_vs(const struct brw_compiler *compiler, void *log_data, fs_visitor v(compiler, log_data, mem_ctx, &key->base, &prog_data->base.base, - NULL, /* prog; Only used for TEXTURE_RECTANGLE on gen < 8 */ shader, 8, shader_time_index); if (!v.run_vs()) { if (error_str) diff --git a/src/intel/compiler/brw_vec4_tcs.cpp b/src/intel/compiler/brw_vec4_tcs.cpp index 7747208f1da..9d6c4f326a4 100644 --- a/src/intel/compiler/brw_vec4_tcs.cpp +++ b/src/intel/compiler/brw_vec4_tcs.cpp @@ -426,7 +426,7 @@ brw_compile_tcs(const struct brw_compiler *compiler, if (is_scalar) { fs_visitor v(compiler, log_data, mem_ctx, &key->base, - &prog_data->base.base, NULL, nir, 8, + &prog_data->base.base, nir, 8, shader_time_index, &input_vue_map); if (!v.run_tcs()) { if (error_str) diff --git a/src/intel/compiler/test_fs_cmod_propagation.cpp b/src/intel/compiler/test_fs_cmod_propagation.cpp index 218605000f4..d05c6897196 100644 --- a/src/intel/compiler/test_fs_cmod_propagation.cpp +++ b/src/intel/compiler/test_fs_cmod_propagation.cpp @@ -57,8 +57,7 @@ public: struct brw_wm_prog_data *prog_data, nir_shader *shader) : fs_visitor(compiler, NULL, NULL, NULL, - &prog_data->base, (struct gl_program *) NULL, - shader, 8, -1) {} + &prog_data->base, shader, 8, -1) {} }; diff --git a/src/intel/compiler/test_fs_copy_propagation.cpp b/src/intel/compiler/test_fs_copy_propagation.cpp index 37736ec86f4..fff85c2933b 100644 --- a/src/intel/compiler/test_fs_copy_propagation.cpp +++ b/src/intel/compiler/test_fs_copy_propagation.cpp @@ -47,8 +47,7 @@ public: struct brw_wm_prog_data *prog_data, nir_shader *shader) : fs_visitor(compiler, NULL, NULL, NULL, - &prog_data->base, (struct gl_program *) NULL, - shader, 8, -1) {} + &prog_data->base, shader, 8, -1) {} }; diff --git a/src/intel/compiler/test_fs_saturate_propagation.cpp b/src/intel/compiler/test_fs_saturate_propagation.cpp index c01ff2e66eb..e0f96abb10d 100644 --- a/src/intel/compiler/test_fs_saturate_propagation.cpp +++ b/src/intel/compiler/test_fs_saturate_propagation.cpp @@ -47,8 +47,7 @@ public: struct brw_wm_prog_data *prog_data, nir_shader *shader) : fs_visitor(compiler, NULL, NULL, NULL, - &prog_data->base, (struct gl_program *) NULL, - shader, 16, -1) {} + &prog_data->base, shader, 16, -1) {} }; diff --git a/src/intel/vulkan/anv_pipeline.c b/src/intel/vulkan/anv_pipeline.c index 6d705b88e08..05dc54960ef 100644 --- a/src/intel/vulkan/anv_pipeline.c +++ b/src/intel/vulkan/anv_pipeline.c @@ -878,7 +878,7 @@ anv_pipeline_compile_tes(const struct brw_compiler *compiler, &tes_stage->key.tes, &tcs_stage->prog_data.tcs.base.vue_map, &tes_stage->prog_data.tes, - tes_stage->nir, NULL, -1, + tes_stage->nir, -1, tes_stage->stats, NULL); } @@ -1043,7 +1043,7 @@ anv_pipeline_compile_fs(const struct brw_compiler *compiler, fs_stage->code = brw_compile_fs(compiler, device, mem_ctx, &fs_stage->key.wm, &fs_stage->prog_data.wm, - fs_stage->nir, NULL, -1, -1, -1, + fs_stage->nir, -1, -1, -1, true, false, NULL, fs_stage->stats, NULL); diff --git a/src/mesa/drivers/dri/i965/brw_tes.c b/src/mesa/drivers/dri/i965/brw_tes.c index 6980da3deaf..b817fcf85e6 100644 --- a/src/mesa/drivers/dri/i965/brw_tes.c +++ b/src/mesa/drivers/dri/i965/brw_tes.c @@ -76,7 +76,7 @@ brw_codegen_tes_prog(struct brw_context *brw, char *error_str; const unsigned *program = brw_compile_tes(compiler, brw, mem_ctx, key, &input_vue_map, &prog_data, - nir, &tep->program, st_index, NULL, &error_str); + nir, st_index, NULL, &error_str); if (program == NULL) { tep->program.sh.data->LinkStatus = LINKING_FAILURE; ralloc_strcat(&tep->program.sh.data->InfoLog, error_str); diff --git a/src/mesa/drivers/dri/i965/brw_wm.c b/src/mesa/drivers/dri/i965/brw_wm.c index 32ca6fd886c..6f5c144eaa9 100644 --- a/src/mesa/drivers/dri/i965/brw_wm.c +++ b/src/mesa/drivers/dri/i965/brw_wm.c @@ -122,7 +122,7 @@ brw_codegen_wm_prog(struct brw_context *brw, char *error_str = NULL; program = brw_compile_fs(brw->screen->compiler, brw, mem_ctx, key, &prog_data, nir, - &fp->program, st_index8, st_index16, st_index32, + st_index8, st_index16, st_index32, true, false, vue_map, NULL, &error_str); -- 2.30.2