; ; fragment_main ; ; SPIR-V ; Version: 1.3 ; Generator: Google Tint Compiler; 1 ; Bound: 29 ; Schema: 0 OpCapability Shader %17 = OpExtInstImport "GLSL.std.450" OpMemoryModel Logical GLSL450 OpEntryPoint Fragment %fragment_main "fragment_main" OpExecutionMode %fragment_main OriginUpperLeft OpMemberName %prevent_dce_block 0 "inner" OpName %prevent_dce_block "prevent_dce_block" OpName %atan2_a70d0d "atan2_a70d0d" OpName %arg_0 "arg_0" OpName %arg_1 "arg_1" OpName %res "res" OpName %fragment_main "fragment_main" OpMemberDecorate %prevent_dce_block 0 Offset 0 OpDecorate %prevent_dce_block Block OpDecorate %1 DescriptorSet 0 OpDecorate %1 Binding 0 OpDecorate %1 Coherent %float = OpTypeFloat 32 %v3float = OpTypeVector %float 3 %prevent_dce_block = OpTypeStruct %v3float %_ptr_StorageBuffer_prevent_dce_block = OpTypePointer StorageBuffer %prevent_dce_block %1 = OpVariable %_ptr_StorageBuffer_prevent_dce_block StorageBuffer %7 = OpTypeFunction %v3float %_ptr_Function_v3float = OpTypePointer Function %v3float %float_1 = OpConstant %float 1 %11 = OpConstantComposite %v3float %float_1 %float_1 %float_1 %void = OpTypeVoid %22 = OpTypeFunction %void %_ptr_StorageBuffer_v3float = OpTypePointer StorageBuffer %v3float %uint = OpTypeInt 32 0 %uint_0 = OpConstant %uint 0 %atan2_a70d0d = OpFunction %v3float None %7 %8 = OpLabel %arg_0 = OpVariable %_ptr_Function_v3float Function %arg_1 = OpVariable %_ptr_Function_v3float Function %res = OpVariable %_ptr_Function_v3float Function OpStore %arg_0 %11 OpStore %arg_1 %11 %14 = OpLoad %v3float %arg_0 None %15 = OpLoad %v3float %arg_1 None %16 = OpExtInst %v3float %17 Atan2 %14 %15 OpStore %res %16 %19 = OpLoad %v3float %res None OpReturnValue %19 OpFunctionEnd %fragment_main = OpFunction %void None %22 %23 = OpLabel %24 = OpFunctionCall %v3float %atan2_a70d0d %25 = OpAccessChain %_ptr_StorageBuffer_v3float %1 %uint_0 OpStore %25 %24 None OpReturn OpFunctionEnd ; ; compute_main ; ; SPIR-V ; Version: 1.3 ; Generator: Google Tint Compiler; 1 ; Bound: 29 ; Schema: 0 OpCapability Shader %17 = OpExtInstImport "GLSL.std.450" OpMemoryModel Logical GLSL450 OpEntryPoint GLCompute %compute_main "compute_main" OpExecutionMode %compute_main LocalSize 1 1 1 OpMemberName %prevent_dce_block 0 "inner" OpName %prevent_dce_block "prevent_dce_block" OpName %atan2_a70d0d "atan2_a70d0d" OpName %arg_0 "arg_0" OpName %arg_1 "arg_1" OpName %res "res" OpName %compute_main "compute_main" OpMemberDecorate %prevent_dce_block 0 Offset 0 OpDecorate %prevent_dce_block Block OpDecorate %1 DescriptorSet 0 OpDecorate %1 Binding 0 OpDecorate %1 Coherent %float = OpTypeFloat 32 %v3float = OpTypeVector %float 3 %prevent_dce_block = OpTypeStruct %v3float %_ptr_StorageBuffer_prevent_dce_block = OpTypePointer StorageBuffer %prevent_dce_block %1 = OpVariable %_ptr_StorageBuffer_prevent_dce_block StorageBuffer %7 = OpTypeFunction %v3float %_ptr_Function_v3float = OpTypePointer Function %v3float %float_1 = OpConstant %float 1 %11 = OpConstantComposite %v3float %float_1 %float_1 %float_1 %void = OpTypeVoid %22 = OpTypeFunction %void %_ptr_StorageBuffer_v3float = OpTypePointer StorageBuffer %v3float %uint = OpTypeInt 32 0 %uint_0 = OpConstant %uint 0 %atan2_a70d0d = OpFunction %v3float None %7 %8 = OpLabel %arg_0 = OpVariable %_ptr_Function_v3float Function %arg_1 = OpVariable %_ptr_Function_v3float Function %res = OpVariable %_ptr_Function_v3float Function OpStore %arg_0 %11 OpStore %arg_1 %11 %14 = OpLoad %v3float %arg_0 None %15 = OpLoad %v3float %arg_1 None %16 = OpExtInst %v3float %17 Atan2 %14 %15 OpStore %res %16 %19 = OpLoad %v3float %res None OpReturnValue %19 OpFunctionEnd %compute_main = OpFunction %void None %22 %23 = OpLabel %24 = OpFunctionCall %v3float %atan2_a70d0d %25 = OpAccessChain %_ptr_StorageBuffer_v3float %1 %uint_0 OpStore %25 %24 None OpReturn OpFunctionEnd ; ; vertex_main ; ; SPIR-V ; Version: 1.3 ; Generator: Google Tint Compiler; 1 ; Bound: 47 ; Schema: 0 OpCapability Shader %21 = OpExtInstImport "GLSL.std.450" OpMemoryModel Logical GLSL450 OpEntryPoint Vertex %vertex_main "vertex_main" %vertex_main_position_Output %vertex_main_loc0_Output %vertex_main___point_size_Output OpName %vertex_main_position_Output "vertex_main_position_Output" OpName %vertex_main_loc0_Output "vertex_main_loc0_Output" OpName %vertex_main___point_size_Output "vertex_main___point_size_Output" OpName %atan2_a70d0d "atan2_a70d0d" OpName %arg_0 "arg_0" OpName %arg_1 "arg_1" OpName %res "res" OpName %vertex_main_inner "vertex_main_inner" OpMemberName %VertexOutput 0 "pos" OpMemberName %VertexOutput 1 "prevent_dce" OpName %VertexOutput "VertexOutput" OpName %out "out" OpName %vertex_main "vertex_main" OpDecorate %vertex_main_position_Output BuiltIn Position OpDecorate %vertex_main_loc0_Output Location 0 OpDecorate %vertex_main_loc0_Output Flat OpDecorate %vertex_main___point_size_Output BuiltIn PointSize %float = OpTypeFloat 32 %v4float = OpTypeVector %float 4 %_ptr_Output_v4float = OpTypePointer Output %v4float %vertex_main_position_Output = OpVariable %_ptr_Output_v4float Output %v3float = OpTypeVector %float 3 %_ptr_Output_v3float = OpTypePointer Output %v3float %vertex_main_loc0_Output = OpVariable %_ptr_Output_v3float Output %_ptr_Output_float = OpTypePointer Output %float %vertex_main___point_size_Output = OpVariable %_ptr_Output_float Output %11 = OpTypeFunction %v3float %_ptr_Function_v3float = OpTypePointer Function %v3float %float_1 = OpConstant %float 1 %15 = OpConstantComposite %v3float %float_1 %float_1 %float_1 %VertexOutput = OpTypeStruct %v4float %v3float %26 = OpTypeFunction %VertexOutput %_ptr_Function_VertexOutput = OpTypePointer Function %VertexOutput %30 = OpConstantNull %VertexOutput %_ptr_Function_v4float = OpTypePointer Function %v4float %uint = OpTypeInt 32 0 %uint_0 = OpConstant %uint 0 %35 = OpConstantNull %v4float %uint_1 = OpConstant %uint 1 %void = OpTypeVoid %42 = OpTypeFunction %void %atan2_a70d0d = OpFunction %v3float None %11 %12 = OpLabel %arg_0 = OpVariable %_ptr_Function_v3float Function %arg_1 = OpVariable %_ptr_Function_v3float Function %res = OpVariable %_ptr_Function_v3float Function OpStore %arg_0 %15 OpStore %arg_1 %15 %18 = OpLoad %v3float %arg_0 None %19 = OpLoad %v3float %arg_1 None %20 = OpExtInst %v3float %21 Atan2 %18 %19 OpStore %res %20 %23 = OpLoad %v3float %res None OpReturnValue %23 OpFunctionEnd %vertex_main_inner = OpFunction %VertexOutput None %26 %27 = OpLabel %out = OpVariable %_ptr_Function_VertexOutput Function %30 %31 = OpAccessChain %_ptr_Function_v4float %out %uint_0 OpStore %31 %35 None %36 = OpAccessChain %_ptr_Function_v3float %out %uint_1 %38 = OpFunctionCall %v3float %atan2_a70d0d OpStore %36 %38 None %39 = OpLoad %VertexOutput %out None OpReturnValue %39 OpFunctionEnd %vertex_main = OpFunction %void None %42 %43 = OpLabel %44 = OpFunctionCall %VertexOutput %vertex_main_inner %45 = OpCompositeExtract %v4float %44 0 OpStore %vertex_main_position_Output %45 None %46 = OpCompositeExtract %v3float %44 1 OpStore %vertex_main_loc0_Output %46 None OpStore %vertex_main___point_size_Output %float_1 None OpReturn OpFunctionEnd