From: Erik Faye-Lund Date: Fri, 19 Jul 2019 12:41:08 +0000 (+0200) Subject: zink/spirv: implement bcsel X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=103776ab9cbadaedb58bbb99890f19495a38e3e4;p=mesa.git zink/spirv: implement bcsel Acked-by: Jordan Justen --- diff --git a/src/gallium/drivers/zink/nir_to_spirv/nir_to_spirv.c b/src/gallium/drivers/zink/nir_to_spirv/nir_to_spirv.c index d2001eb7de2..a78a26b4bb3 100644 --- a/src/gallium/drivers/zink/nir_to_spirv/nir_to_spirv.c +++ b/src/gallium/drivers/zink/nir_to_spirv/nir_to_spirv.c @@ -941,6 +941,11 @@ emit_alu(struct ntv_context *ctx, nir_alu_instr *alu) } break; + case nir_op_bcsel: + assert(nir_op_infos[alu->op].num_inputs == 3); + result = emit_triop(ctx, SpvOpSelect, dest_type, src[0], src[1], src[2]); + break; + case nir_op_vec2: case nir_op_vec3: case nir_op_vec4: {