Conor McCarthy (@cmccarthy) commented about libs/vkd3d-shader/ir.c:
return false;
- dst = instruction->dst;
- src = instruction->src;
- dst[0] = *dest;
- materialize_ssas_to_temps_process_dst_param(parser, &dst[0]);
- assert(dst[0].write_mask == VKD3DSP_WRITEMASK_0);
- assert(dst[0].modifiers == 0);
- assert(dst[0].shift == 0);
- if (cond)
- {
src[0] = *cond;
src[1 + !!invert] = *source;
Is there a problem with just using `1 + invert`? `invert` is already `bool` so should convert to `int` 0 or 1.