1617a3babSopenharmony_cispv.ext.RayGenShaderArray.rgen
2617a3babSopenharmony_ci// Module Version 10400
3617a3babSopenharmony_ci// Generated by (magic number): 8000b
4617a3babSopenharmony_ci// Id's are bound by 117
5617a3babSopenharmony_ci
6617a3babSopenharmony_ci                              Capability Int64
7617a3babSopenharmony_ci                              Capability RayTracingKHR
8617a3babSopenharmony_ci                              Capability ShaderNonUniformEXT
9617a3babSopenharmony_ci                              Capability RuntimeDescriptorArrayEXT
10617a3babSopenharmony_ci                              Extension  "SPV_EXT_descriptor_indexing"
11617a3babSopenharmony_ci                              Extension  "SPV_KHR_ray_tracing"
12617a3babSopenharmony_ci               1:             ExtInstImport  "GLSL.std.450"
13617a3babSopenharmony_ci                              MemoryModel Logical GLSL450
14617a3babSopenharmony_ci                              EntryPoint RayGenerationKHR 4  "main" 11 21 30 38 61 65
15617a3babSopenharmony_ci                              Source GLSL 460
16617a3babSopenharmony_ci                              SourceExtension  "GL_ARB_gpu_shader_int64"
17617a3babSopenharmony_ci                              SourceExtension  "GL_EXT_nonuniform_qualifier"
18617a3babSopenharmony_ci                              SourceExtension  "GL_EXT_ray_tracing"
19617a3babSopenharmony_ci                              Name 4  "main"
20617a3babSopenharmony_ci                              Name 8  "lx"
21617a3babSopenharmony_ci                              Name 11  "gl_LaunchIDEXT"
22617a3babSopenharmony_ci                              Name 16  "ly"
23617a3babSopenharmony_ci                              Name 20  "sx"
24617a3babSopenharmony_ci                              Name 21  "gl_LaunchSizeEXT"
25617a3babSopenharmony_ci                              Name 24  "sy"
26617a3babSopenharmony_ci                              Name 30  "accEXT0"
27617a3babSopenharmony_ci                              Name 36  "block"
28617a3babSopenharmony_ci                              MemberName 36(block) 0  "dir"
29617a3babSopenharmony_ci                              MemberName 36(block) 1  "origin"
30617a3babSopenharmony_ci                              MemberName 36(block) 2  "i"
31617a3babSopenharmony_ci                              MemberName 36(block) 3  "aHandle32"
32617a3babSopenharmony_ci                              MemberName 36(block) 4  "aHandle64"
33617a3babSopenharmony_ci                              Name 38  ""
34617a3babSopenharmony_ci                              Name 61  "payload"
35617a3babSopenharmony_ci                              Name 65  "accEXT1"
36617a3babSopenharmony_ci                              Decorate 11(gl_LaunchIDEXT) BuiltIn LaunchIdKHR
37617a3babSopenharmony_ci                              Decorate 21(gl_LaunchSizeEXT) BuiltIn LaunchSizeKHR
38617a3babSopenharmony_ci                              Decorate 30(accEXT0) DescriptorSet 0
39617a3babSopenharmony_ci                              Decorate 30(accEXT0) Binding 0
40617a3babSopenharmony_ci                              MemberDecorate 36(block) 0 Offset 0
41617a3babSopenharmony_ci                              MemberDecorate 36(block) 1 Offset 16
42617a3babSopenharmony_ci                              MemberDecorate 36(block) 2 Offset 28
43617a3babSopenharmony_ci                              MemberDecorate 36(block) 3 Offset 32
44617a3babSopenharmony_ci                              MemberDecorate 36(block) 4 Offset 40
45617a3babSopenharmony_ci                              Decorate 36(block) Block
46617a3babSopenharmony_ci                              Decorate 65(accEXT1) DescriptorSet 0
47617a3babSopenharmony_ci                              Decorate 65(accEXT1) Binding 1
48617a3babSopenharmony_ci                              Decorate 80 DecorationNonUniformEXT
49617a3babSopenharmony_ci                              Decorate 81 DecorationNonUniformEXT
50617a3babSopenharmony_ci                              Decorate 82 DecorationNonUniformEXT
51617a3babSopenharmony_ci               2:             TypeVoid
52617a3babSopenharmony_ci               3:             TypeFunction 2
53617a3babSopenharmony_ci               6:             TypeInt 32 0
54617a3babSopenharmony_ci               7:             TypePointer Function 6(int)
55617a3babSopenharmony_ci               9:             TypeVector 6(int) 3
56617a3babSopenharmony_ci              10:             TypePointer Input 9(ivec3)
57617a3babSopenharmony_ci11(gl_LaunchIDEXT):     10(ptr) Variable Input
58617a3babSopenharmony_ci              12:      6(int) Constant 0
59617a3babSopenharmony_ci              13:             TypePointer Input 6(int)
60617a3babSopenharmony_ci              17:      6(int) Constant 1
61617a3babSopenharmony_ci21(gl_LaunchSizeEXT):     10(ptr) Variable Input
62617a3babSopenharmony_ci              27:             TypeAccelerationStructureKHR
63617a3babSopenharmony_ci              28:             TypeRuntimeArray 27
64617a3babSopenharmony_ci              29:             TypePointer UniformConstant 28
65617a3babSopenharmony_ci     30(accEXT0):     29(ptr) Variable UniformConstant
66617a3babSopenharmony_ci              31:             TypeFloat 32
67617a3babSopenharmony_ci              32:             TypeVector 31(float) 3
68617a3babSopenharmony_ci              33:             TypeInt 32 1
69617a3babSopenharmony_ci              34:             TypeVector 6(int) 2
70617a3babSopenharmony_ci              35:             TypeInt 64 0
71617a3babSopenharmony_ci       36(block):             TypeStruct 32(fvec3) 32(fvec3) 33(int) 34(ivec2) 35(int64_t)
72617a3babSopenharmony_ci              37:             TypePointer ShaderRecordBufferKHR 36(block)
73617a3babSopenharmony_ci              38:     37(ptr) Variable ShaderRecordBufferKHR
74617a3babSopenharmony_ci              39:     33(int) Constant 2
75617a3babSopenharmony_ci              40:             TypePointer ShaderRecordBufferKHR 33(int)
76617a3babSopenharmony_ci              43:             TypePointer UniformConstant 27
77617a3babSopenharmony_ci              50:     33(int) Constant 1
78617a3babSopenharmony_ci              51:             TypePointer ShaderRecordBufferKHR 32(fvec3)
79617a3babSopenharmony_ci              54:   31(float) Constant 1056964608
80617a3babSopenharmony_ci              55:     33(int) Constant 0
81617a3babSopenharmony_ci              58:   31(float) Constant 1061158912
82617a3babSopenharmony_ci              59:             TypeVector 31(float) 4
83617a3babSopenharmony_ci              60:             TypePointer RayPayloadKHR 59(fvec4)
84617a3babSopenharmony_ci     61(payload):     60(ptr) Variable RayPayloadKHR
85617a3babSopenharmony_ci              62:      6(int) Constant 2
86617a3babSopenharmony_ci              63:             TypeArray 27 62
87617a3babSopenharmony_ci              64:             TypePointer UniformConstant 63
88617a3babSopenharmony_ci     65(accEXT1):     64(ptr) Variable UniformConstant
89617a3babSopenharmony_ci              91:     33(int) Constant 3
90617a3babSopenharmony_ci              92:             TypePointer ShaderRecordBufferKHR 34(ivec2)
91617a3babSopenharmony_ci             104:     33(int) Constant 4
92617a3babSopenharmony_ci             105:             TypePointer ShaderRecordBufferKHR 35(int64_t)
93617a3babSopenharmony_ci         4(main):           2 Function None 3
94617a3babSopenharmony_ci               5:             Label
95617a3babSopenharmony_ci           8(lx):      7(ptr) Variable Function
96617a3babSopenharmony_ci          16(ly):      7(ptr) Variable Function
97617a3babSopenharmony_ci          20(sx):      7(ptr) Variable Function
98617a3babSopenharmony_ci          24(sy):      7(ptr) Variable Function
99617a3babSopenharmony_ci              14:     13(ptr) AccessChain 11(gl_LaunchIDEXT) 12
100617a3babSopenharmony_ci              15:      6(int) Load 14
101617a3babSopenharmony_ci                              Store 8(lx) 15
102617a3babSopenharmony_ci              18:     13(ptr) AccessChain 11(gl_LaunchIDEXT) 17
103617a3babSopenharmony_ci              19:      6(int) Load 18
104617a3babSopenharmony_ci                              Store 16(ly) 19
105617a3babSopenharmony_ci              22:     13(ptr) AccessChain 21(gl_LaunchSizeEXT) 12
106617a3babSopenharmony_ci              23:      6(int) Load 22
107617a3babSopenharmony_ci                              Store 20(sx) 23
108617a3babSopenharmony_ci              25:     13(ptr) AccessChain 21(gl_LaunchSizeEXT) 17
109617a3babSopenharmony_ci              26:      6(int) Load 25
110617a3babSopenharmony_ci                              Store 24(sy) 26
111617a3babSopenharmony_ci              41:     40(ptr) AccessChain 38 39
112617a3babSopenharmony_ci              42:     33(int) Load 41
113617a3babSopenharmony_ci              44:     43(ptr) AccessChain 30(accEXT0) 42
114617a3babSopenharmony_ci              45:          27 Load 44
115617a3babSopenharmony_ci              46:      6(int) Load 8(lx)
116617a3babSopenharmony_ci              47:      6(int) Load 16(ly)
117617a3babSopenharmony_ci              48:      6(int) Load 20(sx)
118617a3babSopenharmony_ci              49:      6(int) Load 24(sy)
119617a3babSopenharmony_ci              52:     51(ptr) AccessChain 38 50
120617a3babSopenharmony_ci              53:   32(fvec3) Load 52
121617a3babSopenharmony_ci              56:     51(ptr) AccessChain 38 55
122617a3babSopenharmony_ci              57:   32(fvec3) Load 56
123617a3babSopenharmony_ci                              TraceRayKHR 45 46 47 48 49 12 53 54 57 58 61(payload)
124617a3babSopenharmony_ci              66:     40(ptr) AccessChain 38 39
125617a3babSopenharmony_ci              67:     33(int) Load 66
126617a3babSopenharmony_ci              68:     43(ptr) AccessChain 65(accEXT1) 67
127617a3babSopenharmony_ci              69:          27 Load 68
128617a3babSopenharmony_ci              70:      6(int) Load 8(lx)
129617a3babSopenharmony_ci              71:      6(int) Load 16(ly)
130617a3babSopenharmony_ci              72:      6(int) Load 20(sx)
131617a3babSopenharmony_ci              73:      6(int) Load 24(sy)
132617a3babSopenharmony_ci              74:     51(ptr) AccessChain 38 50
133617a3babSopenharmony_ci              75:   32(fvec3) Load 74
134617a3babSopenharmony_ci              76:     51(ptr) AccessChain 38 55
135617a3babSopenharmony_ci              77:   32(fvec3) Load 76
136617a3babSopenharmony_ci                              TraceRayKHR 69 70 71 72 73 12 75 54 77 58 61(payload)
137617a3babSopenharmony_ci              78:     40(ptr) AccessChain 38 39
138617a3babSopenharmony_ci              79:     33(int) Load 78
139617a3babSopenharmony_ci              80:     33(int) CopyObject 79
140617a3babSopenharmony_ci              81:     43(ptr) AccessChain 30(accEXT0) 80
141617a3babSopenharmony_ci              82:          27 Load 81
142617a3babSopenharmony_ci              83:      6(int) Load 8(lx)
143617a3babSopenharmony_ci              84:      6(int) Load 16(ly)
144617a3babSopenharmony_ci              85:      6(int) Load 20(sx)
145617a3babSopenharmony_ci              86:      6(int) Load 24(sy)
146617a3babSopenharmony_ci              87:     51(ptr) AccessChain 38 50
147617a3babSopenharmony_ci              88:   32(fvec3) Load 87
148617a3babSopenharmony_ci              89:     51(ptr) AccessChain 38 55
149617a3babSopenharmony_ci              90:   32(fvec3) Load 89
150617a3babSopenharmony_ci                              TraceRayKHR 82 83 84 85 86 12 88 54 90 58 61(payload)
151617a3babSopenharmony_ci              93:     92(ptr) AccessChain 38 91
152617a3babSopenharmony_ci              94:   34(ivec2) Load 93
153617a3babSopenharmony_ci              95:          27 ConvertUToAccelerationStructureKHR 94
154617a3babSopenharmony_ci              96:      6(int) Load 8(lx)
155617a3babSopenharmony_ci              97:      6(int) Load 16(ly)
156617a3babSopenharmony_ci              98:      6(int) Load 20(sx)
157617a3babSopenharmony_ci              99:      6(int) Load 24(sy)
158617a3babSopenharmony_ci             100:     51(ptr) AccessChain 38 50
159617a3babSopenharmony_ci             101:   32(fvec3) Load 100
160617a3babSopenharmony_ci             102:     51(ptr) AccessChain 38 55
161617a3babSopenharmony_ci             103:   32(fvec3) Load 102
162617a3babSopenharmony_ci                              TraceRayKHR 95 96 97 98 99 12 101 54 103 58 61(payload)
163617a3babSopenharmony_ci             106:    105(ptr) AccessChain 38 104
164617a3babSopenharmony_ci             107: 35(int64_t) Load 106
165617a3babSopenharmony_ci             108:          27 ConvertUToAccelerationStructureKHR 107
166617a3babSopenharmony_ci             109:      6(int) Load 8(lx)
167617a3babSopenharmony_ci             110:      6(int) Load 16(ly)
168617a3babSopenharmony_ci             111:      6(int) Load 20(sx)
169617a3babSopenharmony_ci             112:      6(int) Load 24(sy)
170617a3babSopenharmony_ci             113:     51(ptr) AccessChain 38 50
171617a3babSopenharmony_ci             114:   32(fvec3) Load 113
172617a3babSopenharmony_ci             115:     51(ptr) AccessChain 38 55
173617a3babSopenharmony_ci             116:   32(fvec3) Load 115
174617a3babSopenharmony_ci                              TraceRayKHR 108 109 110 111 112 12 114 54 116 58 61(payload)
175617a3babSopenharmony_ci                              Return
176617a3babSopenharmony_ci                              FunctionEnd
177