hlsl.flattenOpaqueInit.vert
// Module Version 10000
// Generated by (magic number): 80008
// Id's are bound by 134

                              Capability Shader
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Vertex 4  "main" 80
                              Source HLSL 500
                              Name 4  "main"
                              Name 43  "g_tInputTexture_sampler"
                              Name 47  "g_tInputTexture"
                              Name 80  "@entryPointOutput"
                              Decorate 43(g_tInputTexture_sampler) DescriptorSet 0
                              Decorate 43(g_tInputTexture_sampler) Binding 0
                              Decorate 47(g_tInputTexture) DescriptorSet 0
                              Decorate 47(g_tInputTexture) Binding 0
                              Decorate 80(@entryPointOutput) Location 0
               2:             TypeVoid
               3:             TypeFunction 2
               6:             TypeSampler
               7:             TypeFloat 32
               8:             TypeImage 7(float) 2D sampled format:Unknown
              11:             TypeVector 7(float) 4
              31:             TypeSampledImage 8
              33:             TypeVector 7(float) 2
              34:    7(float) Constant 1050253722
              35:    7(float) Constant 1053609165
              36:   33(fvec2) ConstantComposite 34 35
              37:    7(float) Constant 0
              42:             TypePointer UniformConstant 6
43(g_tInputTexture_sampler):     42(ptr) Variable UniformConstant
              46:             TypePointer UniformConstant 8
47(g_tInputTexture):     46(ptr) Variable UniformConstant
              79:             TypePointer Output 11(fvec4)
80(@entryPointOutput):     79(ptr) Variable Output
         4(main):           2 Function None 3
               5:             Label
              90:           6 Load 43(g_tInputTexture_sampler)
              91:           8 Load 47(g_tInputTexture)
             111:          31 SampledImage 91 90
             112:   11(fvec4) ImageSampleExplicitLod 111 36 Lod 37
             115:           6 Load 43(g_tInputTexture_sampler)
             117:           8 Load 47(g_tInputTexture)
             125:          31 SampledImage 117 115
             126:   11(fvec4) ImageSampleExplicitLod 125 36 Lod 37
              99:   11(fvec4) FAdd 112 126
             132:          31 SampledImage 91 90
             133:   11(fvec4) ImageSampleExplicitLod 132 36 Lod 37
             104:   11(fvec4) FAdd 99 133
                              Store 80(@entryPointOutput) 104
                              Return
                              FunctionEnd
