glslang-zig/Test/baseResults/spv.debuginfo.glsl.comp.out
Sajjad Mirza f69d2768e5
Use line and column from node on DebugLexicalBlock.
* Fix bug in TestFixture.h, debug info gets enabled when nonsemantic debug info is requested.
2024-10-04 14:11:27 -04:00

1426 lines
80 KiB
Text

spv.debuginfo.glsl.comp
// Module Version 10000
// Generated by (magic number): 8000b
// Id's are bound by 999
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" 135
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"
129: String "id"
137: String "gl_GlobalInvocationID"
143: String "index"
169: String "bool"
180: String "normal"
186: String "pinned"
188: String "Particle"
194: String "particleIn"
198: String "ParticleIn"
203: String ""
222: String "particleOut"
225: String "ParticleOut"
251: String "force"
265: String "pos"
275: String "vel"
592: String "f"
641: String "sphereDist"
694: String "calculateNormals"
697: String "PushConsts"
703: String "pushConsts"
742: String "a"
755: String "b"
772: 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 127 "id"
Name 135 "gl_GlobalInvocationID"
Name 141 "index"
Name 178 "Particle"
MemberName 178(Particle) 0 "pos"
MemberName 178(Particle) 1 "vel"
MemberName 178(Particle) 2 "uv"
MemberName 178(Particle) 3 "normal"
MemberName 178(Particle) 4 "pinned"
Name 192 "ParticleIn"
MemberName 192(ParticleIn) 0 "particleIn"
Name 201 ""
Name 220 "ParticleOut"
MemberName 220(ParticleOut) 0 "particleOut"
Name 228 ""
Name 249 "force"
Name 263 "pos"
Name 273 "vel"
Name 297 "param"
Name 301 "param"
Name 303 "param"
Name 327 "param"
Name 331 "param"
Name 333 "param"
Name 361 "param"
Name 365 "param"
Name 367 "param"
Name 390 "param"
Name 394 "param"
Name 396 "param"
Name 435 "param"
Name 439 "param"
Name 441 "param"
Name 475 "param"
Name 479 "param"
Name 481 "param"
Name 523 "param"
Name 527 "param"
Name 529 "param"
Name 567 "param"
Name 571 "param"
Name 573 "param"
Name 590 "f"
Name 639 "sphereDist"
Name 692 "PushConsts"
MemberName 692(PushConsts) 0 "calculateNormals"
Name 701 "pushConsts"
Name 716 "normal"
Name 740 "a"
Name 753 "b"
Name 770 "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 135(gl_GlobalInvocationID) BuiltIn GlobalInvocationId
MemberDecorate 178(Particle) 0 Offset 0
MemberDecorate 178(Particle) 1 Offset 16
MemberDecorate 178(Particle) 2 Offset 32
MemberDecorate 178(Particle) 3 Offset 48
MemberDecorate 178(Particle) 4 Offset 64
Decorate 190 ArrayStride 80
Decorate 192(ParticleIn) BufferBlock
MemberDecorate 192(ParticleIn) 0 Offset 0
Decorate 201 Binding 0
Decorate 201 DescriptorSet 0
Decorate 218 ArrayStride 80
Decorate 220(ParticleOut) BufferBlock
MemberDecorate 220(ParticleOut) 0 Offset 0
Decorate 228 Binding 1
Decorate 228 DescriptorSet 0
Decorate 692(PushConsts) Block
MemberDecorate 692(PushConsts) 0 Offset 0
Decorate 998 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
119: 7(int) Constant 70
123: TypeVector 7(int) 3
124: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 9 13
125: TypePointer Function 123(ivec3)
126: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 124 22 12
130: 7(int) Constant 74
128: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 129 124 35 130 12 55 40
133: TypePointer Input 123(ivec3)
134: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 124 39 12
135(gl_GlobalInvocationID): 133(ptr) Variable Input
136: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 137 124 35 130 12 38 137 135(gl_GlobalInvocationID) 82
139: TypePointer Function 7(int)
140: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 9 22 12
144: 7(int) Constant 76
142: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 143 9 35 144 12 55 40
149: 73(int) Constant 10
150: TypePointer Uniform 73(int)
151: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 75 41 12
161: 7(int) Constant 77
168: TypeBool
170: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 169 10 41 12
176: 7(int) Constant 78
178(Particle): TypeStruct 71(fvec4) 71(fvec4) 71(fvec4) 71(fvec4) 16(float)
181: 7(int) Constant 31
179: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 180 72 35 181 22 12 12 13
182: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 180 72 35 181 22 12 12 13
183: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 180 72 35 181 22 12 12 13
184: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 180 72 35 181 22 12 12 13
185: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 186 18 35 10 82 12 12 13
189: 7(int) Constant 81
187: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 188 39 35 189 12 38 188 12 13 179 182 183 184 185
190: TypeRuntimeArray 178(Particle)
191: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 187 12
192(ParticleIn): TypeStruct 190
195: 7(int) Constant 36
196: 7(int) Constant 11
193: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 194 191 35 195 196 12 12 13
197: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 198 39 35 189 12 38 198 12 13 193
199: TypePointer Uniform 192(ParticleIn)
200: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 197 41 12
201: 199(ptr) Variable Uniform
202: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 203 197 35 189 12 38 203 201 82
204: 73(int) Constant 0
208: 73(int) Constant 4
211: 16(float) Constant 1065353216
216: 7(int) Constant 82
217: 7(int) Constant 26
215: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 35 216 217 55
218: TypeRuntimeArray 178(Particle)
219: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 187 12
220(ParticleOut): TypeStruct 218
223: 7(int) Constant 40
221: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 222 219 35 223 196 12 12 13
224: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 225 39 35 216 12 38 225 12 13 221
226: TypePointer Uniform 220(ParticleOut)
227: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 224 41 12
228: 226(ptr) Variable Uniform
229: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 203 224 35 216 12 38 203 228 82
234: TypePointer Uniform 71(fvec4)
235: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 72 41 12
241: 7(int) Constant 83
242: 73(int) Constant 1
243: 16(float) Constant 0
244: 71(fvec4) ConstantComposite 243 243 243 243
247: 7(int) Constant 84
252: 7(int) Constant 88
250: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 251 20 35 252 12 55 40
256: 73(int) Constant 9
266: 7(int) Constant 90
264: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 265 20 35 266 12 55 40
276: 7(int) Constant 91
274: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 275 20 35 276 12 55 40
285: 7(int) Constant 95
291: 7(int) Constant 96
292: 7(int) Constant 9
290: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 35 291 292 55
312: 7(int) Constant 99
322: 7(int) Constant 100
321: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 35 322 292 55
342: 7(int) Constant 103
352: 7(int) Constant 104
351: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 35 352 292 55
360: 73(int) Constant 5
376: 7(int) Constant 107
382: 7(int) Constant 108
381: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 35 382 292 55
405: 7(int) Constant 111
425: 7(int) Constant 112
424: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 35 425 292 55
434: 73(int) Constant 6
450: 7(int) Constant 115
466: 7(int) Constant 116
465: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 35 466 292 55
490: 7(int) Constant 119
514: 7(int) Constant 120
513: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 35 514 292 55
538: 7(int) Constant 123
558: 7(int) Constant 124
557: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 35 558 292 55
579: 73(int) Constant 3
583: 7(int) Constant 127
593: 7(int) Constant 130
591: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 592 20 35 593 12 55 40
603: 7(int) Constant 131
610: 16(float) Constant 1056964608
627: 7(int) Constant 132
642: 7(int) Constant 135
640: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 641 20 35 642 12 55 40
649: 73(int) Constant 8
656: 7(int) Constant 136
658: 73(int) Constant 7
661: 16(float) Constant 1008981770
667: 7(int) Constant 138
668: 7(int) Constant 30
666: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 35 667 668 55
690: 7(int) Constant 140
692(PushConsts): TypeStruct 7(int)
695: 7(int) Constant 63
693: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 694 9 35 695 22 12 12 13
698: 7(int) Constant 144
696: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 697 39 35 698 12 38 697 12 13 693
699: TypePointer PushConstant 692(PushConsts)
700: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 696 292 12
701(pushConsts): 699(ptr) Variable PushConstant
702: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 703 696 35 698 12 38 703 701(pushConsts) 82
704: TypePointer PushConstant 7(int)
705: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 9 292 12
714: 7(int) Constant 145
715: 7(int) Constant 15
713: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 35 714 715 55
717: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 180 20 35 714 12 713 40
721: 19(fvec3) ConstantComposite 243 243 243
724: 7(int) Constant 147
730: 7(int) Constant 148
729: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 35 730 40 713
739: 7(int) Constant 149
738: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 35 739 22 729
741: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 742 20 35 739 12 738 40
756: 7(int) Constant 150
754: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 755 20 35 756 12 738 40
773: 7(int) Constant 151
771: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 772 20 35 773 12 738 40
788: 7(int) Constant 152
800: 7(int) Constant 154
810: 7(int) Constant 155
809: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 35 810 22 729
825: 7(int) Constant 156
838: 7(int) Constant 157
847: 7(int) Constant 158
859: 7(int) Constant 161
869: 7(int) Constant 162
868: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 35 869 40 713
878: 7(int) Constant 163
877: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 35 878 22 868
893: 7(int) Constant 164
906: 7(int) Constant 165
915: 7(int) Constant 166
927: 7(int) Constant 168
937: 7(int) Constant 169
936: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 35 937 22 868
949: 7(int) Constant 170
962: 7(int) Constant 171
974: 7(int) Constant 172
986: 7(int) Constant 175
996: 7(int) Constant 177
997: 7(int) Constant 10
998: 123(ivec3) ConstantComposite 997 997 39
14(main): 4 Function None 5
15: Label
127(id): 125(ptr) Variable Function
141(index): 139(ptr) Variable Function
249(force): 21(ptr) Variable Function
263(pos): 21(ptr) Variable Function
273(vel): 21(ptr) Variable Function
297(param): 21(ptr) Variable Function
301(param): 21(ptr) Variable Function
303(param): 24(ptr) Variable Function
327(param): 21(ptr) Variable Function
331(param): 21(ptr) Variable Function
333(param): 24(ptr) Variable Function
361(param): 21(ptr) Variable Function
365(param): 21(ptr) Variable Function
367(param): 24(ptr) Variable Function
390(param): 21(ptr) Variable Function
394(param): 21(ptr) Variable Function
396(param): 24(ptr) Variable Function
435(param): 21(ptr) Variable Function
439(param): 21(ptr) Variable Function
441(param): 24(ptr) Variable Function
475(param): 21(ptr) Variable Function
479(param): 21(ptr) Variable Function
481(param): 24(ptr) Variable Function
523(param): 21(ptr) Variable Function
527(param): 21(ptr) Variable Function
529(param): 24(ptr) Variable Function
567(param): 21(ptr) Variable Function
571(param): 21(ptr) Variable Function
573(param): 24(ptr) Variable Function
590(f): 21(ptr) Variable Function
639(sphereDist): 21(ptr) Variable Function
716(normal): 21(ptr) Variable Function
740(a): 21(ptr) Variable Function
753(b): 21(ptr) Variable Function
770(c): 21(ptr) Variable Function
121: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
122: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 56 56 12 12
120: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 55 14(main)
132: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 130 130 12 12
131: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 128 127(id) 45
138: 123(ivec3) Load 135(gl_GlobalInvocationID)
Store 127(id) 138
146: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 144 144 12 12
145: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 142 141(index) 45
147: 139(ptr) AccessChain 127(id) 39
148: 7(int) Load 147
152: 150(ptr) AccessChain 101(params) 149 12
153: 73(int) Load 152
154: 7(int) Bitcast 153
155: 7(int) IMul 148 154
156: 139(ptr) AccessChain 127(id) 12
157: 7(int) Load 156
158: 7(int) IAdd 155 157
Store 141(index) 158
160: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 161 161 12 12
159: 7(int) Load 141(index)
162: 150(ptr) AccessChain 101(params) 149 12
163: 73(int) Load 162
164: 150(ptr) AccessChain 101(params) 149 39
165: 73(int) Load 164
166: 73(int) IMul 163 165
167: 7(int) Bitcast 166
171: 168(bool) UGreaterThan 159 167
SelectionMerge 173 None
BranchConditional 171 172 173
172: Label
174: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
175: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 176 176 12 12
Return
173: Label
206: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
207: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 189 189 12 12
205: 7(int) Load 141(index)
209: 105(ptr) AccessChain 201 204 205 208
210: 16(float) Load 209
212: 168(bool) FOrdEqual 210 211
SelectionMerge 214 None
BranchConditional 212 213 214
213: Label
231: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 215
232: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 216 216 12 12
230: 7(int) Load 141(index)
233: 7(int) Load 141(index)
236: 234(ptr) AccessChain 228 204 233 204
237: 71(fvec4) Load 236
238: 234(ptr) AccessChain 228 204 230 204
Store 238 237
240: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 241 241 12 12
239: 7(int) Load 141(index)
245: 234(ptr) AccessChain 228 204 239 242
Store 245 244
246: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 247 247 12 12
Return
214: Label
254: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
255: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 252 252 12 12
253: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 250 249(force) 45
257: 234(ptr) AccessChain 101(params) 256
258: 71(fvec4) Load 257
259: 19(fvec3) VectorShuffle 258 258 0 1 2
260: 105(ptr) AccessChain 101(params) 242
261: 16(float) Load 260
262: 19(fvec3) VectorTimesScalar 259 261
Store 249(force) 262
268: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 266 266 12 12
267: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 264 263(pos) 45
269: 7(int) Load 141(index)
270: 234(ptr) AccessChain 201 204 269 204
271: 71(fvec4) Load 270
272: 19(fvec3) VectorShuffle 271 271 0 1 2
Store 263(pos) 272
278: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 276 276 12 12
277: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 274 273(vel) 45
279: 7(int) Load 141(index)
280: 234(ptr) AccessChain 201 204 279 242
281: 71(fvec4) Load 280
282: 19(fvec3) VectorShuffle 281 281 0 1 2
Store 273(vel) 282
284: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 285 285 12 12
283: 139(ptr) AccessChain 127(id) 12
286: 7(int) Load 283
287: 168(bool) UGreaterThan 286 12
SelectionMerge 289 None
BranchConditional 287 288 289
288: Label
294: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 290
295: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 291 291 12 12
293: 7(int) Load 141(index)
296: 7(int) ISub 293 39
298: 234(ptr) AccessChain 201 204 296 204
299: 71(fvec4) Load 298
300: 19(fvec3) VectorShuffle 299 299 0 1 2
Store 297(param) 300
302: 19(fvec3) Load 263(pos)
Store 301(param) 302
304: 105(ptr) AccessChain 101(params) 208
305: 16(float) Load 304
Store 303(param) 305
306: 19(fvec3) FunctionCall 31(springForce(vf3;vf3;f1;) 297(param) 301(param) 303(param)
307: 19(fvec3) Load 249(force)
308: 19(fvec3) FAdd 307 306
Store 249(force) 308
Branch 289
289: Label
310: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
311: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 312 312 12 12
309: 139(ptr) AccessChain 127(id) 12
313: 7(int) Load 309
314: 150(ptr) AccessChain 101(params) 149 12
315: 73(int) Load 314
316: 73(int) ISub 315 242
317: 7(int) Bitcast 316
318: 168(bool) ULessThan 313 317
SelectionMerge 320 None
BranchConditional 318 319 320
319: Label
324: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 321
325: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 322 322 12 12
323: 7(int) Load 141(index)
326: 7(int) IAdd 323 39
328: 234(ptr) AccessChain 201 204 326 204
329: 71(fvec4) Load 328
330: 19(fvec3) VectorShuffle 329 329 0 1 2
Store 327(param) 330
332: 19(fvec3) Load 263(pos)
Store 331(param) 332
334: 105(ptr) AccessChain 101(params) 208
335: 16(float) Load 334
Store 333(param) 335
336: 19(fvec3) FunctionCall 31(springForce(vf3;vf3;f1;) 327(param) 331(param) 333(param)
337: 19(fvec3) Load 249(force)
338: 19(fvec3) FAdd 337 336
Store 249(force) 338
Branch 320
320: Label
340: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
341: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 342 342 12 12
339: 139(ptr) AccessChain 127(id) 39
343: 7(int) Load 339
344: 150(ptr) AccessChain 101(params) 149 39
345: 73(int) Load 344
346: 73(int) ISub 345 242
347: 7(int) Bitcast 346
348: 168(bool) ULessThan 343 347
SelectionMerge 350 None
BranchConditional 348 349 350
349: Label
354: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 351
355: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 352 352 12 12
353: 7(int) Load 141(index)
356: 150(ptr) AccessChain 101(params) 149 12
357: 73(int) Load 356
358: 7(int) Bitcast 357
359: 7(int) IAdd 353 358
362: 234(ptr) AccessChain 201 204 359 204
363: 71(fvec4) Load 362
364: 19(fvec3) VectorShuffle 363 363 0 1 2
Store 361(param) 364
366: 19(fvec3) Load 263(pos)
Store 365(param) 366
368: 105(ptr) AccessChain 101(params) 360
369: 16(float) Load 368
Store 367(param) 369
370: 19(fvec3) FunctionCall 31(springForce(vf3;vf3;f1;) 361(param) 365(param) 367(param)
371: 19(fvec3) Load 249(force)
372: 19(fvec3) FAdd 371 370
Store 249(force) 372
Branch 350
350: Label
374: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
375: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 376 376 12 12
373: 139(ptr) AccessChain 127(id) 39
377: 7(int) Load 373
378: 168(bool) UGreaterThan 377 12
SelectionMerge 380 None
BranchConditional 378 379 380
379: Label
384: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 381
385: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 382 382 12 12
383: 7(int) Load 141(index)
386: 150(ptr) AccessChain 101(params) 149 12
387: 73(int) Load 386
388: 7(int) Bitcast 387
389: 7(int) ISub 383 388
391: 234(ptr) AccessChain 201 204 389 204
392: 71(fvec4) Load 391
393: 19(fvec3) VectorShuffle 392 392 0 1 2
Store 390(param) 393
395: 19(fvec3) Load 263(pos)
Store 394(param) 395
397: 105(ptr) AccessChain 101(params) 360
398: 16(float) Load 397
Store 396(param) 398
399: 19(fvec3) FunctionCall 31(springForce(vf3;vf3;f1;) 390(param) 394(param) 396(param)
400: 19(fvec3) Load 249(force)
401: 19(fvec3) FAdd 400 399
Store 249(force) 401
Branch 380
380: Label
403: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
404: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 405 405 12 12
402: 139(ptr) AccessChain 127(id) 12
406: 7(int) Load 402
407: 168(bool) UGreaterThan 406 12
SelectionMerge 409 None
BranchConditional 407 408 409
408: Label
411: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
412: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 405 405 12 12
410: 139(ptr) AccessChain 127(id) 39
413: 7(int) Load 410
414: 150(ptr) AccessChain 101(params) 149 39
415: 73(int) Load 414
416: 73(int) ISub 415 242
417: 7(int) Bitcast 416
418: 168(bool) ULessThan 413 417
Branch 409
409: Label
419: 168(bool) Phi 407 380 418 408
422: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
423: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 405 405 12 12
SelectionMerge 421 None
BranchConditional 419 420 421
420: Label
427: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 424
428: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 425 425 12 12
426: 7(int) Load 141(index)
429: 150(ptr) AccessChain 101(params) 149 12
430: 73(int) Load 429
431: 7(int) Bitcast 430
432: 7(int) IAdd 426 431
433: 7(int) ISub 432 39
436: 234(ptr) AccessChain 201 204 433 204
437: 71(fvec4) Load 436
438: 19(fvec3) VectorShuffle 437 437 0 1 2
Store 435(param) 438
440: 19(fvec3) Load 263(pos)
Store 439(param) 440
442: 105(ptr) AccessChain 101(params) 434
443: 16(float) Load 442
Store 441(param) 443
444: 19(fvec3) FunctionCall 31(springForce(vf3;vf3;f1;) 435(param) 439(param) 441(param)
445: 19(fvec3) Load 249(force)
446: 19(fvec3) FAdd 445 444
Store 249(force) 446
Branch 421
421: Label
448: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
449: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 450 450 12 12
447: 139(ptr) AccessChain 127(id) 12
451: 7(int) Load 447
452: 168(bool) UGreaterThan 451 12
SelectionMerge 454 None
BranchConditional 452 453 454
453: Label
456: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
457: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 450 450 12 12
455: 139(ptr) AccessChain 127(id) 39
458: 7(int) Load 455
459: 168(bool) UGreaterThan 458 12
Branch 454
454: Label
460: 168(bool) Phi 452 421 459 453
463: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
464: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 450 450 12 12
SelectionMerge 462 None
BranchConditional 460 461 462
461: Label
468: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 465
469: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 466 466 12 12
467: 7(int) Load 141(index)
470: 150(ptr) AccessChain 101(params) 149 12
471: 73(int) Load 470
472: 7(int) Bitcast 471
473: 7(int) ISub 467 472
474: 7(int) ISub 473 39
476: 234(ptr) AccessChain 201 204 474 204
477: 71(fvec4) Load 476
478: 19(fvec3) VectorShuffle 477 477 0 1 2
Store 475(param) 478
480: 19(fvec3) Load 263(pos)
Store 479(param) 480
482: 105(ptr) AccessChain 101(params) 434
483: 16(float) Load 482
Store 481(param) 483
484: 19(fvec3) FunctionCall 31(springForce(vf3;vf3;f1;) 475(param) 479(param) 481(param)
485: 19(fvec3) Load 249(force)
486: 19(fvec3) FAdd 485 484
Store 249(force) 486
Branch 462
462: Label
488: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
489: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 490 490 12 12
487: 139(ptr) AccessChain 127(id) 12
491: 7(int) Load 487
492: 150(ptr) AccessChain 101(params) 149 12
493: 73(int) Load 492
494: 73(int) ISub 493 242
495: 7(int) Bitcast 494
496: 168(bool) ULessThan 491 495
SelectionMerge 498 None
BranchConditional 496 497 498
497: Label
500: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
501: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 490 490 12 12
499: 139(ptr) AccessChain 127(id) 39
502: 7(int) Load 499
503: 150(ptr) AccessChain 101(params) 149 39
504: 73(int) Load 503
505: 73(int) ISub 504 242
506: 7(int) Bitcast 505
507: 168(bool) ULessThan 502 506
Branch 498
498: Label
508: 168(bool) Phi 496 462 507 497
511: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
512: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 490 490 12 12
SelectionMerge 510 None
BranchConditional 508 509 510
509: Label
516: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 513
517: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 514 514 12 12
515: 7(int) Load 141(index)
518: 150(ptr) AccessChain 101(params) 149 12
519: 73(int) Load 518
520: 7(int) Bitcast 519
521: 7(int) IAdd 515 520
522: 7(int) IAdd 521 39
524: 234(ptr) AccessChain 201 204 522 204
525: 71(fvec4) Load 524
526: 19(fvec3) VectorShuffle 525 525 0 1 2
Store 523(param) 526
528: 19(fvec3) Load 263(pos)
Store 527(param) 528
530: 105(ptr) AccessChain 101(params) 434
531: 16(float) Load 530
Store 529(param) 531
532: 19(fvec3) FunctionCall 31(springForce(vf3;vf3;f1;) 523(param) 527(param) 529(param)
533: 19(fvec3) Load 249(force)
534: 19(fvec3) FAdd 533 532
Store 249(force) 534
Branch 510
510: Label
536: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
537: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 538 538 12 12
535: 139(ptr) AccessChain 127(id) 12
539: 7(int) Load 535
540: 150(ptr) AccessChain 101(params) 149 12
541: 73(int) Load 540
542: 73(int) ISub 541 242
543: 7(int) Bitcast 542
544: 168(bool) ULessThan 539 543
SelectionMerge 546 None
BranchConditional 544 545 546
545: Label
548: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
549: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 538 538 12 12
547: 139(ptr) AccessChain 127(id) 39
550: 7(int) Load 547
551: 168(bool) UGreaterThan 550 12
Branch 546
546: Label
552: 168(bool) Phi 544 510 551 545
555: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
556: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 538 538 12 12
SelectionMerge 554 None
BranchConditional 552 553 554
553: Label
560: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 557
561: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 558 558 12 12
559: 7(int) Load 141(index)
562: 150(ptr) AccessChain 101(params) 149 12
563: 73(int) Load 562
564: 7(int) Bitcast 563
565: 7(int) ISub 559 564
566: 7(int) IAdd 565 39
568: 234(ptr) AccessChain 201 204 566 204
569: 71(fvec4) Load 568
570: 19(fvec3) VectorShuffle 569 569 0 1 2
Store 567(param) 570
572: 19(fvec3) Load 263(pos)
Store 571(param) 572
574: 105(ptr) AccessChain 101(params) 434
575: 16(float) Load 574
Store 573(param) 575
576: 19(fvec3) FunctionCall 31(springForce(vf3;vf3;f1;) 567(param) 571(param) 573(param)
577: 19(fvec3) Load 249(force)
578: 19(fvec3) FAdd 577 576
Store 249(force) 578
Branch 554
554: Label
581: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
582: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 583 583 12 12
580: 105(ptr) AccessChain 101(params) 579
584: 16(float) Load 580
585: 16(float) FNegate 584
586: 19(fvec3) Load 273(vel)
587: 19(fvec3) VectorTimesScalar 586 585
588: 19(fvec3) Load 249(force)
589: 19(fvec3) FAdd 588 587
Store 249(force) 589
595: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 593 593 12 12
594: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 591 590(f) 45
596: 19(fvec3) Load 249(force)
597: 105(ptr) AccessChain 101(params) 242
598: 16(float) Load 597
599: 16(float) FDiv 211 598
600: 19(fvec3) VectorTimesScalar 596 599
Store 590(f) 600
602: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 603 603 12 12
601: 7(int) Load 141(index)
604: 19(fvec3) Load 263(pos)
605: 19(fvec3) Load 273(vel)
606: 105(ptr) AccessChain 101(params) 204
607: 16(float) Load 606
608: 19(fvec3) VectorTimesScalar 605 607
609: 19(fvec3) FAdd 604 608
611: 19(fvec3) Load 590(f)
612: 19(fvec3) VectorTimesScalar 611 610
613: 105(ptr) AccessChain 101(params) 204
614: 16(float) Load 613
615: 19(fvec3) VectorTimesScalar 612 614
616: 105(ptr) AccessChain 101(params) 204
617: 16(float) Load 616
618: 19(fvec3) VectorTimesScalar 615 617
619: 19(fvec3) FAdd 609 618
620: 16(float) CompositeExtract 619 0
621: 16(float) CompositeExtract 619 1
622: 16(float) CompositeExtract 619 2
623: 71(fvec4) CompositeConstruct 620 621 622 211
624: 234(ptr) AccessChain 228 204 601 204
Store 624 623
626: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 627 627 12 12
625: 7(int) Load 141(index)
628: 19(fvec3) Load 273(vel)
629: 19(fvec3) Load 590(f)
630: 105(ptr) AccessChain 101(params) 204
631: 16(float) Load 630
632: 19(fvec3) VectorTimesScalar 629 631
633: 19(fvec3) FAdd 628 632
634: 16(float) CompositeExtract 633 0
635: 16(float) CompositeExtract 633 1
636: 16(float) CompositeExtract 633 2
637: 71(fvec4) CompositeConstruct 634 635 636 243
638: 234(ptr) AccessChain 228 204 625 242
Store 638 637
644: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 642 642 12 12
643: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 640 639(sphereDist) 45
645: 7(int) Load 141(index)
646: 234(ptr) AccessChain 228 204 645 204
647: 71(fvec4) Load 646
648: 19(fvec3) VectorShuffle 647 647 0 1 2
650: 234(ptr) AccessChain 101(params) 649
651: 71(fvec4) Load 650
652: 19(fvec3) VectorShuffle 651 651 0 1 2
653: 19(fvec3) FSub 648 652
Store 639(sphereDist) 653
655: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 656 656 12 12
654: 19(fvec3) Load 639(sphereDist)
657: 16(float) ExtInst 3(GLSL.std.450) 66(Length) 654
659: 105(ptr) AccessChain 101(params) 658
660: 16(float) Load 659
662: 16(float) FAdd 660 661
663: 168(bool) FOrdLessThan 657 662
SelectionMerge 665 None
BranchConditional 663 664 665
664: Label
670: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 666
671: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 667 667 12 12
669: 7(int) Load 141(index)
672: 234(ptr) AccessChain 101(params) 649
673: 71(fvec4) Load 672
674: 19(fvec3) VectorShuffle 673 673 0 1 2
675: 19(fvec3) Load 639(sphereDist)
676: 19(fvec3) ExtInst 3(GLSL.std.450) 69(Normalize) 675
677: 105(ptr) AccessChain 101(params) 658
678: 16(float) Load 677
679: 16(float) FAdd 678 661
680: 19(fvec3) VectorTimesScalar 676 679
681: 19(fvec3) FAdd 674 680
682: 105(ptr) AccessChain 228 204 669 204 12
683: 16(float) CompositeExtract 681 0
Store 682 683
684: 105(ptr) AccessChain 228 204 669 204 39
685: 16(float) CompositeExtract 681 1
Store 684 685
686: 105(ptr) AccessChain 228 204 669 204 41
687: 16(float) CompositeExtract 681 2
Store 686 687
689: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 690 690 12 12
688: 7(int) Load 141(index)
691: 234(ptr) AccessChain 228 204 688 242
Store 691 244
Branch 665
665: Label
707: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
708: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 698 698 12 12
706: 704(ptr) AccessChain 701(pushConsts) 204
709: 7(int) Load 706
710: 168(bool) IEqual 709 39
SelectionMerge 712 None
BranchConditional 710 711 712
711: Label
719: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 713
720: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 714 714 12 12
718: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 717 716(normal) 45
Store 716(normal) 721
723: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 724 724 12 12
722: 139(ptr) AccessChain 127(id) 39
725: 7(int) Load 722
726: 168(bool) UGreaterThan 725 12
SelectionMerge 728 None
BranchConditional 726 727 728
727: Label
732: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 729
733: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 730 730 12 12
731: 139(ptr) AccessChain 127(id) 12
734: 7(int) Load 731
735: 168(bool) UGreaterThan 734 12
SelectionMerge 737 None
BranchConditional 735 736 737
736: Label
744: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 738
745: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 739 739 12 12
743: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 741 740(a) 45
746: 7(int) Load 141(index)
747: 7(int) ISub 746 39
748: 234(ptr) AccessChain 201 204 747 204
749: 71(fvec4) Load 748
750: 19(fvec3) VectorShuffle 749 749 0 1 2
751: 19(fvec3) Load 263(pos)
752: 19(fvec3) FSub 750 751
Store 740(a) 752
758: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 756 756 12 12
757: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 754 753(b) 45
759: 7(int) Load 141(index)
760: 150(ptr) AccessChain 101(params) 149 12
761: 73(int) Load 760
762: 7(int) Bitcast 761
763: 7(int) ISub 759 762
764: 7(int) ISub 763 39
765: 234(ptr) AccessChain 201 204 764 204
766: 71(fvec4) Load 765
767: 19(fvec3) VectorShuffle 766 766 0 1 2
768: 19(fvec3) Load 263(pos)
769: 19(fvec3) FSub 767 768
Store 753(b) 769
775: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 773 773 12 12
774: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 771 770(c) 45
776: 7(int) Load 141(index)
777: 150(ptr) AccessChain 101(params) 149 12
778: 73(int) Load 777
779: 7(int) Bitcast 778
780: 7(int) ISub 776 779
781: 234(ptr) AccessChain 201 204 780 204
782: 71(fvec4) Load 781
783: 19(fvec3) VectorShuffle 782 782 0 1 2
784: 19(fvec3) Load 263(pos)
785: 19(fvec3) FSub 783 784
Store 770(c) 785
787: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 788 788 12 12
786: 19(fvec3) Load 740(a)
789: 19(fvec3) Load 753(b)
790: 19(fvec3) ExtInst 3(GLSL.std.450) 68(Cross) 786 789
791: 19(fvec3) Load 753(b)
792: 19(fvec3) Load 770(c)
793: 19(fvec3) ExtInst 3(GLSL.std.450) 68(Cross) 791 792
794: 19(fvec3) FAdd 790 793
795: 19(fvec3) Load 716(normal)
796: 19(fvec3) FAdd 795 794
Store 716(normal) 796
Branch 737
737: Label
798: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 729
799: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 800 800 12 12
797: 139(ptr) AccessChain 127(id) 12
801: 7(int) Load 797
802: 150(ptr) AccessChain 101(params) 149 12
803: 73(int) Load 802
804: 73(int) ISub 803 242
805: 7(int) Bitcast 804
806: 168(bool) ULessThan 801 805
SelectionMerge 808 None
BranchConditional 806 807 808
807: Label
812: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 809
813: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 810 810 12 12
811: 7(int) Load 141(index)
814: 150(ptr) AccessChain 101(params) 149 12
815: 73(int) Load 814
816: 7(int) Bitcast 815
817: 7(int) ISub 811 816
818: 234(ptr) AccessChain 201 204 817 204
819: 71(fvec4) Load 818
820: 19(fvec3) VectorShuffle 819 819 0 1 2
821: 19(fvec3) Load 263(pos)
822: 19(fvec3) FSub 820 821
Store 740(a) 822
824: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 825 825 12 12
823: 7(int) Load 141(index)
826: 150(ptr) AccessChain 101(params) 149 12
827: 73(int) Load 826
828: 7(int) Bitcast 827
829: 7(int) ISub 823 828
830: 7(int) IAdd 829 39
831: 234(ptr) AccessChain 201 204 830 204
832: 71(fvec4) Load 831
833: 19(fvec3) VectorShuffle 832 832 0 1 2
834: 19(fvec3) Load 263(pos)
835: 19(fvec3) FSub 833 834
Store 753(b) 835
837: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 838 838 12 12
836: 7(int) Load 141(index)
839: 7(int) IAdd 836 39
840: 234(ptr) AccessChain 201 204 839 204
841: 71(fvec4) Load 840
842: 19(fvec3) VectorShuffle 841 841 0 1 2
843: 19(fvec3) Load 263(pos)
844: 19(fvec3) FSub 842 843
Store 770(c) 844
846: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 847 847 12 12
845: 19(fvec3) Load 740(a)
848: 19(fvec3) Load 753(b)
849: 19(fvec3) ExtInst 3(GLSL.std.450) 68(Cross) 845 848
850: 19(fvec3) Load 753(b)
851: 19(fvec3) Load 770(c)
852: 19(fvec3) ExtInst 3(GLSL.std.450) 68(Cross) 850 851
853: 19(fvec3) FAdd 849 852
854: 19(fvec3) Load 716(normal)
855: 19(fvec3) FAdd 854 853
Store 716(normal) 855
Branch 808
808: Label
Branch 728
728: Label
857: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 713
858: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 859 859 12 12
856: 139(ptr) AccessChain 127(id) 39
860: 7(int) Load 856
861: 150(ptr) AccessChain 101(params) 149 39
862: 73(int) Load 861
863: 73(int) ISub 862 242
864: 7(int) Bitcast 863
865: 168(bool) ULessThan 860 864
SelectionMerge 867 None
BranchConditional 865 866 867
866: Label
871: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 868
872: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 869 869 12 12
870: 139(ptr) AccessChain 127(id) 12
873: 7(int) Load 870
874: 168(bool) UGreaterThan 873 12
SelectionMerge 876 None
BranchConditional 874 875 876
875: Label
880: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 877
881: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 878 878 12 12
879: 7(int) Load 141(index)
882: 150(ptr) AccessChain 101(params) 149 12
883: 73(int) Load 882
884: 7(int) Bitcast 883
885: 7(int) IAdd 879 884
886: 234(ptr) AccessChain 201 204 885 204
887: 71(fvec4) Load 886
888: 19(fvec3) VectorShuffle 887 887 0 1 2
889: 19(fvec3) Load 263(pos)
890: 19(fvec3) FSub 888 889
Store 740(a) 890
892: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 893 893 12 12
891: 7(int) Load 141(index)
894: 150(ptr) AccessChain 101(params) 149 12
895: 73(int) Load 894
896: 7(int) Bitcast 895
897: 7(int) IAdd 891 896
898: 7(int) ISub 897 39
899: 234(ptr) AccessChain 201 204 898 204
900: 71(fvec4) Load 899
901: 19(fvec3) VectorShuffle 900 900 0 1 2
902: 19(fvec3) Load 263(pos)
903: 19(fvec3) FSub 901 902
Store 753(b) 903
905: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 906 906 12 12
904: 7(int) Load 141(index)
907: 7(int) ISub 904 39
908: 234(ptr) AccessChain 201 204 907 204
909: 71(fvec4) Load 908
910: 19(fvec3) VectorShuffle 909 909 0 1 2
911: 19(fvec3) Load 263(pos)
912: 19(fvec3) FSub 910 911
Store 770(c) 912
914: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 915 915 12 12
913: 19(fvec3) Load 740(a)
916: 19(fvec3) Load 753(b)
917: 19(fvec3) ExtInst 3(GLSL.std.450) 68(Cross) 913 916
918: 19(fvec3) Load 753(b)
919: 19(fvec3) Load 770(c)
920: 19(fvec3) ExtInst 3(GLSL.std.450) 68(Cross) 918 919
921: 19(fvec3) FAdd 917 920
922: 19(fvec3) Load 716(normal)
923: 19(fvec3) FAdd 922 921
Store 716(normal) 923
Branch 876
876: Label
925: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 868
926: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 927 927 12 12
924: 139(ptr) AccessChain 127(id) 12
928: 7(int) Load 924
929: 150(ptr) AccessChain 101(params) 149 12
930: 73(int) Load 929
931: 73(int) ISub 930 242
932: 7(int) Bitcast 931
933: 168(bool) ULessThan 928 932
SelectionMerge 935 None
BranchConditional 933 934 935
934: Label
939: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 936
940: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 937 937 12 12
938: 7(int) Load 141(index)
941: 7(int) IAdd 938 39
942: 234(ptr) AccessChain 201 204 941 204
943: 71(fvec4) Load 942
944: 19(fvec3) VectorShuffle 943 943 0 1 2
945: 19(fvec3) Load 263(pos)
946: 19(fvec3) FSub 944 945
Store 740(a) 946
948: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 949 949 12 12
947: 7(int) Load 141(index)
950: 150(ptr) AccessChain 101(params) 149 12
951: 73(int) Load 950
952: 7(int) Bitcast 951
953: 7(int) IAdd 947 952
954: 7(int) IAdd 953 39
955: 234(ptr) AccessChain 201 204 954 204
956: 71(fvec4) Load 955
957: 19(fvec3) VectorShuffle 956 956 0 1 2
958: 19(fvec3) Load 263(pos)
959: 19(fvec3) FSub 957 958
Store 753(b) 959
961: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 962 962 12 12
960: 7(int) Load 141(index)
963: 150(ptr) AccessChain 101(params) 149 12
964: 73(int) Load 963
965: 7(int) Bitcast 964
966: 7(int) IAdd 960 965
967: 234(ptr) AccessChain 201 204 966 204
968: 71(fvec4) Load 967
969: 19(fvec3) VectorShuffle 968 968 0 1 2
970: 19(fvec3) Load 263(pos)
971: 19(fvec3) FSub 969 970
Store 770(c) 971
973: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 974 974 12 12
972: 19(fvec3) Load 740(a)
975: 19(fvec3) Load 753(b)
976: 19(fvec3) ExtInst 3(GLSL.std.450) 68(Cross) 972 975
977: 19(fvec3) Load 753(b)
978: 19(fvec3) Load 770(c)
979: 19(fvec3) ExtInst 3(GLSL.std.450) 68(Cross) 977 978
980: 19(fvec3) FAdd 976 979
981: 19(fvec3) Load 716(normal)
982: 19(fvec3) FAdd 981 980
Store 716(normal) 982
Branch 935
935: Label
Branch 867
867: Label
984: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 713
985: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 986 986 12 12
983: 7(int) Load 141(index)
987: 19(fvec3) Load 716(normal)
988: 19(fvec3) ExtInst 3(GLSL.std.450) 69(Normalize) 987
989: 16(float) CompositeExtract 988 0
990: 16(float) CompositeExtract 988 1
991: 16(float) CompositeExtract 988 2
992: 71(fvec4) CompositeConstruct 989 990 991 243
993: 234(ptr) AccessChain 228 204 983 579
Store 993 992
Branch 712
712: Label
994: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55
995: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 996 996 12 12
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