glslang/Test/baseResults/hlsl.init.frag.out
John Kessenich d3f1122a44 Whole stack: Fix stale types in the AST linker object nodes, fixing #557.
Rationalizes the entire tracking of the linker object nodes, effecting
GLSL, HLSL, and SPIR-V, to allow tracked objects to be fully edited before
their type snapshot for linker objects.

Should only effect things when the rest of the AST contained no reference to
the symbol, because normal AST nodes were not stale. Also will only effect such
objects when their types were edited.
2016-11-05 10:22:33 -06:00

481 lines
20 KiB
Plaintext
Executable File

hlsl.init.frag
Shader version: 450
gl_FragCoord origin is upper left
0:? Sequence
0:1 Sequence
0:1 move second child to first child (temp 4-component vector of float)
0:1 'a1' (global 4-component vector of float)
0:? Constant:
0:? 1.000000
0:? 0.500000
0:? 0.000000
0:? 1.000000
0:1 move second child to first child (temp 4-component vector of float)
0:1 'b1' (global 4-component vector of float)
0:? Constant:
0:? 2.000000
0:? 2.500000
0:? 2.100000
0:? 2.200000
0:2 Sequence
0:2 move second child to first child (temp 4-component vector of float)
0:2 'a1i' (global 4-component vector of float)
0:2 Constant:
0:2 1.000000
0:2 0.500000
0:2 0.000000
0:2 1.000000
0:2 move second child to first child (temp 4-component vector of float)
0:2 'b1i' (global 4-component vector of float)
0:2 Constant:
0:2 2.000000
0:2 2.500000
0:2 2.100000
0:2 2.200000
0:3 Sequence
0:3 move second child to first child (temp float)
0:3 'a2' (global float)
0:3 Constant:
0:3 0.200000
0:4 Sequence
0:4 move second child to first child (temp float)
0:4 'b3' (global float)
0:4 Constant:
0:4 0.300000
0:5 Sequence
0:5 move second child to first child (temp float)
0:5 'b4' (global float)
0:5 Constant:
0:5 0.400000
0:6 Sequence
0:6 move second child to first child (temp float)
0:6 'a5' (global float)
0:6 Constant:
0:6 0.500000
0:6 move second child to first child (temp float)
0:6 'c5' (global float)
0:6 Constant:
0:6 1.500000
0:9 Sequence
0:9 move second child to first child (temp structure{temp int f})
0:9 'single1' (global structure{temp int f})
0:9 Constant:
0:9 10 (const int)
0:12 Sequence
0:12 move second child to first child (temp structure{temp 2-component vector of uint v})
0:12 'single2' (global structure{temp 2-component vector of uint v})
0:12 Constant:
0:12 1 (const uint)
0:12 2 (const uint)
0:15 Sequence
0:15 move second child to first child (temp structure{temp structure{temp int f} s1})
0:15 'single3' (global structure{temp structure{temp int f} s1})
0:15 Constant:
0:15 3 (const int)
0:18 Sequence
0:18 move second child to first child (temp structure{temp structure{temp 2-component vector of uint v} s1})
0:18 'single4' (global structure{temp structure{temp 2-component vector of uint v} s1})
0:18 Constant:
0:18 4 (const uint)
0:18 5 (const uint)
0:21 Function Definition: ShaderFunction(vf4; (temp 4-component vector of float)
0:21 Function Parameters:
0:21 'input' (layout(location=0 ) in 4-component vector of float)
0:? Sequence
0:22 Sequence
0:22 move second child to first child (temp 4-component vector of float)
0:22 'a2' (temp 4-component vector of float)
0:? Constant:
0:? 0.200000
0:? 0.300000
0:? 0.400000
0:? 0.500000
0:32 Sequence
0:32 move second child to first child (temp structure{temp int j, temp float g, temp structure{temp float f, temp int i} s1})
0:32 's2i' (temp structure{temp int j, temp float g, temp structure{temp float f, temp int i} s1})
0:32 Construct structure (temp structure{temp int j, temp float g, temp structure{temp float f, temp int i} s1})
0:32 Constant:
0:32 9 (const int)
0:32 'a5' (global float)
0:32 Construct structure (temp structure{temp float f, temp int i})
0:32 Comma (temp float)
0:32 'a3' (global float)
0:32 'a4' (global float)
0:32 Constant:
0:32 12 (const int)
0:32 move second child to first child (temp structure{temp int j, temp float g, temp structure{temp float f, temp int i} s1})
0:32 's2' (temp structure{temp int j, temp float g, temp structure{temp float f, temp int i} s1})
0:? Construct structure (temp structure{temp int j, temp float g, temp structure{temp float f, temp int i} s1})
0:32 Constant:
0:32 9 (const int)
0:32 'a5' (global float)
0:? Construct structure (temp structure{temp float f, temp int i})
0:32 Comma (temp float)
0:32 'a3' (global float)
0:32 'a4' (global float)
0:32 Constant:
0:32 12 (const int)
0:33 Sequence
0:33 move second child to first child (temp float)
0:33 'a8' (temp float)
0:33 Comma (temp float)
0:33 'a2' (temp 4-component vector of float)
0:33 'b2' (global float)
0:33 move second child to first child (temp float)
0:33 'a9' (temp float)
0:33 'a5' (global float)
0:35 Sequence
0:35 move second child to first child (temp 4-component vector of float)
0:? '@entryPointOutput' (layout(location=0 ) out 4-component vector of float)
0:35 component-wise multiply (temp 4-component vector of float)
0:35 'input' (layout(location=0 ) in 4-component vector of float)
0:35 'a1' (global 4-component vector of float)
0:35 Branch: Return
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)
0:? 'a1' (global 4-component vector of float)
0:? 'b1' (global 4-component vector of float)
0:? 'a1i' (global 4-component vector of float)
0:? 'b1i' (global 4-component vector of float)
0:? 'a2' (global float)
0:? 'b2' (global float)
0:? 'a3' (global float)
0:? 'b3' (global float)
0:? 'a4' (global float)
0:? 'b4' (global float)
0:? 'c4' (global float)
0:? 'a5' (global float)
0:? 'b5' (global float)
0:? 'c5' (global float)
0:? 'single1' (global structure{temp int f})
0:? 'single2' (global structure{temp 2-component vector of uint v})
0:? 'single3' (global structure{temp structure{temp int f} s1})
0:? 'single4' (global structure{temp structure{temp 2-component vector of uint v} s1})
Linked fragment stage:
Shader version: 450
gl_FragCoord origin is upper left
0:? Sequence
0:1 Sequence
0:1 move second child to first child (temp 4-component vector of float)
0:1 'a1' (global 4-component vector of float)
0:? Constant:
0:? 1.000000
0:? 0.500000
0:? 0.000000
0:? 1.000000
0:1 move second child to first child (temp 4-component vector of float)
0:1 'b1' (global 4-component vector of float)
0:? Constant:
0:? 2.000000
0:? 2.500000
0:? 2.100000
0:? 2.200000
0:2 Sequence
0:2 move second child to first child (temp 4-component vector of float)
0:2 'a1i' (global 4-component vector of float)
0:2 Constant:
0:2 1.000000
0:2 0.500000
0:2 0.000000
0:2 1.000000
0:2 move second child to first child (temp 4-component vector of float)
0:2 'b1i' (global 4-component vector of float)
0:2 Constant:
0:2 2.000000
0:2 2.500000
0:2 2.100000
0:2 2.200000
0:3 Sequence
0:3 move second child to first child (temp float)
0:3 'a2' (global float)
0:3 Constant:
0:3 0.200000
0:4 Sequence
0:4 move second child to first child (temp float)
0:4 'b3' (global float)
0:4 Constant:
0:4 0.300000
0:5 Sequence
0:5 move second child to first child (temp float)
0:5 'b4' (global float)
0:5 Constant:
0:5 0.400000
0:6 Sequence
0:6 move second child to first child (temp float)
0:6 'a5' (global float)
0:6 Constant:
0:6 0.500000
0:6 move second child to first child (temp float)
0:6 'c5' (global float)
0:6 Constant:
0:6 1.500000
0:9 Sequence
0:9 move second child to first child (temp structure{temp int f})
0:9 'single1' (global structure{temp int f})
0:9 Constant:
0:9 10 (const int)
0:12 Sequence
0:12 move second child to first child (temp structure{temp 2-component vector of uint v})
0:12 'single2' (global structure{temp 2-component vector of uint v})
0:12 Constant:
0:12 1 (const uint)
0:12 2 (const uint)
0:15 Sequence
0:15 move second child to first child (temp structure{temp structure{temp int f} s1})
0:15 'single3' (global structure{temp structure{temp int f} s1})
0:15 Constant:
0:15 3 (const int)
0:18 Sequence
0:18 move second child to first child (temp structure{temp structure{temp 2-component vector of uint v} s1})
0:18 'single4' (global structure{temp structure{temp 2-component vector of uint v} s1})
0:18 Constant:
0:18 4 (const uint)
0:18 5 (const uint)
0:21 Function Definition: ShaderFunction(vf4; (temp 4-component vector of float)
0:21 Function Parameters:
0:21 'input' (layout(location=0 ) in 4-component vector of float)
0:? Sequence
0:22 Sequence
0:22 move second child to first child (temp 4-component vector of float)
0:22 'a2' (temp 4-component vector of float)
0:? Constant:
0:? 0.200000
0:? 0.300000
0:? 0.400000
0:? 0.500000
0:32 Sequence
0:32 move second child to first child (temp structure{temp int j, temp float g, temp structure{temp float f, temp int i} s1})
0:32 's2i' (temp structure{temp int j, temp float g, temp structure{temp float f, temp int i} s1})
0:32 Construct structure (temp structure{temp int j, temp float g, temp structure{temp float f, temp int i} s1})
0:32 Constant:
0:32 9 (const int)
0:32 'a5' (global float)
0:32 Construct structure (temp structure{temp float f, temp int i})
0:32 Comma (temp float)
0:32 'a3' (global float)
0:32 'a4' (global float)
0:32 Constant:
0:32 12 (const int)
0:32 move second child to first child (temp structure{temp int j, temp float g, temp structure{temp float f, temp int i} s1})
0:32 's2' (temp structure{temp int j, temp float g, temp structure{temp float f, temp int i} s1})
0:? Construct structure (temp structure{temp int j, temp float g, temp structure{temp float f, temp int i} s1})
0:32 Constant:
0:32 9 (const int)
0:32 'a5' (global float)
0:? Construct structure (temp structure{temp float f, temp int i})
0:32 Comma (temp float)
0:32 'a3' (global float)
0:32 'a4' (global float)
0:32 Constant:
0:32 12 (const int)
0:33 Sequence
0:33 move second child to first child (temp float)
0:33 'a8' (temp float)
0:33 Comma (temp float)
0:33 'a2' (temp 4-component vector of float)
0:33 'b2' (global float)
0:33 move second child to first child (temp float)
0:33 'a9' (temp float)
0:33 'a5' (global float)
0:35 Sequence
0:35 move second child to first child (temp 4-component vector of float)
0:? '@entryPointOutput' (layout(location=0 ) out 4-component vector of float)
0:35 component-wise multiply (temp 4-component vector of float)
0:35 'input' (layout(location=0 ) in 4-component vector of float)
0:35 'a1' (global 4-component vector of float)
0:35 Branch: Return
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)
0:? 'a1' (global 4-component vector of float)
0:? 'b1' (global 4-component vector of float)
0:? 'a1i' (global 4-component vector of float)
0:? 'b1i' (global 4-component vector of float)
0:? 'a2' (global float)
0:? 'b2' (global float)
0:? 'a3' (global float)
0:? 'b3' (global float)
0:? 'a4' (global float)
0:? 'b4' (global float)
0:? 'c4' (global float)
0:? 'a5' (global float)
0:? 'b5' (global float)
0:? 'c5' (global float)
0:? 'single1' (global structure{temp int f})
0:? 'single2' (global structure{temp 2-component vector of uint v})
0:? 'single3' (global structure{temp structure{temp int f} s1})
0:? 'single4' (global structure{temp structure{temp 2-component vector of uint v} s1})
// Module Version 10000
// Generated by (magic number): 80001
// Id's are bound by 97
Capability Shader
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint Fragment 4 "ShaderFunction" 88 90
ExecutionMode 4 OriginUpperLeft
Name 4 "ShaderFunction"
Name 9 "a1"
Name 14 "b1"
Name 20 "a1i"
Name 21 "b1i"
Name 23 "a2"
Name 25 "b3"
Name 27 "b4"
Name 29 "a5"
Name 30 "c5"
Name 33 "Single1"
MemberName 33(Single1) 0 "f"
Name 35 "single1"
Name 40 "Single2"
MemberName 40(Single2) 0 "v"
Name 42 "single2"
Name 47 "Single3"
MemberName 47(Single3) 0 "s1"
Name 49 "single3"
Name 53 "Single4"
MemberName 53(Single4) 0 "s1"
Name 55 "single4"
Name 62 "a2"
Name 64 "S1"
MemberName 64(S1) 0 "f"
MemberName 64(S1) 1 "i"
Name 65 "S2"
MemberName 65(S2) 0 "j"
MemberName 65(S2) 1 "g"
MemberName 65(S2) 2 "s1"
Name 67 "s2i"
Name 70 "a3"
Name 71 "a4"
Name 76 "s2"
Name 82 "a8"
Name 83 "b2"
Name 85 "a9"
Name 88 "@entryPointOutput"
Name 90 "input"
Name 95 "c4"
Name 96 "b5"
Decorate 88(@entryPointOutput) Location 0
Decorate 90(input) Location 0
2: TypeVoid
3: TypeFunction 2
6: TypeFloat 32
7: TypeVector 6(float) 4
8: TypePointer Private 7(fvec4)
9(a1): 8(ptr) Variable Private
10: 6(float) Constant 1065353216
11: 6(float) Constant 1056964608
12: 6(float) Constant 0
13: 7(fvec4) ConstantComposite 10 11 12 10
14(b1): 8(ptr) Variable Private
15: 6(float) Constant 1073741824
16: 6(float) Constant 1075838976
17: 6(float) Constant 1074161254
18: 6(float) Constant 1074580685
19: 7(fvec4) ConstantComposite 15 16 17 18
20(a1i): 8(ptr) Variable Private
21(b1i): 8(ptr) Variable Private
22: TypePointer Private 6(float)
23(a2): 22(ptr) Variable Private
24: 6(float) Constant 1045220557
25(b3): 22(ptr) Variable Private
26: 6(float) Constant 1050253722
27(b4): 22(ptr) Variable Private
28: 6(float) Constant 1053609165
29(a5): 22(ptr) Variable Private
30(c5): 22(ptr) Variable Private
31: 6(float) Constant 1069547520
32: TypeInt 32 1
33(Single1): TypeStruct 32(int)
34: TypePointer Private 33(Single1)
35(single1): 34(ptr) Variable Private
36: 32(int) Constant 10
37: 33(Single1) ConstantComposite 36
38: TypeInt 32 0
39: TypeVector 38(int) 2
40(Single2): TypeStruct 39(ivec2)
41: TypePointer Private 40(Single2)
42(single2): 41(ptr) Variable Private
43: 38(int) Constant 1
44: 38(int) Constant 2
45: 39(ivec2) ConstantComposite 43 44
46: 40(Single2) ConstantComposite 45
47(Single3): TypeStruct 33(Single1)
48: TypePointer Private 47(Single3)
49(single3): 48(ptr) Variable Private
50: 32(int) Constant 3
51: 33(Single1) ConstantComposite 50
52: 47(Single3) ConstantComposite 51
53(Single4): TypeStruct 40(Single2)
54: TypePointer Private 53(Single4)
55(single4): 54(ptr) Variable Private
56: 38(int) Constant 4
57: 38(int) Constant 5
58: 39(ivec2) ConstantComposite 56 57
59: 40(Single2) ConstantComposite 58
60: 53(Single4) ConstantComposite 59
61: TypePointer Function 7(fvec4)
63: 7(fvec4) ConstantComposite 24 26 28 11
64(S1): TypeStruct 6(float) 32(int)
65(S2): TypeStruct 32(int) 6(float) 64(S1)
66: TypePointer Function 65(S2)
68: 32(int) Constant 9
70(a3): 22(ptr) Variable Private
71(a4): 22(ptr) Variable Private
73: 32(int) Constant 12
81: TypePointer Function 6(float)
83(b2): 22(ptr) Variable Private
87: TypePointer Output 7(fvec4)
88(@entryPointOutput): 87(ptr) Variable Output
89: TypePointer Input 7(fvec4)
90(input): 89(ptr) Variable Input
95(c4): 22(ptr) Variable Private
96(b5): 22(ptr) Variable Private
4(ShaderFunction): 2 Function None 3
5: Label
62(a2): 61(ptr) Variable Function
67(s2i): 66(ptr) Variable Function
76(s2): 66(ptr) Variable Function
82(a8): 81(ptr) Variable Function
85(a9): 81(ptr) Variable Function
Store 9(a1) 13
Store 14(b1) 19
Store 20(a1i) 13
Store 21(b1i) 19
Store 23(a2) 24
Store 25(b3) 26
Store 27(b4) 28
Store 29(a5) 11
Store 30(c5) 31
Store 35(single1) 37
Store 42(single2) 46
Store 49(single3) 52
Store 55(single4) 60
Store 62(a2) 63
69: 6(float) Load 29(a5)
72: 6(float) Load 71(a4)
74: 64(S1) CompositeConstruct 72 73
75: 65(S2) CompositeConstruct 68 69 74
Store 67(s2i) 75
77: 6(float) Load 29(a5)
78: 6(float) Load 71(a4)
79: 64(S1) CompositeConstruct 78 73
80: 65(S2) CompositeConstruct 68 77 79
Store 76(s2) 80
84: 6(float) Load 83(b2)
Store 82(a8) 84
86: 6(float) Load 29(a5)
Store 85(a9) 86
91: 7(fvec4) Load 90(input)
92: 7(fvec4) Load 9(a1)
93: 7(fvec4) FMul 91 92
Store 88(@entryPointOutput) 93
Return
FunctionEnd