glslang/Test/baseResults/hlsl.array.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

226 lines
14 KiB
Plaintext
Executable File

hlsl.array.frag
Shader version: 450
gl_FragCoord origin is upper left
0:? Sequence
0:8 Function Definition: PixelShaderFunction(i1;vf4[3]; (temp 4-component vector of float)
0:8 Function Parameters:
0:8 'i' (layout(location=0 ) in int)
0:8 'input' (layout(location=1 ) in 3-element array of 4-component vector of float)
0:? Sequence
0:10 Sequence
0:10 move second child to first child (temp 4-component vector of float)
0:? '@entryPointOutput' (layout(location=0 ) out 4-component vector of float)
0:10 add (temp 4-component vector of float)
0:10 add (temp 4-component vector of float)
0:10 add (temp 4-component vector of float)
0:10 add (temp 4-component vector of float)
0:10 add (temp 4-component vector of float)
0:10 add (temp 4-component vector of float)
0:10 direct index (layout(offset=0 ) temp 4-component vector of float)
0:10 a: direct index for structure (layout(offset=0 ) uniform 4-element array of 4-component vector of float)
0:10 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform 4-element array of 4-component vector of float a, layout(offset=64 ) uniform 11-element array of structure{temp 7-element array of 4-component vector of float m} s})
0:10 Constant:
0:10 0 (const uint)
0:10 Constant:
0:10 1 (const int)
0:10 indirect index (layout(offset=0 ) temp 4-component vector of float)
0:10 a: direct index for structure (layout(offset=0 ) uniform 4-element array of 4-component vector of float)
0:10 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform 4-element array of 4-component vector of float a, layout(offset=64 ) uniform 11-element array of structure{temp 7-element array of 4-component vector of float m} s})
0:10 Constant:
0:10 0 (const uint)
0:10 'i' (layout(location=0 ) in int)
0:10 direct index (layout(location=1 ) temp 4-component vector of float)
0:10 'input' (layout(location=1 ) in 3-element array of 4-component vector of float)
0:10 Constant:
0:10 2 (const int)
0:10 indirect index (layout(location=1 ) temp 4-component vector of float)
0:10 'input' (layout(location=1 ) in 3-element array of 4-component vector of float)
0:10 'i' (layout(location=0 ) in int)
0:10 direct index (temp 4-component vector of float)
0:10 'b' (temp 10-element array of 4-component vector of float)
0:10 Constant:
0:10 5 (const int)
0:10 indirect index (temp 4-component vector of float)
0:10 'b' (temp 10-element array of 4-component vector of float)
0:10 'i' (layout(location=0 ) in int)
0:10 indirect index (temp 4-component vector of float)
0:10 m: direct index for structure (temp 7-element array of 4-component vector of float)
0:10 indirect index (layout(offset=64 ) temp structure{temp 7-element array of 4-component vector of float m})
0:10 s: direct index for structure (layout(offset=64 ) uniform 11-element array of structure{temp 7-element array of 4-component vector of float m})
0:10 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform 4-element array of 4-component vector of float a, layout(offset=64 ) uniform 11-element array of structure{temp 7-element array of 4-component vector of float m} s})
0:10 Constant:
0:10 1 (const uint)
0:10 'i' (layout(location=0 ) in int)
0:10 Constant:
0:10 0 (const int)
0:10 'i' (layout(location=0 ) in int)
0:10 Branch: Return
0:? Linker Objects
0:? '@entryPointOutput' (layout(location=0 ) out 4-component vector of float)
0:? 'i' (layout(location=0 ) in int)
0:? 'input' (layout(location=1 ) in 3-element array of 4-component vector of float)
0:? 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform 4-element array of 4-component vector of float a, layout(offset=64 ) uniform 11-element array of structure{temp 7-element array of 4-component vector of float m} s})
Linked fragment stage:
Shader version: 450
gl_FragCoord origin is upper left
0:? Sequence
0:8 Function Definition: PixelShaderFunction(i1;vf4[3]; (temp 4-component vector of float)
0:8 Function Parameters:
0:8 'i' (layout(location=0 ) in int)
0:8 'input' (layout(location=1 ) in 3-element array of 4-component vector of float)
0:? Sequence
0:10 Sequence
0:10 move second child to first child (temp 4-component vector of float)
0:? '@entryPointOutput' (layout(location=0 ) out 4-component vector of float)
0:10 add (temp 4-component vector of float)
0:10 add (temp 4-component vector of float)
0:10 add (temp 4-component vector of float)
0:10 add (temp 4-component vector of float)
0:10 add (temp 4-component vector of float)
0:10 add (temp 4-component vector of float)
0:10 direct index (layout(offset=0 ) temp 4-component vector of float)
0:10 a: direct index for structure (layout(offset=0 ) uniform 4-element array of 4-component vector of float)
0:10 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform 4-element array of 4-component vector of float a, layout(offset=64 ) uniform 11-element array of structure{temp 7-element array of 4-component vector of float m} s})
0:10 Constant:
0:10 0 (const uint)
0:10 Constant:
0:10 1 (const int)
0:10 indirect index (layout(offset=0 ) temp 4-component vector of float)
0:10 a: direct index for structure (layout(offset=0 ) uniform 4-element array of 4-component vector of float)
0:10 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform 4-element array of 4-component vector of float a, layout(offset=64 ) uniform 11-element array of structure{temp 7-element array of 4-component vector of float m} s})
0:10 Constant:
0:10 0 (const uint)
0:10 'i' (layout(location=0 ) in int)
0:10 direct index (layout(location=1 ) temp 4-component vector of float)
0:10 'input' (layout(location=1 ) in 3-element array of 4-component vector of float)
0:10 Constant:
0:10 2 (const int)
0:10 indirect index (layout(location=1 ) temp 4-component vector of float)
0:10 'input' (layout(location=1 ) in 3-element array of 4-component vector of float)
0:10 'i' (layout(location=0 ) in int)
0:10 direct index (temp 4-component vector of float)
0:10 'b' (temp 10-element array of 4-component vector of float)
0:10 Constant:
0:10 5 (const int)
0:10 indirect index (temp 4-component vector of float)
0:10 'b' (temp 10-element array of 4-component vector of float)
0:10 'i' (layout(location=0 ) in int)
0:10 indirect index (temp 4-component vector of float)
0:10 m: direct index for structure (temp 7-element array of 4-component vector of float)
0:10 indirect index (layout(offset=64 ) temp structure{temp 7-element array of 4-component vector of float m})
0:10 s: direct index for structure (layout(offset=64 ) uniform 11-element array of structure{temp 7-element array of 4-component vector of float m})
0:10 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform 4-element array of 4-component vector of float a, layout(offset=64 ) uniform 11-element array of structure{temp 7-element array of 4-component vector of float m} s})
0:10 Constant:
0:10 1 (const uint)
0:10 'i' (layout(location=0 ) in int)
0:10 Constant:
0:10 0 (const int)
0:10 'i' (layout(location=0 ) in int)
0:10 Branch: Return
0:? Linker Objects
0:? '@entryPointOutput' (layout(location=0 ) out 4-component vector of float)
0:? 'i' (layout(location=0 ) in int)
0:? 'input' (layout(location=1 ) in 3-element array of 4-component vector of float)
0:? 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform 4-element array of 4-component vector of float a, layout(offset=64 ) uniform 11-element array of structure{temp 7-element array of 4-component vector of float m} s})
// Module Version 10000
// Generated by (magic number): 80001
// Id's are bound by 65
Capability Shader
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint Fragment 4 "PixelShaderFunction" 9 28 36
ExecutionMode 4 OriginUpperLeft
Name 4 "PixelShaderFunction"
Name 9 "@entryPointOutput"
Name 15 ""
MemberName 15 0 "m"
Name 18 "$Global"
MemberName 18($Global) 0 "a"
MemberName 18($Global) 1 "s"
Name 20 ""
Name 28 "i"
Name 36 "input"
Name 49 "b"
Decorate 9(@entryPointOutput) Location 0
Decorate 12 ArrayStride 16
Decorate 14 ArrayStride 16
MemberDecorate 15 0 Offset 0
Decorate 17 ArrayStride 112
MemberDecorate 18($Global) 0 Offset 0
MemberDecorate 18($Global) 1 Offset 64
Decorate 18($Global) Block
Decorate 20 DescriptorSet 0
Decorate 28(i) Location 0
Decorate 36(input) Location 1
2: TypeVoid
3: TypeFunction 2
6: TypeFloat 32
7: TypeVector 6(float) 4
8: TypePointer Output 7(fvec4)
9(@entryPointOutput): 8(ptr) Variable Output
10: TypeInt 32 0
11: 10(int) Constant 4
12: TypeArray 7(fvec4) 11
13: 10(int) Constant 7
14: TypeArray 7(fvec4) 13
15: TypeStruct 14
16: 10(int) Constant 11
17: TypeArray 15(struct) 16
18($Global): TypeStruct 12 17
19: TypePointer Uniform 18($Global)
20: 19(ptr) Variable Uniform
21: TypeInt 32 1
22: 21(int) Constant 0
23: 21(int) Constant 1
24: TypePointer Uniform 7(fvec4)
27: TypePointer Input 21(int)
28(i): 27(ptr) Variable Input
33: 10(int) Constant 3
34: TypeArray 7(fvec4) 33
35: TypePointer Input 34
36(input): 35(ptr) Variable Input
37: 21(int) Constant 2
38: TypePointer Input 7(fvec4)
46: 10(int) Constant 10
47: TypeArray 7(fvec4) 46
48: TypePointer Function 47
50: 21(int) Constant 5
51: TypePointer Function 7(fvec4)
4(PixelShaderFunction): 2 Function None 3
5: Label
49(b): 48(ptr) Variable Function
25: 24(ptr) AccessChain 20 22 23
26: 7(fvec4) Load 25
29: 21(int) Load 28(i)
30: 24(ptr) AccessChain 20 22 29
31: 7(fvec4) Load 30
32: 7(fvec4) FAdd 26 31
39: 38(ptr) AccessChain 36(input) 37
40: 7(fvec4) Load 39
41: 7(fvec4) FAdd 32 40
42: 21(int) Load 28(i)
43: 38(ptr) AccessChain 36(input) 42
44: 7(fvec4) Load 43
45: 7(fvec4) FAdd 41 44
52: 51(ptr) AccessChain 49(b) 50
53: 7(fvec4) Load 52
54: 7(fvec4) FAdd 45 53
55: 21(int) Load 28(i)
56: 51(ptr) AccessChain 49(b) 55
57: 7(fvec4) Load 56
58: 7(fvec4) FAdd 54 57
59: 21(int) Load 28(i)
60: 21(int) Load 28(i)
61: 24(ptr) AccessChain 20 23 59 22 60
62: 7(fvec4) Load 61
63: 7(fvec4) FAdd 58 62
Store 9(@entryPointOutput) 63
Return
FunctionEnd