Lines Matching defs:blob
29 * Supports serializing and deserializing glsl programs using a blob.
43 write_subroutines(struct blob *metadata, struct gl_shader_program *prog)
106 write_buffer_block(struct blob *metadata, struct gl_uniform_block *b)
123 write_buffer_blocks(struct blob *metadata, struct gl_shader_program *prog)
242 write_atomic_buffers(struct blob *metadata, struct gl_shader_program *prog)
315 write_xfb(struct blob *metadata, struct gl_shader_program *shProg)
432 write_uniforms(struct blob *metadata, struct gl_shader_program *prog)
580 write_uniform_remap_table(struct blob *metadata,
621 write_uniform_remap_tables(struct blob *metadata,
698 struct blob *blob;
707 blob_write_string(whte->blob, key);
708 blob_write_uint32(whte->blob, value);
714 write_hash_table(struct blob *metadata, struct string_to_uint_map *hash)
719 whte.blob = metadata;
751 write_hash_tables(struct blob *metadata, struct gl_shader_program *prog)
767 write_shader_subroutine_index(struct blob *metadata,
801 write_program_resource_data(struct blob *metadata,
991 write_program_resource_list(struct blob *metadata,
1027 write_shader_parameters(struct blob *metadata,
1095 write_shader_metadata(struct blob *metadata, gl_linked_shader *shader)
1253 serialize_glsl_program(struct blob *blob, struct gl_context *ctx,
1256 blob_write_bytes(blob, prog->data->sha1, sizeof(prog->data->sha1));
1258 write_uniforms(blob, prog);
1260 write_hash_tables(blob, prog);
1262 blob_write_uint32(blob, prog->data->Version);
1263 blob_write_uint32(blob, prog->IsES);
1264 blob_write_uint32(blob, prog->data->linked_stages);
1269 write_shader_metadata(blob, sh);
1272 blob_write_string(blob, sh->Program->info.name);
1274 blob_write_string(blob, "");
1277 blob_write_string(blob, sh->Program->info.label);
1279 blob_write_string(blob, "");
1286 blob_write_bytes(blob,
1292 write_xfb(blob, prog);
1294 write_uniform_remap_tables(blob, prog);
1296 write_atomic_buffers(blob, prog);
1298 write_buffer_blocks(blob, prog);
1300 write_subroutines(blob, prog);
1302 write_program_resource_list(blob, prog);
1306 deserialize_glsl_program(struct blob_reader *blob, struct gl_context *ctx,
1315 blob_copy_bytes(blob, prog->data->sha1, sizeof(prog->data->sha1));
1317 read_uniforms(blob, prog);
1319 read_hash_tables(blob, prog);
1321 prog->data->Version = blob_read_uint32(blob);
1322 prog->IsES = blob_read_uint32(blob);
1323 prog->data->linked_stages = blob_read_uint32(blob);
1329 blob);
1332 read_xfb(blob, prog);
1334 read_uniform_remap_tables(blob, prog);
1336 read_atomic_buffers(blob, prog);
1338 read_buffer_blocks(blob, prog);
1340 read_subroutines(blob, prog);
1342 read_program_resource_list(blob, prog);
1344 return !blob->overrun;