blob: 932a83dac465d03552c7dcc43291b10f888ae82e [file] [log] [blame]
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 1
; Bound: 83
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
OpEntryPoint Fragment %main "main" %main_loc0_Output
OpExecutionMode %main OriginUpperLeft
OpName %main_loc0_Output "main_loc0_Output"
OpName %ret_i32 "ret_i32"
OpName %ret_u32 "ret_u32"
OpName %ret_f32 "ret_f32"
OpName %ret_MyStruct "ret_MyStruct"
OpMemberName %MyStruct 0 "f1"
OpName %MyStruct "MyStruct"
OpName %ret_MyArray "ret_MyArray"
OpName %var_decls "var_decls"
OpName %v1 "v1"
OpName %v2 "v2"
OpName %v3 "v3"
OpName %v4 "v4"
OpName %v5 "v5"
OpName %v6 "v6"
OpName %v7 "v7"
OpName %v8 "v8"
OpName %v9 "v9"
OpName %v10 "v10"
OpName %v11 "v11"
OpName %v12 "v12"
OpName %v13 "v13"
OpName %v14 "v14"
OpName %v15 "v15"
OpName %main_inner "main_inner"
OpName %main "main"
OpDecorate %main_loc0_Output Location 0
OpMemberDecorate %MyStruct 0 Offset 0
OpDecorate %_arr_float_uint_10 ArrayStride 4
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
%main_loc0_Output = OpVariable %_ptr_Output_v4float Output
%int = OpTypeInt 32 1
%7 = OpTypeFunction %int
%int_1 = OpConstant %int 1
%uint = OpTypeInt 32 0
%12 = OpTypeFunction %uint
%uint_1 = OpConstant %uint 1
%16 = OpTypeFunction %float
%float_1 = OpConstant %float 1
%MyStruct = OpTypeStruct %float
%21 = OpTypeFunction %MyStruct
%23 = OpConstantNull %MyStruct
%uint_10 = OpConstant %uint 10
%_arr_float_uint_10 = OpTypeArray %float %uint_10
%27 = OpTypeFunction %_arr_float_uint_10
%29 = OpConstantNull %_arr_float_uint_10
%void = OpTypeVoid
%32 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
%_ptr_Function_uint = OpTypePointer Function %uint
%_ptr_Function_float = OpTypePointer Function %float
%v3int = OpTypeVector %int 3
%_ptr_Function_v3int = OpTypePointer Function %v3int
%43 = OpConstantComposite %v3int %int_1 %int_1 %int_1
%v3uint = OpTypeVector %uint 3
%_ptr_Function_v3uint = OpTypePointer Function %v3uint
%47 = OpConstantComposite %v3uint %uint_1 %uint_1 %uint_1
%v3float = OpTypeVector %float 3
%_ptr_Function_v3float = OpTypePointer Function %v3float
%51 = OpConstantComposite %v3float %float_1 %float_1 %float_1
%mat3v3float = OpTypeMatrix %v3float 3
%_ptr_Function_mat3v3float = OpTypePointer Function %mat3v3float
%_ptr_Function_MyStruct = OpTypePointer Function %MyStruct
%61 = OpConstantComposite %MyStruct %float_1
%_ptr_Function__arr_float_uint_10 = OpTypePointer Function %_arr_float_uint_10
%77 = OpTypeFunction %v4float
%79 = OpConstantNull %v4float
%ret_i32 = OpFunction %int None %7
%8 = OpLabel
OpReturnValue %int_1
OpFunctionEnd
%ret_u32 = OpFunction %uint None %12
%13 = OpLabel
OpReturnValue %uint_1
OpFunctionEnd
%ret_f32 = OpFunction %float None %16
%17 = OpLabel
OpReturnValue %float_1
OpFunctionEnd
%ret_MyStruct = OpFunction %MyStruct None %21
%22 = OpLabel
OpReturnValue %23
OpFunctionEnd
%ret_MyArray = OpFunction %_arr_float_uint_10 None %27
%28 = OpLabel
OpReturnValue %29
OpFunctionEnd
%var_decls = OpFunction %void None %32
%33 = OpLabel
%v1 = OpVariable %_ptr_Function_int Function
%v2 = OpVariable %_ptr_Function_uint Function
%v3 = OpVariable %_ptr_Function_float Function
%v4 = OpVariable %_ptr_Function_v3int Function
%v5 = OpVariable %_ptr_Function_v3uint Function
%v6 = OpVariable %_ptr_Function_v3float Function
%v7 = OpVariable %_ptr_Function_mat3v3float Function
%v8 = OpVariable %_ptr_Function_MyStruct Function
%v9 = OpVariable %_ptr_Function__arr_float_uint_10 Function
%v10 = OpVariable %_ptr_Function_int Function
%v11 = OpVariable %_ptr_Function_uint Function
%v12 = OpVariable %_ptr_Function_float Function
%v13 = OpVariable %_ptr_Function_MyStruct Function
%v14 = OpVariable %_ptr_Function_MyStruct Function
%v15 = OpVariable %_ptr_Function__arr_float_uint_10 Function
OpStore %v1 %int_1
OpStore %v2 %uint_1
OpStore %v3 %float_1
OpStore %v4 %43
OpStore %v5 %47
OpStore %v6 %51
%52 = OpLoad %v3float %v6 None
%53 = OpLoad %v3float %v6 None
%54 = OpLoad %v3float %v6 None
%56 = OpCompositeConstruct %mat3v3float %52 %53 %54
OpStore %v7 %56
OpStore %v8 %61
OpStore %v9 %29
%64 = OpFunctionCall %int %ret_i32
OpStore %v10 %64
%66 = OpFunctionCall %uint %ret_u32
OpStore %v11 %66
%68 = OpFunctionCall %float %ret_f32
OpStore %v12 %68
%70 = OpFunctionCall %MyStruct %ret_MyStruct
OpStore %v13 %70
%72 = OpFunctionCall %MyStruct %ret_MyStruct
OpStore %v14 %72
%74 = OpFunctionCall %_arr_float_uint_10 %ret_MyArray
OpStore %v15 %74
OpReturn
OpFunctionEnd
%main_inner = OpFunction %v4float None %77
%78 = OpLabel
OpReturnValue %79
OpFunctionEnd
%main = OpFunction %void None %32
%81 = OpLabel
%82 = OpFunctionCall %v4float %main_inner
OpStore %main_loc0_Output %82 None
OpReturn
OpFunctionEnd