; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 41
; Schema: 0
               OpCapability Shader
               OpMemoryModel Logical GLSL450
               OpEntryPoint Vertex %vertex_main "vertex_main" %value %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 "value"
               OpName %vertex_point_size "vertex_point_size"
               OpName %transpose_ed4bdc "transpose_ed4bdc"
               OpName %arg_0 "arg_0"
               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 BuiltIn Position
               OpDecorate %vertex_point_size BuiltIn PointSize
      %float = OpTypeFloat 32
    %v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
          %5 = OpConstantNull %v4float
      %value = OpVariable %_ptr_Output_v4float Output %5
%_ptr_Output_float = OpTypePointer Output %float
          %8 = OpConstantNull %float
%vertex_point_size = OpVariable %_ptr_Output_float Output %8
       %void = OpTypeVoid
          %9 = OpTypeFunction %void
    %v2float = OpTypeVector %float 2
%mat3v2float = OpTypeMatrix %v2float 3
    %float_1 = OpConstant %float 1
         %16 = OpConstantComposite %v2float %float_1 %float_1
         %17 = OpConstantComposite %mat3v2float %16 %16 %16
%_ptr_Function_mat3v2float = OpTypePointer Function %mat3v2float
         %20 = OpConstantNull %mat3v2float
    %v3float = OpTypeVector %float 3
%mat2v3float = OpTypeMatrix %v3float 2
%_ptr_Function_mat2v3float = OpTypePointer Function %mat2v3float
         %27 = OpConstantNull %mat2v3float
         %28 = OpTypeFunction %v4float
%transpose_ed4bdc = OpFunction %void None %9
         %12 = OpLabel
      %arg_0 = OpVariable %_ptr_Function_mat3v2float Function %20
        %res = OpVariable %_ptr_Function_mat2v3float Function %27
               OpStore %arg_0 %17
         %24 = OpLoad %mat3v2float %arg_0
         %21 = OpTranspose %mat2v3float %24
               OpStore %res %21
               OpReturn
               OpFunctionEnd
%vertex_main_inner = OpFunction %v4float None %28
         %30 = OpLabel
         %31 = OpFunctionCall %void %transpose_ed4bdc
               OpReturnValue %5
               OpFunctionEnd
%vertex_main = OpFunction %void None %9
         %33 = OpLabel
         %34 = OpFunctionCall %v4float %vertex_main_inner
               OpStore %value %34
               OpStore %vertex_point_size %float_1
               OpReturn
               OpFunctionEnd
%fragment_main = OpFunction %void None %9
         %36 = OpLabel
         %37 = OpFunctionCall %void %transpose_ed4bdc
               OpReturn
               OpFunctionEnd
%compute_main = OpFunction %void None %9
         %39 = OpLabel
         %40 = OpFunctionCall %void %transpose_ed4bdc
               OpReturn
               OpFunctionEnd
