glslang/Test/baseResults/spv.debuginfo.glsl.comp.out
Arcady Goldmints-Orlov 592aed9c20 Don't emit debug instructions before an OpPhi
Nonsemantic instructions aren't allowed before an OpPhi, so don't emit
line and debug scope instructions when the instruction being emitted is
an OpPhi.
2024-07-22 17:43:12 -04:00

1402 lines
77 KiB
Plaintext

spv.debuginfo.glsl.comp
// Module Version 10000
// Generated by (magic number): 8000b
// Id's are bound by 975
Capability Shader
Extension "SPV_KHR_non_semantic_info"
1: ExtInstImport "NonSemantic.Shader.DebugInfo.100"
3: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint GLCompute 14 "main" 133
ExecutionMode 14 LocalSize 10 10 1
2: String "spv.debuginfo.glsl.comp"
8: String "uint"
17: String "float"
33: String "springForce"
36: String "// OpModuleProcessed auto-map-locations
// OpModuleProcessed auto-map-bindings
// OpModuleProcessed client vulkan100
// OpModuleProcessed target-env vulkan1.0
// OpModuleProcessed keep-uncalled
// OpModuleProcessed entry-point main
#line 1
/*
The MIT License (MIT)
Copyright (c) 2022 Sascha Willems
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
*/
#version 450
struct Particle {
vec4 pos;
vec4 vel;
vec4 uv;
vec4 normal;
float pinned;
};
layout(std430, binding = 0) buffer ParticleIn {
Particle particleIn[ ];
};
layout(std430, binding = 1) buffer ParticleOut {
Particle particleOut[ ];
};
// todo: use shared memory to speed up calculation
layout (local_size_x = 10, local_size_y = 10) in;
layout (binding = 2) uniform UBO
{
float deltaT;
float particleMass;
float springStiffness;
float damping;
float restDistH;
float restDistV;
float restDistD;
float sphereRadius;
vec4 spherePos;
vec4 gravity;
ivec2 particleCount;
} params;
layout (push_constant) uniform PushConsts {
uint calculateNormals;
} pushConsts;
vec3 springForce(vec3 p0, vec3 p1, float restDist)
{
vec3 dist = p0 - p1;
return normalize(dist) * params.springStiffness * (length(dist) - restDist);
}
void main()
{
uvec3 id = gl_GlobalInvocationID;
uint index = id.y * params.particleCount.x + id.x;
if (index > params.particleCount.x * params.particleCount.y)
return;
// Pinned?
if (particleIn[index].pinned == 1.0) {
particleOut[index].pos = particleOut[index].pos;
particleOut[index].vel = vec4(0.0);
return;
}
// Initial force from gravity
vec3 force = params.gravity.xyz * params.particleMass;
vec3 pos = particleIn[index].pos.xyz;
vec3 vel = particleIn[index].vel.xyz;
// Spring forces from neighboring particles
// left
if (id.x > 0) {
force += springForce(particleIn[index-1].pos.xyz, pos, params.restDistH);
}
// right
if (id.x < params.particleCount.x - 1) {
force += springForce(particleIn[index + 1].pos.xyz, pos, params.restDistH);
}
// upper
if (id.y < params.particleCount.y - 1) {
force += springForce(particleIn[index + params.particleCount.x].pos.xyz, pos, params.restDistV);
}
// lower
if (id.y > 0) {
force += springForce(particleIn[index - params.particleCount.x].pos.xyz, pos, params.restDistV);
}
// upper-left
if ((id.x > 0) && (id.y < params.particleCount.y - 1)) {
force += springForce(particleIn[index + params.particleCount.x - 1].pos.xyz, pos, params.restDistD);
}
// lower-left
if ((id.x > 0) && (id.y > 0)) {
force += springForce(particleIn[index - params.particleCount.x - 1].pos.xyz, pos, params.restDistD);
}
// upper-right
if ((id.x < params.particleCount.x - 1) && (id.y < params.particleCount.y - 1)) {
force += springForce(particleIn[index + params.particleCount.x + 1].pos.xyz, pos, params.restDistD);
}
// lower-right
if ((id.x < params.particleCount.x - 1) && (id.y > 0)) {
force += springForce(particleIn[index - params.particleCount.x + 1].pos.xyz, pos, params.restDistD);
}
force += (-params.damping * vel);
// Integrate
vec3 f = force * (1.0 / params.particleMass);
particleOut[index].pos = vec4(pos + vel * params.deltaT + 0.5 * f * params.deltaT * params.deltaT, 1.0);
particleOut[index].vel = vec4(vel + f * params.deltaT, 0.0);
// Sphere collision
vec3 sphereDist = particleOut[index].pos.xyz - params.spherePos.xyz;
if (length(sphereDist) < params.sphereRadius + 0.01) {
// If the particle is inside the sphere, push it to the outer radius
particleOut[index].pos.xyz = params.spherePos.xyz + normalize(sphereDist) * (params.sphereRadius + 0.01);
// Cancel out velocity
particleOut[index].vel = vec4(0.0);
}
// Normals
if (pushConsts.calculateNormals == 1) {
vec3 normal = vec3(0.0);
vec3 a, b, c;
if (id.y > 0) {
if (id.x > 0) {
a = particleIn[index - 1].pos.xyz - pos;
b = particleIn[index - params.particleCount.x - 1].pos.xyz - pos;
c = particleIn[index - params.particleCount.x].pos.xyz - pos;
normal += cross(a,b) + cross(b,c);
}
if (id.x < params.particleCount.x - 1) {
a = particleIn[index - params.particleCount.x].pos.xyz - pos;
b = particleIn[index - params.particleCount.x + 1].pos.xyz - pos;
c = particleIn[index + 1].pos.xyz - pos;
normal += cross(a,b) + cross(b,c);
}
}
if (id.y < params.particleCount.y - 1) {
if (id.x > 0) {
a = particleIn[index + params.particleCount.x].pos.xyz - pos;
b = particleIn[index + params.particleCount.x - 1].pos.xyz - pos;
c = particleIn[index - 1].pos.xyz - pos;
normal += cross(a,b) + cross(b,c);
}
if (id.x < params.particleCount.x - 1) {
a = particleIn[index + 1].pos.xyz - pos;
b = particleIn[index + params.particleCount.x + 1].pos.xyz - pos;
c = particleIn[index + params.particleCount.x].pos.xyz - pos;
normal += cross(a,b) + cross(b,c);
}
}
particleOut[index].normal = vec4(normalize(normal), 0.0f);
}
}
"
43: String "p0"
49: String "p1"
52: String "restDist"
54: String "main"
60: String "dist"
74: String "int"
80: String "sphereRadius"
91: String "gravity"
95: String "particleCount"
98: String "UBO"
103: String "params"
127: String "id"
135: String "gl_GlobalInvocationID"
141: String "index"
167: String "bool"
179: String "normal"
185: String "pinned"
187: String "Particle"
193: String "particleIn"
197: String "ParticleIn"
202: String ""
218: String "particleOut"
221: String "ParticleOut"
249: String "force"
263: String "pos"
273: String "vel"
577: String "f"
626: String "sphereDist"
677: String "calculateNormals"
680: String "PushConsts"
687: String "pushConsts"
721: String "a"
735: String "b"
752: String "c"
Name 14 "main"
Name 31 "springForce(vf3;vf3;f1;"
Name 28 "p0"
Name 29 "p1"
Name 30 "restDist"
Name 58 "dist"
Name 78 "UBO"
MemberName 78(UBO) 0 "deltaT"
MemberName 78(UBO) 1 "particleMass"
MemberName 78(UBO) 2 "springStiffness"
MemberName 78(UBO) 3 "damping"
MemberName 78(UBO) 4 "restDistH"
MemberName 78(UBO) 5 "restDistV"
MemberName 78(UBO) 6 "restDistD"
MemberName 78(UBO) 7 "sphereRadius"
MemberName 78(UBO) 8 "spherePos"
MemberName 78(UBO) 9 "gravity"
MemberName 78(UBO) 10 "particleCount"
Name 101 "params"
Name 125 "id"
Name 133 "gl_GlobalInvocationID"
Name 139 "index"
Name 177 "Particle"
MemberName 177(Particle) 0 "pos"
MemberName 177(Particle) 1 "vel"
MemberName 177(Particle) 2 "uv"
MemberName 177(Particle) 3 "normal"
MemberName 177(Particle) 4 "pinned"
Name 191 "ParticleIn"
MemberName 191(ParticleIn) 0 "particleIn"
Name 200 ""
Name 216 "ParticleOut"
MemberName 216(ParticleOut) 0 "particleOut"
Name 225 ""
Name 247 "force"
Name 261 "pos"
Name 271 "vel"
Name 293 "param"
Name 297 "param"
Name 299 "param"
Name 322 "param"
Name 326 "param"
Name 328 "param"
Name 355 "param"
Name 359 "param"
Name 361 "param"
Name 383 "param"
Name 387 "param"
Name 389 "param"
Name 425 "param"
Name 429 "param"
Name 431 "param"
Name 463 "param"
Name 467 "param"
Name 469 "param"
Name 509 "param"
Name 513 "param"
Name 515 "param"
Name 551 "param"
Name 555 "param"
Name 557 "param"
Name 575 "f"
Name 624 "sphereDist"
Name 675 "PushConsts"
MemberName 675(PushConsts) 0 "calculateNormals"
Name 685 "pushConsts"
Name 697 "normal"
Name 719 "a"
Name 733 "b"
Name 750 "c"
Decorate 78(UBO) Block
MemberDecorate 78(UBO) 0 Offset 0
MemberDecorate 78(UBO) 1 Offset 4
MemberDecorate 78(UBO) 2 Offset 8
MemberDecorate 78(UBO) 3 Offset 12
MemberDecorate 78(UBO) 4 Offset 16
MemberDecorate 78(UBO) 5 Offset 20
MemberDecorate 78(UBO) 6 Offset 24
MemberDecorate 78(UBO) 7 Offset 28
MemberDecorate 78(UBO) 8 Offset 32
MemberDecorate 78(UBO) 9 Offset 48
MemberDecorate 78(UBO) 10 Offset 64
Decorate 101(params) Binding 2
Decorate 101(params) DescriptorSet 0
Decorate 133(gl_GlobalInvocationID) BuiltIn GlobalInvocationId
MemberDecorate 177(Particle) 0 Offset 0
MemberDecorate 177(Particle) 1 Offset 16
MemberDecorate 177(Particle) 2 Offset 32
MemberDecorate 177(Particle) 3 Offset 48
MemberDecorate 177(Particle) 4 Offset 64
Decorate 189 ArrayStride 80
Decorate 191(ParticleIn) BufferBlock
MemberDecorate 191(ParticleIn) 0 Offset 0
Decorate 200 Binding 0
Decorate 200 DescriptorSet 0
Decorate 214 ArrayStride 80
Decorate 216(ParticleOut) BufferBlock
MemberDecorate 216(ParticleOut) 0 Offset 0
Decorate 225 Binding 1
Decorate 225 DescriptorSet 0
Decorate 675(PushConsts) Block
MemberDecorate 675(PushConsts) 0 Offset 0
Decorate 974 BuiltIn WorkgroupSize
4: TypeVoid
5: TypeFunction 4
7: TypeInt 32 0
10: 7(int) Constant 32
11: 7(int) Constant 6
12: 7(int) Constant 0
9: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 8 10 11 12
13: 7(int) Constant 3
6: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 8(DebugTypeFunction) 13 4
16: TypeFloat 32
18: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 17 10 13 12
19: TypeVector 16(float) 3
20: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 18 13
21: TypePointer Function 19(fvec3)
22: 7(int) Constant 7
23: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 20 22 12
24: TypePointer Function 16(float)
25: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 18 22 12
26: TypeFunction 19(fvec3) 21(ptr) 21(ptr) 24(ptr)
27: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 8(DebugTypeFunction) 13 20 20 20 18
35: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 35(DebugSource) 2 36
37: 7(int) Constant 66
39: 7(int) Constant 1
40: 7(int) Constant 4
41: 7(int) Constant 2
38: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 1(DebugCompilationUnit) 39 40 35 41
34: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 20(DebugFunction) 33 27 35 37 12 38 33 13 37
42: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 43 20 35 37 12 34 40 39
45: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 31(DebugExpression)
48: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 49 20 35 37 12 34 40 41
51: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 52 18 35 37 12 34 40 13
56: 7(int) Constant 72
55: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 20(DebugFunction) 54 6 35 56 12 38 54 13 56
61: 7(int) Constant 68
59: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 60 20 35 61 12 34 40
69: 7(int) Constant 69
71: TypeVector 16(float) 4
72: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 18 40
73: TypeInt 32 1
75: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 74 10 40 12
76: TypeVector 73(int) 2
77: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 75 41
78(UBO): TypeStruct 16(float) 16(float) 16(float) 16(float) 16(float) 16(float) 16(float) 16(float) 71(fvec4) 71(fvec4) 76(ivec2)
81: 7(int) Constant 56
82: 7(int) Constant 8
79: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 80 18 35 81 82 12 12 13
83: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 80 18 35 81 82 12 12 13
84: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 80 18 35 81 82 12 12 13
85: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 80 18 35 81 82 12 12 13
86: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 80 18 35 81 82 12 12 13
87: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 80 18 35 81 82 12 12 13
88: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 80 18 35 81 82 12 12 13
89: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 80 18 35 81 82 12 12 13
92: 7(int) Constant 58
90: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 91 72 35 92 22 12 12 13
93: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 91 72 35 92 22 12 12 13
96: 7(int) Constant 59
94: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 95 77 35 96 82 12 12 13
97: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 98 39 35 69 12 38 98 12 13 79 83 84 85 86 87 88 89 90 93 94
99: TypePointer Uniform 78(UBO)
100: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 97 41 12
101(params): 99(ptr) Variable Uniform
102: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 103 97 35 69 12 38 103 101(params) 82
104: 73(int) Constant 2
105: TypePointer Uniform 16(float)
106: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 18 41 12
121: TypeVector 7(int) 3
122: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 9 13
123: TypePointer Function 121(ivec3)
124: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 122 22 12
128: 7(int) Constant 74
126: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 127 122 35 128 12 55 40
131: TypePointer Input 121(ivec3)
132: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 122 39 12
133(gl_GlobalInvocationID): 131(ptr) Variable Input
134: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 135 122 35 128 12 38 135 133(gl_GlobalInvocationID) 82
137: TypePointer Function 7(int)
138: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 9 22 12
142: 7(int) Constant 76
140: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 141 9 35 142 12 55 40
147: 73(int) Constant 10
148: TypePointer Uniform 73(int)
149: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 75 41 12
159: 7(int) Constant 77
166: TypeBool
168: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 167 10 41 12
174: 7(int) Constant 78
177(Particle): TypeStruct 71(fvec4) 71(fvec4) 71(fvec4) 71(fvec4) 16(float)
180: 7(int) Constant 31
178: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 179 72 35 180 22 12 12 13
181: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 179 72 35 180 22 12 12 13
182: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 179 72 35 180 22 12 12 13
183: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 179 72 35 180 22 12 12 13
184: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 185 18 35 10 82 12 12 13
188: 7(int) Constant 81
186: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 187 39 35 188 12 38 187 12 13 178 181 182 183 184
189: TypeRuntimeArray 177(Particle)
190: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 186 12
191(ParticleIn): TypeStruct 189
194: 7(int) Constant 36
195: 7(int) Constant 11
192: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 193 190 35 194 195 12 12 13
196: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 197 39 35 188 12 38 197 12 13 192
198: TypePointer Uniform 191(ParticleIn)
199: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 196 41 12
200: 198(ptr) Variable Uniform
201: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 202 196 35 188 12 38 202 200 82
203: 73(int) Constant 0
207: 73(int) Constant 4
210: 16(float) Constant 1065353216
214: TypeRuntimeArray 177(Particle)
215: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 186 12
216(ParticleOut): TypeStruct 214
219: 7(int) Constant 40
217: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 218 215 35 219 195 12 12 13
222: 7(int) Constant 82
220: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 221 39 35 222 12 38 221 12 13 217
223: TypePointer Uniform 216(ParticleOut)
224: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 220 41 12
225: 223(ptr) Variable Uniform
226: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 202 220 35 222 12 38 202 225 82
231: TypePointer Uniform 71(fvec4)
232: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 72 41 12
238: 7(int) Constant 83
239: 73(int) Constant 1
240: 16(float) Constant 0
241: 71(fvec4) ConstantComposite 240 240 240 240
244: 7(int) Constant 84
250: 7(int) Constant 88
248: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 249 20 35 250 12 55 40
254: 73(int) Constant 9
264: 7(int) Constant 90
262: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 263 20 35 264 12 55 40
274: 7(int) Constant 91
272: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 273 20 35 274 12 55 40
283: 7(int) Constant 95
291: 7(int) Constant 96
308: 7(int) Constant 99
320: 7(int) Constant 100
337: 7(int) Constant 103
349: 7(int) Constant 104
354: 73(int) Constant 5
370: 7(int) Constant 107
378: 7(int) Constant 108
398: 7(int) Constant 111
418: 7(int) Constant 112
424: 73(int) Constant 6
441: 7(int) Constant 115
457: 7(int) Constant 116
479: 7(int) Constant 119
503: 7(int) Constant 120
525: 7(int) Constant 123
545: 7(int) Constant 124
564: 73(int) Constant 3
568: 7(int) Constant 127
578: 7(int) Constant 130
576: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 577 20 35 578 12 55 40
588: 7(int) Constant 131
595: 16(float) Constant 1056964608
612: 7(int) Constant 132
627: 7(int) Constant 135
625: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 626 20 35 627 12 55 40
634: 73(int) Constant 8
641: 7(int) Constant 136
643: 73(int) Constant 7
646: 16(float) Constant 1008981770
654: 7(int) Constant 138
673: 7(int) Constant 140
675(PushConsts): TypeStruct 7(int)
678: 7(int) Constant 63
676: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 677 9 35 678 22 12 12 13
681: 7(int) Constant 144
679: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 680 39 35 681 12 38 680 12 13 676
682: TypePointer PushConstant 675(PushConsts)
683: 7(int) Constant 9
684: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 679 683 12
685(pushConsts): 682(ptr) Variable PushConstant
686: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 687 679 35 681 12 38 687 685(pushConsts) 82
688: TypePointer PushConstant 7(int)
689: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 9 683 12
699: 7(int) Constant 145
698: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 179 20 35 699 12 55 40
703: 19(fvec3) ConstantComposite 240 240 240
706: 7(int) Constant 147
714: 7(int) Constant 148
722: 7(int) Constant 149
720: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 721 20 35 722 12 55 40
736: 7(int) Constant 150
734: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 735 20 35 736 12 55 40
753: 7(int) Constant 151
751: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 752 20 35 753 12 55 40
768: 7(int) Constant 152
780: 7(int) Constant 154
792: 7(int) Constant 155
804: 7(int) Constant 156
817: 7(int) Constant 157
826: 7(int) Constant 158
839: 7(int) Constant 161
851: 7(int) Constant 162
859: 7(int) Constant 163
871: 7(int) Constant 164
884: 7(int) Constant 165
893: 7(int) Constant 166
905: 7(int) Constant 168
917: 7(int) Constant 169
926: 7(int) Constant 170
939: 7(int) Constant 171
951: 7(int) Constant 172
964: 7(int) Constant 175
973: 7(int) Constant 10
974: 121(ivec3) ConstantComposite 973 973 39
14(main): 4 Function None 5
15: Label
125(id): 123(ptr) Variable Function
139(index): 137(ptr) Variable Function
247(force): 21(ptr) Variable Function
261(pos): 21(ptr) Variable Function
271(vel): 21(ptr) Variable Function
293(param): 21(ptr) Variable Function
297(param): 21(ptr) Variable Function
299(param): 24(ptr) Variable Function
322(param): 21(ptr) Variable Function
326(param): 21(ptr) Variable Function
328(param): 24(ptr) Variable Function
355(param): 21(ptr) Variable Function
359(param): 21(ptr) Variable Function
361(param): 24(ptr) Variable Function
383(param): 21(ptr) Variable Function
387(param): 21(ptr) Variable Function
389(param): 24(ptr) Variable Function
425(param): 21(ptr) Variable Function
429(param): 21(ptr) Variable Function
431(param): 24(ptr) Variable Function
463(param): 21(ptr) Variable Function
467(param): 21(ptr) Variable Function
469(param): 24(ptr) Variable Function
509(param): 21(ptr) Variable Function
513(param): 21(ptr) Variable Function
515(param): 24(ptr) Variable Function
551(param): 21(ptr) Variable Function
555(param): 21(ptr) Variable Function
557(param): 24(ptr) Variable Function
575(f): 21(ptr) Variable Function
624(sphereDist): 21(ptr) Variable Function
697(normal): 21(ptr) Variable Function
719(a): 21(ptr) Variable Function
733(b): 21(ptr) Variable Function
750(c): 21(ptr) Variable Function
119: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
120: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 56 56 12 12
118: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 55 14(main)
130: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 128 128 12 12
129: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 126 125(id) 45
136: 121(ivec3) Load 133(gl_GlobalInvocationID)
Store 125(id) 136
144: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 142 142 12 12
143: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 140 139(index) 45
145: 137(ptr) AccessChain 125(id) 39
146: 7(int) Load 145
150: 148(ptr) AccessChain 101(params) 147 12
151: 73(int) Load 150
152: 7(int) Bitcast 151
153: 7(int) IMul 146 152
154: 137(ptr) AccessChain 125(id) 12
155: 7(int) Load 154
156: 7(int) IAdd 153 155
Store 139(index) 156
158: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 159 159 12 12
157: 7(int) Load 139(index)
160: 148(ptr) AccessChain 101(params) 147 12
161: 73(int) Load 160
162: 148(ptr) AccessChain 101(params) 147 39
163: 73(int) Load 162
164: 73(int) IMul 161 163
165: 7(int) Bitcast 164
169: 166(bool) UGreaterThan 157 165
SelectionMerge 171 None
BranchConditional 169 170 171
170: Label
172: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
173: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 174 174 12 12
Return
171: Label
205: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
206: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 188 188 12 12
204: 7(int) Load 139(index)
208: 105(ptr) AccessChain 200 203 204 207
209: 16(float) Load 208
211: 166(bool) FOrdEqual 209 210
SelectionMerge 213 None
BranchConditional 211 212 213
212: Label
228: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
229: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 222 222 12 12
227: 7(int) Load 139(index)
230: 7(int) Load 139(index)
233: 231(ptr) AccessChain 225 203 230 203
234: 71(fvec4) Load 233
235: 231(ptr) AccessChain 225 203 227 203
Store 235 234
237: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 238 238 12 12
236: 7(int) Load 139(index)
242: 231(ptr) AccessChain 225 203 236 239
Store 242 241
243: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 244 244 12 12
Return
213: Label
252: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
253: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 250 250 12 12
251: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 248 247(force) 45
255: 231(ptr) AccessChain 101(params) 254
256: 71(fvec4) Load 255
257: 19(fvec3) VectorShuffle 256 256 0 1 2
258: 105(ptr) AccessChain 101(params) 239
259: 16(float) Load 258
260: 19(fvec3) VectorTimesScalar 257 259
Store 247(force) 260
266: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 264 264 12 12
265: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 262 261(pos) 45
267: 7(int) Load 139(index)
268: 231(ptr) AccessChain 200 203 267 203
269: 71(fvec4) Load 268
270: 19(fvec3) VectorShuffle 269 269 0 1 2
Store 261(pos) 270
276: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 274 274 12 12
275: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 272 271(vel) 45
277: 7(int) Load 139(index)
278: 231(ptr) AccessChain 200 203 277 239
279: 71(fvec4) Load 278
280: 19(fvec3) VectorShuffle 279 279 0 1 2
Store 271(vel) 280
282: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 283 283 12 12
281: 137(ptr) AccessChain 125(id) 12
284: 7(int) Load 281
285: 166(bool) UGreaterThan 284 12
SelectionMerge 287 None
BranchConditional 285 286 287
286: Label
289: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
290: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 291 291 12 12
288: 7(int) Load 139(index)
292: 7(int) ISub 288 39
294: 231(ptr) AccessChain 200 203 292 203
295: 71(fvec4) Load 294
296: 19(fvec3) VectorShuffle 295 295 0 1 2
Store 293(param) 296
298: 19(fvec3) Load 261(pos)
Store 297(param) 298
300: 105(ptr) AccessChain 101(params) 207
301: 16(float) Load 300
Store 299(param) 301
302: 19(fvec3) FunctionCall 31(springForce(vf3;vf3;f1;) 293(param) 297(param) 299(param)
303: 19(fvec3) Load 247(force)
304: 19(fvec3) FAdd 303 302
Store 247(force) 304
Branch 287
287: Label
306: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
307: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 308 308 12 12
305: 137(ptr) AccessChain 125(id) 12
309: 7(int) Load 305
310: 148(ptr) AccessChain 101(params) 147 12
311: 73(int) Load 310
312: 73(int) ISub 311 239
313: 7(int) Bitcast 312
314: 166(bool) ULessThan 309 313
SelectionMerge 316 None
BranchConditional 314 315 316
315: Label
318: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
319: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 320 320 12 12
317: 7(int) Load 139(index)
321: 7(int) IAdd 317 39
323: 231(ptr) AccessChain 200 203 321 203
324: 71(fvec4) Load 323
325: 19(fvec3) VectorShuffle 324 324 0 1 2
Store 322(param) 325
327: 19(fvec3) Load 261(pos)
Store 326(param) 327
329: 105(ptr) AccessChain 101(params) 207
330: 16(float) Load 329
Store 328(param) 330
331: 19(fvec3) FunctionCall 31(springForce(vf3;vf3;f1;) 322(param) 326(param) 328(param)
332: 19(fvec3) Load 247(force)
333: 19(fvec3) FAdd 332 331
Store 247(force) 333
Branch 316
316: Label
335: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
336: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 337 337 12 12
334: 137(ptr) AccessChain 125(id) 39
338: 7(int) Load 334
339: 148(ptr) AccessChain 101(params) 147 39
340: 73(int) Load 339
341: 73(int) ISub 340 239
342: 7(int) Bitcast 341
343: 166(bool) ULessThan 338 342
SelectionMerge 345 None
BranchConditional 343 344 345
344: Label
347: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
348: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 349 349 12 12
346: 7(int) Load 139(index)
350: 148(ptr) AccessChain 101(params) 147 12
351: 73(int) Load 350
352: 7(int) Bitcast 351
353: 7(int) IAdd 346 352
356: 231(ptr) AccessChain 200 203 353 203
357: 71(fvec4) Load 356
358: 19(fvec3) VectorShuffle 357 357 0 1 2
Store 355(param) 358
360: 19(fvec3) Load 261(pos)
Store 359(param) 360
362: 105(ptr) AccessChain 101(params) 354
363: 16(float) Load 362
Store 361(param) 363
364: 19(fvec3) FunctionCall 31(springForce(vf3;vf3;f1;) 355(param) 359(param) 361(param)
365: 19(fvec3) Load 247(force)
366: 19(fvec3) FAdd 365 364
Store 247(force) 366
Branch 345
345: Label
368: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
369: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 370 370 12 12
367: 137(ptr) AccessChain 125(id) 39
371: 7(int) Load 367
372: 166(bool) UGreaterThan 371 12
SelectionMerge 374 None
BranchConditional 372 373 374
373: Label
376: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
377: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 378 378 12 12
375: 7(int) Load 139(index)
379: 148(ptr) AccessChain 101(params) 147 12
380: 73(int) Load 379
381: 7(int) Bitcast 380
382: 7(int) ISub 375 381
384: 231(ptr) AccessChain 200 203 382 203
385: 71(fvec4) Load 384
386: 19(fvec3) VectorShuffle 385 385 0 1 2
Store 383(param) 386
388: 19(fvec3) Load 261(pos)
Store 387(param) 388
390: 105(ptr) AccessChain 101(params) 354
391: 16(float) Load 390
Store 389(param) 391
392: 19(fvec3) FunctionCall 31(springForce(vf3;vf3;f1;) 383(param) 387(param) 389(param)
393: 19(fvec3) Load 247(force)
394: 19(fvec3) FAdd 393 392
Store 247(force) 394
Branch 374
374: Label
396: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
397: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 398 398 12 12
395: 137(ptr) AccessChain 125(id) 12
399: 7(int) Load 395
400: 166(bool) UGreaterThan 399 12
SelectionMerge 402 None
BranchConditional 400 401 402
401: Label
404: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
405: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 398 398 12 12
403: 137(ptr) AccessChain 125(id) 39
406: 7(int) Load 403
407: 148(ptr) AccessChain 101(params) 147 39
408: 73(int) Load 407
409: 73(int) ISub 408 239
410: 7(int) Bitcast 409
411: 166(bool) ULessThan 406 410
Branch 402
402: Label
412: 166(bool) Phi 400 374 411 401
437: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
SelectionMerge 414 None
BranchConditional 412 413 414
413: Label
416: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
417: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 418 418 12 12
415: 7(int) Load 139(index)
419: 148(ptr) AccessChain 101(params) 147 12
420: 73(int) Load 419
421: 7(int) Bitcast 420
422: 7(int) IAdd 415 421
423: 7(int) ISub 422 39
426: 231(ptr) AccessChain 200 203 423 203
427: 71(fvec4) Load 426
428: 19(fvec3) VectorShuffle 427 427 0 1 2
Store 425(param) 428
430: 19(fvec3) Load 261(pos)
Store 429(param) 430
432: 105(ptr) AccessChain 101(params) 424
433: 16(float) Load 432
Store 431(param) 433
434: 19(fvec3) FunctionCall 31(springForce(vf3;vf3;f1;) 425(param) 429(param) 431(param)
435: 19(fvec3) Load 247(force)
436: 19(fvec3) FAdd 435 434
Store 247(force) 436
Branch 414
414: Label
439: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
440: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 441 441 12 12
438: 137(ptr) AccessChain 125(id) 12
442: 7(int) Load 438
443: 166(bool) UGreaterThan 442 12
SelectionMerge 445 None
BranchConditional 443 444 445
444: Label
447: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
448: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 441 441 12 12
446: 137(ptr) AccessChain 125(id) 39
449: 7(int) Load 446
450: 166(bool) UGreaterThan 449 12
Branch 445
445: Label
451: 166(bool) Phi 443 414 450 444
475: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
SelectionMerge 453 None
BranchConditional 451 452 453
452: Label
455: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
456: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 457 457 12 12
454: 7(int) Load 139(index)
458: 148(ptr) AccessChain 101(params) 147 12
459: 73(int) Load 458
460: 7(int) Bitcast 459
461: 7(int) ISub 454 460
462: 7(int) ISub 461 39
464: 231(ptr) AccessChain 200 203 462 203
465: 71(fvec4) Load 464
466: 19(fvec3) VectorShuffle 465 465 0 1 2
Store 463(param) 466
468: 19(fvec3) Load 261(pos)
Store 467(param) 468
470: 105(ptr) AccessChain 101(params) 424
471: 16(float) Load 470
Store 469(param) 471
472: 19(fvec3) FunctionCall 31(springForce(vf3;vf3;f1;) 463(param) 467(param) 469(param)
473: 19(fvec3) Load 247(force)
474: 19(fvec3) FAdd 473 472
Store 247(force) 474
Branch 453
453: Label
477: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
478: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 479 479 12 12
476: 137(ptr) AccessChain 125(id) 12
480: 7(int) Load 476
481: 148(ptr) AccessChain 101(params) 147 12
482: 73(int) Load 481
483: 73(int) ISub 482 239
484: 7(int) Bitcast 483
485: 166(bool) ULessThan 480 484
SelectionMerge 487 None
BranchConditional 485 486 487
486: Label
489: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
490: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 479 479 12 12
488: 137(ptr) AccessChain 125(id) 39
491: 7(int) Load 488
492: 148(ptr) AccessChain 101(params) 147 39
493: 73(int) Load 492
494: 73(int) ISub 493 239
495: 7(int) Bitcast 494
496: 166(bool) ULessThan 491 495
Branch 487
487: Label
497: 166(bool) Phi 485 453 496 486
521: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
SelectionMerge 499 None
BranchConditional 497 498 499
498: Label
501: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
502: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 503 503 12 12
500: 7(int) Load 139(index)
504: 148(ptr) AccessChain 101(params) 147 12
505: 73(int) Load 504
506: 7(int) Bitcast 505
507: 7(int) IAdd 500 506
508: 7(int) IAdd 507 39
510: 231(ptr) AccessChain 200 203 508 203
511: 71(fvec4) Load 510
512: 19(fvec3) VectorShuffle 511 511 0 1 2
Store 509(param) 512
514: 19(fvec3) Load 261(pos)
Store 513(param) 514
516: 105(ptr) AccessChain 101(params) 424
517: 16(float) Load 516
Store 515(param) 517
518: 19(fvec3) FunctionCall 31(springForce(vf3;vf3;f1;) 509(param) 513(param) 515(param)
519: 19(fvec3) Load 247(force)
520: 19(fvec3) FAdd 519 518
Store 247(force) 520
Branch 499
499: Label
523: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
524: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 525 525 12 12
522: 137(ptr) AccessChain 125(id) 12
526: 7(int) Load 522
527: 148(ptr) AccessChain 101(params) 147 12
528: 73(int) Load 527
529: 73(int) ISub 528 239
530: 7(int) Bitcast 529
531: 166(bool) ULessThan 526 530
SelectionMerge 533 None
BranchConditional 531 532 533
532: Label
535: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
536: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 525 525 12 12
534: 137(ptr) AccessChain 125(id) 39
537: 7(int) Load 534
538: 166(bool) UGreaterThan 537 12
Branch 533
533: Label
539: 166(bool) Phi 531 499 538 532
563: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
SelectionMerge 541 None
BranchConditional 539 540 541
540: Label
543: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
544: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 545 545 12 12
542: 7(int) Load 139(index)
546: 148(ptr) AccessChain 101(params) 147 12
547: 73(int) Load 546
548: 7(int) Bitcast 547
549: 7(int) ISub 542 548
550: 7(int) IAdd 549 39
552: 231(ptr) AccessChain 200 203 550 203
553: 71(fvec4) Load 552
554: 19(fvec3) VectorShuffle 553 553 0 1 2
Store 551(param) 554
556: 19(fvec3) Load 261(pos)
Store 555(param) 556
558: 105(ptr) AccessChain 101(params) 424
559: 16(float) Load 558
Store 557(param) 559
560: 19(fvec3) FunctionCall 31(springForce(vf3;vf3;f1;) 551(param) 555(param) 557(param)
561: 19(fvec3) Load 247(force)
562: 19(fvec3) FAdd 561 560
Store 247(force) 562
Branch 541
541: Label
566: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
567: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 568 568 12 12
565: 105(ptr) AccessChain 101(params) 564
569: 16(float) Load 565
570: 16(float) FNegate 569
571: 19(fvec3) Load 271(vel)
572: 19(fvec3) VectorTimesScalar 571 570
573: 19(fvec3) Load 247(force)
574: 19(fvec3) FAdd 573 572
Store 247(force) 574
580: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 578 578 12 12
579: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 576 575(f) 45
581: 19(fvec3) Load 247(force)
582: 105(ptr) AccessChain 101(params) 239
583: 16(float) Load 582
584: 16(float) FDiv 210 583
585: 19(fvec3) VectorTimesScalar 581 584
Store 575(f) 585
587: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 588 588 12 12
586: 7(int) Load 139(index)
589: 19(fvec3) Load 261(pos)
590: 19(fvec3) Load 271(vel)
591: 105(ptr) AccessChain 101(params) 203
592: 16(float) Load 591
593: 19(fvec3) VectorTimesScalar 590 592
594: 19(fvec3) FAdd 589 593
596: 19(fvec3) Load 575(f)
597: 19(fvec3) VectorTimesScalar 596 595
598: 105(ptr) AccessChain 101(params) 203
599: 16(float) Load 598
600: 19(fvec3) VectorTimesScalar 597 599
601: 105(ptr) AccessChain 101(params) 203
602: 16(float) Load 601
603: 19(fvec3) VectorTimesScalar 600 602
604: 19(fvec3) FAdd 594 603
605: 16(float) CompositeExtract 604 0
606: 16(float) CompositeExtract 604 1
607: 16(float) CompositeExtract 604 2
608: 71(fvec4) CompositeConstruct 605 606 607 210
609: 231(ptr) AccessChain 225 203 586 203
Store 609 608
611: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 612 612 12 12
610: 7(int) Load 139(index)
613: 19(fvec3) Load 271(vel)
614: 19(fvec3) Load 575(f)
615: 105(ptr) AccessChain 101(params) 203
616: 16(float) Load 615
617: 19(fvec3) VectorTimesScalar 614 616
618: 19(fvec3) FAdd 613 617
619: 16(float) CompositeExtract 618 0
620: 16(float) CompositeExtract 618 1
621: 16(float) CompositeExtract 618 2
622: 71(fvec4) CompositeConstruct 619 620 621 240
623: 231(ptr) AccessChain 225 203 610 239
Store 623 622
629: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 627 627 12 12
628: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 625 624(sphereDist) 45
630: 7(int) Load 139(index)
631: 231(ptr) AccessChain 225 203 630 203
632: 71(fvec4) Load 631
633: 19(fvec3) VectorShuffle 632 632 0 1 2
635: 231(ptr) AccessChain 101(params) 634
636: 71(fvec4) Load 635
637: 19(fvec3) VectorShuffle 636 636 0 1 2
638: 19(fvec3) FSub 633 637
Store 624(sphereDist) 638
640: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 641 641 12 12
639: 19(fvec3) Load 624(sphereDist)
642: 16(float) ExtInst 3(GLSL.std.450) 66(Length) 639
644: 105(ptr) AccessChain 101(params) 643
645: 16(float) Load 644
647: 16(float) FAdd 645 646
648: 166(bool) FOrdLessThan 642 647
SelectionMerge 650 None
BranchConditional 648 649 650
649: Label
652: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
653: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 654 654 12 12
651: 7(int) Load 139(index)
655: 231(ptr) AccessChain 101(params) 634
656: 71(fvec4) Load 655
657: 19(fvec3) VectorShuffle 656 656 0 1 2
658: 19(fvec3) Load 624(sphereDist)
659: 19(fvec3) ExtInst 3(GLSL.std.450) 69(Normalize) 658
660: 105(ptr) AccessChain 101(params) 643
661: 16(float) Load 660
662: 16(float) FAdd 661 646
663: 19(fvec3) VectorTimesScalar 659 662
664: 19(fvec3) FAdd 657 663
665: 105(ptr) AccessChain 225 203 651 203 12
666: 16(float) CompositeExtract 664 0
Store 665 666
667: 105(ptr) AccessChain 225 203 651 203 39
668: 16(float) CompositeExtract 664 1
Store 667 668
669: 105(ptr) AccessChain 225 203 651 203 41
670: 16(float) CompositeExtract 664 2
Store 669 670
672: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 673 673 12 12
671: 7(int) Load 139(index)
674: 231(ptr) AccessChain 225 203 671 239
Store 674 241
Branch 650
650: Label
691: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
692: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 681 681 12 12
690: 688(ptr) AccessChain 685(pushConsts) 203
693: 7(int) Load 690
694: 166(bool) IEqual 693 39
SelectionMerge 696 None
BranchConditional 694 695 696
695: Label
701: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
702: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 699 699 12 12
700: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 698 697(normal) 45
Store 697(normal) 703
705: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 706 706 12 12
704: 137(ptr) AccessChain 125(id) 39
707: 7(int) Load 704
708: 166(bool) UGreaterThan 707 12
SelectionMerge 710 None
BranchConditional 708 709 710
709: Label
712: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
713: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 714 714 12 12
711: 137(ptr) AccessChain 125(id) 12
715: 7(int) Load 711
716: 166(bool) UGreaterThan 715 12
SelectionMerge 718 None
BranchConditional 716 717 718
717: Label
724: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
725: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 722 722 12 12
723: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 720 719(a) 45
726: 7(int) Load 139(index)
727: 7(int) ISub 726 39
728: 231(ptr) AccessChain 200 203 727 203
729: 71(fvec4) Load 728
730: 19(fvec3) VectorShuffle 729 729 0 1 2
731: 19(fvec3) Load 261(pos)
732: 19(fvec3) FSub 730 731
Store 719(a) 732
738: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 736 736 12 12
737: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 734 733(b) 45
739: 7(int) Load 139(index)
740: 148(ptr) AccessChain 101(params) 147 12
741: 73(int) Load 740
742: 7(int) Bitcast 741
743: 7(int) ISub 739 742
744: 7(int) ISub 743 39
745: 231(ptr) AccessChain 200 203 744 203
746: 71(fvec4) Load 745
747: 19(fvec3) VectorShuffle 746 746 0 1 2
748: 19(fvec3) Load 261(pos)
749: 19(fvec3) FSub 747 748
Store 733(b) 749
755: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 753 753 12 12
754: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 751 750(c) 45
756: 7(int) Load 139(index)
757: 148(ptr) AccessChain 101(params) 147 12
758: 73(int) Load 757
759: 7(int) Bitcast 758
760: 7(int) ISub 756 759
761: 231(ptr) AccessChain 200 203 760 203
762: 71(fvec4) Load 761
763: 19(fvec3) VectorShuffle 762 762 0 1 2
764: 19(fvec3) Load 261(pos)
765: 19(fvec3) FSub 763 764
Store 750(c) 765
767: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 768 768 12 12
766: 19(fvec3) Load 719(a)
769: 19(fvec3) Load 733(b)
770: 19(fvec3) ExtInst 3(GLSL.std.450) 68(Cross) 766 769
771: 19(fvec3) Load 733(b)
772: 19(fvec3) Load 750(c)
773: 19(fvec3) ExtInst 3(GLSL.std.450) 68(Cross) 771 772
774: 19(fvec3) FAdd 770 773
775: 19(fvec3) Load 697(normal)
776: 19(fvec3) FAdd 775 774
Store 697(normal) 776
Branch 718
718: Label
778: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
779: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 780 780 12 12
777: 137(ptr) AccessChain 125(id) 12
781: 7(int) Load 777
782: 148(ptr) AccessChain 101(params) 147 12
783: 73(int) Load 782
784: 73(int) ISub 783 239
785: 7(int) Bitcast 784
786: 166(bool) ULessThan 781 785
SelectionMerge 788 None
BranchConditional 786 787 788
787: Label
790: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
791: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 792 792 12 12
789: 7(int) Load 139(index)
793: 148(ptr) AccessChain 101(params) 147 12
794: 73(int) Load 793
795: 7(int) Bitcast 794
796: 7(int) ISub 789 795
797: 231(ptr) AccessChain 200 203 796 203
798: 71(fvec4) Load 797
799: 19(fvec3) VectorShuffle 798 798 0 1 2
800: 19(fvec3) Load 261(pos)
801: 19(fvec3) FSub 799 800
Store 719(a) 801
803: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 804 804 12 12
802: 7(int) Load 139(index)
805: 148(ptr) AccessChain 101(params) 147 12
806: 73(int) Load 805
807: 7(int) Bitcast 806
808: 7(int) ISub 802 807
809: 7(int) IAdd 808 39
810: 231(ptr) AccessChain 200 203 809 203
811: 71(fvec4) Load 810
812: 19(fvec3) VectorShuffle 811 811 0 1 2
813: 19(fvec3) Load 261(pos)
814: 19(fvec3) FSub 812 813
Store 733(b) 814
816: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 817 817 12 12
815: 7(int) Load 139(index)
818: 7(int) IAdd 815 39
819: 231(ptr) AccessChain 200 203 818 203
820: 71(fvec4) Load 819
821: 19(fvec3) VectorShuffle 820 820 0 1 2
822: 19(fvec3) Load 261(pos)
823: 19(fvec3) FSub 821 822
Store 750(c) 823
825: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 826 826 12 12
824: 19(fvec3) Load 719(a)
827: 19(fvec3) Load 733(b)
828: 19(fvec3) ExtInst 3(GLSL.std.450) 68(Cross) 824 827
829: 19(fvec3) Load 733(b)
830: 19(fvec3) Load 750(c)
831: 19(fvec3) ExtInst 3(GLSL.std.450) 68(Cross) 829 830
832: 19(fvec3) FAdd 828 831
833: 19(fvec3) Load 697(normal)
834: 19(fvec3) FAdd 833 832
Store 697(normal) 834
Branch 788
788: Label
835: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
Branch 710
710: Label
837: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
838: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 839 839 12 12
836: 137(ptr) AccessChain 125(id) 39
840: 7(int) Load 836
841: 148(ptr) AccessChain 101(params) 147 39
842: 73(int) Load 841
843: 73(int) ISub 842 239
844: 7(int) Bitcast 843
845: 166(bool) ULessThan 840 844
SelectionMerge 847 None
BranchConditional 845 846 847
846: Label
849: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
850: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 851 851 12 12
848: 137(ptr) AccessChain 125(id) 12
852: 7(int) Load 848
853: 166(bool) UGreaterThan 852 12
SelectionMerge 855 None
BranchConditional 853 854 855
854: Label
857: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
858: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 859 859 12 12
856: 7(int) Load 139(index)
860: 148(ptr) AccessChain 101(params) 147 12
861: 73(int) Load 860
862: 7(int) Bitcast 861
863: 7(int) IAdd 856 862
864: 231(ptr) AccessChain 200 203 863 203
865: 71(fvec4) Load 864
866: 19(fvec3) VectorShuffle 865 865 0 1 2
867: 19(fvec3) Load 261(pos)
868: 19(fvec3) FSub 866 867
Store 719(a) 868
870: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 871 871 12 12
869: 7(int) Load 139(index)
872: 148(ptr) AccessChain 101(params) 147 12
873: 73(int) Load 872
874: 7(int) Bitcast 873
875: 7(int) IAdd 869 874
876: 7(int) ISub 875 39
877: 231(ptr) AccessChain 200 203 876 203
878: 71(fvec4) Load 877
879: 19(fvec3) VectorShuffle 878 878 0 1 2
880: 19(fvec3) Load 261(pos)
881: 19(fvec3) FSub 879 880
Store 733(b) 881
883: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 884 884 12 12
882: 7(int) Load 139(index)
885: 7(int) ISub 882 39
886: 231(ptr) AccessChain 200 203 885 203
887: 71(fvec4) Load 886
888: 19(fvec3) VectorShuffle 887 887 0 1 2
889: 19(fvec3) Load 261(pos)
890: 19(fvec3) FSub 888 889
Store 750(c) 890
892: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 893 893 12 12
891: 19(fvec3) Load 719(a)
894: 19(fvec3) Load 733(b)
895: 19(fvec3) ExtInst 3(GLSL.std.450) 68(Cross) 891 894
896: 19(fvec3) Load 733(b)
897: 19(fvec3) Load 750(c)
898: 19(fvec3) ExtInst 3(GLSL.std.450) 68(Cross) 896 897
899: 19(fvec3) FAdd 895 898
900: 19(fvec3) Load 697(normal)
901: 19(fvec3) FAdd 900 899
Store 697(normal) 901
Branch 855
855: Label
903: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
904: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 905 905 12 12
902: 137(ptr) AccessChain 125(id) 12
906: 7(int) Load 902
907: 148(ptr) AccessChain 101(params) 147 12
908: 73(int) Load 907
909: 73(int) ISub 908 239
910: 7(int) Bitcast 909
911: 166(bool) ULessThan 906 910
SelectionMerge 913 None
BranchConditional 911 912 913
912: Label
915: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
916: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 917 917 12 12
914: 7(int) Load 139(index)
918: 7(int) IAdd 914 39
919: 231(ptr) AccessChain 200 203 918 203
920: 71(fvec4) Load 919
921: 19(fvec3) VectorShuffle 920 920 0 1 2
922: 19(fvec3) Load 261(pos)
923: 19(fvec3) FSub 921 922
Store 719(a) 923
925: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 926 926 12 12
924: 7(int) Load 139(index)
927: 148(ptr) AccessChain 101(params) 147 12
928: 73(int) Load 927
929: 7(int) Bitcast 928
930: 7(int) IAdd 924 929
931: 7(int) IAdd 930 39
932: 231(ptr) AccessChain 200 203 931 203
933: 71(fvec4) Load 932
934: 19(fvec3) VectorShuffle 933 933 0 1 2
935: 19(fvec3) Load 261(pos)
936: 19(fvec3) FSub 934 935
Store 733(b) 936
938: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 939 939 12 12
937: 7(int) Load 139(index)
940: 148(ptr) AccessChain 101(params) 147 12
941: 73(int) Load 940
942: 7(int) Bitcast 941
943: 7(int) IAdd 937 942
944: 231(ptr) AccessChain 200 203 943 203
945: 71(fvec4) Load 944
946: 19(fvec3) VectorShuffle 945 945 0 1 2
947: 19(fvec3) Load 261(pos)
948: 19(fvec3) FSub 946 947
Store 750(c) 948
950: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 951 951 12 12
949: 19(fvec3) Load 719(a)
952: 19(fvec3) Load 733(b)
953: 19(fvec3) ExtInst 3(GLSL.std.450) 68(Cross) 949 952
954: 19(fvec3) Load 733(b)
955: 19(fvec3) Load 750(c)
956: 19(fvec3) ExtInst 3(GLSL.std.450) 68(Cross) 954 955
957: 19(fvec3) FAdd 953 956
958: 19(fvec3) Load 697(normal)
959: 19(fvec3) FAdd 958 957
Store 697(normal) 959
Branch 913
913: Label
960: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
Branch 847
847: Label
962: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
963: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 964 964 12 12
961: 7(int) Load 139(index)
965: 19(fvec3) Load 697(normal)
966: 19(fvec3) ExtInst 3(GLSL.std.450) 69(Normalize) 965
967: 16(float) CompositeExtract 966 0
968: 16(float) CompositeExtract 966 1
969: 16(float) CompositeExtract 966 2
970: 71(fvec4) CompositeConstruct 967 968 969 240
971: 231(ptr) AccessChain 225 203 961 564
Store 971 970
Branch 696
696: Label
972: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
Return
FunctionEnd
31(springForce(vf3;vf3;f1;): 19(fvec3) Function None 26
28(p0): 21(ptr) FunctionParameter
29(p1): 21(ptr) FunctionParameter
30(restDist): 24(ptr) FunctionParameter
32: Label
58(dist): 21(ptr) Variable Function
46: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 34
47: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 37 37 12 12
44: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 42 28(p0) 45
50: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 48 29(p1) 45
53: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 51 30(restDist) 45
57: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 34 31(springForce(vf3;vf3;f1;)
63: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 61 61 12 12
62: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 59 58(dist) 45
64: 19(fvec3) Load 28(p0)
65: 19(fvec3) Load 29(p1)
66: 19(fvec3) FSub 64 65
Store 58(dist) 66
68: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 69 69 12 12
67: 19(fvec3) Load 58(dist)
70: 19(fvec3) ExtInst 3(GLSL.std.450) 69(Normalize) 67
107: 105(ptr) AccessChain 101(params) 104
108: 16(float) Load 107
109: 19(fvec3) VectorTimesScalar 70 108
110: 19(fvec3) Load 58(dist)
111: 16(float) ExtInst 3(GLSL.std.450) 66(Length) 110
112: 16(float) Load 30(restDist)
113: 16(float) FSub 111 112
114: 19(fvec3) VectorTimesScalar 109 113
ReturnValue 114
FunctionEnd