hlsl.forLoop.frag Shader version: 450 gl_FragCoord origin is upper left 0:? Sequence 0:2 Function Definition: PixelShaderFunction(vf4; (temp 4-component vector of float) 0:2 Function Parameters: 0:2 'input' (layout(location=0 ) in 4-component vector of float) 0:? Sequence 0:? Sequence 0:3 Loop with condition tested first 0:3 No loop condition 0:3 No loop body 0:4 Sequence 0:4 Pre-Increment (temp 4-component vector of float) 0:4 'input' (layout(location=0 ) in 4-component vector of float) 0:4 Loop with condition tested first 0:4 No loop condition 0:4 No loop body 0:? Sequence 0:5 Loop with condition tested first 0:5 Loop Condition 0:5 any (global bool) 0:5 NotEqual (temp 4-component vector of bool) 0:5 'input' (layout(location=0 ) in 4-component vector of float) 0:5 'input' (layout(location=0 ) in 4-component vector of float) 0:5 No loop body 0:? Sequence 0:6 Loop with condition tested first 0:6 Loop Condition 0:6 any (global bool) 0:6 NotEqual (temp 4-component vector of bool) 0:6 'input' (layout(location=0 ) in 4-component vector of float) 0:6 'input' (layout(location=0 ) in 4-component vector of float) 0:6 Loop Body 0:? Sequence 0:6 Sequence 0:6 move second child to first child (temp 4-component vector of float) 0:? '@entryPointOutput' (layout(location=0 ) out 4-component vector of float) 0:6 Negate value (temp 4-component vector of float) 0:6 'input' (layout(location=0 ) in 4-component vector of float) 0:6 Branch: Return 0:7 Sequence 0:7 Pre-Decrement (temp 4-component vector of float) 0:7 'input' (layout(location=0 ) in 4-component vector of float) 0:7 Loop with condition tested first 0:7 Loop Condition 0:7 any (global bool) 0:7 NotEqual (temp 4-component vector of bool) 0:7 'input' (layout(location=0 ) in 4-component vector of float) 0:7 'input' (layout(location=0 ) in 4-component vector of float) 0:7 Loop Body 0:? Sequence 0:7 Sequence 0:7 move second child to first child (temp 4-component vector of float) 0:? '@entryPointOutput' (layout(location=0 ) out 4-component vector of float) 0:7 Negate value (temp 4-component vector of float) 0:7 'input' (layout(location=0 ) in 4-component vector of float) 0:7 Branch: Return 0:7 Loop Terminal Expression 0:7 add second child into first child (temp 4-component vector of float) 0:7 'input' (layout(location=0 ) in 4-component vector of float) 0:7 Constant: 0:7 2.000000 0:? Sequence 0:8 Loop with condition tested first 0:8 No loop condition 0:8 Loop Body 0:8 Test condition and select (temp void) 0:8 Condition 0:8 Compare Greater Than (temp bool) 0:8 direct index (temp float) 0:8 'input' (layout(location=0 ) in 4-component vector of float) 0:8 Constant: 0:8 0 (const int) 0:8 Constant: 0:8 2.000000 0:8 true case 0:8 Branch: Break 0:? Sequence 0:9 Loop with condition tested first 0:9 No loop condition 0:9 Loop Body 0:9 Test condition and select (temp void) 0:9 Condition 0:9 Compare Greater Than (temp bool) 0:9 direct index (temp float) 0:9 'input' (layout(location=0 ) in 4-component vector of float) 0:9 Constant: 0:9 0 (const int) 0:9 Constant: 0:9 2.000000 0:9 true case 0:9 Branch: Continue 0:11 Sequence 0:11 move second child to first child (temp int) 0:11 'ii' (temp int) 0:11 Constant: 0:11 -1 (const int) 0:11 Loop with condition tested first 0:11 Loop Condition 0:11 Compare Less Than (temp bool) 0:11 'ii' (temp int) 0:11 Constant: 0:11 3 (const int) 0:11 Loop Body 0:11 Test condition and select (temp void) 0:11 Condition 0:11 Compare Equal (temp bool) 0:11 'ii' (temp int) 0:11 Constant: 0:11 2 (const int) 0:11 true case 0:11 Branch: Continue 0:11 Loop Terminal Expression 0:11 Pre-Increment (temp int) 0:11 'ii' (temp int) 0:12 Pre-Decrement (temp float) 0:12 'ii' (temp float) 0:? Linker Objects 0:? '@entryPointOutput' (layout(location=0 ) out 4-component vector of float) 0:? 'input' (layout(location=0 ) in 4-component vector of float) Linked fragment stage: Shader version: 450 gl_FragCoord origin is upper left 0:? Sequence 0:2 Function Definition: PixelShaderFunction(vf4; (temp 4-component vector of float) 0:2 Function Parameters: 0:2 'input' (layout(location=0 ) in 4-component vector of float) 0:? Sequence 0:? Sequence 0:3 Loop with condition tested first 0:3 No loop condition 0:3 No loop body 0:4 Sequence 0:4 Pre-Increment (temp 4-component vector of float) 0:4 'input' (layout(location=0 ) in 4-component vector of float) 0:4 Loop with condition tested first 0:4 No loop condition 0:4 No loop body 0:? Sequence 0:5 Loop with condition tested first 0:5 Loop Condition 0:5 any (global bool) 0:5 NotEqual (temp 4-component vector of bool) 0:5 'input' (layout(location=0 ) in 4-component vector of float) 0:5 'input' (layout(location=0 ) in 4-component vector of float) 0:5 No loop body 0:? Sequence 0:6 Loop with condition tested first 0:6 Loop Condition 0:6 any (global bool) 0:6 NotEqual (temp 4-component vector of bool) 0:6 'input' (layout(location=0 ) in 4-component vector of float) 0:6 'input' (layout(location=0 ) in 4-component vector of float) 0:6 Loop Body 0:? Sequence 0:6 Sequence 0:6 move second child to first child (temp 4-component vector of float) 0:? '@entryPointOutput' (layout(location=0 ) out 4-component vector of float) 0:6 Negate value (temp 4-component vector of float) 0:6 'input' (layout(location=0 ) in 4-component vector of float) 0:6 Branch: Return 0:7 Sequence 0:7 Pre-Decrement (temp 4-component vector of float) 0:7 'input' (layout(location=0 ) in 4-component vector of float) 0:7 Loop with condition tested first 0:7 Loop Condition 0:7 any (global bool) 0:7 NotEqual (temp 4-component vector of bool) 0:7 'input' (layout(location=0 ) in 4-component vector of float) 0:7 'input' (layout(location=0 ) in 4-component vector of float) 0:7 Loop Body 0:? Sequence 0:7 Sequence 0:7 move second child to first child (temp 4-component vector of float) 0:? '@entryPointOutput' (layout(location=0 ) out 4-component vector of float) 0:7 Negate value (temp 4-component vector of float) 0:7 'input' (layout(location=0 ) in 4-component vector of float) 0:7 Branch: Return 0:7 Loop Terminal Expression 0:7 add second child into first child (temp 4-component vector of float) 0:7 'input' (layout(location=0 ) in 4-component vector of float) 0:7 Constant: 0:7 2.000000 0:? Sequence 0:8 Loop with condition tested first 0:8 No loop condition 0:8 Loop Body 0:8 Test condition and select (temp void) 0:8 Condition 0:8 Compare Greater Than (temp bool) 0:8 direct index (temp float) 0:8 'input' (layout(location=0 ) in 4-component vector of float) 0:8 Constant: 0:8 0 (const int) 0:8 Constant: 0:8 2.000000 0:8 true case 0:8 Branch: Break 0:? Sequence 0:9 Loop with condition tested first 0:9 No loop condition 0:9 Loop Body 0:9 Test condition and select (temp void) 0:9 Condition 0:9 Compare Greater Than (temp bool) 0:9 direct index (temp float) 0:9 'input' (layout(location=0 ) in 4-component vector of float) 0:9 Constant: 0:9 0 (const int) 0:9 Constant: 0:9 2.000000 0:9 true case 0:9 Branch: Continue 0:11 Sequence 0:11 move second child to first child (temp int) 0:11 'ii' (temp int) 0:11 Constant: 0:11 -1 (const int) 0:11 Loop with condition tested first 0:11 Loop Condition 0:11 Compare Less Than (temp bool) 0:11 'ii' (temp int) 0:11 Constant: 0:11 3 (const int) 0:11 Loop Body 0:11 Test condition and select (temp void) 0:11 Condition 0:11 Compare Equal (temp bool) 0:11 'ii' (temp int) 0:11 Constant: 0:11 2 (const int) 0:11 true case 0:11 Branch: Continue 0:11 Loop Terminal Expression 0:11 Pre-Increment (temp int) 0:11 'ii' (temp int) 0:12 Pre-Decrement (temp float) 0:12 'ii' (temp float) 0:? Linker Objects 0:? '@entryPointOutput' (layout(location=0 ) out 4-component vector of float) 0:? 'input' (layout(location=0 ) in 4-component vector of float) // Module Version 10000 // Generated by (magic number): 80001 // Id's are bound by 114 Capability Shader 1: ExtInstImport "GLSL.std.450" MemoryModel Logical GLSL450 EntryPoint Fragment 4 "PixelShaderFunction" 13 43 ExecutionMode 4 OriginUpperLeft Name 4 "PixelShaderFunction" Name 13 "input" Name 43 "@entryPointOutput" Name 91 "ii" Name 111 "ii" Decorate 13(input) Location 0 Decorate 43(@entryPointOutput) Location 0 2: TypeVoid 3: TypeFunction 2 10: TypeFloat 32 11: TypeVector 10(float) 4 12: TypePointer Input 11(fvec4) 13(input): 12(ptr) Variable Input 15: 10(float) Constant 1065353216 29: TypeBool 30: TypeVector 29(bool) 4 42: TypePointer Output 11(fvec4) 43(@entryPointOutput): 42(ptr) Variable Output 62: 10(float) Constant 1073741824 70: TypeInt 32 0 71: 70(int) Constant 0 72: TypePointer Input 10(float) 89: TypeInt 32 1 90: TypePointer Function 89(int) 92: 89(int) Constant 4294967295 99: 89(int) Constant 3 102: 89(int) Constant 2 108: 89(int) Constant 1 110: TypePointer Function 10(float) 4(PixelShaderFunction): 2 Function None 3 5: Label 91(ii): 90(ptr) Variable Function 111(ii): 110(ptr) Variable Function Branch 6 6: Label LoopMerge 8 9 None Branch 7 7: Label Branch 9 9: Label Branch 6 8: Label 14: 11(fvec4) Load 13(input) 16: 11(fvec4) CompositeConstruct 15 15 15 15 17: 11(fvec4) FAdd 14 16 Store 13(input) 17 Branch 18 18: Label LoopMerge 20 21 None Branch 19 19: Label Branch 21 21: Label Branch 18 20: Label Branch 22 22: Label LoopMerge 24 25 None Branch 26 26: Label 27: 11(fvec4) Load 13(input) 28: 11(fvec4) Load 13(input) 31: 30(bvec4) FOrdNotEqual 27 28 32: 29(bool) Any 31 BranchConditional 32 23 24 23: Label Branch 25 25: Label Branch 22 24: Label Branch 33 33: Label LoopMerge 35 36 None Branch 37 37: Label 38: 11(fvec4) Load 13(input) 39: 11(fvec4) Load 13(input) 40: 30(bvec4) FOrdNotEqual 38 39 41: 29(bool) Any 40 BranchConditional 41 34 35 34: Label 44: 11(fvec4) Load 13(input) 45: 11(fvec4) FNegate 44 Store 43(@entryPointOutput) 45 Return 36: Label Branch 33 35: Label 47: 11(fvec4) Load 13(input) 48: 11(fvec4) CompositeConstruct 15 15 15 15 49: 11(fvec4) FSub 47 48 Store 13(input) 49 Branch 50 50: Label LoopMerge 52 53 None Branch 54 54: Label 55: 11(fvec4) Load 13(input) 56: 11(fvec4) Load 13(input) 57: 30(bvec4) FOrdNotEqual 55 56 58: 29(bool) Any 57 BranchConditional 58 51 52 51: Label 59: 11(fvec4) Load 13(input) 60: 11(fvec4) FNegate 59 Store 43(@entryPointOutput) 60 Return 53: Label 63: 11(fvec4) Load 13(input) 64: 11(fvec4) CompositeConstruct 62 62 62 62 65: 11(fvec4) FAdd 63 64 Store 13(input) 65 Branch 50 52: Label Branch 66 66: Label LoopMerge 68 69 None Branch 67 67: Label 73: 72(ptr) AccessChain 13(input) 71 74: 10(float) Load 73 75: 29(bool) FOrdGreaterThan 74 62 SelectionMerge 77 None BranchConditional 75 76 77 76: Label Branch 68 77: Label Branch 69 69: Label Branch 66 68: Label Branch 79 79: Label LoopMerge 81 82 None Branch 80 80: Label 83: 72(ptr) AccessChain 13(input) 71 84: 10(float) Load 83 85: 29(bool) FOrdGreaterThan 84 62 SelectionMerge 87 None BranchConditional 85 86 87 86: Label Branch 82 87: Label Branch 82 82: Label Branch 79 81: Label Store 91(ii) 92 Branch 93 93: Label LoopMerge 95 96 None Branch 97 97: Label 98: 89(int) Load 91(ii) 100: 29(bool) SLessThan 98 99 BranchConditional 100 94 95 94: Label 101: 89(int) Load 91(ii) 103: 29(bool) IEqual 101 102 SelectionMerge 105 None BranchConditional 103 104 105 104: Label Branch 96 105: Label Branch 96 96: Label 107: 89(int) Load 91(ii) 109: 89(int) IAdd 107 108 Store 91(ii) 109 Branch 93 95: Label 112: 10(float) Load 111(ii) 113: 10(float) FSub 112 15 Store 111(ii) 113 Return FunctionEnd