; SPIR-V ; Version: 1.3 ; Generator: Google rspirv; 0 ; Bound: 55 ; Schema: 0 OpCapability Shader OpCapability VulkanMemoryModel OpCapability VariablePointers OpExtension "SPV_KHR_vulkan_memory_model" OpMemoryModel Logical Vulkan OpEntryPoint Fragment %1 "main" %2 %3 OpExecutionMode %1 OriginUpperLeft OpName %Vec3 "Vec3" OpMemberName %Vec3 0 "0" OpMemberName %Vec3 1 "1" OpMemberName %Vec3 2 "2" OpName %sky "sky" OpModuleProcessed "Linked by rspirv-linker" OpMemberDecorate %Vec3 0 Offset 0 OpMemberDecorate %Vec3 1 Offset 4 OpMemberDecorate %Vec3 2 Offset 8 OpDecorate %2 Location 0 OpDecorate %3 Location 0 %float = OpTypeFloat 32 %v4float = OpTypeVector %float 4 %void = OpTypeVoid %_ptr_Input_v4float = OpTypePointer Input %v4float %_ptr_Output_v4float = OpTypePointer Output %v4float %Vec3 = OpTypeStruct %float %float %float %_ptr_Function_Vec3 = OpTypePointer Function %Vec3 %12 = OpTypeFunction %void %_ptr_Function_Vec3 %_ptr_Function_Vec3 %_ptr_Function_Vec3 %uint = OpTypeInt 32 0 %14 = OpTypeFunction %void %2 = OpVariable %_ptr_Input_v4float Input %3 = OpVariable %_ptr_Output_v4float Output %_ptr_Function_float = OpTypePointer Function %float %uint_0 = OpConstant %uint 0 %uint_1 = OpConstant %uint 1 %uint_2 = OpConstant %uint 2 %float_1 = OpConstant %float 1 %20 = OpUndef %Vec3 %21 = OpUndef %v4float %float_0 = OpConstant %float 0 %float_n1 = OpConstant %float -1 %sky = OpFunction %void None %12 %24 = OpFunctionParameter %_ptr_Function_Vec3 %25 = OpFunctionParameter %_ptr_Function_Vec3 %26 = OpFunctionParameter %_ptr_Function_Vec3 %27 = OpLabel %28 = OpAccessChain %_ptr_Function_float %24 %uint_0 OpStore %28 %float_1 %29 = OpAccessChain %_ptr_Function_float %24 %uint_1 OpStore %29 %float_1 %30 = OpAccessChain %_ptr_Function_float %24 %uint_2 OpStore %30 %float_1 OpReturn OpFunctionEnd %1 = OpFunction %void None %14 %31 = OpLabel %32 = OpVariable %_ptr_Function_Vec3 Function %20 %33 = OpVariable %_ptr_Function_Vec3 Function %20 %34 = OpVariable %_ptr_Function_Vec3 Function %20 %35 = OpLoad %v4float %2 %36 = OpAccessChain %_ptr_Function_float %33 %uint_0 OpStore %36 %float_0 %37 = OpAccessChain %_ptr_Function_float %33 %uint_1 OpStore %37 %float_1 %38 = OpAccessChain %_ptr_Function_float %33 %uint_2 OpStore %38 %float_0 %39 = OpAccessChain %_ptr_Function_float %34 %uint_0 OpStore %39 %float_0 %40 = OpAccessChain %_ptr_Function_float %34 %uint_1 OpStore %40 %float_n1 %41 = OpAccessChain %_ptr_Function_float %34 %uint_2 OpStore %41 %float_0 %42 = OpFunctionCall %void %sky %32 %33 %34 %43 = OpCompositeExtract %float %35 0 %44 = OpAccessChain %_ptr_Function_float %32 %uint_0 %45 = OpLoad %float %44 %46 = OpFAdd %float %43 %45 %47 = OpAccessChain %_ptr_Function_float %32 %uint_1 %48 = OpLoad %float %47 %49 = OpAccessChain %_ptr_Function_float %32 %uint_2 %50 = OpLoad %float %49 %51 = OpCompositeInsert %v4float %46 %21 0 %52 = OpCompositeInsert %v4float %48 %51 1 %53 = OpCompositeInsert %v4float %50 %52 2 %54 = OpCompositeInsert %v4float %float_0 %53 3 OpStore %3 %54 OpReturn OpFunctionEnd