Lines Matching defs:blob

42    struct blob *blob;
72 struct blob_reader *blob;
125 return read_lookup_object(ctx, blob_read_uint32(ctx->blob));
179 blob_write_bytes(ctx->blob, c->values, sizeof(c->values));
180 blob_write_uint32(ctx->blob, c->num_elements);
190 blob_copy_bytes(ctx->blob, (uint8_t *)c->values, sizeof(c->values));
191 c->num_elements = blob_read_uint32(ctx->blob);
290 blob_write_uint32(ctx->blob, flags.u32);
293 encode_type_to_blob(ctx->blob, var->type);
298 encode_type_to_blob(ctx->blob, var->interface_type);
303 blob_write_string(ctx->blob, var->name);
308 blob_write_bytes(ctx->blob, &data, sizeof(data));
320 blob_write_uint32(ctx->blob, diff.u32);
327 blob_write_bytes(ctx->blob, &var->state_slots[i],
335 blob_write_bytes(ctx->blob, (uint8_t *) var->members,
347 flags.u32 = blob_read_uint32(ctx->blob);
352 var->type = decode_type_from_blob(ctx->blob);
360 var->interface_type = decode_type_from_blob(ctx->blob);
366 const char *name = blob_read_string(ctx->blob);
377 blob_copy_bytes(ctx->blob, (uint8_t *) &var->data, sizeof(var->data));
381 diff.u32 = blob_read_uint32(ctx->blob);
398 blob_copy_bytes(ctx->blob, &var->state_slots[i],
416 blob_copy_bytes(ctx->blob, (uint8_t *) var->members,
426 blob_write_uint32(ctx->blob, exec_list_length(src));
436 unsigned num_vars = blob_read_uint32(ctx->blob);
447 blob_write_uint32(ctx->blob, reg->num_components);
448 blob_write_uint32(ctx->blob, reg->bit_size);
449 blob_write_uint32(ctx->blob, reg->num_array_elems);
450 blob_write_uint32(ctx->blob, reg->index);
451 blob_write_uint8(ctx->blob, reg->divergent);
459 reg->num_components = blob_read_uint32(ctx->blob);
460 reg->bit_size = blob_read_uint32(ctx->blob);
461 reg->num_array_elems = blob_read_uint32(ctx->blob);
462 reg->index = blob_read_uint32(ctx->blob);
463 reg->divergent = blob_read_uint8(ctx->blob);
475 blob_write_uint32(ctx->blob, exec_list_length(src));
484 unsigned num_regs = blob_read_uint32(ctx->blob);
527 blob_write_uint32(ctx->blob, header.u32);
531 blob_write_uint32(ctx->blob, header.u32);
532 blob_write_uint32(ctx->blob, src->reg.base_offset);
552 header.u32 = blob_read_uint32(ctx->blob);
559 src->reg.base_offset = blob_read_uint32(ctx->blob);
731 blob_overwrite_uint32(ctx->blob, ctx->last_alu_header_offset,
739 ctx->last_alu_header_offset = blob_reserve_uint32(ctx->blob);
740 blob_overwrite_uint32(ctx->blob, ctx->last_alu_header_offset, header.u32);
744 blob_write_uint32(ctx->blob, header.u32);
749 blob_write_uint32(ctx->blob, dst->ssa.num_components);
754 blob_write_uint32(ctx->blob, write_lookup_object(ctx, dst->reg.reg));
755 blob_write_uint32(ctx->blob, dst->reg.base_offset);
772 num_components = blob_read_uint32(ctx->blob);
780 dst->reg.base_offset = blob_read_uint32(ctx->blob);
855 blob_write_uint32(ctx->blob, alu->dest.write_mask);
862 blob_write_uint16(ctx->blob, idx);
894 blob_write_uint32(ctx->blob, value);
921 alu->dest.write_mask = blob_read_uint32(ctx->blob);
928 src->src.ssa = read_lookup_object(ctx, blob_read_uint16(ctx->blob));
957 unsigned value = blob_read_uint32(ctx->blob);
1056 blob_write_uint32(ctx->blob, var_idx);
1061 blob_write_uint32(ctx->blob, deref->strct.index);
1067 blob_write_uint16(ctx->blob,
1069 blob_write_uint16(ctx->blob,
1079 blob_write_uint32(ctx->blob, deref->cast.ptr_stride);
1080 blob_write_uint32(ctx->blob, deref->cast.align_mul);
1081 blob_write_uint32(ctx->blob, deref->cast.align_offset);
1083 encode_type_to_blob(ctx->blob, deref->type);
1120 deref->strct.index = blob_read_uint32(ctx->blob);
1128 deref->parent.ssa = read_lookup_object(ctx, blob_read_uint16(ctx->blob));
1130 deref->arr.index.ssa = read_lookup_object(ctx, blob_read_uint16(ctx->blob));
1147 deref->cast.ptr_stride = blob_read_uint32(ctx->blob);
1148 deref->cast.align_mul = blob_read_uint32(ctx->blob);
1149 deref->cast.align_offset = blob_read_uint32(ctx->blob);
1153 deref->type = decode_type_from_blob(ctx->blob);
1223 blob_write_uint32(ctx->blob, header.u32);
1232 blob_write_uint8(ctx->blob, intrin->const_index[i]);
1236 blob_write_uint16(ctx->blob, intrin->const_index[i]);
1240 blob_write_uint32(ctx->blob, intrin->const_index[i]);
1290 intrin->const_index[i] = blob_read_uint8(ctx->blob);
1294 intrin->const_index[i] = blob_read_uint16(ctx->blob);
1298 intrin->const_index[i] = blob_read_uint32(ctx->blob);
1360 blob_write_uint32(ctx->blob, header.u32);
1365 blob_write_bytes(ctx->blob, lc->value,
1371 blob_write_uint32(ctx->blob, lc->value[i].u32);
1376 blob_write_uint16(ctx->blob, lc->value[i].u16);
1382 blob_write_uint8(ctx->blob, lc->value[i].u8);
1437 blob_copy_bytes(ctx->blob, lc->value, sizeof(*lc->value) * lc->def.num_components);
1442 lc->value[i].u32 = blob_read_uint32(ctx->blob);
1447 lc->value[i].u16 = blob_read_uint16(ctx->blob);
1453 lc->value[i].u8 = blob_read_uint8(ctx->blob);
1475 blob_write_uint32(ctx->blob, header.u32);
1525 blob_write_uint32(ctx->blob, tex->texture_index);
1526 blob_write_uint32(ctx->blob, tex->sampler_index);
1528 blob_write_bytes(ctx->blob, tex->tg4_offsets, sizeof(tex->tg4_offsets));
1544 blob_write_uint32(ctx->blob, packed.u32);
1562 tex->texture_index = blob_read_uint32(ctx->blob);
1563 tex->sampler_index = blob_read_uint32(ctx->blob);
1565 blob_copy_bytes(ctx->blob, tex->tg4_offsets, sizeof(tex->tg4_offsets));
1568 packed.u32 = blob_read_uint32(ctx->blob);
1607 size_t blob_offset = blob_reserve_uint32(ctx->blob);
1608 ASSERTED size_t blob_offset2 = blob_reserve_uint32(ctx->blob);
1623 blob_overwrite_uint32(ctx->blob, fixup->blob_offset,
1625 blob_overwrite_uint32(ctx->blob, fixup->blob_offset + sizeof(uint32_t),
1643 * from the blob for now) don't get inserted into the old shader's use-def
1650 nir_ssa_def *def = (nir_ssa_def *)(uintptr_t) blob_read_uint32(ctx->blob);
1651 nir_block *pred = (nir_block *)(uintptr_t) blob_read_uint32(ctx->blob);
1698 blob_write_uint32(ctx->blob, header.u32);
1715 blob_write_uint32(ctx->blob, write_lookup_object(ctx, call->callee));
1765 blob_write_uint32(ctx->blob, instr->type);
1781 header.u32 = blob_read_uint32(ctx->blob);
1832 blob_write_uint32(ctx->blob, exec_list_length(&block->instr_list));
1854 unsigned num_instrs = blob_read_uint32(ctx->blob);
1870 blob_write_uint8(ctx->blob, nif->control);
1882 nif->control = blob_read_uint8(ctx->blob);
1893 blob_write_uint8(ctx->blob, loop->control);
1894 blob_write_uint8(ctx->blob, loop->divergent);
1905 loop->control = blob_read_uint8(ctx->blob);
1906 loop->divergent = blob_read_uint8(ctx->blob);
1913 blob_write_uint32(ctx->blob, cf->type);
1933 nir_cf_node_type type = blob_read_uint32(ctx->blob);
1953 blob_write_uint32(ctx->blob, exec_list_length(cf_list));
1962 uint32_t num_cf_nodes = blob_read_uint32(ctx->blob);
1970 blob_write_uint8(ctx->blob, fi->structured);
1971 blob_write_uint8(ctx->blob, !!fi->preamble);
1974 blob_write_uint32(ctx->blob, write_lookup_object(ctx, fi->preamble));
1978 blob_write_uint32(ctx->blob, fi->reg_alloc);
1990 fi->structured = blob_read_uint8(ctx->blob);
1991 bool preamble = blob_read_uint8(ctx->blob);
1998 fi->reg_alloc = blob_read_uint32(ctx->blob);
2020 blob_write_uint32(ctx->blob, flags);
2022 blob_write_string(ctx->blob, fxn->name);
2026 blob_write_uint32(ctx->blob, fxn->num_params);
2031 blob_write_uint32(ctx->blob, val);
2044 uint32_t flags = blob_read_uint32(ctx->blob);
2046 char *name = has_name ? blob_read_string(ctx->blob) : NULL;
2052 fxn->num_params = blob_read_uint32(ctx->blob);
2055 uint32_t val = blob_read_uint32(ctx->blob);
2070 blob_write_uint32(ctx->blob, 0);
2074 blob_write_uint32(ctx->blob, size);
2075 blob_write_bytes(ctx->blob, xfb, size);
2082 uint32_t size = blob_read_uint32(ctx->blob);
2087 blob_copy_bytes(ctx->blob, (void *)xfb, size);
2093 * Serialize NIR into a binary blob.
2100 nir_serialize(struct blob *blob, const nir_shader *nir, bool strip)
2104 ctx.blob = blob;
2109 size_t idx_size_offset = blob_reserve_uint32(blob);
2117 blob_write_uint32(blob, strings);
2119 blob_write_string(blob, info.name);
2121 blob_write_string(blob, info.label);
2123 blob_write_bytes(blob, (uint8_t *) &info, sizeof(info));
2127 blob_write_uint32(blob, nir->num_inputs);
2128 blob_write_uint32(blob, nir->num_uniforms);
2129 blob_write_uint32(blob, nir->num_outputs);
2130 blob_write_uint32(blob, nir->scratch_size);
2132 blob_write_uint32(blob, exec_list_length(&nir->functions));
2142 blob_write_uint32(blob, nir->constant_data_size);
2144 blob_write_bytes(blob, nir->constant_data, nir->constant_data_size);
2148 blob_overwrite_uint32(blob, idx_size_offset, ctx.next_idx);
2157 struct blob_reader *blob)
2160 ctx.blob = blob;
2162 ctx.idx_table_len = blob_read_uint32(blob);
2165 uint32_t strings = blob_read_uint32(blob);
2166 char *name = (strings & 0x1) ? blob_read_string(blob) : NULL;
2167 char *label = (strings & 0x2) ? blob_read_string(blob) : NULL;
2170 blob_copy_bytes(blob, (uint8_t *) &info, sizeof(info));
2181 ctx.nir->num_inputs = blob_read_uint32(blob);
2182 ctx.nir->num_uniforms = blob_read_uint32(blob);
2183 ctx.nir->num_outputs = blob_read_uint32(blob);
2184 ctx.nir->scratch_size = blob_read_uint32(blob);
2186 unsigned num_functions = blob_read_uint32(blob);
2195 ctx.nir->constant_data_size = blob_read_uint32(blob);
2199 blob_copy_bytes(blob, ctx.nir->constant_data,
2217 struct blob writer;