mirror of
https://gitlab.winehq.org/wine/vkd3d.git
synced 2024-11-21 16:46:41 -08:00
vkd3d-shader/hlsl: Move a hlsl_fixme() to a more relevant place.
This commit is contained in:
parent
675d7b8cb6
commit
1e7d82798c
Notes:
Alexandre Julliard
2024-04-03 00:21:18 +02:00
Approved-by: Giovanni Mascellani (@giomasce) Approved-by: Henri Verbeet (@hverbeet) Approved-by: Alexandre Julliard (@julliard) Merge-Request: https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/745
@ -427,7 +427,10 @@ static void prepend_input_copy_recurse(struct hlsl_ctx *ctx, struct hlsl_block *
|
|||||||
{
|
{
|
||||||
field = &type->e.record.fields[i];
|
field = &type->e.record.fields[i];
|
||||||
if (hlsl_type_is_resource(field->type))
|
if (hlsl_type_is_resource(field->type))
|
||||||
|
{
|
||||||
|
hlsl_fixme(ctx, &field->loc, "Prepend uniform copies for resource components within structs.");
|
||||||
continue;
|
continue;
|
||||||
|
}
|
||||||
validate_field_semantic(ctx, field);
|
validate_field_semantic(ctx, field);
|
||||||
semantic = &field->semantic;
|
semantic = &field->semantic;
|
||||||
elem_semantic_index = semantic->index;
|
elem_semantic_index = semantic->index;
|
||||||
@ -5237,25 +5240,6 @@ static void parse_numthreads_attribute(struct hlsl_ctx *ctx, const struct hlsl_a
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static bool type_has_object_components(struct hlsl_type *type)
|
|
||||||
{
|
|
||||||
if (type->class == HLSL_CLASS_OBJECT)
|
|
||||||
return true;
|
|
||||||
if (type->class == HLSL_CLASS_ARRAY)
|
|
||||||
return type_has_object_components(type->e.array.type);
|
|
||||||
if (type->class == HLSL_CLASS_STRUCT)
|
|
||||||
{
|
|
||||||
unsigned int i;
|
|
||||||
|
|
||||||
for (i = 0; i < type->e.record.field_count; ++i)
|
|
||||||
{
|
|
||||||
if (type_has_object_components(type->e.record.fields[i].type))
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
static void remove_unreachable_code(struct hlsl_ctx *ctx, struct hlsl_block *body)
|
static void remove_unreachable_code(struct hlsl_ctx *ctx, struct hlsl_block *body)
|
||||||
{
|
{
|
||||||
struct hlsl_ir_node *instr, *next;
|
struct hlsl_ir_node *instr, *next;
|
||||||
@ -5363,9 +5347,6 @@ int hlsl_emit_bytecode(struct hlsl_ctx *ctx, struct hlsl_ir_function_decl *entry
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if (type_has_object_components(var->data_type))
|
|
||||||
hlsl_fixme(ctx, &var->loc, "Prepend uniform copies for object components within structs.");
|
|
||||||
|
|
||||||
if (hlsl_get_multiarray_element_type(var->data_type)->class != HLSL_CLASS_STRUCT
|
if (hlsl_get_multiarray_element_type(var->data_type)->class != HLSL_CLASS_STRUCT
|
||||||
&& !var->semantic.name)
|
&& !var->semantic.name)
|
||||||
{
|
{
|
||||||
|
Loading…
Reference in New Issue
Block a user