| hlsl.if.frag |
| Shader version: 450 |
| gl_FragCoord origin is upper left |
| 0:? Sequence |
| 0:2 Function Definition: PixelShaderFunction(vf4; (global 4-component vector of float) |
| 0:2 Function Parameters: |
| 0:2 'input' (layout(location=0 ) in 4-component vector of float) |
| 0:? Sequence |
| 0:3 Test condition and select (temp void) |
| 0:3 Condition |
| 0:3 Compare Equal (temp bool) |
| 0:3 'input' (layout(location=0 ) in 4-component vector of float) |
| 0:3 'input' (layout(location=0 ) in 4-component vector of float) |
| 0:3 true case |
| 0:4 Sequence |
| 0:4 move second child to first child (temp 4-component vector of float) |
| 0:? '@entryPointOutput' (layout(location=0 ) out 4-component vector of float) |
| 0:4 'input' (layout(location=0 ) in 4-component vector of float) |
| 0:4 Branch: Return |
| 0:6 Test condition and select (temp void) |
| 0:6 Condition |
| 0:6 Compare Equal (temp 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 true case |
| 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 'input' (layout(location=0 ) in 4-component vector of float) |
| 0:7 Branch: Return |
| 0:6 false case |
| 0:9 Sequence |
| 0:9 move second child to first child (temp 4-component vector of float) |
| 0:? '@entryPointOutput' (layout(location=0 ) out 4-component vector of float) |
| 0:9 Negate value (temp 4-component vector of float) |
| 0:9 'input' (layout(location=0 ) in 4-component vector of float) |
| 0:9 Branch: Return |
| 0:11 Test condition and select (temp void) |
| 0:11 Condition |
| 0:11 Compare Equal (temp bool) |
| 0:11 'input' (layout(location=0 ) in 4-component vector of float) |
| 0:11 'input' (layout(location=0 ) in 4-component vector of float) |
| 0:11 true case is null |
| 0:14 Test condition and select (temp void) |
| 0:14 Condition |
| 0:14 Compare Equal (temp bool) |
| 0:14 'input' (layout(location=0 ) in 4-component vector of float) |
| 0:14 'input' (layout(location=0 ) in 4-component vector of float) |
| 0:14 true case is null |
| 0:19 Test condition and select (temp void) |
| 0:19 Condition |
| 0:19 Compare Equal (temp bool) |
| 0:19 'input' (layout(location=0 ) in 4-component vector of float) |
| 0:19 'input' (layout(location=0 ) in 4-component vector of float) |
| 0:19 true case |
| 0:? Sequence |
| 0:20 Sequence |
| 0:20 move second child to first child (temp 4-component vector of float) |
| 0:? '@entryPointOutput' (layout(location=0 ) out 4-component vector of float) |
| 0:20 'input' (layout(location=0 ) in 4-component vector of float) |
| 0:20 Branch: Return |
| 0:23 Test condition and select (temp void) |
| 0:23 Condition |
| 0:23 Compare Equal (temp bool) |
| 0:23 'input' (layout(location=0 ) in 4-component vector of float) |
| 0:23 'input' (layout(location=0 ) in 4-component vector of float) |
| 0:23 true case |
| 0:? Sequence |
| 0:24 Sequence |
| 0:24 move second child to first child (temp 4-component vector of float) |
| 0:? '@entryPointOutput' (layout(location=0 ) out 4-component vector of float) |
| 0:24 'input' (layout(location=0 ) in 4-component vector of float) |
| 0:24 Branch: Return |
| 0:23 false case |
| 0:? Sequence |
| 0:26 Sequence |
| 0:26 move second child to first child (temp 4-component vector of float) |
| 0:? '@entryPointOutput' (layout(location=0 ) out 4-component vector of float) |
| 0:26 Negate value (temp 4-component vector of float) |
| 0:26 'input' (layout(location=0 ) in 4-component vector of float) |
| 0:26 Branch: Return |
| 0:30 Test condition and select (temp void) |
| 0:30 Condition |
| 0:30 move second child to first child (temp float) |
| 0:30 'ii' (temp float) |
| 0:30 direct index (temp float) |
| 0:30 'input' (layout(location=0 ) in 4-component vector of float) |
| 0:30 Constant: |
| 0:30 2 (const int) |
| 0:30 true case |
| 0:31 Pre-Increment (temp float) |
| 0:31 'ii' (temp float) |
| 0:32 Pre-Increment (temp int) |
| 0:32 'ii' (temp int) |
| 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; (global 4-component vector of float) |
| 0:2 Function Parameters: |
| 0:2 'input' (layout(location=0 ) in 4-component vector of float) |
| 0:? Sequence |
| 0:3 Test condition and select (temp void) |
| 0:3 Condition |
| 0:3 Compare Equal (temp bool) |
| 0:3 'input' (layout(location=0 ) in 4-component vector of float) |
| 0:3 'input' (layout(location=0 ) in 4-component vector of float) |
| 0:3 true case |
| 0:4 Sequence |
| 0:4 move second child to first child (temp 4-component vector of float) |
| 0:? '@entryPointOutput' (layout(location=0 ) out 4-component vector of float) |
| 0:4 'input' (layout(location=0 ) in 4-component vector of float) |
| 0:4 Branch: Return |
| 0:6 Test condition and select (temp void) |
| 0:6 Condition |
| 0:6 Compare Equal (temp 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 true case |
| 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 'input' (layout(location=0 ) in 4-component vector of float) |
| 0:7 Branch: Return |
| 0:6 false case |
| 0:9 Sequence |
| 0:9 move second child to first child (temp 4-component vector of float) |
| 0:? '@entryPointOutput' (layout(location=0 ) out 4-component vector of float) |
| 0:9 Negate value (temp 4-component vector of float) |
| 0:9 'input' (layout(location=0 ) in 4-component vector of float) |
| 0:9 Branch: Return |
| 0:11 Test condition and select (temp void) |
| 0:11 Condition |
| 0:11 Compare Equal (temp bool) |
| 0:11 'input' (layout(location=0 ) in 4-component vector of float) |
| 0:11 'input' (layout(location=0 ) in 4-component vector of float) |
| 0:11 true case is null |
| 0:14 Test condition and select (temp void) |
| 0:14 Condition |
| 0:14 Compare Equal (temp bool) |
| 0:14 'input' (layout(location=0 ) in 4-component vector of float) |
| 0:14 'input' (layout(location=0 ) in 4-component vector of float) |
| 0:14 true case is null |
| 0:19 Test condition and select (temp void) |
| 0:19 Condition |
| 0:19 Compare Equal (temp bool) |
| 0:19 'input' (layout(location=0 ) in 4-component vector of float) |
| 0:19 'input' (layout(location=0 ) in 4-component vector of float) |
| 0:19 true case |
| 0:? Sequence |
| 0:20 Sequence |
| 0:20 move second child to first child (temp 4-component vector of float) |
| 0:? '@entryPointOutput' (layout(location=0 ) out 4-component vector of float) |
| 0:20 'input' (layout(location=0 ) in 4-component vector of float) |
| 0:20 Branch: Return |
| 0:23 Test condition and select (temp void) |
| 0:23 Condition |
| 0:23 Compare Equal (temp bool) |
| 0:23 'input' (layout(location=0 ) in 4-component vector of float) |
| 0:23 'input' (layout(location=0 ) in 4-component vector of float) |
| 0:23 true case |
| 0:? Sequence |
| 0:24 Sequence |
| 0:24 move second child to first child (temp 4-component vector of float) |
| 0:? '@entryPointOutput' (layout(location=0 ) out 4-component vector of float) |
| 0:24 'input' (layout(location=0 ) in 4-component vector of float) |
| 0:24 Branch: Return |
| 0:23 false case |
| 0:? Sequence |
| 0:26 Sequence |
| 0:26 move second child to first child (temp 4-component vector of float) |
| 0:? '@entryPointOutput' (layout(location=0 ) out 4-component vector of float) |
| 0:26 Negate value (temp 4-component vector of float) |
| 0:26 'input' (layout(location=0 ) in 4-component vector of float) |
| 0:26 Branch: Return |
| 0:30 Test condition and select (temp void) |
| 0:30 Condition |
| 0:30 move second child to first child (temp float) |
| 0:30 'ii' (temp float) |
| 0:30 direct index (temp float) |
| 0:30 'input' (layout(location=0 ) in 4-component vector of float) |
| 0:30 Constant: |
| 0:30 2 (const int) |
| 0:30 true case |
| 0:31 Pre-Increment (temp float) |
| 0:31 'ii' (temp float) |
| 0:32 Pre-Increment (temp int) |
| 0:32 'ii' (temp int) |
| 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 84 |
| |
| Capability Shader |
| 1: ExtInstImport "GLSL.std.450" |
| MemoryModel Logical GLSL450 |
| EntryPoint Fragment 4 "PixelShaderFunction" 9 19 |
| ExecutionMode 4 OriginUpperLeft |
| Name 4 "PixelShaderFunction" |
| Name 9 "input" |
| Name 19 "@entryPointOutput" |
| Name 67 "ii" |
| Name 80 "ii" |
| Decorate 9(input) Location 0 |
| Decorate 19(@entryPointOutput) Location 0 |
| 2: TypeVoid |
| 3: TypeFunction 2 |
| 6: TypeFloat 32 |
| 7: TypeVector 6(float) 4 |
| 8: TypePointer Input 7(fvec4) |
| 9(input): 8(ptr) Variable Input |
| 12: TypeBool |
| 13: TypeVector 12(bool) 4 |
| 18: TypePointer Output 7(fvec4) |
| 19(@entryPointOutput): 18(ptr) Variable Output |
| 66: TypePointer Function 6(float) |
| 68: TypeInt 32 0 |
| 69: 68(int) Constant 2 |
| 70: TypePointer Input 6(float) |
| 76: 6(float) Constant 1065353216 |
| 78: TypeInt 32 1 |
| 79: TypePointer Function 78(int) |
| 82: 78(int) Constant 1 |
| 4(PixelShaderFunction): 2 Function None 3 |
| 5: Label |
| 67(ii): 66(ptr) Variable Function |
| 80(ii): 79(ptr) Variable Function |
| 10: 7(fvec4) Load 9(input) |
| 11: 7(fvec4) Load 9(input) |
| 14: 13(bvec4) FOrdEqual 10 11 |
| 15: 12(bool) All 14 |
| SelectionMerge 17 None |
| BranchConditional 15 16 17 |
| 16: Label |
| 20: 7(fvec4) Load 9(input) |
| Store 19(@entryPointOutput) 20 |
| Return |
| 17: Label |
| 22: 7(fvec4) Load 9(input) |
| 23: 7(fvec4) Load 9(input) |
| 24: 13(bvec4) FOrdEqual 22 23 |
| 25: 12(bool) All 24 |
| SelectionMerge 27 None |
| BranchConditional 25 26 30 |
| 26: Label |
| 28: 7(fvec4) Load 9(input) |
| Store 19(@entryPointOutput) 28 |
| Return |
| 30: Label |
| 31: 7(fvec4) Load 9(input) |
| 32: 7(fvec4) FNegate 31 |
| Store 19(@entryPointOutput) 32 |
| Return |
| 27: Label |
| 34: 7(fvec4) Load 9(input) |
| 35: 7(fvec4) Load 9(input) |
| 36: 13(bvec4) FOrdEqual 34 35 |
| 37: 12(bool) All 36 |
| SelectionMerge 39 None |
| BranchConditional 37 38 39 |
| 38: Label |
| Branch 39 |
| 39: Label |
| 40: 7(fvec4) Load 9(input) |
| 41: 7(fvec4) Load 9(input) |
| 42: 13(bvec4) FOrdEqual 40 41 |
| 43: 12(bool) All 42 |
| SelectionMerge 45 None |
| BranchConditional 43 44 45 |
| 44: Label |
| Branch 45 |
| 45: Label |
| 46: 7(fvec4) Load 9(input) |
| 47: 7(fvec4) Load 9(input) |
| 48: 13(bvec4) FOrdEqual 46 47 |
| 49: 12(bool) All 48 |
| SelectionMerge 51 None |
| BranchConditional 49 50 51 |
| 50: Label |
| 52: 7(fvec4) Load 9(input) |
| Store 19(@entryPointOutput) 52 |
| Return |
| 51: Label |
| 54: 7(fvec4) Load 9(input) |
| 55: 7(fvec4) Load 9(input) |
| 56: 13(bvec4) FOrdEqual 54 55 |
| 57: 12(bool) All 56 |
| SelectionMerge 59 None |
| BranchConditional 57 58 62 |
| 58: Label |
| 60: 7(fvec4) Load 9(input) |
| Store 19(@entryPointOutput) 60 |
| Return |
| 62: Label |
| 63: 7(fvec4) Load 9(input) |
| 64: 7(fvec4) FNegate 63 |
| Store 19(@entryPointOutput) 64 |
| Return |
| 59: Label |
| 71: 70(ptr) AccessChain 9(input) 69 |
| 72: 6(float) Load 71 |
| Store 67(ii) 72 |
| SelectionMerge 74 None |
| BranchConditional 72 73 74 |
| 73: Label |
| 75: 6(float) Load 67(ii) |
| 77: 6(float) FAdd 75 76 |
| Store 67(ii) 77 |
| Branch 74 |
| 74: Label |
| 81: 78(int) Load 80(ii) |
| 83: 78(int) IAdd 81 82 |
| Store 80(ii) 83 |
| Return |
| FunctionEnd |