|  | ; SPIR-V | 
|  | ; Version: 1.3 | 
|  | ; Generator: Google Tint Compiler; 0 | 
|  | ; Bound: 45 | 
|  | ; Schema: 0 | 
|  | OpCapability Shader | 
|  | OpMemoryModel Logical GLSL450 | 
|  | OpEntryPoint GLCompute %unused_entry_point "unused_entry_point" | 
|  | OpExecutionMode %unused_entry_point LocalSize 1 1 1 | 
|  | OpName %a "a" | 
|  | OpName %b "b" | 
|  | OpName %c "c" | 
|  | OpName %unused_entry_point "unused_entry_point" | 
|  | OpName %tint_div "tint_div" | 
|  | OpName %lhs "lhs" | 
|  | OpName %rhs "rhs" | 
|  | OpName %foo "foo" | 
|  | %int = OpTypeInt 32 1 | 
|  | %_ptr_Workgroup_int = OpTypePointer Workgroup %int | 
|  | %a = OpVariable %_ptr_Workgroup_int Workgroup | 
|  | %float = OpTypeFloat 32 | 
|  | %v4float = OpTypeVector %float 4 | 
|  | %_ptr_Workgroup_v4float = OpTypePointer Workgroup %v4float | 
|  | %b = OpVariable %_ptr_Workgroup_v4float Workgroup | 
|  | %v2float = OpTypeVector %float 2 | 
|  | %mat2v2float = OpTypeMatrix %v2float 2 | 
|  | %_ptr_Workgroup_mat2v2float = OpTypePointer Workgroup %mat2v2float | 
|  | %c = OpVariable %_ptr_Workgroup_mat2v2float Workgroup | 
|  | %void = OpTypeVoid | 
|  | %12 = OpTypeFunction %void | 
|  | %16 = OpTypeFunction %int %int %int | 
|  | %22 = OpConstantNull %int | 
|  | %bool = OpTypeBool | 
|  | %int_n2147483648 = OpConstant %int -2147483648 | 
|  | %int_n1 = OpConstant %int -1 | 
|  | %int_1 = OpConstant %int 1 | 
|  | %int_2 = OpConstant %int 2 | 
|  | %mat4v4float = OpTypeMatrix %v4float 4 | 
|  | %40 = OpConstantNull %mat4v4float | 
|  | %float_2 = OpConstant %float 2 | 
|  | %unused_entry_point = OpFunction %void None %12 | 
|  | %15 = OpLabel | 
|  | OpReturn | 
|  | OpFunctionEnd | 
|  | %tint_div = OpFunction %int None %16 | 
|  | %lhs = OpFunctionParameter %int | 
|  | %rhs = OpFunctionParameter %int | 
|  | %20 = OpLabel | 
|  | %23 = OpIEqual %bool %rhs %22 | 
|  | %26 = OpIEqual %bool %lhs %int_n2147483648 | 
|  | %28 = OpIEqual %bool %rhs %int_n1 | 
|  | %29 = OpLogicalAnd %bool %26 %28 | 
|  | %30 = OpLogicalOr %bool %23 %29 | 
|  | %21 = OpSelect %int %30 %int_1 %rhs | 
|  | %32 = OpSDiv %int %lhs %21 | 
|  | OpReturnValue %32 | 
|  | OpFunctionEnd | 
|  | %foo = OpFunction %void None %12 | 
|  | %34 = OpLabel | 
|  | %36 = OpLoad %int %a | 
|  | %35 = OpFunctionCall %int %tint_div %36 %int_2 | 
|  | OpStore %a %35 | 
|  | %38 = OpLoad %v4float %b | 
|  | %41 = OpVectorTimesMatrix %v4float %38 %40 | 
|  | OpStore %b %41 | 
|  | %42 = OpLoad %mat2v2float %c | 
|  | %44 = OpMatrixTimesScalar %mat2v2float %42 %float_2 | 
|  | OpStore %c %44 | 
|  | OpReturn | 
|  | OpFunctionEnd |