nir/vtn: Add support for 8 and 16 vector ball/bany

Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6030>
This commit is contained in:
Jesse Natalie 2020-06-23 05:44:11 -07:00
parent 456edf0b30
commit 0d5cd1a5f4
1 changed files with 4 additions and 0 deletions

View File

@ -450,6 +450,8 @@ vtn_handle_alu(struct vtn_builder *b, SpvOp opcode,
case 2: op = nir_op_bany_inequal2; break;
case 3: op = nir_op_bany_inequal3; break;
case 4: op = nir_op_bany_inequal4; break;
case 8: op = nir_op_bany_inequal8; break;
case 16: op = nir_op_bany_inequal16; break;
default: vtn_fail("invalid number of components");
}
val->ssa->def = nir_build_alu(&b->nb, op, src[0],
@ -467,6 +469,8 @@ vtn_handle_alu(struct vtn_builder *b, SpvOp opcode,
case 2: op = nir_op_ball_iequal2; break;
case 3: op = nir_op_ball_iequal3; break;
case 4: op = nir_op_ball_iequal4; break;
case 8: op = nir_op_ball_iequal8; break;
case 16: op = nir_op_ball_iequal16; break;
default: vtn_fail("invalid number of components");
}
val->ssa->def = nir_build_alu(&b->nb, op, src[0],