1spv.nv.dmm-allops.rgen
2// Module Version 10400
3// Generated by (magic number): 8000b
4// Id's are bound by 66
5
6                              Capability RayTracingKHR
7                              Capability DisplacementMicromapNV
8                              Capability CapabilityRayTracingDisplacementMicromapNV
9                              Extension  "SPV_KHR_ray_tracing"
10                              Extension  "SPV_NV_displacement_micromap"
11               1:             ExtInstImport  "GLSL.std.450"
12                              MemoryModel Logical GLSL450
13                              EntryPoint RayGenerationKHR 4  "main" 12 17 58 61
14                              Source GLSL 460
15                              SourceExtension  "GL_EXT_ray_query"
16                              SourceExtension  "GL_NV_displacement_micromap"
17                              Name 4  "main"
18                              Name 10  "block"
19                              MemberName 10(block) 0  "op_pos"
20                              MemberName 10(block) 1  "op_bary"
21                              MemberName 10(block) 2  "op_hitmask"
22                              Name 12  ""
23                              Name 17  "as"
24                              Name 58  "gl_HitKindFrontFacingMicroTriangleNV"
25                              Name 61  "gl_HitKindBackFacingMicroTriangleNV"
26                              MemberDecorate 10(block) 0 Offset 0
27                              MemberDecorate 10(block) 1 Offset 16
28                              MemberDecorate 10(block) 2 Offset 24
29                              Decorate 10(block) Block
30                              Decorate 12 DescriptorSet 0
31                              Decorate 12 Binding 0
32                              Decorate 17(as) DescriptorSet 0
33                              Decorate 17(as) Binding 1
34                              Decorate 58(gl_HitKindFrontFacingMicroTriangleNV) BuiltIn HitKindFrontFacingMicroTriangleNV
35                              Decorate 61(gl_HitKindBackFacingMicroTriangleNV) BuiltIn HitKindBackFacingMicroTriangleNV
36               2:             TypeVoid
37               3:             TypeFunction 2
38               6:             TypeFloat 32
39               7:             TypeVector 6(float) 3
40               8:             TypeVector 6(float) 2
41               9:             TypeInt 32 0
42       10(block):             TypeStruct 7(fvec3) 8(fvec2) 9(int)
43              11:             TypePointer StorageBuffer 10(block)
44              12:     11(ptr) Variable StorageBuffer
45              13:             TypeInt 32 1
46              14:     13(int) Constant 0
47              15:             TypeAccelerationStructureKHR
48              16:             TypePointer UniformConstant 15
49          17(as):     16(ptr) Variable UniformConstant
50              19:     13(int) Constant 1
51              20:             TypeVector 13(int) 2
52              21:   20(ivec2) ConstantComposite 14 14
53              23:             TypePointer StorageBuffer 7(fvec3)
54              26:   20(ivec2) ConstantComposite 14 19
55              33:   20(ivec2) ConstantComposite 19 14
56              41:             TypePointer StorageBuffer 8(fvec2)
57              55:     13(int) Constant 2
58              56:      9(int) Constant 255
59              57:             TypePointer Input 9(int)
6058(gl_HitKindFrontFacingMicroTriangleNV):     57(ptr) Variable Input
6161(gl_HitKindBackFacingMicroTriangleNV):     57(ptr) Variable Input
62              64:             TypePointer StorageBuffer 9(int)
63         4(main):           2 Function None 3
64               5:             Label
65              18:          15 Load 17(as)
66              22:    7(fvec3) FetchMicroTriangleVertexPositionNV 18 19 19 19 21
67              24:     23(ptr) AccessChain 12 14
68                              Store 24 22
69              25:          15 Load 17(as)
70              27:    7(fvec3) FetchMicroTriangleVertexPositionNV 25 19 19 19 26
71              28:     23(ptr) AccessChain 12 14
72              29:    7(fvec3) Load 28
73              30:    7(fvec3) FAdd 29 27
74              31:     23(ptr) AccessChain 12 14
75                              Store 31 30
76              32:          15 Load 17(as)
77              34:    7(fvec3) FetchMicroTriangleVertexPositionNV 32 19 19 19 33
78              35:     23(ptr) AccessChain 12 14
79              36:    7(fvec3) Load 35
80              37:    7(fvec3) FAdd 36 34
81              38:     23(ptr) AccessChain 12 14
82                              Store 38 37
83              39:          15 Load 17(as)
84              40:    8(fvec2) FetchMicroTriangleVertexBarycentricNV 39 19 19 19 21
85              42:     41(ptr) AccessChain 12 19
86                              Store 42 40
87              43:          15 Load 17(as)
88              44:    8(fvec2) FetchMicroTriangleVertexBarycentricNV 43 19 19 19 26
89              45:     41(ptr) AccessChain 12 19
90              46:    8(fvec2) Load 45
91              47:    8(fvec2) FAdd 46 44
92              48:     41(ptr) AccessChain 12 19
93                              Store 48 47
94              49:          15 Load 17(as)
95              50:    8(fvec2) FetchMicroTriangleVertexBarycentricNV 49 19 19 19 33
96              51:     41(ptr) AccessChain 12 19
97              52:    8(fvec2) Load 51
98              53:    8(fvec2) FAdd 52 50
99              54:     41(ptr) AccessChain 12 19
100                              Store 54 53
101              59:      9(int) Load 58(gl_HitKindFrontFacingMicroTriangleNV)
102              60:      9(int) BitwiseOr 56 59
103              62:      9(int) Load 61(gl_HitKindBackFacingMicroTriangleNV)
104              63:      9(int) BitwiseOr 60 62
105              65:     64(ptr) AccessChain 12 55
106                              Store 65 63
107                              Return
108                              FunctionEnd
109