%YAML 1.1 --- all_type_descriptions: - &td0 id: 34 op: 29 type_name: struct_member_name: "values" storage_class: 0 # UniformConstant type_flags: 0x20000008 # ARRAY FLOAT decoration_flags: 0x00000000 # NONE traits: numeric: scalar: { width: 32, signedness: 0 } vector: { component_count: 0 } matrix: { column_count: 0, row_count: 0, stride: 0 } image: { dim: 0, depth: 0, arrayed: 0, ms: 0, sampled: 0, image_format: 0 } # dim=1D image_format=Unknown array: { dims_count: 1, dims: [0,], stride: 4 } member_count: 0 members: - &td1 id: 30 op: 32 type_name: "ReadVecf" struct_member_name: "a" storage_class: 5349 # PhysicalStorageBuffer type_flags: 0x50080000 # STRUCT REF EXTERNAL_BLOCK decoration_flags: 0x00000001 # BLOCK traits: numeric: scalar: { width: 0, signedness: 0 } vector: { component_count: 0 } matrix: { column_count: 0, row_count: 0, stride: 0 } image: { dim: 0, depth: 0, arrayed: 0, ms: 0, sampled: 0, image_format: 0 } # dim=1D image_format=Unknown array: { dims_count: 0, dims: [], stride: 0 } member_count: 1 members: - *td0 - &td2 id: 30 op: 32 type_name: "ReadVecf" struct_member_name: "b" storage_class: 5349 # PhysicalStorageBuffer type_flags: 0x50080000 # STRUCT REF EXTERNAL_BLOCK decoration_flags: 0x00000001 # BLOCK traits: numeric: scalar: { width: 0, signedness: 0 } vector: { component_count: 0 } matrix: { column_count: 0, row_count: 0, stride: 0 } image: { dim: 0, depth: 0, arrayed: 0, ms: 0, sampled: 0, image_format: 0 } # dim=1D image_format=Unknown array: { dims_count: 0, dims: [], stride: 0 } member_count: 1 members: - [forward pointer] - &td3 id: 36 op: 29 type_name: struct_member_name: "values" storage_class: 0 # UniformConstant type_flags: 0x20000008 # ARRAY FLOAT decoration_flags: 0x00000000 # NONE traits: numeric: scalar: { width: 32, signedness: 0 } vector: { component_count: 0 } matrix: { column_count: 0, row_count: 0, stride: 0 } image: { dim: 0, depth: 0, arrayed: 0, ms: 0, sampled: 0, image_format: 0 } # dim=1D image_format=Unknown array: { dims_count: 1, dims: [0,], stride: 4 } member_count: 0 members: - &td4 id: 31 op: 32 type_name: "WriteVecf" struct_member_name: "c" storage_class: 5349 # PhysicalStorageBuffer type_flags: 0x50080000 # STRUCT REF EXTERNAL_BLOCK decoration_flags: 0x00000001 # BLOCK traits: numeric: scalar: { width: 0, signedness: 0 } vector: { component_count: 0 } matrix: { column_count: 0, row_count: 0, stride: 0 } image: { dim: 0, depth: 0, arrayed: 0, ms: 0, sampled: 0, image_format: 0 } # dim=1D image_format=Unknown array: { dims_count: 0, dims: [], stride: 0 } member_count: 1 members: - *td3 - &td5 id: 28 op: 21 type_name: struct_member_name: "n" storage_class: 0 # UniformConstant type_flags: 0x00000004 # INT decoration_flags: 0x00000000 # NONE traits: numeric: scalar: { width: 64, signedness: 0 } vector: { component_count: 0 } matrix: { column_count: 0, row_count: 0, stride: 0 } image: { dim: 0, depth: 0, arrayed: 0, ms: 0, sampled: 0, image_format: 0 } # dim=1D image_format=Unknown array: { dims_count: 0, dims: [], stride: 0 } member_count: 0 members: - &td6 id: 32 op: 30 type_name: "Parameters" struct_member_name: storage_class: -1 # NOT APPLICABLE type_flags: 0x10080000 # STRUCT EXTERNAL_BLOCK decoration_flags: 0x00000001 # BLOCK traits: numeric: scalar: { width: 0, signedness: 0 } vector: { component_count: 0 } matrix: { column_count: 0, row_count: 0, stride: 0 } image: { dim: 0, depth: 0, arrayed: 0, ms: 0, sampled: 0, image_format: 0 } # dim=1D image_format=Unknown array: { dims_count: 0, dims: [], stride: 0 } member_count: 4 members: - *td1 - *td2 - *td4 - *td5 - &td7 id: 34 op: 29 type_name: struct_member_name: "values" storage_class: 0 # UniformConstant type_flags: 0x20000008 # ARRAY FLOAT decoration_flags: 0x00000000 # NONE traits: numeric: scalar: { width: 32, signedness: 0 } vector: { component_count: 0 } matrix: { column_count: 0, row_count: 0, stride: 0 } image: { dim: 0, depth: 0, arrayed: 0, ms: 0, sampled: 0, image_format: 0 } # dim=1D image_format=Unknown array: { dims_count: 1, dims: [0,], stride: 4 } member_count: 0 members: - &td8 id: 36 op: 29 type_name: struct_member_name: "values" storage_class: 0 # UniformConstant type_flags: 0x20000008 # ARRAY FLOAT decoration_flags: 0x00000000 # NONE traits: numeric: scalar: { width: 32, signedness: 0 } vector: { component_count: 0 } matrix: { column_count: 0, row_count: 0, stride: 0 } image: { dim: 0, depth: 0, arrayed: 0, ms: 0, sampled: 0, image_format: 0 } # dim=1D image_format=Unknown array: { dims_count: 1, dims: [0,], stride: 4 } member_count: 0 members: - &td9 id: 9 op: 23 type_name: struct_member_name: storage_class: -1 # NOT APPLICABLE type_flags: 0x00000104 # VECTOR INT decoration_flags: 0x00000000 # NONE traits: numeric: scalar: { width: 32, signedness: 0 } vector: { component_count: 3 } matrix: { column_count: 0, row_count: 0, stride: 0 } image: { dim: 0, depth: 0, arrayed: 0, ms: 0, sampled: 0, image_format: 0 } # dim=1D image_format=Unknown array: { dims_count: 0, dims: [], stride: 0 } member_count: 0 members: all_block_variables: - &bv0 name: "values" offset: 0 absolute_offset: 0 size: 0 padded_size: 0 decorations: 0x00000080 # NON_WRITABLE numeric: scalar: { width: 32, signedness: 0 } vector: { component_count: 0 } matrix: { column_count: 0, row_count: 0, stride: 0 } array: { dims_count: 0, dims: [], stride: 0 } flags: 0x00000000 # NONE member_count: 0 members: type_description: *td7 - &bv1 name: "a" offset: 0 absolute_offset: 0 size: 8 padded_size: 8 decorations: 0x00000000 # NONE numeric: scalar: { width: 0, signedness: 0 } vector: { component_count: 0 } matrix: { column_count: 0, row_count: 0, stride: 0 } array: { dims_count: 0, dims: [], stride: 0 } flags: 0x00000000 # NONE member_count: 1 members: - *bv0 type_description: *td1 - &bv2 name: "values" offset: 0 absolute_offset: 0 size: 0 padded_size: 0 decorations: 0x00000200 # NON_READABLE numeric: scalar: { width: 32, signedness: 0 } vector: { component_count: 0 } matrix: { column_count: 0, row_count: 0, stride: 0 } array: { dims_count: 0, dims: [], stride: 0 } flags: 0x00000000 # NONE member_count: 0 members: type_description: *td8 - &bv3 name: "c" offset: 16 absolute_offset: 16 size: 8 padded_size: 8 decorations: 0x00000000 # NONE numeric: scalar: { width: 0, signedness: 0 } vector: { component_count: 0 } matrix: { column_count: 0, row_count: 0, stride: 0 } array: { dims_count: 0, dims: [], stride: 0 } flags: 0x00000000 # NONE member_count: 1 members: - *bv2 type_description: *td4 - &bv4 name: "n" offset: 24 absolute_offset: 24 size: 8 padded_size: 8 decorations: 0x00000000 # NONE numeric: scalar: { width: 64, signedness: 0 } vector: { component_count: 0 } matrix: { column_count: 0, row_count: 0, stride: 0 } array: { dims_count: 0, dims: [], stride: 0 } flags: 0x00000000 # NONE member_count: 0 members: type_description: *td5 - &bv5 name: "params" offset: 0 absolute_offset: 0 size: 32 padded_size: 32 decorations: 0x00000000 # NONE numeric: scalar: { width: 0, signedness: 0 } vector: { component_count: 0 } matrix: { column_count: 0, row_count: 0, stride: 0 } array: { dims_count: 0, dims: [], stride: 0 } flags: 0x00000000 # NONE member_count: 4 members: - *bv1 - [recursive] - *bv3 - *bv4 type_description: *td6 all_descriptor_bindings: all_interface_variables: - &iv0 spirv_id: 11 name: "gl_GlobalInvocationID" location: 4294967295 storage_class: 1 # Input semantic: decoration_flags: 0x00000010 # BUILT_IN built_in: 28 # GlobalInvocationId numeric: scalar: { width: 32, signedness: 0 } vector: { component_count: 3 } matrix: { column_count: 0, row_count: 0, stride: 0 } array: { dims_count: 0, dims: [], stride: 0 } member_count: 0 members: format: 104 # VK_FORMAT_R32G32B32_UINT type_description: *td9 word_offset: { location: 0 } - &iv1 spirv_id: 17 name: "gl_NumWorkGroups" location: 4294967295 storage_class: 1 # Input semantic: decoration_flags: 0x00000010 # BUILT_IN built_in: 24 # NumWorkgroups numeric: scalar: { width: 32, signedness: 0 } vector: { component_count: 3 } matrix: { column_count: 0, row_count: 0, stride: 0 } array: { dims_count: 0, dims: [], stride: 0 } member_count: 0 members: format: 104 # VK_FORMAT_R32G32B32_UINT type_description: *td9 word_offset: { location: 0 } module: generator: 8 # Khronos Glslang Reference Front End entry_point_name: "main" entry_point_id: 4 source_language: 2 # GLSL source_language_version: 460 spirv_execution_model: 5 # GLCompute shader_stage: 0x00000020 # CS descriptor_binding_count: 0 descriptor_bindings: descriptor_set_count: 0 descriptor_sets: input_variable_count: 2, input_variables: - *iv0 # "gl_GlobalInvocationID" - *iv1 # "gl_NumWorkGroups" output_variable_count: 0, output_variables: push_constant_count: 1, push_constants: - *bv5 # "params" specialization_constant_count: 0, specialization_constants: ...