xref: /aosp_15_r20/external/angle/third_party/glslang/src/Test/baseResults/spv.nv.hitobject-allops.rchit.out (revision 8975f5c5ed3d1c378011245431ada316dfb6f244)
1spv.nv.hitobject-allops.rchit
2// Module Version 10400
3// Generated by (magic number): 8000b
4// Id's are bound by 116
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 ClosestHitKHR 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         4(main):           2 Function None 3
120               5:             Label
121        79(tmin):     78(ptr) Variable Function
122        81(tmax):     78(ptr) Variable Function
123        84(orig):     83(ptr) Variable Function
124         86(dir):     83(ptr) Variable Function
125       88(oorig):     83(ptr) Variable Function
126        90(odir):     83(ptr) Variable Function
127         94(otw):     93(ptr) Variable Function
128         96(wto):     93(ptr) Variable Function
129         99(cid):     98(ptr) Variable Function
130        101(iid):     98(ptr) Variable Function
131        103(pid):     98(ptr) Variable Function
132        105(gid):     98(ptr) Variable Function
133      108(hkind):    107(ptr) Variable Function
134     112(handle):    111(ptr) Variable Function
135        114(rid):    107(ptr) Variable Function
136                              Store 9(attr) 11
137              19:     18(ptr) AccessChain 14 16
138                              Store 19 17
139              26:          23 Load 25(as)
140                              HitObjectTraceRayNV 22(hObj) 26 28 28 28 28 28 31 30 32 10 36(payload)
141              37:          23 Load 25(as)
142                              HitObjectTraceRayMotionNV 22(hObj) 37 28 28 28 28 28 31 30 32 10 38 42
143              43:          23 Load 25(as)
144                              HitObjectRecordHitNV 22(hObj) 43 33 33 33 44 44 44 32 10 45 17 9(attr)
145              46:          23 Load 25(as)
146                              HitObjectRecordHitMotionNV 22(hObj) 46 33 33 33 44 44 44 32 10 45 17 47 9(attr)
147              49:          23 Load 25(as)
148                              HitObjectRecordHitWithIndexNV 48(hObjHit) 49 33 33 33 44 44 32 10 45 17 14
149              51:          23 Load 25(as)
150                              HitObjectRecordHitWithIndexMotionNV 48(hObjHit) 51 33 33 33 44 44 32 10 45 17 47 14
151                              HitObjectRecordEmptyNV 52(hObjNop)
152                              HitObjectRecordMissNV 53(hObjMiss) 28 31 17 55 56
153                              HitObjectRecordMissMotionNV 53(hObjMiss) 28 31 17 55 56 57
154                              HitObjectExecuteShaderNV 48(hObjHit) 42
155              59:    58(bool) HitObjectIsHitNV 22(hObj)
156                              SelectionMerge 61 None
157                              BranchConditional 59 60 67
158              60:               Label
159              66:     65(ptr)   AccessChain 64 16
160                                Store 66 10
161                                Branch 61
162              67:               Label
163              68:    58(bool)   HitObjectIsMissNV 22(hObj)
164                                SelectionMerge 70 None
165                                BranchConditional 68 69 72
166              69:                 Label
167              71:     65(ptr)     AccessChain 64 16
168                                  Store 71 17
169                                  Branch 70
170              72:                 Label
171              73:    58(bool)     HitObjectIsEmptyNV 22(hObj)
172                                  SelectionMerge 75 None
173                                  BranchConditional 73 74 75
174              74:                   Label
175              77:     65(ptr)       AccessChain 64 16
176                                    Store 77 76
177                                    Branch 75
178              75:                 Label
179                                  Branch 70
180              70:               Label
181                                Branch 61
182              61:             Label
183              80:    6(float) HitObjectGetRayTMinNV 48(hObjHit)
184                              Store 79(tmin) 80
185              82:    6(float) HitObjectGetRayTMaxNV 48(hObjHit)
186                              Store 81(tmax) 82
187              85:   29(fvec3) HitObjectGetWorldRayOriginNV 48(hObjHit)
188                              Store 84(orig) 85
189              87:   29(fvec3) HitObjectGetWorldRayDirectionNV 48(hObjHit)
190                              Store 86(dir) 87
191              89:   29(fvec3) HitObjectGetObjectRayOriginNV 48(hObjHit)
192                              Store 88(oorig) 89
193              91:   29(fvec3) HitObjectGetObjectRayDirectionNV 48(hObjHit)
194                              Store 90(odir) 91
195              95:          92 HitObjectGetObjectToWorldNV 48(hObjHit)
196                              Store 94(otw) 95
197              97:          92 HitObjectGetWorldToObjectNV 48(hObjHit)
198                              Store 96(wto) 97
199             100:     15(int) HitObjectGetInstanceCustomIndexNV 53(hObjMiss)
200                              Store 99(cid) 100
201             102:     15(int) HitObjectGetInstanceIdNV 52(hObjNop)
202                              Store 101(iid) 102
203             104:     15(int) HitObjectGetPrimitiveIndexNV 22(hObj)
204                              Store 103(pid) 104
205             106:     15(int) HitObjectGetGeometryIndexNV 22(hObj)
206                              Store 105(gid) 106
207             109:     27(int) HitObjectGetFrontFaceNV 22(hObj)
208                              Store 108(hkind) 109
209                              HitObjectGetAttributesNV 22(hObj) 9(attr)
210             113:  110(ivec2) HitObjectGetShaderRecordBufferHandleNV 22(hObj)
211                              Store 112(handle) 113
212             115:     27(int) HitObjectGetShaderBindingTableRecordIndexNV 22(hObj)
213                              Store 114(rid) 115
214                              Return
215                              FunctionEnd
216