Lines Matching refs:dec
580 for (struct vtn_decoration *dec = value->decoration; dec; dec = dec->next) {
582 if (dec->scope == VTN_DEC_DECORATION) {
584 } else if (dec->scope >= VTN_DEC_STRUCT_MEMBER0) {
592 member = dec->scope - VTN_DEC_STRUCT_MEMBER0;
600 assert(dec->scope == VTN_DEC_EXECUTION_MODE ||
601 dec->scope <= VTN_DEC_STRUCT_MEMBER_NAME0);
605 if (dec->group) {
606 assert(dec->group->value_type == vtn_value_type_decoration_group);
607 _foreach_decoration_helper(b, base_value, member, dec->group,
610 cb(b, base_value, member, dec, data);
632 for (struct vtn_decoration *dec = value->decoration; dec; dec = dec->next) {
633 if (dec->scope != VTN_DEC_EXECUTION_MODE)
636 assert(dec->group == NULL);
637 cb(b, value, dec, data);
663 struct vtn_decoration *dec = rzalloc(b, struct vtn_decoration);
668 dec->scope = VTN_DEC_DECORATION;
672 dec->scope = VTN_DEC_STRUCT_MEMBER0 + *(w++);
673 vtn_fail_if(dec->scope < VTN_DEC_STRUCT_MEMBER0, /* overflow */
678 dec->scope = VTN_DEC_EXECUTION_MODE;
683 dec->decoration = *(w++);
684 dec->num_operands = w_end - w;
685 dec->operands = w;
688 dec->next = val->decoration;
689 val->decoration = dec;
695 struct vtn_decoration *dec = rzalloc(b, struct vtn_decoration);
697 dec->scope = VTN_DEC_STRUCT_MEMBER_NAME0 - *(w++);
699 dec->member_name = vtn_string_literal(b, w, w_end - w, NULL);
701 dec->next = val->decoration;
702 val->decoration = dec;
713 struct vtn_decoration *dec = rzalloc(b, struct vtn_decoration);
715 dec->group = group;
717 dec->scope = VTN_DEC_DECORATION;
719 dec->scope = VTN_DEC_STRUCT_MEMBER0 + *(++w);
720 vtn_fail_if(dec->scope < 0, /* Check for overflow */
725 dec->next = val->decoration;
726 val->decoration = dec;
1018 const struct vtn_decoration *dec, void *void_ctx)
1022 if (dec->decoration == SpvDecorationArrayStride) {
1029 vtn_fail_if(dec->operands[0] == 0, "ArrayStride must be non-zero");
1030 type->stride = dec->operands[0];
1038 const struct vtn_decoration *dec, void *void_ctx)
1047 switch (dec->decoration) {
1083 ctx->fields[member].location = dec->operands[0];
1090 ctx->type->members[member]->builtin = dec->operands[0];
1094 ctx->type->offsets[member] = dec->operands[0];
1095 ctx->fields[member].offset = dec->operands[0];
1129 spirv_decoration_to_string(dec->decoration));
1152 spirv_decoration_to_string(dec->decoration));
1162 vtn_fail_with_decoration("Unhandled decoration", dec->decoration);
1187 const struct vtn_decoration *dec,
1190 if (dec->decoration != SpvDecorationMatrixStride)
1196 vtn_fail_if(dec->operands[0] == 0, "MatrixStride must be non-zero");
1204 mat_type->array_element->stride = dec->operands[0];
1207 dec->operands[0], true);
1211 mat_type->stride = dec->operands[0];
1214 dec->operands[0], false);
1228 const struct vtn_decoration *dec, void *void_ctx)
1231 if (dec->decoration == SpvDecorationCPacked) {
1234 spirv_decoration_to_string(dec->decoration));
1243 const struct vtn_decoration *dec, void *ctx)
1249 if (dec->decoration == SpvDecorationBlock)
1251 else if (dec->decoration == SpvDecorationBufferBlock)
1258 const struct vtn_decoration *dec, UNUSED void *ctx)
1269 switch (dec->decoration) {
1310 spirv_decoration_to_string(dec->decoration));
1334 spirv_decoration_to_string(dec->decoration));
1347 spirv_decoration_to_string(dec->decoration));
1355 vtn_fail_with_decoration("Unhandled decoration", dec->decoration);
1534 for (struct vtn_decoration *dec = val->decoration; dec; dec = dec->next) {
1535 if (dec->scope == VTN_DEC_STRUCT_MEMBER_NAME0 - i) {
1536 name = dec->member_name;
1929 const struct vtn_decoration *dec, void *data)
1932 if (dec->decoration != SpvDecorationSpecId)
1937 if (b->specializations[i].id == dec->operands[0]) {
1948 const struct vtn_decoration *dec,
1952 if (dec->decoration != SpvDecorationBuiltIn ||
1953 dec->operands[0] != SpvBuiltInWorkgroupSize)
2640 const struct vtn_decoration *dec, void *void_ctx)
2643 switch (dec->decoration) {