Giovanni Mascellani (@giomasce) commented about libs/vkd3d-shader/dxil.c:
- [DX_STORE_OUTPUT ] = {'v', "ii8o", sm6_parser_emit_dx_store_output},
+};
+static bool sm6_parser_validate_operand_type(struct sm6_parser *sm6, const struct sm6_type *type, char info_type) +{
- switch (info_type)
- {
case 0:
FIXME("Invalid operand count.\n");
return false;
case '8':
return sm6_type_is_i8(type);
case 'i':
return sm6_type_is_i32(type);
case 'v':
return !type;
Hmm, sometimes type `void` is represented as a `NULL` (for example for return values), sometimes as a `sm6_type` with `TYPE_CLASS_VOID` (see e.g. `sm6_type_is_void()`). Maybe we should always use the same convention.