wgpu/naga/tests/out/spv/interpolate.spvasm

279 lines
7.6 KiB
Plaintext

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