r600: fix error filters compatibility
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run

The shader-db functionality was interfering with the error
filters.

Two new options are added: R600_DEBUG=shaderdb and
R600_DEBUG=precompile. The option precompile is added
to maintain the compatibility with the shader-db repository.

This change fixes 22 of these tests:
deqp-gles31/functional/debug/error_filters/case_.*: warn pass
deqp-gles31/functional/debug/error_groups/case_.*: warn pass

Fixes: 28d6a5af25 ("r600: Add shader precompile and shader-db support.")
Signed-off-by: Patrick Lerda <patrick9876@free.fr>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38485>
This commit is contained in:
Patrick Lerda 2025-11-17 14:37:37 +01:00 committed by Marge Bot
parent 01de6ac134
commit f005c0b5ad
3 changed files with 16 additions and 8 deletions

View file

@ -703,6 +703,10 @@ static const struct debug_named_value common_debug_options[] = {
{ "nowc", DBG_NO_WC, "Disable GTT write combining" },
{ "check_vm", DBG_CHECK_VM, "Check VM faults and dump debug info." },
/* shared-db */
{ "shaderdb", DBG_SHADER_DB, "Dump shader-db analysis." },
{ "precompile", DBG_SHADER_DB, "Synonym for shaderdb. This is needed to maintain the compatibility with the shader-db repository." },
DEBUG_NAMED_VALUE_END /* must be last */
};

View file

@ -77,6 +77,8 @@ struct u_log_context;
#define DBG_INFO (1ull << 40)
#define DBG_NO_WC (1ull << 41)
#define DBG_CHECK_VM (1ull << 42)
/* shader-db */
#define DBG_SHADER_DB (1ull << 43)
/* gap */
#define DBG_TEST_VMFAULT_CP (1ull << 51)
#define DBG_TEST_VMFAULT_SDMA (1ull << 52)

View file

@ -275,14 +275,16 @@ int r600_pipe_shader_create(struct pipe_context *ctx,
goto error;
}
util_debug_message(&rctx->b.debug, SHADER_INFO, "%s shader: %d dw, %d gprs, %d alu_groups, %d loops, %d cf, %d stack",
_mesa_shader_stage_to_abbrev(processor),
shader->shader.bc.ndw,
shader->shader.bc.ngpr,
shader->shader.bc.nalu_groups,
shader->shader.num_loops,
shader->shader.bc.ncf,
shader->shader.bc.nstack);
if (unlikely(rctx->screen->b.debug_flags & DBG_SHADER_DB)) {
util_debug_message(&rctx->b.debug, SHADER_INFO, "%s shader: %d dw, %d gprs, %d alu_groups, %d loops, %d cf, %d stack",
_mesa_shader_stage_to_abbrev(processor),
shader->shader.bc.ndw,
shader->shader.bc.ngpr,
shader->shader.bc.nalu_groups,
shader->shader.num_loops,
shader->shader.bc.ncf,
shader->shader.bc.nstack);
}
if (!sel->nir_blob && sel->nir && sel->ir_type != PIPE_SHADER_IR_TGSI) {
struct blob blob;