From: Rob Clark Date: Sun, 7 Jun 2020 18:11:23 +0000 (-0700) Subject: freedreno/ir3/validate: also check instr->address X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=1bee79996b215be271b6dd76d145e3c5bb55af3f;p=mesa.git freedreno/ir3/validate: also check instr->address Verify that instructions which have a relative src and/or dest, have `instr->address`. Signed-off-by: Rob Clark Part-of: --- diff --git a/src/freedreno/ir3/ir3_validate.c b/src/freedreno/ir3/ir3_validate.c index ec8bb937da8..58b5bee1e87 100644 --- a/src/freedreno/ir3/ir3_validate.c +++ b/src/freedreno/ir3/ir3_validate.c @@ -77,7 +77,16 @@ validate_instr(struct ir3_validate_ctx *ctx, struct ir3_instruction *instr) { struct ir3_register *last_reg = NULL; + if (writes_gpr(instr)) { + if (instr->regs[0]->flags & IR3_REG_RELATIV) { + validate_assert(ctx, instr->address); + } + } + foreach_src_n (reg, n, instr) { + if (reg->flags & IR3_REG_RELATIV) + validate_assert(ctx, instr->address); + validate_src(ctx, reg); /* Validate that all src's are either half of full.