mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-25 06:30:10 +01:00
i965: Include codegen time in the INTEL_DEBUG=perf stall detection.
In the VS case, we were missing the entire compile time in the stall detection! Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
This commit is contained in:
parent
0f06864ba5
commit
b126228f12
2 changed files with 18 additions and 12 deletions
|
|
@ -2287,6 +2287,11 @@ brw_wm_fs_emit(struct brw_context *brw, struct brw_wm_compile *c,
|
|||
|
||||
c->prog_data.dispatch_width = 8;
|
||||
|
||||
fs_generator g(brw, c, prog, fp, v.dual_src_output.file != BAD_FILE);
|
||||
const unsigned *generated = g.generate_assembly(&v.instructions,
|
||||
simd16_instructions,
|
||||
final_assembly_size);
|
||||
|
||||
if (unlikely(INTEL_DEBUG & DEBUG_PERF) && shader) {
|
||||
if (shader->compiled_once)
|
||||
brw_wm_debug_recompile(brw, prog, &c->key);
|
||||
|
|
@ -2298,9 +2303,7 @@ brw_wm_fs_emit(struct brw_context *brw, struct brw_wm_compile *c,
|
|||
}
|
||||
}
|
||||
|
||||
fs_generator g(brw, c, prog, fp, v.dual_src_output.file != BAD_FILE);
|
||||
return g.generate_assembly(&v.instructions, simd16_instructions,
|
||||
final_assembly_size);
|
||||
return generated;
|
||||
}
|
||||
|
||||
bool
|
||||
|
|
|
|||
|
|
@ -1159,6 +1159,17 @@ brw_vs_emit(struct brw_context *brw,
|
|||
}
|
||||
}
|
||||
|
||||
vec4_visitor v(brw, c, prog, shader, mem_ctx);
|
||||
if (!v.run()) {
|
||||
prog->LinkStatus = false;
|
||||
ralloc_strcat(&prog->InfoLog, v.fail_msg);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
vec4_generator g(brw, c, prog, mem_ctx);
|
||||
const unsigned *generated =g.generate_assembly(&v.instructions,
|
||||
final_assembly_size);
|
||||
|
||||
if (unlikely(INTEL_DEBUG & DEBUG_PERF) && shader) {
|
||||
if (shader->compiled_once) {
|
||||
brw_vs_debug_recompile(brw, prog, &c->key);
|
||||
|
|
@ -1170,15 +1181,7 @@ brw_vs_emit(struct brw_context *brw,
|
|||
shader->compiled_once = true;
|
||||
}
|
||||
|
||||
vec4_visitor v(brw, c, prog, shader, mem_ctx);
|
||||
if (!v.run()) {
|
||||
prog->LinkStatus = false;
|
||||
ralloc_strcat(&prog->InfoLog, v.fail_msg);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
vec4_generator g(brw, c, prog, mem_ctx);
|
||||
return g.generate_assembly(&v.instructions, final_assembly_size);
|
||||
return generated;
|
||||
}
|
||||
|
||||
} /* extern "C" */
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue