; SPIR-V
; Version: 1.0
; Generator: rspirv
; Bound: 50
OpCapability Shader
OpCapability SampleRateShading
%1 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
OpEntryPoint Fragment %35 "fragment" %16 %19 %22 %25 %28 %30 %32 %34
OpExecutionMode %35 OriginUpperLeft
OpExecutionMode %35 DepthReplacing
OpMemberDecorate %5 0 Offset 0
OpMemberDecorate %5 1 Offset 16
OpMemberDecorate %7 0 Offset 0
OpMemberDecorate %7 1 Offset 4
OpMemberDecorate %7 2 Offset 8
OpDecorate %9 ArrayStride 4
OpMemberDecorate %12 0 Offset 0
OpMemberDecorate %13 0 Offset 0
OpDecorate %16 Invariant
OpDecorate %16 BuiltIn FragCoord
OpDecorate %19 Location 1
OpDecorate %22 BuiltIn FrontFacing
OpDecorate %22 Flat
OpDecorate %25 BuiltIn SampleId
OpDecorate %25 Flat
OpDecorate %28 BuiltIn SampleMask
OpDecorate %28 Flat
OpDecorate %30 BuiltIn FragDepth
OpDecorate %32 BuiltIn SampleMask
OpDecorate %34 Location 0
%2 = OpTypeVoid
%3 = OpTypeFloat 32
%4 = OpTypeVector %3 4
%5 = OpTypeStruct %4 %3
%6 = OpTypeInt 32 0
%7 = OpTypeStruct %3 %6 %3
%8 = OpTypeBool
%10 = OpConstant  %6  1
%9 = OpTypeArray %6 %10
%11 = OpTypeVector %6 3
%12 = OpTypeStruct %6
%13 = OpTypeStruct %6
%17 = OpTypePointer Input %4
%16 = OpVariable  %17  Input
%20 = OpTypePointer Input %3
%19 = OpVariable  %20  Input
%23 = OpTypePointer Input %8
%22 = OpVariable  %23  Input
%26 = OpTypePointer Input %6
%25 = OpVariable  %26  Input
%28 = OpVariable  %26  Input
%31 = OpTypePointer Output %3
%30 = OpVariable  %31  Output
%33 = OpTypePointer Output %6
%32 = OpVariable  %33  Output
%34 = OpVariable  %31  Output
%36 = OpTypeFunction %2
%37 = OpConstant  %3  0.0
%38 = OpConstant  %3  1.0
%35 = OpFunction  %2  None %36
%14 = OpLabel
%18 = OpLoad  %4  %16
%21 = OpLoad  %3  %19
%15 = OpCompositeConstruct  %5  %18 %21
%24 = OpLoad  %8  %22
%27 = OpLoad  %6  %25
%29 = OpLoad  %6  %28
OpBranch %39
%39 = OpLabel
%40 = OpShiftLeftLogical  %6  %10 %27
%41 = OpBitwiseAnd  %6  %29 %40
%42 = OpSelect  %3  %24 %38 %37
%43 = OpCompositeExtract  %3  %15 1
%44 = OpCompositeConstruct  %7  %43 %41 %42
%45 = OpCompositeExtract  %3  %44 0
OpStore %30 %45
%46 = OpLoad  %3  %30
%47 = OpExtInst  %3  %1 FClamp %46 %37 %38
OpStore %30 %47
%48 = OpCompositeExtract  %6  %44 1
OpStore %32 %48
%49 = OpCompositeExtract  %3  %44 2
OpStore %34 %49
OpReturn
OpFunctionEnd