From 8fb66187eccab895c3a6b3ba0b8465a7ab3ce578 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Sch=C3=BCrmann?= Date: Wed, 30 Dec 2020 16:38:08 +0000 Subject: [PATCH] aco/validate: validate that p_create_vector operands are aligned unless they are subdword operands Reviewed-by: Rhys Perry Part-of: --- src/amd/compiler/aco_validate.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/src/amd/compiler/aco_validate.cpp b/src/amd/compiler/aco_validate.cpp index 4c707b49699..ffd25121726 100644 --- a/src/amd/compiler/aco_validate.cpp +++ b/src/amd/compiler/aco_validate.cpp @@ -359,6 +359,7 @@ bool validate_ir(Program* program) if (instr->opcode == aco_opcode::p_create_vector) { unsigned size = 0; for (const Operand& op : instr->operands) { + check(op.bytes() < 4 || size % 4 == 0, "Operand is not aligned", instr.get()); size += op.bytes(); } check(size == instr->definitions[0].bytes(), "Definition size does not match operand sizes", instr.get());