; SPIR-V ; Version: 1.3 ; Generator: Google Tint Compiler; 0 ; Bound: 59 ; Schema: 0 OpCapability Shader OpCapability Float16 OpCapability UniformAndStorageBuffer16BitAccess OpCapability StorageBuffer16BitAccess OpCapability StorageInputOutput16 OpMemoryModel Logical GLSL450 OpEntryPoint Vertex %main "main" %vertex_index_1 %loc0_1 %loc1_1 %instance_index_1 %loc2_1 %loc3_1 %loc5_1 %loc4_1 %value %vertex_point_size OpName %vertex_index_1 "vertex_index_1" OpName %loc0_1 "loc0_1" OpName %loc1_1 "loc1_1" OpName %instance_index_1 "instance_index_1" OpName %loc2_1 "loc2_1" OpName %loc3_1 "loc3_1" OpName %loc5_1 "loc5_1" OpName %loc4_1 "loc4_1" OpName %value "value" OpName %vertex_point_size "vertex_point_size" OpName %VertexInputs0 "VertexInputs0" OpMemberName %VertexInputs0 0 "vertex_index" OpMemberName %VertexInputs0 1 "loc0" OpName %VertexInputs1 "VertexInputs1" OpMemberName %VertexInputs1 0 "loc2" OpMemberName %VertexInputs1 1 "loc3" OpMemberName %VertexInputs1 2 "loc5" OpName %main_inner "main_inner" OpName %inputs0 "inputs0" OpName %loc1 "loc1" OpName %instance_index "instance_index" OpName %inputs1 "inputs1" OpName %loc4 "loc4" OpName %main "main" OpDecorate %vertex_index_1 BuiltIn VertexIndex OpDecorate %loc0_1 Location 0 OpDecorate %loc1_1 Location 1 OpDecorate %instance_index_1 BuiltIn InstanceIndex OpDecorate %loc2_1 Location 2 OpDecorate %loc3_1 Location 3 OpDecorate %loc5_1 Location 5 OpDecorate %loc4_1 Location 4 OpDecorate %value BuiltIn Position OpDecorate %vertex_point_size BuiltIn PointSize OpMemberDecorate %VertexInputs0 0 Offset 0 OpMemberDecorate %VertexInputs0 1 Offset 4 OpMemberDecorate %VertexInputs1 0 Offset 0 OpMemberDecorate %VertexInputs1 1 Offset 16 OpMemberDecorate %VertexInputs1 2 Offset 32 %uint = OpTypeInt 32 0 %_ptr_Input_uint = OpTypePointer Input %uint %vertex_index_1 = OpVariable %_ptr_Input_uint Input %int = OpTypeInt 32 1 %_ptr_Input_int = OpTypePointer Input %int %loc0_1 = OpVariable %_ptr_Input_int Input %loc1_1 = OpVariable %_ptr_Input_uint Input %instance_index_1 = OpVariable %_ptr_Input_uint Input %float = OpTypeFloat 32 %_ptr_Input_float = OpTypePointer Input %float %loc2_1 = OpVariable %_ptr_Input_float Input %v4float = OpTypeVector %float 4 %_ptr_Input_v4float = OpTypePointer Input %v4float %loc3_1 = OpVariable %_ptr_Input_v4float Input %half = OpTypeFloat 16 %v3half = OpTypeVector %half 3 %_ptr_Input_v3half = OpTypePointer Input %v3half %loc5_1 = OpVariable %_ptr_Input_v3half Input %_ptr_Input_half = OpTypePointer Input %half %loc4_1 = OpVariable %_ptr_Input_half Input %_ptr_Output_v4float = OpTypePointer Output %v4float %23 = OpConstantNull %v4float %value = OpVariable %_ptr_Output_v4float Output %23 %_ptr_Output_float = OpTypePointer Output %float %26 = OpConstantNull %float %vertex_point_size = OpVariable %_ptr_Output_float Output %26 %VertexInputs0 = OpTypeStruct %uint %int %VertexInputs1 = OpTypeStruct %float %v4float %v3half %27 = OpTypeFunction %v4float %VertexInputs0 %uint %uint %VertexInputs1 %half %void = OpTypeVoid %43 = OpTypeFunction %void %float_1 = OpConstant %float 1 %main_inner = OpFunction %v4float None %27 %inputs0 = OpFunctionParameter %VertexInputs0 %loc1 = OpFunctionParameter %uint %instance_index = OpFunctionParameter %uint %inputs1 = OpFunctionParameter %VertexInputs1 %loc4 = OpFunctionParameter %half %36 = OpLabel %37 = OpCompositeExtract %uint %inputs0 0 %38 = OpIAdd %uint %37 %instance_index %39 = OpCompositeExtract %int %inputs0 1 %40 = OpCompositeExtract %float %inputs1 0 %41 = OpCompositeExtract %v4float %inputs1 1 %42 = OpCompositeExtract %v3half %inputs1 2 OpReturnValue %23 OpFunctionEnd %main = OpFunction %void None %43 %46 = OpLabel %48 = OpLoad %uint %vertex_index_1 %49 = OpLoad %int %loc0_1 %50 = OpCompositeConstruct %VertexInputs0 %48 %49 %51 = OpLoad %uint %loc1_1 %52 = OpLoad %uint %instance_index_1 %53 = OpLoad %float %loc2_1 %54 = OpLoad %v4float %loc3_1 %55 = OpLoad %v3half %loc5_1 %56 = OpCompositeConstruct %VertexInputs1 %53 %54 %55 %57 = OpLoad %half %loc4_1 %47 = OpFunctionCall %v4float %main_inner %50 %51 %52 %56 %57 OpStore %value %47 OpStore %vertex_point_size %float_1 OpReturn OpFunctionEnd