aco: allow gfx10_wave64_bpermute with 8-bit/16-bit input
authorSamuel Pitoiset <samuel.pitoiset@gmail.com>
Mon, 18 May 2020 15:01:46 +0000 (17:01 +0200)
committerMarge Bot <eric+marge@anholt.net>
Fri, 29 May 2020 11:20:58 +0000 (11:20 +0000)
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5148>

src/amd/compiler/aco_lower_to_hw_instr.cpp

index 7ff1615b1f907d35ad25315e8f7b9b65aab94487..11f7401213f3769ef2174f045f92f6d8f28783d5 100644 (file)
@@ -1522,7 +1522,7 @@ void lower_to_hw_instr(Program* program)
                assert(instr->operands[0].physReg() == vcc); /* Compare */
                assert(instr->operands[1].regClass() == v2.as_linear()); /* Temp VGPR pair */
                assert(instr->operands[2].regClass() == v1); /* Indices x4 */
-               assert(instr->operands[3].regClass() == v1); /* Input data */
+               assert(instr->operands[3].bytes() <= 4); /* Indices x4 */
 
                PhysReg shared_vgpr_reg_lo = PhysReg(align(program->config->num_vgprs, 4) + 256);
                PhysReg shared_vgpr_reg_hi = PhysReg(shared_vgpr_reg_lo + 1);