X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=src%2Fintel%2Fcompiler%2Fbrw_vec4_gs_visitor.cpp;h=ce341806c7b93ebe3ca79e775f67e7cae45aac3a;hb=7bd15135a6dc105939a3e1c349217e6346dcf729;hp=c45e284e07e940062673b84c3787e7c83280f220;hpb=f62227f2b7c4d69b9e0e3cd1e61c5959459a8334;p=mesa.git diff --git a/src/intel/compiler/brw_vec4_gs_visitor.cpp b/src/intel/compiler/brw_vec4_gs_visitor.cpp index c45e284e07e..ce341806c7b 100644 --- a/src/intel/compiler/brw_vec4_gs_visitor.cpp +++ b/src/intel/compiler/brw_vec4_gs_visitor.cpp @@ -618,6 +618,7 @@ brw_compile_gs(const struct brw_compiler *compiler, void *log_data, nir_shader *shader, struct gl_program *prog, int shader_time_index, + struct brw_compile_stats *stats, char **error_str) { struct brw_gs_compile c; @@ -637,9 +638,9 @@ brw_compile_gs(const struct brw_compiler *compiler, void *log_data, GLbitfield64 inputs_read = shader->info.inputs_read; brw_compute_vue_map(compiler->devinfo, &c.input_vue_map, inputs_read, - shader->info.separate_shader); + shader->info.separate_shader, 1); - brw_nir_apply_key(shader, compiler, &key->base, is_scalar); + brw_nir_apply_key(shader, compiler, &key->base, 8, is_scalar); brw_nir_lower_vue_inputs(shader, &c.input_vue_map); brw_nir_lower_vue_outputs(shader); brw_postprocess_nir(shader, compiler, is_scalar); @@ -856,8 +857,7 @@ brw_compile_gs(const struct brw_compiler *compiler, void *log_data, prog_data->base.base.dispatch_grf_start_reg = v.payload.num_regs; fs_generator g(compiler, log_data, mem_ctx, - &prog_data->base.base, v.promoted_constants, - false, MESA_SHADER_GEOMETRY); + &prog_data->base.base, false, MESA_SHADER_GEOMETRY); if (unlikely(INTEL_DEBUG & DEBUG_GS)) { const char *label = shader->info.label ? shader->info.label : "unnamed"; @@ -865,7 +865,8 @@ brw_compile_gs(const struct brw_compiler *compiler, void *log_data, label, shader->info.name); g.enable_debug(name); } - g.generate_code(v.cfg, 8); + g.generate_code(v.cfg, 8, v.shader_stats, + v.performance_analysis.require(), stats); return g.get_assembly(); } } @@ -896,7 +897,10 @@ brw_compile_gs(const struct brw_compiler *compiler, void *log_data, /* Success! Backup is not needed */ ralloc_free(param); return brw_vec4_generate_assembly(compiler, log_data, mem_ctx, - shader, &prog_data->base, v.cfg); + shader, &prog_data->base, + v.cfg, + v.performance_analysis.require(), + stats); } else { /* These variables could be modified by the execution of the GS * visitor if it packed the uniforms in the push constant buffer. @@ -959,7 +963,9 @@ brw_compile_gs(const struct brw_compiler *compiler, void *log_data, *error_str = ralloc_strdup(mem_ctx, gs->fail_msg); } else { ret = brw_vec4_generate_assembly(compiler, log_data, mem_ctx, shader, - &prog_data->base, gs->cfg); + &prog_data->base, gs->cfg, + gs->performance_analysis.require(), + stats); } delete gs;