After construction, the Loop is effectively const. This perturbs the IDs in SPIR-V tests because the body block is created before generating any of the loop code, rather than only when the body is first referenced.
73 lines
3.2 KiB
Plaintext
73 lines
3.2 KiB
Plaintext
spv.doWhileLoop.frag
|
|
|
|
Linked fragment stage:
|
|
|
|
|
|
// Module Version 99
|
|
// Generated by (magic number): 51a00bb
|
|
// Id's are bound by 38
|
|
|
|
Source GLSL 110
|
|
1: ExtInstImport "GLSL.std.450"
|
|
MemoryModel Logical GLSL450
|
|
EntryPoint Fragment 4
|
|
Name 4 "main"
|
|
Name 10 "color"
|
|
Name 12 "BaseColor"
|
|
Name 25 "d"
|
|
Name 30 "bigColor"
|
|
Name 36 "gl_FragColor"
|
|
Decorate 12(BaseColor) Smooth
|
|
Decorate 36(gl_FragColor) BuiltIn FragColor
|
|
2: TypeVoid
|
|
3: TypeFunction 2
|
|
7: TypeFloat 32
|
|
8: TypeVector 7(float) 4
|
|
9: TypePointer Function 8(fvec4)
|
|
11: TypePointer Input 8(fvec4)
|
|
12(BaseColor): 11(ptr) Variable Input
|
|
18: TypeBool
|
|
19: 18(bool) ConstantTrue
|
|
24: TypePointer UniformConstant 7(float)
|
|
25(d): 24(ptr) Variable UniformConstant
|
|
29: TypePointer UniformConstant 8(fvec4)
|
|
30(bigColor): 29(ptr) Variable UniformConstant
|
|
34: 18(bool) ConstantFalse
|
|
35: TypePointer Output 8(fvec4)
|
|
36(gl_FragColor): 35(ptr) Variable Output
|
|
4(main): 2 Function None 3
|
|
5: Label
|
|
10(color): 9(ptr) Variable Function
|
|
13: 8(fvec4) Load 12(BaseColor)
|
|
Store 10(color) 13
|
|
Branch 14
|
|
14: Label
|
|
17: 18(bool) Phi 19 5 34 16
|
|
LoopMerge 15 None
|
|
Branch 20
|
|
20: Label
|
|
SelectionMerge 16 None
|
|
BranchConditional 17 16 21
|
|
21: Label
|
|
22: 8(fvec4) Load 10(color)
|
|
23: 7(float) CompositeExtract 22 0
|
|
26: 7(float) Load 25(d)
|
|
27: 18(bool) FOrdLessThan 23 26
|
|
SelectionMerge 28 None
|
|
BranchConditional 27 28 15
|
|
28: Label
|
|
Branch 16
|
|
16: Label
|
|
31: 8(fvec4) Load 30(bigColor)
|
|
32: 8(fvec4) Load 10(color)
|
|
33: 8(fvec4) FAdd 32 31
|
|
Store 10(color) 33
|
|
Branch 14
|
|
15: Label
|
|
37: 8(fvec4) Load 10(color)
|
|
Store 36(gl_FragColor) 37
|
|
Branch 6
|
|
6: Label
|
|
Return
|
|
FunctionEnd
|