|  | ; SPIR-V | 
|  | ; Version: 1.3 | 
|  | ; Generator: Google Tint Compiler; 0 | 
|  | ; Bound: 52 | 
|  | ; Schema: 0 | 
|  | OpCapability Shader | 
|  | OpMemoryModel Logical GLSL450 | 
|  | OpEntryPoint GLCompute %f "f" | 
|  | OpExecutionMode %f LocalSize 1 1 1 | 
|  | OpName %tint_mod "tint_mod" | 
|  | OpName %lhs "lhs" | 
|  | OpName %rhs "rhs" | 
|  | OpName %f "f" | 
|  | %int = OpTypeInt 32 1 | 
|  | %v3int = OpTypeVector %int 3 | 
|  | %1 = OpTypeFunction %v3int %v3int %v3int | 
|  | %9 = OpConstantNull %v3int | 
|  | %bool = OpTypeBool | 
|  | %v3bool = OpTypeVector %bool 3 | 
|  | %int_n2147483648 = OpConstant %int -2147483648 | 
|  | %14 = OpConstantComposite %v3int %int_n2147483648 %int_n2147483648 %int_n2147483648 | 
|  | %int_n1 = OpConstant %int -1 | 
|  | %17 = OpConstantComposite %v3int %int_n1 %int_n1 %int_n1 | 
|  | %int_1 = OpConstant %int 1 | 
|  | %22 = OpConstantComposite %v3int %int_1 %int_1 %int_1 | 
|  | %uint = OpTypeInt 32 0 | 
|  | %v3uint = OpTypeVector %uint 3 | 
|  | %uint_2147483648 = OpConstant %uint 2147483648 | 
|  | %29 = OpConstantComposite %v3uint %uint_2147483648 %uint_2147483648 %uint_2147483648 | 
|  | %31 = OpConstantNull %v3uint | 
|  | %void = OpTypeVoid | 
|  | %40 = OpTypeFunction %void | 
|  | %int_2 = OpConstant %int 2 | 
|  | %int_3 = OpConstant %int 3 | 
|  | %46 = OpConstantComposite %v3int %int_1 %int_2 %int_3 | 
|  | %int_4 = OpConstant %int 4 | 
|  | %int_5 = OpConstant %int 5 | 
|  | %int_6 = OpConstant %int 6 | 
|  | %50 = OpConstantComposite %v3int %int_4 %int_5 %int_6 | 
|  | %tint_mod = OpFunction %v3int None %1 | 
|  | %lhs = OpFunctionParameter %v3int | 
|  | %rhs = OpFunctionParameter %v3int | 
|  | %7 = OpLabel | 
|  | %10 = OpIEqual %v3bool %rhs %9 | 
|  | %15 = OpIEqual %v3bool %lhs %14 | 
|  | %18 = OpIEqual %v3bool %rhs %17 | 
|  | %19 = OpLogicalAnd %v3bool %15 %18 | 
|  | %20 = OpLogicalOr %v3bool %10 %19 | 
|  | %8 = OpSelect %v3int %20 %22 %rhs | 
|  | %27 = OpBitwiseOr %v3int %lhs %8 | 
|  | %24 = OpBitcast %v3uint %27 | 
|  | %30 = OpBitwiseAnd %v3uint %24 %29 | 
|  | %32 = OpINotEqual %v3bool %30 %31 | 
|  | %23 = OpAny %bool %32 | 
|  | OpSelectionMerge %33 None | 
|  | OpBranchConditional %23 %34 %35 | 
|  | %34 = OpLabel | 
|  | %36 = OpSDiv %v3int %lhs %8 | 
|  | %37 = OpIMul %v3int %36 %8 | 
|  | %38 = OpISub %v3int %lhs %37 | 
|  | OpReturnValue %38 | 
|  | %35 = OpLabel | 
|  | %39 = OpSRem %v3int %lhs %8 | 
|  | OpReturnValue %39 | 
|  | %33 = OpLabel | 
|  | OpReturnValue %9 | 
|  | OpFunctionEnd | 
|  | %f = OpFunction %void None %40 | 
|  | %43 = OpLabel | 
|  | %51 = OpFunctionCall %v3int %tint_mod %46 %50 | 
|  | OpReturn | 
|  | OpFunctionEnd |