mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-24 00:10:10 +01:00
aco: validate v_permlane opsel correctly
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com> Reviewed-by: Daniel Schürmann <daniel@schuermann.dev> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27118>
This commit is contained in:
parent
bc57f14c2d
commit
c67d4a75ba
1 changed files with 4 additions and 1 deletions
|
|
@ -322,7 +322,10 @@ validate_ir(Program* program)
|
||||||
}
|
}
|
||||||
|
|
||||||
/* check opsel */
|
/* check opsel */
|
||||||
if (instr->isVOP3() || instr->isVOP1() || instr->isVOP2() || instr->isVOPC()) {
|
if (instr->opcode == aco_opcode::v_permlane16_b32 ||
|
||||||
|
instr->opcode == aco_opcode::v_permlanex16_b32) {
|
||||||
|
check(instr->valu().opsel <= 0x3, "Unexpected opsel for permlane", instr.get());
|
||||||
|
} else if (instr->isVOP3() || instr->isVOP1() || instr->isVOP2() || instr->isVOPC()) {
|
||||||
VALU_instruction& valu = instr->valu();
|
VALU_instruction& valu = instr->valu();
|
||||||
check(valu.opsel == 0 || program->gfx_level >= GFX9, "Opsel is only supported on GFX9+",
|
check(valu.opsel == 0 || program->gfx_level >= GFX9, "Opsel is only supported on GFX9+",
|
||||||
instr.get());
|
instr.get());
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue