spv.nv.dmm-allops.mesh
// Module Version 10400
// Generated by (magic number): 8000b
// Id's are bound by 54

                              Capability RayQueryKHR
                              Capability MeshShadingNV
                              Capability DisplacementMicromapNV
                              Extension  "SPV_KHR_ray_query"
                              Extension  "SPV_NV_displacement_micromap"
                              Extension  "SPV_NV_mesh_shader"
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint MeshNV 4  "main" 11 16
                              ExecutionMode 4 LocalSize 1 1 1
                              ExecutionMode 4 OutputVertices 8
                              ExecutionMode 4 OutputPrimitivesNV 16
                              ExecutionMode 4 OutputTrianglesNV
                              Source GLSL 460
                              SourceExtension  "GL_EXT_ray_query"
                              SourceExtension  "GL_NV_displacement_micromap"
                              SourceExtension  "GL_NV_mesh_shader"
                              Name 4  "main"
                              Name 9  "block"
                              MemberName 9(block) 0  "op_pos"
                              MemberName 9(block) 1  "op_bary"
                              Name 11  ""
                              Name 16  "as"
                              MemberDecorate 9(block) 0 Offset 0
                              MemberDecorate 9(block) 1 Offset 16
                              Decorate 9(block) Block
                              Decorate 11 DescriptorSet 0
                              Decorate 11 Binding 0
                              Decorate 16(as) DescriptorSet 0
                              Decorate 16(as) Binding 1
               2:             TypeVoid
               3:             TypeFunction 2
               6:             TypeFloat 32
               7:             TypeVector 6(float) 3
               8:             TypeVector 6(float) 2
        9(block):             TypeStruct 7(fvec3) 8(fvec2)
              10:             TypePointer StorageBuffer 9(block)
              11:     10(ptr) Variable StorageBuffer
              12:             TypeInt 32 1
              13:     12(int) Constant 0
              14:             TypeAccelerationStructureKHR
              15:             TypePointer UniformConstant 14
          16(as):     15(ptr) Variable UniformConstant
              18:     12(int) Constant 1
              19:             TypeVector 12(int) 2
              20:   19(ivec2) ConstantComposite 13 13
              22:             TypePointer StorageBuffer 7(fvec3)
              25:   19(ivec2) ConstantComposite 13 18
              32:   19(ivec2) ConstantComposite 18 13
              40:             TypePointer StorageBuffer 8(fvec2)
         4(main):           2 Function None 3
               5:             Label
              17:          14 Load 16(as)
              21:    7(fvec3) FetchMicroTriangleVertexPositionNV 17 18 18 18 20
              23:     22(ptr) AccessChain 11 13
                              Store 23 21
              24:          14 Load 16(as)
              26:    7(fvec3) FetchMicroTriangleVertexPositionNV 24 18 18 18 25
              27:     22(ptr) AccessChain 11 13
              28:    7(fvec3) Load 27
              29:    7(fvec3) FAdd 28 26
              30:     22(ptr) AccessChain 11 13
                              Store 30 29
              31:          14 Load 16(as)
              33:    7(fvec3) FetchMicroTriangleVertexPositionNV 31 18 18 18 32
              34:     22(ptr) AccessChain 11 13
              35:    7(fvec3) Load 34
              36:    7(fvec3) FAdd 35 33
              37:     22(ptr) AccessChain 11 13
                              Store 37 36
              38:          14 Load 16(as)
              39:    8(fvec2) FetchMicroTriangleVertexBarycentricNV 38 18 18 18 20
              41:     40(ptr) AccessChain 11 18
                              Store 41 39
              42:          14 Load 16(as)
              43:    8(fvec2) FetchMicroTriangleVertexBarycentricNV 42 18 18 18 25
              44:     40(ptr) AccessChain 11 18
              45:    8(fvec2) Load 44
              46:    8(fvec2) FAdd 45 43
              47:     40(ptr) AccessChain 11 18
                              Store 47 46
              48:          14 Load 16(as)
              49:    8(fvec2) FetchMicroTriangleVertexBarycentricNV 48 18 18 18 32
              50:     40(ptr) AccessChain 11 18
              51:    8(fvec2) Load 50
              52:    8(fvec2) FAdd 51 49
              53:     40(ptr) AccessChain 11 18
                              Store 53 52
                              Return
                              FunctionEnd
