; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 1
; Bound: 42
; Schema: 0
               OpCapability Shader
               OpMemoryModel Logical GLSL450
               OpEntryPoint GLCompute %main "main"
               OpExecutionMode %main LocalSize 1 1 1
               OpName %f "f"
               OpName %a "a"
               OpName %b "b"
               OpName %c "c"
               OpName %vec3u "vec3u"
               OpName %a_0 "a"
               OpName %main "main"
               OpName %x "x"
               OpName %x "y"
               OpName %z "z"
               OpName %z "zp"
        %int = OpTypeInt 32 1
          %6 = OpTypeFunction %int %int %int %int
       %uint = OpTypeInt 32 0
         %19 = OpTypeFunction %int %int
       %void = OpTypeVoid
         %23 = OpTypeFunction %void
      %int_1 = OpConstant %int 1
      %int_2 = OpConstant %int 2
      %int_3 = OpConstant %int 3
%_ptr_Function_int = OpTypePointer Function %int
          %f = OpFunction %int None %6
          %a = OpFunctionParameter %int
          %b = OpFunctionParameter %int
          %c = OpFunctionParameter %int
          %7 = OpLabel
          %9 = OpBitcast %uint %a
         %10 = OpBitcast %uint %b
         %11 = OpIMul %uint %9 %10
         %12 = OpBitcast %int %11
         %13 = OpBitcast %uint %12
         %14 = OpBitcast %uint %c
         %15 = OpIAdd %uint %13 %14
         %16 = OpBitcast %int %15
               OpReturnValue %16
               OpFunctionEnd
      %vec3u = OpFunction %int None %19
        %a_0 = OpFunctionParameter %int
         %20 = OpLabel
               OpReturnValue %a_0
               OpFunctionEnd
       %main = OpFunction %void None %23
         %24 = OpLabel
          %x = OpVariable %_ptr_Function_int Function
          %z = OpVariable %_ptr_Function_int Function
         %25 = OpFunctionCall %int %f %int_1 %int_2 %int_3
               OpStore %x %int_3
         %31 = OpLoad %int %x None
         %32 = OpFunctionCall %int %vec3u %31
         %33 = OpLoad %int %x None
         %34 = OpFunctionCall %int %vec3u %33
         %35 = OpLoad %int %x None
         %36 = OpFunctionCall %int %vec3u %35
         %37 = OpLoad %int %x None
         %38 = OpFunctionCall %int %vec3u %37
               OpStore %z %int_3
         %40 = OpLoad %int %z None
         %41 = OpLoad %int %z None
               OpReturn
               OpFunctionEnd
