spirv: Handle the InputAttachmentIndex decoration
Reviewed-by: Dave Airlie <airlied@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
This commit is contained in:
@@ -279,6 +279,7 @@ struct vtn_variable {
|
|||||||
|
|
||||||
unsigned descriptor_set;
|
unsigned descriptor_set;
|
||||||
unsigned binding;
|
unsigned binding;
|
||||||
|
unsigned input_attachment_index;
|
||||||
|
|
||||||
nir_variable *var;
|
nir_variable *var;
|
||||||
nir_variable **members;
|
nir_variable **members;
|
||||||
|
@@ -1027,6 +1027,9 @@ var_decoration_cb(struct vtn_builder *b, struct vtn_value *val, int member,
|
|||||||
case SpvDecorationDescriptorSet:
|
case SpvDecorationDescriptorSet:
|
||||||
vtn_var->descriptor_set = dec->literals[0];
|
vtn_var->descriptor_set = dec->literals[0];
|
||||||
return;
|
return;
|
||||||
|
case SpvDecorationInputAttachmentIndex:
|
||||||
|
vtn_var->input_attachment_index = dec->literals[0];
|
||||||
|
return;
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@@ -1335,6 +1338,7 @@ vtn_handle_variables(struct vtn_builder *b, SpvOp opcode,
|
|||||||
*/
|
*/
|
||||||
var->var->data.binding = var->binding;
|
var->var->data.binding = var->binding;
|
||||||
var->var->data.descriptor_set = var->descriptor_set;
|
var->var->data.descriptor_set = var->descriptor_set;
|
||||||
|
var->var->data.index = var->input_attachment_index;
|
||||||
|
|
||||||
if (var->mode == vtn_variable_mode_image)
|
if (var->mode == vtn_variable_mode_image)
|
||||||
var->var->data.image.format = without_array->image_format;
|
var->var->data.image.format = without_array->image_format;
|
||||||
|
Reference in New Issue
Block a user