; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 55
; Schema: 0
               OpCapability Shader
               OpMemoryModel Logical GLSL450
               OpEntryPoint Vertex %vertex_main "vertex_main" %value_1 %vertex_point_size
               OpEntryPoint Fragment %fragment_main "fragment_main"
               OpEntryPoint GLCompute %compute_main "compute_main"
               OpExecutionMode %fragment_main OriginUpperLeft
               OpExecutionMode %compute_main LocalSize 1 1 1
               OpName %value_1 "value_1"
               OpName %vertex_point_size "vertex_point_size"
               OpName %prevent_dce_block "prevent_dce_block"
               OpMemberName %prevent_dce_block 0 "inner"
               OpName %prevent_dce "prevent_dce"
               OpName %assign_and_preserve_padding_prevent_dce "assign_and_preserve_padding_prevent_dce"
               OpName %value "value"
               OpName %transpose_ed4bdc "transpose_ed4bdc"
               OpName %res "res"
               OpName %vertex_main_inner "vertex_main_inner"
               OpName %vertex_main "vertex_main"
               OpName %fragment_main "fragment_main"
               OpName %compute_main "compute_main"
               OpDecorate %value_1 BuiltIn Position
               OpDecorate %vertex_point_size BuiltIn PointSize
               OpDecorate %prevent_dce_block Block
               OpMemberDecorate %prevent_dce_block 0 Offset 0
               OpMemberDecorate %prevent_dce_block 0 ColMajor
               OpMemberDecorate %prevent_dce_block 0 MatrixStride 16
               OpDecorate %prevent_dce DescriptorSet 2
               OpDecorate %prevent_dce Binding 0
      %float = OpTypeFloat 32
    %v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
          %5 = OpConstantNull %v4float
    %value_1 = OpVariable %_ptr_Output_v4float Output %5
%_ptr_Output_float = OpTypePointer Output %float
          %8 = OpConstantNull %float
%vertex_point_size = OpVariable %_ptr_Output_float Output %8
    %v3float = OpTypeVector %float 3
%mat2v3float = OpTypeMatrix %v3float 2
%prevent_dce_block = OpTypeStruct %mat2v3float
%_ptr_StorageBuffer_prevent_dce_block = OpTypePointer StorageBuffer %prevent_dce_block
%prevent_dce = OpVariable %_ptr_StorageBuffer_prevent_dce_block StorageBuffer
       %void = OpTypeVoid
         %14 = OpTypeFunction %void %mat2v3float
       %uint = OpTypeInt 32 0
     %uint_0 = OpConstant %uint 0
        %int = OpTypeInt 32 1
         %22 = OpConstantNull %int
%_ptr_StorageBuffer_v3float = OpTypePointer StorageBuffer %v3float
         %25 = OpConstantNull %uint
      %int_1 = OpConstant %int 1
     %uint_1 = OpConstant %uint 1
         %31 = OpTypeFunction %void
    %float_1 = OpConstant %float 1
         %35 = OpConstantComposite %v3float %float_1 %float_1 %float_1
         %36 = OpConstantComposite %mat2v3float %35 %35
%_ptr_Function_mat2v3float = OpTypePointer Function %mat2v3float
         %39 = OpConstantNull %mat2v3float
         %42 = OpTypeFunction %v4float
%assign_and_preserve_padding_prevent_dce = OpFunction %void None %14
      %value = OpFunctionParameter %mat2v3float
         %18 = OpLabel
         %24 = OpAccessChain %_ptr_StorageBuffer_v3float %prevent_dce %uint_0 %22
         %26 = OpCompositeExtract %v3float %value 0
               OpStore %24 %26
         %28 = OpAccessChain %_ptr_StorageBuffer_v3float %prevent_dce %uint_0 %int_1
         %30 = OpCompositeExtract %v3float %value 1
               OpStore %28 %30
               OpReturn
               OpFunctionEnd
%transpose_ed4bdc = OpFunction %void None %31
         %33 = OpLabel
        %res = OpVariable %_ptr_Function_mat2v3float Function %39
               OpStore %res %36
         %41 = OpLoad %mat2v3float %res
         %40 = OpFunctionCall %void %assign_and_preserve_padding_prevent_dce %41
               OpReturn
               OpFunctionEnd
%vertex_main_inner = OpFunction %v4float None %42
         %44 = OpLabel
         %45 = OpFunctionCall %void %transpose_ed4bdc
               OpReturnValue %5
               OpFunctionEnd
%vertex_main = OpFunction %void None %31
         %47 = OpLabel
         %48 = OpFunctionCall %v4float %vertex_main_inner
               OpStore %value_1 %48
               OpStore %vertex_point_size %float_1
               OpReturn
               OpFunctionEnd
%fragment_main = OpFunction %void None %31
         %50 = OpLabel
         %51 = OpFunctionCall %void %transpose_ed4bdc
               OpReturn
               OpFunctionEnd
%compute_main = OpFunction %void None %31
         %53 = OpLabel
         %54 = OpFunctionCall %void %transpose_ed4bdc
               OpReturn
               OpFunctionEnd
