; SPIR-V
; Version: 1.0
; Generator: rspirv
; Bound: 111
OpCapability Shader
OpCapability SampleRateShading
%1 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
OpEntryPoint Vertex %26 "vert_main" %10 %12 %14 %16 %18 %20 %21 %22 %23
OpEntryPoint Fragment %109 "frag_main" %88 %91 %94 %97 %100 %103 %105 %107
OpExecutionMode %109 OriginUpperLeft
OpMemberName %8 0 "position"
OpMemberName %8 1 "_flat"
OpMemberName %8 2 "_linear"
OpMemberName %8 3 "linear_centroid"
OpMemberName %8 4 "linear_sample"
OpMemberName %8 5 "perspective"
OpMemberName %8 6 "perspective_centroid"
OpMemberName %8 7 "perspective_sample"
OpName %8 "FragmentInput"
OpName %10 "position"
OpName %12 "_flat"
OpName %14 "_linear"
OpName %16 "linear_centroid"
OpName %18 "linear_sample"
OpName %20 "perspective"
OpName %21 "perspective_centroid"
OpName %22 "perspective_sample"
OpName %26 "vert_main"
OpName %49 "out"
OpName %88 "position"
OpName %91 "_flat"
OpName %94 "_linear"
OpName %97 "linear_centroid"
OpName %100 "linear_sample"
OpName %103 "perspective"
OpName %105 "perspective_centroid"
OpName %107 "perspective_sample"
OpName %109 "frag_main"
OpMemberDecorate %8 0 Offset 0
OpMemberDecorate %8 1 Offset 16
OpMemberDecorate %8 2 Offset 20
OpMemberDecorate %8 3 Offset 24
OpMemberDecorate %8 4 Offset 32
OpMemberDecorate %8 5 Offset 48
OpMemberDecorate %8 6 Offset 64
OpMemberDecorate %8 7 Offset 68
OpDecorate %10 BuiltIn Position
OpDecorate %12 Location 0
OpDecorate %12 Flat
OpDecorate %14 Location 1
OpDecorate %14 NoPerspective
OpDecorate %16 Location 2
OpDecorate %16 NoPerspective
OpDecorate %16 Centroid
OpDecorate %18 Location 3
OpDecorate %18 NoPerspective
OpDecorate %18 Sample
OpDecorate %20 Location 4
OpDecorate %21 Location 5
OpDecorate %21 Centroid
OpDecorate %22 Location 6
OpDecorate %22 Sample
OpDecorate %23 BuiltIn PointSize
OpDecorate %88 BuiltIn FragCoord
OpDecorate %91 Location 0
OpDecorate %91 Flat
OpDecorate %94 Location 1
OpDecorate %94 NoPerspective
OpDecorate %97 Location 2
OpDecorate %97 NoPerspective
OpDecorate %97 Centroid
OpDecorate %100 Location 3
OpDecorate %100 NoPerspective
OpDecorate %100 Sample
OpDecorate %103 Location 4
OpDecorate %105 Location 5
OpDecorate %105 Centroid
OpDecorate %107 Location 6
OpDecorate %107 Sample
%2 = OpTypeVoid
%4 = OpTypeFloat 32
%3 = OpTypeVector %4 4
%5 = OpTypeInt 32 0
%6 = OpTypeVector %4 2
%7 = OpTypeVector %4 3
%8 = OpTypeStruct %3 %5 %4 %6 %7 %3 %4 %4
%11 = OpTypePointer Output %3
%10 = OpVariable  %11  Output
%13 = OpTypePointer Output %5
%12 = OpVariable  %13  Output
%15 = OpTypePointer Output %4
%14 = OpVariable  %15  Output
%17 = OpTypePointer Output %6
%16 = OpVariable  %17  Output
%19 = OpTypePointer Output %7
%18 = OpVariable  %19  Output
%20 = OpVariable  %11  Output
%21 = OpVariable  %15  Output
%22 = OpVariable  %15  Output
%24 = OpTypePointer Output %4
%23 = OpVariable  %24  Output
%25 = OpConstant  %4  1.0
%27 = OpTypeFunction %2
%28 = OpConstant  %4  2.0
%29 = OpConstant  %4  4.0
%30 = OpConstant  %4  5.0
%31 = OpConstant  %4  6.0
%32 = OpConstantComposite  %3  %28 %29 %30 %31
%33 = OpConstant  %5  8
%34 = OpConstant  %4  27.0
%35 = OpConstant  %4  64.0
%36 = OpConstant  %4  125.0
%37 = OpConstantComposite  %6  %35 %36
%38 = OpConstant  %4  216.0
%39 = OpConstant  %4  343.0
%40 = OpConstant  %4  512.0
%41 = OpConstantComposite  %7  %38 %39 %40
%42 = OpConstant  %4  729.0
%43 = OpConstant  %4  1000.0
%44 = OpConstant  %4  1331.0
%45 = OpConstant  %4  1728.0
%46 = OpConstantComposite  %3  %42 %43 %44 %45
%47 = OpConstant  %4  2197.0
%48 = OpConstant  %4  2744.0
%50 = OpTypePointer Function %8
%51 = OpConstantNull  %8
%53 = OpTypePointer Function %3
%54 = OpConstant  %5  0
%56 = OpTypePointer Function %5
%57 = OpConstant  %5  1
%59 = OpTypePointer Function %4
%60 = OpConstant  %5  2
%62 = OpTypePointer Function %6
%63 = OpConstant  %5  3
%65 = OpTypePointer Function %7
%66 = OpConstant  %5  4
%68 = OpConstant  %5  5
%70 = OpConstant  %5  6
%72 = OpConstant  %5  7
%89 = OpTypePointer Input %3
%88 = OpVariable  %89  Input
%92 = OpTypePointer Input %5
%91 = OpVariable  %92  Input
%95 = OpTypePointer Input %4
%94 = OpVariable  %95  Input
%98 = OpTypePointer Input %6
%97 = OpVariable  %98  Input
%101 = OpTypePointer Input %7
%100 = OpVariable  %101  Input
%103 = OpVariable  %89  Input
%105 = OpVariable  %95  Input
%107 = OpVariable  %95  Input
%26 = OpFunction  %2  None %27
%9 = OpLabel
%49 = OpVariable  %50  Function %51
OpStore %23 %25
OpBranch %52
%52 = OpLabel
%55 = OpAccessChain  %53  %49 %54
OpStore %55 %32
%58 = OpAccessChain  %56  %49 %57
OpStore %58 %33
%61 = OpAccessChain  %59  %49 %60
OpStore %61 %34
%64 = OpAccessChain  %62  %49 %63
OpStore %64 %37
%67 = OpAccessChain  %65  %49 %66
OpStore %67 %41
%69 = OpAccessChain  %53  %49 %68
OpStore %69 %46
%71 = OpAccessChain  %59  %49 %70
OpStore %71 %47
%73 = OpAccessChain  %59  %49 %72
OpStore %73 %48
%74 = OpLoad  %8  %49
%75 = OpCompositeExtract  %3  %74 0
OpStore %10 %75
%76 = OpAccessChain  %24  %10 %57
%77 = OpLoad  %4  %76
%78 = OpFNegate  %4  %77
OpStore %76 %78
%79 = OpCompositeExtract  %5  %74 1
OpStore %12 %79
%80 = OpCompositeExtract  %4  %74 2
OpStore %14 %80
%81 = OpCompositeExtract  %6  %74 3
OpStore %16 %81
%82 = OpCompositeExtract  %7  %74 4
OpStore %18 %82
%83 = OpCompositeExtract  %3  %74 5
OpStore %20 %83
%84 = OpCompositeExtract  %4  %74 6
OpStore %21 %84
%85 = OpCompositeExtract  %4  %74 7
OpStore %22 %85
OpReturn
OpFunctionEnd
%109 = OpFunction  %2  None %27
%86 = OpLabel
%90 = OpLoad  %3  %88
%93 = OpLoad  %5  %91
%96 = OpLoad  %4  %94
%99 = OpLoad  %6  %97
%102 = OpLoad  %7  %100
%104 = OpLoad  %3  %103
%106 = OpLoad  %4  %105
%108 = OpLoad  %4  %107
%87 = OpCompositeConstruct  %8  %90 %93 %96 %99 %102 %104 %106 %108
OpBranch %110
%110 = OpLabel
OpReturn
OpFunctionEnd