From 3f436bdc6e4d2bf2d18f1cc5046fbbb9a1621999 Mon Sep 17 00:00:00 2001 From: Caio Oliveira Date: Tue, 2 Dec 2025 12:36:44 -0800 Subject: [PATCH] brw: Make LINE normalization into validation Add validation for Source 0. Should not cause problems since this instruction is not used by the compiler anymore. Reviewed-by: Ian Romanick Part-of: --- src/intel/compiler/brw/brw_eu_emit.c | 11 +---------- src/intel/compiler/brw/brw_eu_validate.c | 5 +++++ 2 files changed, 6 insertions(+), 10 deletions(-) diff --git a/src/intel/compiler/brw/brw_eu_emit.c b/src/intel/compiler/brw/brw_eu_emit.c index 026887ad44e..f6f0b73d513 100644 --- a/src/intel/compiler/brw/brw_eu_emit.c +++ b/src/intel/compiler/brw/brw_eu_emit.c @@ -922,16 +922,7 @@ ALU2(MUL) ALU2(AVG) ALU2(ADD) ALU2(SRND) - -brw_eu_inst * -brw_LINE(struct brw_codegen *p, struct brw_reg dest, - struct brw_reg src0, struct brw_reg src1) -{ - src0.vstride = BRW_VERTICAL_STRIDE_0; - src0.width = BRW_WIDTH_1; - src0.hstride = BRW_HORIZONTAL_STRIDE_0; - return brw_alu2(p, BRW_OPCODE_LINE, dest, src0, src1); -} +ALU2(LINE) brw_eu_inst * brw_PLN(struct brw_codegen *p, struct brw_reg dest, diff --git a/src/intel/compiler/brw/brw_eu_validate.c b/src/intel/compiler/brw/brw_eu_validate.c index 086c74bdd9f..2ea38604ef2 100644 --- a/src/intel/compiler/brw/brw_eu_validate.c +++ b/src/intel/compiler/brw/brw_eu_validate.c @@ -2275,6 +2275,11 @@ instruction_restrictions(const struct brw_isa_info *isa, brw_type_is_int(inst->src[1].type), "ADD can't mix float and non-float sources."); } + + if (inst->opcode == BRW_OPCODE_LINE) { + ERROR_IF(!src_has_scalar_region(inst, 0), + "LINE source 0 must be a scalar."); + } } static void