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

293 lines
17 KiB
Plaintext

hlsl.logical.unary.frag
Shader version: 450
gl_FragCoord origin is upper left
0:? Sequence
0:12 Function Definition: main( (temp structure{temp 4-component vector of float Color})
0:12 Function Parameters:
0:? Sequence
0:13 Negate conditional (temp bool)
0:13 Convert int to bool (temp bool)
0:13 ival: direct index for structure (layout(offset=0 ) uniform int)
0:13 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int ival, layout(offset=16 ) uniform 4-component vector of int ival4, layout(offset=32 ) uniform float fval, layout(offset=48 ) uniform 4-component vector of float fval4})
0:13 Constant:
0:13 0 (const uint)
0:14 Negate conditional (temp 4-component vector of bool)
0:14 Convert int to bool (temp 4-component vector of bool)
0:14 ival4: direct index for structure (layout(offset=16 ) uniform 4-component vector of int)
0:14 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int ival, layout(offset=16 ) uniform 4-component vector of int ival4, layout(offset=32 ) uniform float fval, layout(offset=48 ) uniform 4-component vector of float fval4})
0:14 Constant:
0:14 1 (const uint)
0:16 Negate conditional (temp bool)
0:16 Convert float to bool (temp bool)
0:16 fval: direct index for structure (layout(offset=32 ) uniform float)
0:16 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int ival, layout(offset=16 ) uniform 4-component vector of int ival4, layout(offset=32 ) uniform float fval, layout(offset=48 ) uniform 4-component vector of float fval4})
0:16 Constant:
0:16 2 (const uint)
0:17 Negate conditional (temp 4-component vector of bool)
0:17 Convert float to bool (temp 4-component vector of bool)
0:17 fval4: direct index for structure (layout(offset=48 ) uniform 4-component vector of float)
0:17 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int ival, layout(offset=16 ) uniform 4-component vector of int ival4, layout(offset=32 ) uniform float fval, layout(offset=48 ) uniform 4-component vector of float fval4})
0:17 Constant:
0:17 3 (const uint)
0:19 Test condition and select (temp void)
0:19 Condition
0:19 ival: direct index for structure (layout(offset=0 ) uniform int)
0:19 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int ival, layout(offset=16 ) uniform 4-component vector of int ival4, layout(offset=32 ) uniform float fval, layout(offset=48 ) uniform 4-component vector of float fval4})
0:19 Constant:
0:19 0 (const uint)
0:19 true case is null
0:20 Test condition and select (temp void)
0:20 Condition
0:20 fval: direct index for structure (layout(offset=32 ) uniform float)
0:20 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int ival, layout(offset=16 ) uniform 4-component vector of int ival4, layout(offset=32 ) uniform float fval, layout(offset=48 ) uniform 4-component vector of float fval4})
0:20 Constant:
0:20 2 (const uint)
0:20 true case is null
0:21 Test condition and select (temp void)
0:21 Condition
0:21 Negate conditional (temp bool)
0:21 Convert int to bool (temp bool)
0:21 ival: direct index for structure (layout(offset=0 ) uniform int)
0:21 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int ival, layout(offset=16 ) uniform 4-component vector of int ival4, layout(offset=32 ) uniform float fval, layout(offset=48 ) uniform 4-component vector of float fval4})
0:21 Constant:
0:21 0 (const uint)
0:21 true case is null
0:22 Test condition and select (temp void)
0:22 Condition
0:22 Negate conditional (temp bool)
0:22 Convert float to bool (temp bool)
0:22 fval: direct index for structure (layout(offset=32 ) uniform float)
0:22 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int ival, layout(offset=16 ) uniform 4-component vector of int ival4, layout(offset=32 ) uniform float fval, layout(offset=48 ) uniform 4-component vector of float fval4})
0:22 Constant:
0:22 2 (const uint)
0:22 true case is null
0:25 move second child to first child (temp 4-component vector of float)
0:25 Color: direct index for structure (temp 4-component vector of float)
0:25 'psout' (temp structure{temp 4-component vector of float Color})
0:25 Constant:
0:25 0 (const int)
0:25 Constant:
0:25 1.000000
0:25 1.000000
0:25 1.000000
0:25 1.000000
0:26 Sequence
0:26 Sequence
0:26 move second child to first child (temp 4-component vector of float)
0:? 'Color' (layout(location=0 ) out 4-component vector of float)
0:26 Color: direct index for structure (temp 4-component vector of float)
0:26 'psout' (temp structure{temp 4-component vector of float Color})
0:26 Constant:
0:26 0 (const int)
0:26 Branch: Return
0:? Linker Objects
0:? 'Color' (layout(location=0 ) out 4-component vector of float)
0:? 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int ival, layout(offset=16 ) uniform 4-component vector of int ival4, layout(offset=32 ) uniform float fval, layout(offset=48 ) uniform 4-component vector of float fval4})
Linked fragment stage:
Shader version: 450
gl_FragCoord origin is upper left
0:? Sequence
0:12 Function Definition: main( (temp structure{temp 4-component vector of float Color})
0:12 Function Parameters:
0:? Sequence
0:13 Negate conditional (temp bool)
0:13 Convert int to bool (temp bool)
0:13 ival: direct index for structure (layout(offset=0 ) uniform int)
0:13 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int ival, layout(offset=16 ) uniform 4-component vector of int ival4, layout(offset=32 ) uniform float fval, layout(offset=48 ) uniform 4-component vector of float fval4})
0:13 Constant:
0:13 0 (const uint)
0:14 Negate conditional (temp 4-component vector of bool)
0:14 Convert int to bool (temp 4-component vector of bool)
0:14 ival4: direct index for structure (layout(offset=16 ) uniform 4-component vector of int)
0:14 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int ival, layout(offset=16 ) uniform 4-component vector of int ival4, layout(offset=32 ) uniform float fval, layout(offset=48 ) uniform 4-component vector of float fval4})
0:14 Constant:
0:14 1 (const uint)
0:16 Negate conditional (temp bool)
0:16 Convert float to bool (temp bool)
0:16 fval: direct index for structure (layout(offset=32 ) uniform float)
0:16 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int ival, layout(offset=16 ) uniform 4-component vector of int ival4, layout(offset=32 ) uniform float fval, layout(offset=48 ) uniform 4-component vector of float fval4})
0:16 Constant:
0:16 2 (const uint)
0:17 Negate conditional (temp 4-component vector of bool)
0:17 Convert float to bool (temp 4-component vector of bool)
0:17 fval4: direct index for structure (layout(offset=48 ) uniform 4-component vector of float)
0:17 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int ival, layout(offset=16 ) uniform 4-component vector of int ival4, layout(offset=32 ) uniform float fval, layout(offset=48 ) uniform 4-component vector of float fval4})
0:17 Constant:
0:17 3 (const uint)
0:19 Test condition and select (temp void)
0:19 Condition
0:19 ival: direct index for structure (layout(offset=0 ) uniform int)
0:19 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int ival, layout(offset=16 ) uniform 4-component vector of int ival4, layout(offset=32 ) uniform float fval, layout(offset=48 ) uniform 4-component vector of float fval4})
0:19 Constant:
0:19 0 (const uint)
0:19 true case is null
0:20 Test condition and select (temp void)
0:20 Condition
0:20 fval: direct index for structure (layout(offset=32 ) uniform float)
0:20 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int ival, layout(offset=16 ) uniform 4-component vector of int ival4, layout(offset=32 ) uniform float fval, layout(offset=48 ) uniform 4-component vector of float fval4})
0:20 Constant:
0:20 2 (const uint)
0:20 true case is null
0:21 Test condition and select (temp void)
0:21 Condition
0:21 Negate conditional (temp bool)
0:21 Convert int to bool (temp bool)
0:21 ival: direct index for structure (layout(offset=0 ) uniform int)
0:21 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int ival, layout(offset=16 ) uniform 4-component vector of int ival4, layout(offset=32 ) uniform float fval, layout(offset=48 ) uniform 4-component vector of float fval4})
0:21 Constant:
0:21 0 (const uint)
0:21 true case is null
0:22 Test condition and select (temp void)
0:22 Condition
0:22 Negate conditional (temp bool)
0:22 Convert float to bool (temp bool)
0:22 fval: direct index for structure (layout(offset=32 ) uniform float)
0:22 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int ival, layout(offset=16 ) uniform 4-component vector of int ival4, layout(offset=32 ) uniform float fval, layout(offset=48 ) uniform 4-component vector of float fval4})
0:22 Constant:
0:22 2 (const uint)
0:22 true case is null
0:25 move second child to first child (temp 4-component vector of float)
0:25 Color: direct index for structure (temp 4-component vector of float)
0:25 'psout' (temp structure{temp 4-component vector of float Color})
0:25 Constant:
0:25 0 (const int)
0:25 Constant:
0:25 1.000000
0:25 1.000000
0:25 1.000000
0:25 1.000000
0:26 Sequence
0:26 Sequence
0:26 move second child to first child (temp 4-component vector of float)
0:? 'Color' (layout(location=0 ) out 4-component vector of float)
0:26 Color: direct index for structure (temp 4-component vector of float)
0:26 'psout' (temp structure{temp 4-component vector of float Color})
0:26 Constant:
0:26 0 (const int)
0:26 Branch: Return
0:? Linker Objects
0:? 'Color' (layout(location=0 ) out 4-component vector of float)
0:? 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int ival, layout(offset=16 ) uniform 4-component vector of int ival4, layout(offset=32 ) uniform float fval, layout(offset=48 ) uniform 4-component vector of float fval4})
// Module Version 10000
// Generated by (magic number): 80001
// Id's are bound by 77
Capability Shader
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint Fragment 4 "main" 73
ExecutionMode 4 OriginUpperLeft
Name 4 "main"
Name 10 "$Global"
MemberName 10($Global) 0 "ival"
MemberName 10($Global) 1 "ival4"
MemberName 10($Global) 2 "fval"
MemberName 10($Global) 3 "fval4"
Name 12 ""
Name 65 "PS_OUTPUT"
MemberName 65(PS_OUTPUT) 0 "Color"
Name 67 "psout"
Name 73 "Color"
MemberDecorate 10($Global) 0 Offset 0
MemberDecorate 10($Global) 1 Offset 16
MemberDecorate 10($Global) 2 Offset 32
MemberDecorate 10($Global) 3 Offset 48
Decorate 10($Global) Block
Decorate 12 DescriptorSet 0
Decorate 73(Color) Location 0
2: TypeVoid
3: TypeFunction 2
6: TypeInt 32 1
7: TypeVector 6(int) 4
8: TypeFloat 32
9: TypeVector 8(float) 4
10($Global): TypeStruct 6(int) 7(ivec4) 8(float) 9(fvec4)
11: TypePointer Uniform 10($Global)
12: 11(ptr) Variable Uniform
13: 6(int) Constant 0
14: TypePointer Uniform 6(int)
17: TypeBool
18: TypeInt 32 0
19: 18(int) Constant 0
22: 6(int) Constant 1
23: TypePointer Uniform 7(ivec4)
26: TypeVector 17(bool) 4
27: TypeVector 18(int) 4
28: 27(ivec4) ConstantComposite 19 19 19 19
31: 6(int) Constant 2
32: TypePointer Uniform 8(float)
35: 8(float) Constant 0
38: 6(int) Constant 3
39: TypePointer Uniform 9(fvec4)
42: 9(fvec4) ConstantComposite 35 35 35 35
65(PS_OUTPUT): TypeStruct 9(fvec4)
66: TypePointer Function 65(PS_OUTPUT)
68: 8(float) Constant 1065353216
69: 9(fvec4) ConstantComposite 68 68 68 68
70: TypePointer Function 9(fvec4)
72: TypePointer Output 9(fvec4)
73(Color): 72(ptr) Variable Output
4(main): 2 Function None 3
5: Label
67(psout): 66(ptr) Variable Function
15: 14(ptr) AccessChain 12 13
16: 6(int) Load 15
20: 17(bool) INotEqual 16 19
21: 17(bool) LogicalNot 20
24: 23(ptr) AccessChain 12 22
25: 7(ivec4) Load 24
29: 26(bvec4) INotEqual 25 28
30: 26(bvec4) LogicalNot 29
33: 32(ptr) AccessChain 12 31
34: 8(float) Load 33
36: 17(bool) FOrdNotEqual 34 35
37: 17(bool) LogicalNot 36
40: 39(ptr) AccessChain 12 38
41: 9(fvec4) Load 40
43: 26(bvec4) FOrdNotEqual 41 42
44: 26(bvec4) LogicalNot 43
45: 14(ptr) AccessChain 12 13
46: 6(int) Load 45
SelectionMerge 48 None
BranchConditional 46 47 48
47: Label
Branch 48
48: Label
49: 32(ptr) AccessChain 12 31
50: 8(float) Load 49
SelectionMerge 52 None
BranchConditional 50 51 52
51: Label
Branch 52
52: Label
53: 14(ptr) AccessChain 12 13
54: 6(int) Load 53
55: 17(bool) INotEqual 54 19
56: 17(bool) LogicalNot 55
SelectionMerge 58 None
BranchConditional 56 57 58
57: Label
Branch 58
58: Label
59: 32(ptr) AccessChain 12 31
60: 8(float) Load 59
61: 17(bool) FOrdNotEqual 60 35
62: 17(bool) LogicalNot 61
SelectionMerge 64 None
BranchConditional 62 63 64
63: Label
Branch 64
64: Label
71: 70(ptr) AccessChain 67(psout) 13
Store 71 69
74: 70(ptr) AccessChain 67(psout) 13
75: 9(fvec4) Load 74
Store 73(Color) 75
Return
FunctionEnd