mirror of
https://github.com/RPCS3/glslang.git
synced 2024-12-01 07:01:12 +00:00
02467d8d94
This needs some render testing, but is destined to be part of master. This also leads to a variety of other simplifications. - IO are global symbols, so only need one list of linkage nodes (deferred) - no longer need parse-context-wide 'inEntryPoint' state, entry-point is localized - several parts of splitting/flattening are now localized
416 lines
19 KiB
Plaintext
416 lines
19 KiB
Plaintext
hlsl.comparison.vec.frag
|
|
Shader version: 450
|
|
gl_FragCoord origin is upper left
|
|
0:? Sequence
|
|
0:4 Function Definition: Bug1(vf4; (temp void)
|
|
0:4 Function Parameters:
|
|
0:4 'a' (in 4-component vector of float)
|
|
0:? Sequence
|
|
0:5 Sequence
|
|
0:5 move second child to first child (temp 4-component vector of float)
|
|
0:5 'v04' (temp 4-component vector of float)
|
|
0:? Constant:
|
|
0:? 0.000000
|
|
0:? 0.000000
|
|
0:? 0.000000
|
|
0:? 0.000000
|
|
0:6 Sequence
|
|
0:6 move second child to first child (temp float)
|
|
0:6 'v01' (temp float)
|
|
0:6 Constant:
|
|
0:6 0.000000
|
|
0:8 Sequence
|
|
0:8 move second child to first child (temp 4-component vector of bool)
|
|
0:8 'r00' (temp 4-component vector of bool)
|
|
0:8 Equal (temp 4-component vector of bool)
|
|
0:8 'a' (in 4-component vector of float)
|
|
0:8 'v04' (temp 4-component vector of float)
|
|
0:9 Sequence
|
|
0:9 move second child to first child (temp 4-component vector of bool)
|
|
0:9 'r01' (temp 4-component vector of bool)
|
|
0:9 NotEqual (temp 4-component vector of bool)
|
|
0:9 'a' (in 4-component vector of float)
|
|
0:9 'v04' (temp 4-component vector of float)
|
|
0:10 Sequence
|
|
0:10 move second child to first child (temp 4-component vector of bool)
|
|
0:10 'r02' (temp 4-component vector of bool)
|
|
0:10 Compare Less Than (temp 4-component vector of bool)
|
|
0:10 'a' (in 4-component vector of float)
|
|
0:10 'v04' (temp 4-component vector of float)
|
|
0:11 Sequence
|
|
0:11 move second child to first child (temp 4-component vector of bool)
|
|
0:11 'r03' (temp 4-component vector of bool)
|
|
0:11 Compare Greater Than (temp 4-component vector of bool)
|
|
0:11 'a' (in 4-component vector of float)
|
|
0:11 'v04' (temp 4-component vector of float)
|
|
0:13 Sequence
|
|
0:13 move second child to first child (temp 4-component vector of bool)
|
|
0:13 'r10' (temp 4-component vector of bool)
|
|
0:13 Equal (temp 4-component vector of bool)
|
|
0:13 'a' (in 4-component vector of float)
|
|
0:13 Construct vec4 (in 4-component vector of float)
|
|
0:13 'v01' (temp float)
|
|
0:14 Sequence
|
|
0:14 move second child to first child (temp 4-component vector of bool)
|
|
0:14 'r11' (temp 4-component vector of bool)
|
|
0:14 NotEqual (temp 4-component vector of bool)
|
|
0:14 'a' (in 4-component vector of float)
|
|
0:14 Construct vec4 (in 4-component vector of float)
|
|
0:14 'v01' (temp float)
|
|
0:15 Sequence
|
|
0:15 move second child to first child (temp 4-component vector of bool)
|
|
0:15 'r12' (temp 4-component vector of bool)
|
|
0:15 Compare Less Than (temp 4-component vector of bool)
|
|
0:15 'a' (in 4-component vector of float)
|
|
0:15 Construct vec4 (in 4-component vector of float)
|
|
0:15 'v01' (temp float)
|
|
0:16 Sequence
|
|
0:16 move second child to first child (temp 4-component vector of bool)
|
|
0:16 'r13' (temp 4-component vector of bool)
|
|
0:16 Compare Greater Than (temp 4-component vector of bool)
|
|
0:16 'a' (in 4-component vector of float)
|
|
0:16 Construct vec4 (in 4-component vector of float)
|
|
0:16 'v01' (temp float)
|
|
0:18 Sequence
|
|
0:18 move second child to first child (temp 4-component vector of bool)
|
|
0:18 'r20' (temp 4-component vector of bool)
|
|
0:18 Equal (temp 4-component vector of bool)
|
|
0:18 Construct vec4 (in 4-component vector of float)
|
|
0:18 'v01' (temp float)
|
|
0:18 'a' (in 4-component vector of float)
|
|
0:19 Sequence
|
|
0:19 move second child to first child (temp 4-component vector of bool)
|
|
0:19 'r21' (temp 4-component vector of bool)
|
|
0:19 NotEqual (temp 4-component vector of bool)
|
|
0:19 Construct vec4 (in 4-component vector of float)
|
|
0:19 'v01' (temp float)
|
|
0:19 'a' (in 4-component vector of float)
|
|
0:20 Sequence
|
|
0:20 move second child to first child (temp 4-component vector of bool)
|
|
0:20 'r22' (temp 4-component vector of bool)
|
|
0:20 Compare Less Than (temp 4-component vector of bool)
|
|
0:20 Construct vec4 (in 4-component vector of float)
|
|
0:20 'v01' (temp float)
|
|
0:20 'a' (in 4-component vector of float)
|
|
0:21 Sequence
|
|
0:21 move second child to first child (temp 4-component vector of bool)
|
|
0:21 'r23' (temp 4-component vector of bool)
|
|
0:21 Compare Greater Than (temp 4-component vector of bool)
|
|
0:21 Construct vec4 (in 4-component vector of float)
|
|
0:21 'v01' (temp float)
|
|
0:21 'a' (in 4-component vector of float)
|
|
0:30 Function Definition: @main( (temp structure{temp 4-component vector of float Color})
|
|
0:30 Function Parameters:
|
|
0:? Sequence
|
|
0:32 move second child to first child (temp 4-component vector of float)
|
|
0:32 Color: direct index for structure (temp 4-component vector of float)
|
|
0:32 'psout' (temp structure{temp 4-component vector of float Color})
|
|
0:32 Constant:
|
|
0:32 0 (const int)
|
|
0:32 Constant:
|
|
0:32 0.000000
|
|
0:32 0.000000
|
|
0:32 0.000000
|
|
0:32 0.000000
|
|
0:33 Branch: Return with expression
|
|
0:33 'psout' (temp structure{temp 4-component vector of float Color})
|
|
0:30 Function Definition: main( (temp void)
|
|
0:30 Function Parameters:
|
|
0:? Sequence
|
|
0:30 Sequence
|
|
0:30 move second child to first child (temp 4-component vector of float)
|
|
0:? 'Color' (layout(location=0 ) out 4-component vector of float)
|
|
0:30 Color: direct index for structure (temp 4-component vector of float)
|
|
0:30 Function Call: @main( (temp structure{temp 4-component vector of float Color})
|
|
0:30 Constant:
|
|
0:30 0 (const int)
|
|
0:? Linker Objects
|
|
0:? 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform 4-component vector of float uf4})
|
|
0:? 'Color' (layout(location=0 ) out 4-component vector of float)
|
|
|
|
|
|
Linked fragment stage:
|
|
|
|
|
|
Shader version: 450
|
|
gl_FragCoord origin is upper left
|
|
0:? Sequence
|
|
0:4 Function Definition: Bug1(vf4; (temp void)
|
|
0:4 Function Parameters:
|
|
0:4 'a' (in 4-component vector of float)
|
|
0:? Sequence
|
|
0:5 Sequence
|
|
0:5 move second child to first child (temp 4-component vector of float)
|
|
0:5 'v04' (temp 4-component vector of float)
|
|
0:? Constant:
|
|
0:? 0.000000
|
|
0:? 0.000000
|
|
0:? 0.000000
|
|
0:? 0.000000
|
|
0:6 Sequence
|
|
0:6 move second child to first child (temp float)
|
|
0:6 'v01' (temp float)
|
|
0:6 Constant:
|
|
0:6 0.000000
|
|
0:8 Sequence
|
|
0:8 move second child to first child (temp 4-component vector of bool)
|
|
0:8 'r00' (temp 4-component vector of bool)
|
|
0:8 Equal (temp 4-component vector of bool)
|
|
0:8 'a' (in 4-component vector of float)
|
|
0:8 'v04' (temp 4-component vector of float)
|
|
0:9 Sequence
|
|
0:9 move second child to first child (temp 4-component vector of bool)
|
|
0:9 'r01' (temp 4-component vector of bool)
|
|
0:9 NotEqual (temp 4-component vector of bool)
|
|
0:9 'a' (in 4-component vector of float)
|
|
0:9 'v04' (temp 4-component vector of float)
|
|
0:10 Sequence
|
|
0:10 move second child to first child (temp 4-component vector of bool)
|
|
0:10 'r02' (temp 4-component vector of bool)
|
|
0:10 Compare Less Than (temp 4-component vector of bool)
|
|
0:10 'a' (in 4-component vector of float)
|
|
0:10 'v04' (temp 4-component vector of float)
|
|
0:11 Sequence
|
|
0:11 move second child to first child (temp 4-component vector of bool)
|
|
0:11 'r03' (temp 4-component vector of bool)
|
|
0:11 Compare Greater Than (temp 4-component vector of bool)
|
|
0:11 'a' (in 4-component vector of float)
|
|
0:11 'v04' (temp 4-component vector of float)
|
|
0:13 Sequence
|
|
0:13 move second child to first child (temp 4-component vector of bool)
|
|
0:13 'r10' (temp 4-component vector of bool)
|
|
0:13 Equal (temp 4-component vector of bool)
|
|
0:13 'a' (in 4-component vector of float)
|
|
0:13 Construct vec4 (in 4-component vector of float)
|
|
0:13 'v01' (temp float)
|
|
0:14 Sequence
|
|
0:14 move second child to first child (temp 4-component vector of bool)
|
|
0:14 'r11' (temp 4-component vector of bool)
|
|
0:14 NotEqual (temp 4-component vector of bool)
|
|
0:14 'a' (in 4-component vector of float)
|
|
0:14 Construct vec4 (in 4-component vector of float)
|
|
0:14 'v01' (temp float)
|
|
0:15 Sequence
|
|
0:15 move second child to first child (temp 4-component vector of bool)
|
|
0:15 'r12' (temp 4-component vector of bool)
|
|
0:15 Compare Less Than (temp 4-component vector of bool)
|
|
0:15 'a' (in 4-component vector of float)
|
|
0:15 Construct vec4 (in 4-component vector of float)
|
|
0:15 'v01' (temp float)
|
|
0:16 Sequence
|
|
0:16 move second child to first child (temp 4-component vector of bool)
|
|
0:16 'r13' (temp 4-component vector of bool)
|
|
0:16 Compare Greater Than (temp 4-component vector of bool)
|
|
0:16 'a' (in 4-component vector of float)
|
|
0:16 Construct vec4 (in 4-component vector of float)
|
|
0:16 'v01' (temp float)
|
|
0:18 Sequence
|
|
0:18 move second child to first child (temp 4-component vector of bool)
|
|
0:18 'r20' (temp 4-component vector of bool)
|
|
0:18 Equal (temp 4-component vector of bool)
|
|
0:18 Construct vec4 (in 4-component vector of float)
|
|
0:18 'v01' (temp float)
|
|
0:18 'a' (in 4-component vector of float)
|
|
0:19 Sequence
|
|
0:19 move second child to first child (temp 4-component vector of bool)
|
|
0:19 'r21' (temp 4-component vector of bool)
|
|
0:19 NotEqual (temp 4-component vector of bool)
|
|
0:19 Construct vec4 (in 4-component vector of float)
|
|
0:19 'v01' (temp float)
|
|
0:19 'a' (in 4-component vector of float)
|
|
0:20 Sequence
|
|
0:20 move second child to first child (temp 4-component vector of bool)
|
|
0:20 'r22' (temp 4-component vector of bool)
|
|
0:20 Compare Less Than (temp 4-component vector of bool)
|
|
0:20 Construct vec4 (in 4-component vector of float)
|
|
0:20 'v01' (temp float)
|
|
0:20 'a' (in 4-component vector of float)
|
|
0:21 Sequence
|
|
0:21 move second child to first child (temp 4-component vector of bool)
|
|
0:21 'r23' (temp 4-component vector of bool)
|
|
0:21 Compare Greater Than (temp 4-component vector of bool)
|
|
0:21 Construct vec4 (in 4-component vector of float)
|
|
0:21 'v01' (temp float)
|
|
0:21 'a' (in 4-component vector of float)
|
|
0:30 Function Definition: @main( (temp structure{temp 4-component vector of float Color})
|
|
0:30 Function Parameters:
|
|
0:? Sequence
|
|
0:32 move second child to first child (temp 4-component vector of float)
|
|
0:32 Color: direct index for structure (temp 4-component vector of float)
|
|
0:32 'psout' (temp structure{temp 4-component vector of float Color})
|
|
0:32 Constant:
|
|
0:32 0 (const int)
|
|
0:32 Constant:
|
|
0:32 0.000000
|
|
0:32 0.000000
|
|
0:32 0.000000
|
|
0:32 0.000000
|
|
0:33 Branch: Return with expression
|
|
0:33 'psout' (temp structure{temp 4-component vector of float Color})
|
|
0:30 Function Definition: main( (temp void)
|
|
0:30 Function Parameters:
|
|
0:? Sequence
|
|
0:30 Sequence
|
|
0:30 move second child to first child (temp 4-component vector of float)
|
|
0:? 'Color' (layout(location=0 ) out 4-component vector of float)
|
|
0:30 Color: direct index for structure (temp 4-component vector of float)
|
|
0:30 Function Call: @main( (temp structure{temp 4-component vector of float Color})
|
|
0:30 Constant:
|
|
0:30 0 (const int)
|
|
0:? Linker Objects
|
|
0:? 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform 4-component vector of float uf4})
|
|
0:? 'Color' (layout(location=0 ) out 4-component vector of float)
|
|
|
|
// Module Version 10000
|
|
// Generated by (magic number): 80001
|
|
// Id's are bound by 96
|
|
|
|
Capability Shader
|
|
1: ExtInstImport "GLSL.std.450"
|
|
MemoryModel Logical GLSL450
|
|
EntryPoint Fragment 4 "main" 90
|
|
ExecutionMode 4 OriginUpperLeft
|
|
Name 4 "main"
|
|
Name 11 "Bug1(vf4;"
|
|
Name 10 "a"
|
|
Name 13 "PS_OUTPUT"
|
|
MemberName 13(PS_OUTPUT) 0 "Color"
|
|
Name 15 "@main("
|
|
Name 17 "v04"
|
|
Name 21 "v01"
|
|
Name 25 "r00"
|
|
Name 29 "r01"
|
|
Name 33 "r02"
|
|
Name 37 "r03"
|
|
Name 41 "r10"
|
|
Name 46 "r11"
|
|
Name 51 "r12"
|
|
Name 56 "r13"
|
|
Name 61 "r20"
|
|
Name 66 "r21"
|
|
Name 71 "r22"
|
|
Name 76 "r23"
|
|
Name 82 "psout"
|
|
Name 90 "Color"
|
|
Name 93 "$Global"
|
|
MemberName 93($Global) 0 "uf4"
|
|
Name 95 ""
|
|
Decorate 90(Color) Location 0
|
|
MemberDecorate 93($Global) 0 Offset 0
|
|
Decorate 93($Global) Block
|
|
Decorate 95 DescriptorSet 0
|
|
2: TypeVoid
|
|
3: TypeFunction 2
|
|
6: TypeFloat 32
|
|
7: TypeVector 6(float) 4
|
|
8: TypePointer Function 7(fvec4)
|
|
9: TypeFunction 2 8(ptr)
|
|
13(PS_OUTPUT): TypeStruct 7(fvec4)
|
|
14: TypeFunction 13(PS_OUTPUT)
|
|
18: 6(float) Constant 0
|
|
19: 7(fvec4) ConstantComposite 18 18 18 18
|
|
20: TypePointer Function 6(float)
|
|
22: TypeBool
|
|
23: TypeVector 22(bool) 4
|
|
24: TypePointer Function 23(bvec4)
|
|
81: TypePointer Function 13(PS_OUTPUT)
|
|
83: TypeInt 32 1
|
|
84: 83(int) Constant 0
|
|
89: TypePointer Output 7(fvec4)
|
|
90(Color): 89(ptr) Variable Output
|
|
93($Global): TypeStruct 7(fvec4)
|
|
94: TypePointer Uniform 93($Global)
|
|
95: 94(ptr) Variable Uniform
|
|
4(main): 2 Function None 3
|
|
5: Label
|
|
91:13(PS_OUTPUT) FunctionCall 15(@main()
|
|
92: 7(fvec4) CompositeExtract 91 0
|
|
Store 90(Color) 92
|
|
Return
|
|
FunctionEnd
|
|
11(Bug1(vf4;): 2 Function None 9
|
|
10(a): 8(ptr) FunctionParameter
|
|
12: Label
|
|
17(v04): 8(ptr) Variable Function
|
|
21(v01): 20(ptr) Variable Function
|
|
25(r00): 24(ptr) Variable Function
|
|
29(r01): 24(ptr) Variable Function
|
|
33(r02): 24(ptr) Variable Function
|
|
37(r03): 24(ptr) Variable Function
|
|
41(r10): 24(ptr) Variable Function
|
|
46(r11): 24(ptr) Variable Function
|
|
51(r12): 24(ptr) Variable Function
|
|
56(r13): 24(ptr) Variable Function
|
|
61(r20): 24(ptr) Variable Function
|
|
66(r21): 24(ptr) Variable Function
|
|
71(r22): 24(ptr) Variable Function
|
|
76(r23): 24(ptr) Variable Function
|
|
Store 17(v04) 19
|
|
Store 21(v01) 18
|
|
26: 7(fvec4) Load 10(a)
|
|
27: 7(fvec4) Load 17(v04)
|
|
28: 23(bvec4) FOrdEqual 26 27
|
|
Store 25(r00) 28
|
|
30: 7(fvec4) Load 10(a)
|
|
31: 7(fvec4) Load 17(v04)
|
|
32: 23(bvec4) FOrdNotEqual 30 31
|
|
Store 29(r01) 32
|
|
34: 7(fvec4) Load 10(a)
|
|
35: 7(fvec4) Load 17(v04)
|
|
36: 23(bvec4) FOrdLessThan 34 35
|
|
Store 33(r02) 36
|
|
38: 7(fvec4) Load 10(a)
|
|
39: 7(fvec4) Load 17(v04)
|
|
40: 23(bvec4) FOrdGreaterThan 38 39
|
|
Store 37(r03) 40
|
|
42: 7(fvec4) Load 10(a)
|
|
43: 6(float) Load 21(v01)
|
|
44: 7(fvec4) CompositeConstruct 43 43 43 43
|
|
45: 23(bvec4) FOrdEqual 42 44
|
|
Store 41(r10) 45
|
|
47: 7(fvec4) Load 10(a)
|
|
48: 6(float) Load 21(v01)
|
|
49: 7(fvec4) CompositeConstruct 48 48 48 48
|
|
50: 23(bvec4) FOrdNotEqual 47 49
|
|
Store 46(r11) 50
|
|
52: 7(fvec4) Load 10(a)
|
|
53: 6(float) Load 21(v01)
|
|
54: 7(fvec4) CompositeConstruct 53 53 53 53
|
|
55: 23(bvec4) FOrdLessThan 52 54
|
|
Store 51(r12) 55
|
|
57: 7(fvec4) Load 10(a)
|
|
58: 6(float) Load 21(v01)
|
|
59: 7(fvec4) CompositeConstruct 58 58 58 58
|
|
60: 23(bvec4) FOrdGreaterThan 57 59
|
|
Store 56(r13) 60
|
|
62: 6(float) Load 21(v01)
|
|
63: 7(fvec4) CompositeConstruct 62 62 62 62
|
|
64: 7(fvec4) Load 10(a)
|
|
65: 23(bvec4) FOrdEqual 63 64
|
|
Store 61(r20) 65
|
|
67: 6(float) Load 21(v01)
|
|
68: 7(fvec4) CompositeConstruct 67 67 67 67
|
|
69: 7(fvec4) Load 10(a)
|
|
70: 23(bvec4) FOrdNotEqual 68 69
|
|
Store 66(r21) 70
|
|
72: 6(float) Load 21(v01)
|
|
73: 7(fvec4) CompositeConstruct 72 72 72 72
|
|
74: 7(fvec4) Load 10(a)
|
|
75: 23(bvec4) FOrdLessThan 73 74
|
|
Store 71(r22) 75
|
|
77: 6(float) Load 21(v01)
|
|
78: 7(fvec4) CompositeConstruct 77 77 77 77
|
|
79: 7(fvec4) Load 10(a)
|
|
80: 23(bvec4) FOrdGreaterThan 78 79
|
|
Store 76(r23) 80
|
|
Return
|
|
FunctionEnd
|
|
15(@main():13(PS_OUTPUT) Function None 14
|
|
16: Label
|
|
82(psout): 81(ptr) Variable Function
|
|
85: 8(ptr) AccessChain 82(psout) 84
|
|
Store 85 19
|
|
86:13(PS_OUTPUT) Load 82(psout)
|
|
ReturnValue 86
|
|
FunctionEnd
|