xref: /aosp_15_r20/external/angle/third_party/glslang/src/Test/baseResults/spv.nv.hitobject-allops.rgen.out (revision 8975f5c5ed3d1c378011245431ada316dfb6f244)
1spv.nv.hitobject-allops.rgen
2// Module Version 10400
3// Generated by (magic number): 8000b
4// Id's are bound by 117
5
6                              Capability RayTracingKHR
7                              Capability ShaderInvocationReorderNV
8                              Extension  "SPV_KHR_ray_tracing"
9                              Extension  "SPV_NV_shader_invocation_reorder"
10               1:             ExtInstImport  "GLSL.std.450"
11                              MemoryModel Logical GLSL450
12                              EntryPoint RayGenerationKHR 4  "main" 9 14 22 25 36 42 48 52 53 64
13                              Source GLSL 460
14                              SourceExtension  "GL_EXT_ray_tracing"
15                              SourceExtension  "GL_NV_ray_tracing_motion_blur"
16                              SourceExtension  "GL_NV_shader_invocation_reorder"
17                              Name 4  "main"
18                              Name 9  "attr"
19                              Name 12  "hBlock"
20                              MemberName 12(hBlock) 0  "attrval"
21                              Name 14  ""
22                              Name 22  "hObj"
23                              Name 25  "as"
24                              Name 36  "payload"
25                              Name 40  "pBlock"
26                              MemberName 40(pBlock) 0  "val1"
27                              MemberName 40(pBlock) 1  "val2"
28                              Name 42  ""
29                              Name 48  "hObjHit"
30                              Name 52  "hObjNop"
31                              Name 53  "hObjMiss"
32                              Name 62  "block"
33                              MemberName 62(block) 0  "op"
34                              Name 64  ""
35                              Name 79  "tmin"
36                              Name 81  "tmax"
37                              Name 84  "orig"
38                              Name 86  "dir"
39                              Name 88  "oorig"
40                              Name 90  "odir"
41                              Name 94  "otw"
42                              Name 96  "wto"
43                              Name 99  "cid"
44                              Name 101  "iid"
45                              Name 103  "pid"
46                              Name 105  "gid"
47                              Name 108  "hkind"
48                              Name 112  "handle"
49                              Name 114  "rid"
50                              Decorate 12(hBlock) Block
51                              Decorate 25(as) Binding 0
52                              Decorate 25(as) DescriptorSet 0
53                              Decorate 40(pBlock) Block
54                              Decorate 62(block) Block
55                              MemberDecorate 62(block) 0 Offset 0
56                              Decorate 64 Binding 1
57                              Decorate 64 DescriptorSet 0
58               2:             TypeVoid
59               3:             TypeFunction 2
60               6:             TypeFloat 32
61               7:             TypeVector 6(float) 2
62               8:             TypePointer HitObjectAttributeNV 7(fvec2)
63         9(attr):      8(ptr) Variable HitObjectAttributeNV
64              10:    6(float) Constant 1065353216
65              11:    7(fvec2) ConstantComposite 10 10
66      12(hBlock):             TypeStruct 6(float)
67              13:             TypePointer HitObjectAttributeNV 12(hBlock)
68              14:     13(ptr) Variable HitObjectAttributeNV
69              15:             TypeInt 32 1
70              16:     15(int) Constant 0
71              17:    6(float) Constant 1073741824
72              18:             TypePointer HitObjectAttributeNV 6(float)
73              20:             TypeHitObjectNV
74              21:             TypePointer Private 20
75        22(hObj):     21(ptr) Variable Private
76              23:             TypeAccelerationStructureKHR
77              24:             TypePointer UniformConstant 23
78          25(as):     24(ptr) Variable UniformConstant
79              27:             TypeInt 32 0
80              28:     27(int) Constant 1
81              29:             TypeVector 6(float) 3
82              30:    6(float) Constant 1056964608
83              31:   29(fvec3) ConstantComposite 30 30 30
84              32:   29(fvec3) ConstantComposite 10 10 10
85              33:     15(int) Constant 1
86              34:             TypeVector 6(float) 4
87              35:             TypePointer RayPayloadKHR 34(fvec4)
88     36(payload):     35(ptr) Variable RayPayloadKHR
89              38:    6(float) Constant 1092616192
90              39:     15(int) Constant 2
91      40(pBlock):             TypeStruct 7(fvec2) 7(fvec2)
92              41:             TypePointer RayPayloadKHR 40(pBlock)
93              42:     41(ptr) Variable RayPayloadKHR
94              44:     27(int) Constant 2
95              45:   29(fvec3) ConstantComposite 17 17 17
96              47:    6(float) Constant 1082130432
97     48(hObjHit):     21(ptr) Variable Private
98              50:     15(int) Constant 3
99     52(hObjNop):     21(ptr) Variable Private
100    53(hObjMiss):     21(ptr) Variable Private
101              54:    6(float) Constant 1069547520
102              55:   29(fvec3) ConstantComposite 54 54 54
103              56:    6(float) Constant 1084227584
104              57:    6(float) Constant 1090519040
105              58:             TypeBool
106       62(block):             TypeStruct 6(float)
107              63:             TypePointer StorageBuffer 62(block)
108              64:     63(ptr) Variable StorageBuffer
109              65:             TypePointer StorageBuffer 6(float)
110              76:    6(float) Constant 1077936128
111              78:             TypePointer Function 6(float)
112              83:             TypePointer Function 29(fvec3)
113              92:             TypeMatrix 29(fvec3) 4
114              93:             TypePointer Function 92
115              98:             TypePointer Function 15(int)
116             107:             TypePointer Function 27(int)
117             110:             TypeVector 27(int) 2
118             111:             TypePointer Function 110(ivec2)
119             116:     27(int) Constant 4
120         4(main):           2 Function None 3
121               5:             Label
122        79(tmin):     78(ptr) Variable Function
123        81(tmax):     78(ptr) Variable Function
124        84(orig):     83(ptr) Variable Function
125         86(dir):     83(ptr) Variable Function
126       88(oorig):     83(ptr) Variable Function
127        90(odir):     83(ptr) Variable Function
128         94(otw):     93(ptr) Variable Function
129         96(wto):     93(ptr) Variable Function
130         99(cid):     98(ptr) Variable Function
131        101(iid):     98(ptr) Variable Function
132        103(pid):     98(ptr) Variable Function
133        105(gid):     98(ptr) Variable Function
134      108(hkind):    107(ptr) Variable Function
135     112(handle):    111(ptr) Variable Function
136        114(rid):    107(ptr) Variable Function
137                              Store 9(attr) 11
138              19:     18(ptr) AccessChain 14 16
139                              Store 19 17
140              26:          23 Load 25(as)
141                              HitObjectTraceRayNV 22(hObj) 26 28 28 28 28 28 31 30 32 10 36(payload)
142              37:          23 Load 25(as)
143                              HitObjectTraceRayMotionNV 22(hObj) 37 28 28 28 28 28 31 30 32 10 38 42
144              43:          23 Load 25(as)
145                              HitObjectRecordHitNV 22(hObj) 43 33 33 33 44 44 44 32 10 45 17 9(attr)
146              46:          23 Load 25(as)
147                              HitObjectRecordHitMotionNV 22(hObj) 46 33 33 33 44 44 44 32 10 45 17 47 9(attr)
148              49:          23 Load 25(as)
149                              HitObjectRecordHitWithIndexNV 48(hObjHit) 49 33 33 33 44 44 32 10 45 17 14
150              51:          23 Load 25(as)
151                              HitObjectRecordHitWithIndexMotionNV 48(hObjHit) 51 33 33 33 44 44 32 10 45 17 47 14
152                              HitObjectRecordEmptyNV 52(hObjNop)
153                              HitObjectRecordMissNV 53(hObjMiss) 28 31 17 55 56
154                              HitObjectRecordMissMotionNV 53(hObjMiss) 28 31 17 55 56 57
155                              HitObjectExecuteShaderNV 48(hObjHit) 36(payload)
156              59:    58(bool) HitObjectIsHitNV 22(hObj)
157                              SelectionMerge 61 None
158                              BranchConditional 59 60 67
159              60:               Label
160              66:     65(ptr)   AccessChain 64 16
161                                Store 66 10
162                                Branch 61
163              67:               Label
164              68:    58(bool)   HitObjectIsMissNV 22(hObj)
165                                SelectionMerge 70 None
166                                BranchConditional 68 69 72
167              69:                 Label
168              71:     65(ptr)     AccessChain 64 16
169                                  Store 71 17
170                                  Branch 70
171              72:                 Label
172              73:    58(bool)     HitObjectIsEmptyNV 22(hObj)
173                                  SelectionMerge 75 None
174                                  BranchConditional 73 74 75
175              74:                   Label
176              77:     65(ptr)       AccessChain 64 16
177                                    Store 77 76
178                                    Branch 75
179              75:                 Label
180                                  Branch 70
181              70:               Label
182                                Branch 61
183              61:             Label
184              80:    6(float) HitObjectGetRayTMinNV 48(hObjHit)
185                              Store 79(tmin) 80
186              82:    6(float) HitObjectGetRayTMaxNV 48(hObjHit)
187                              Store 81(tmax) 82
188              85:   29(fvec3) HitObjectGetWorldRayOriginNV 48(hObjHit)
189                              Store 84(orig) 85
190              87:   29(fvec3) HitObjectGetWorldRayDirectionNV 48(hObjHit)
191                              Store 86(dir) 87
192              89:   29(fvec3) HitObjectGetObjectRayOriginNV 48(hObjHit)
193                              Store 88(oorig) 89
194              91:   29(fvec3) HitObjectGetObjectRayDirectionNV 48(hObjHit)
195                              Store 90(odir) 91
196              95:          92 HitObjectGetObjectToWorldNV 48(hObjHit)
197                              Store 94(otw) 95
198              97:          92 HitObjectGetWorldToObjectNV 48(hObjHit)
199                              Store 96(wto) 97
200             100:     15(int) HitObjectGetInstanceCustomIndexNV 53(hObjMiss)
201                              Store 99(cid) 100
202             102:     15(int) HitObjectGetInstanceIdNV 52(hObjNop)
203                              Store 101(iid) 102
204             104:     15(int) HitObjectGetPrimitiveIndexNV 22(hObj)
205                              Store 103(pid) 104
206             106:     15(int) HitObjectGetGeometryIndexNV 22(hObj)
207                              Store 105(gid) 106
208             109:     27(int) HitObjectGetFrontFaceNV 22(hObj)
209                              Store 108(hkind) 109
210                              HitObjectGetAttributesNV 22(hObj) 9(attr)
211             113:  110(ivec2) HitObjectGetShaderRecordBufferHandleNV 22(hObj)
212                              Store 112(handle) 113
213             115:     27(int) HitObjectGetShaderBindingTableRecordIndexNV 22(hObj)
214                              Store 114(rid) 115
215                              ReorderThreadWithHintNV 116 116
216                              ReorderThreadWithHitObjectNV 48(hObjHit)
217                              ReorderThreadWithHitObjectNV 48(hObjHit) 116 44
218                              Return
219                              FunctionEnd
220