aboutsummaryrefslogtreecommitdiff
path: root/Test/baseResults/spv.nv.hitobject-allops.rgen.out
blob: d395500a8c2f95f64f9974acf7985754460bed10 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
spv.nv.hitobject-allops.rgen
// Module Version 10400
// Generated by (magic number): 8000b
// Id's are bound by 117

                              Capability RayTracingKHR
                              Capability ShaderInvocationReorderNV
                              Extension  "SPV_KHR_ray_tracing"
                              Extension  "SPV_NV_shader_invocation_reorder"
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint RayGenerationKHR 4  "main" 9 14 22 25 36 42 48 52 53 64
                              Source GLSL 460
                              SourceExtension  "GL_EXT_ray_tracing"
                              SourceExtension  "GL_NV_ray_tracing_motion_blur"
                              SourceExtension  "GL_NV_shader_invocation_reorder"
                              Name 4  "main"
                              Name 9  "attr"
                              Name 12  "hBlock"
                              MemberName 12(hBlock) 0  "attrval"
                              Name 14  ""
                              Name 22  "hObj"
                              Name 25  "as"
                              Name 36  "payload"
                              Name 40  "pBlock"
                              MemberName 40(pBlock) 0  "val1"
                              MemberName 40(pBlock) 1  "val2"
                              Name 42  ""
                              Name 48  "hObjHit"
                              Name 52  "hObjNop"
                              Name 53  "hObjMiss"
                              Name 62  "block"
                              MemberName 62(block) 0  "op"
                              Name 64  ""
                              Name 79  "tmin"
                              Name 81  "tmax"
                              Name 84  "orig"
                              Name 86  "dir"
                              Name 88  "oorig"
                              Name 90  "odir"
                              Name 94  "otw"
                              Name 96  "wto"
                              Name 99  "cid"
                              Name 101  "iid"
                              Name 103  "pid"
                              Name 105  "gid"
                              Name 108  "hkind"
                              Name 112  "handle"
                              Name 114  "rid"
                              Decorate 12(hBlock) Block
                              Decorate 25(as) DescriptorSet 0
                              Decorate 25(as) Binding 0
                              Decorate 40(pBlock) Block
                              MemberDecorate 62(block) 0 Offset 0
                              Decorate 62(block) Block
                              Decorate 64 DescriptorSet 0
                              Decorate 64 Binding 1
               2:             TypeVoid
               3:             TypeFunction 2
               6:             TypeFloat 32
               7:             TypeVector 6(float) 2
               8:             TypePointer HitObjectAttributeNV 7(fvec2)
         9(attr):      8(ptr) Variable HitObjectAttributeNV
              10:    6(float) Constant 1065353216
              11:    7(fvec2) ConstantComposite 10 10
      12(hBlock):             TypeStruct 6(float)
              13:             TypePointer HitObjectAttributeNV 12(hBlock)
              14:     13(ptr) Variable HitObjectAttributeNV
              15:             TypeInt 32 1
              16:     15(int) Constant 0
              17:    6(float) Constant 1073741824
              18:             TypePointer HitObjectAttributeNV 6(float)
              20:             TypeHitObjectNV
              21:             TypePointer Private 20
        22(hObj):     21(ptr) Variable Private
              23:             TypeAccelerationStructureKHR
              24:             TypePointer UniformConstant 23
          25(as):     24(ptr) Variable UniformConstant
              27:             TypeInt 32 0
              28:     27(int) Constant 1
              29:             TypeVector 6(float) 3
              30:    6(float) Constant 1056964608
              31:   29(fvec3) ConstantComposite 30 30 30
              32:   29(fvec3) ConstantComposite 10 10 10
              33:     15(int) Constant 1
              34:             TypeVector 6(float) 4
              35:             TypePointer RayPayloadKHR 34(fvec4)
     36(payload):     35(ptr) Variable RayPayloadKHR
              38:    6(float) Constant 1092616192
              39:     15(int) Constant 2
      40(pBlock):             TypeStruct 7(fvec2) 7(fvec2)
              41:             TypePointer RayPayloadKHR 40(pBlock)
              42:     41(ptr) Variable RayPayloadKHR
              44:     27(int) Constant 2
              45:   29(fvec3) ConstantComposite 17 17 17
              47:    6(float) Constant 1082130432
     48(hObjHit):     21(ptr) Variable Private
              50:     15(int) Constant 3
     52(hObjNop):     21(ptr) Variable Private
    53(hObjMiss):     21(ptr) Variable Private
              54:    6(float) Constant 1069547520
              55:   29(fvec3) ConstantComposite 54 54 54
              56:    6(float) Constant 1084227584
              57:    6(float) Constant 1090519040
              58:             TypeBool
       62(block):             TypeStruct 6(float)
              63:             TypePointer StorageBuffer 62(block)
              64:     63(ptr) Variable StorageBuffer
              65:             TypePointer StorageBuffer 6(float)
              76:    6(float) Constant 1077936128
              78:             TypePointer Function 6(float)
              83:             TypePointer Function 29(fvec3)
              92:             TypeMatrix 29(fvec3) 4
              93:             TypePointer Function 92
              98:             TypePointer Function 15(int)
             107:             TypePointer Function 27(int)
             110:             TypeVector 27(int) 2
             111:             TypePointer Function 110(ivec2)
             116:     27(int) Constant 4
         4(main):           2 Function None 3
               5:             Label
        79(tmin):     78(ptr) Variable Function
        81(tmax):     78(ptr) Variable Function
        84(orig):     83(ptr) Variable Function
         86(dir):     83(ptr) Variable Function
       88(oorig):     83(ptr) Variable Function
        90(odir):     83(ptr) Variable Function
         94(otw):     93(ptr) Variable Function
         96(wto):     93(ptr) Variable Function
         99(cid):     98(ptr) Variable Function
        101(iid):     98(ptr) Variable Function
        103(pid):     98(ptr) Variable Function
        105(gid):     98(ptr) Variable Function
      108(hkind):    107(ptr) Variable Function
     112(handle):    111(ptr) Variable Function
        114(rid):    107(ptr) Variable Function
                              Store 9(attr) 11
              19:     18(ptr) AccessChain 14 16
                              Store 19 17
              26:          23 Load 25(as)
                              HitObjectTraceRayNV 22(hObj) 26 28 28 28 28 28 31 30 32 10 36(payload)
              37:          23 Load 25(as)
                              HitObjectTraceRayMotionNV 22(hObj) 37 28 28 28 28 28 31 30 32 10 38 42
              43:          23 Load 25(as)
                              HitObjectRecordHitNV 22(hObj) 43 33 33 33 44 44 44 32 10 45 17 9(attr)
              46:          23 Load 25(as)
                              HitObjectRecordHitMotionNV 22(hObj) 46 33 33 33 44 44 44 32 10 45 17 47 9(attr)
              49:          23 Load 25(as)
                              HitObjectRecordHitWithIndexNV 48(hObjHit) 49 33 33 33 44 44 32 10 45 17 14
              51:          23 Load 25(as)
                              HitObjectRecordHitWithIndexMotionNV 48(hObjHit) 51 33 33 33 44 44 32 10 45 17 47 14
                              HitObjectRecordEmptyNV 52(hObjNop)
                              HitObjectRecordMissNV 53(hObjMiss) 28 31 17 55 56
                              HitObjectRecordMissMotionNV 53(hObjMiss) 28 31 17 55 56 57
                              HitObjectExecuteShaderNV 48(hObjHit) 36(payload)
              59:    58(bool) HitObjectIsHitNV 22(hObj)
                              SelectionMerge 61 None
                              BranchConditional 59 60 67
              60:               Label
              66:     65(ptr)   AccessChain 64 16
                                Store 66 10
                                Branch 61
              67:               Label
              68:    58(bool)   HitObjectIsMissNV 22(hObj)
                                SelectionMerge 70 None
                                BranchConditional 68 69 72
              69:                 Label
              71:     65(ptr)     AccessChain 64 16
                                  Store 71 17
                                  Branch 70
              72:                 Label
              73:    58(bool)     HitObjectIsEmptyNV 22(hObj)
                                  SelectionMerge 75 None
                                  BranchConditional 73 74 75
              74:                   Label
              77:     65(ptr)       AccessChain 64 16
                                    Store 77 76
                                    Branch 75
              75:                 Label
                                  Branch 70
              70:               Label
                                Branch 61
              61:             Label
              80:    6(float) HitObjectGetRayTMinNV 48(hObjHit)
                              Store 79(tmin) 80
              82:    6(float) HitObjectGetRayTMaxNV 48(hObjHit)
                              Store 81(tmax) 82
              85:   29(fvec3) HitObjectGetWorldRayOriginNV 48(hObjHit)
                              Store 84(orig) 85
              87:   29(fvec3) HitObjectGetWorldRayDirectionNV 48(hObjHit)
                              Store 86(dir) 87
              89:   29(fvec3) HitObjectGetObjectRayOriginNV 48(hObjHit)
                              Store 88(oorig) 89
              91:   29(fvec3) HitObjectGetObjectRayDirectionNV 48(hObjHit)
                              Store 90(odir) 91
              95:          92 HitObjectGetObjectToWorldNV 48(hObjHit)
                              Store 94(otw) 95
              97:          92 HitObjectGetWorldToObjectNV 48(hObjHit)
                              Store 96(wto) 97
             100:     15(int) HitObjectGetInstanceCustomIndexNV 53(hObjMiss)
                              Store 99(cid) 100
             102:     15(int) HitObjectGetInstanceIdNV 52(hObjNop)
                              Store 101(iid) 102
             104:     15(int) HitObjectGetPrimitiveIndexNV 22(hObj)
                              Store 103(pid) 104
             106:     15(int) HitObjectGetGeometryIndexNV 22(hObj)
                              Store 105(gid) 106
             109:     27(int) HitObjectGetFrontFaceNV 22(hObj)
                              Store 108(hkind) 109
                              HitObjectGetAttributesNV 22(hObj) 9(attr)
             113:  110(ivec2) HitObjectGetShaderRecordBufferHandleNV 22(hObj)
                              Store 112(handle) 113
             115:     27(int) HitObjectGetShaderBindingTableRecordIndexNV 22(hObj)
                              Store 114(rid) 115
                              ReorderThreadWithHintNV 116 116
                              ReorderThreadWithHitObjectNV 48(hObjHit)
                              ReorderThreadWithHitObjectNV 48(hObjHit) 116 44
                              Return
                              FunctionEnd