Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
G
glslang
Project
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Chen Yisong
glslang
Commits
4bfb32e1
Commit
4bfb32e1
authored
Sep 09, 2016
by
John Kessenich
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'bugfix2' of
https://github.com/amdrexu/glslang
into amdrexu-bugfix2
parents
31527186
99c4dd16
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
667 additions
and
633 deletions
+667
-633
spv.int64.frag.out
Test/baseResults/spv.int64.frag.out
+611
-607
spv.uint.frag.out
Test/baseResults/spv.uint.frag.out
+28
-19
spv.int64.frag
Test/spv.int64.frag
+4
-2
spv.uint.frag
Test/spv.uint.frag
+4
-1
revision.h
glslang/Include/revision.h
+2
-2
PpTokens.cpp
glslang/MachineIndependent/preprocessor/PpTokens.cpp
+18
-2
No files found.
Test/baseResults/spv.int64.frag.out
View file @
4bfb32e1
...
@@ -7,7 +7,7 @@ Linked fragment stage:
...
@@ -7,7 +7,7 @@ Linked fragment stage:
// Module Version 10000
// Module Version 10000
// Generated by (magic number): 80001
// Generated by (magic number): 80001
// Id's are bound by 4
78
// Id's are bound by 4
80
Capability Shader
Capability Shader
Capability Float64
Capability Float64
...
@@ -23,631 +23,635 @@ Linked fragment stage:
...
@@ -23,631 +23,635 @@ Linked fragment stage:
Name 8 "typeCast("
Name 8 "typeCast("
Name 10 "operators("
Name 10 "operators("
Name 12 "builtinFuncs("
Name 12 "builtinFuncs("
Name 16 "i64"
Name 16 "u64Max"
Name 24 "Uniforms"
Name 20 "i64"
MemberName 24(Uniforms) 0 "index"
Name 28 "Uniforms"
Name 26 ""
MemberName 28(Uniforms) 0 "index"
Name 33 "indexable"
Name 30 ""
Name 38 "u64"
Name 37 "indexable"
Name 47 "indexable"
Name 41 "u64"
Name 52 "i64v"
Name 49 "indexable"
Name 56 "bv"
Name 54 "i64v"
Name 65 "u64v"
Name 58 "bv"
Name 74 "iv"
Name 67 "u64v"
Name 81 "uv"
Name 76 "iv"
Name 89 "fv"
Name 83 "uv"
Name 95 "dv"
Name 91 "fv"
Name 132 "u64v"
Name 97 "dv"
Name 137 "i64"
Name 134 "u64v"
Name 157 "i"
Name 139 "i64"
Name 164 "uv"
Name 159 "i"
Name 216 "b"
Name 166 "uv"
Name 276 "i64v"
Name 218 "b"
Name 279 "i64"
Name 278 "i64v"
Name 289 "u64v"
Name 281 "i64"
Name 291 "u64"
Name 291 "u64v"
Name 363 "dv"
Name 293 "u64"
Name 382 "iv"
Name 365 "dv"
Name 387 "uv"
Name 384 "iv"
Name 391 "bv"
Name 389 "uv"
Name 452 "Block"
Name 393 "bv"
MemberName 452(Block) 0 "i64v"
Name 454 "Block"
MemberName 452(Block) 1 "u64"
MemberName 454(Block) 0 "i64v"
Name 454 "block"
MemberName 454(Block) 1 "u64"
MemberDecorate 24(Uniforms) 0 Offset 0
Name 456 "block"
Decorate 24(Uniforms) Block
MemberDecorate 28(Uniforms) 0 Offset 0
Decorate 26 DescriptorSet 0
Decorate 28(Uniforms) Block
Decorate 26 Binding 0
Decorate 30 DescriptorSet 0
MemberDecorate 452(Block) 0 Offset 0
Decorate 30 Binding 0
MemberDecorate 452(Block) 1 Offset 24
MemberDecorate 454(Block) 0 Offset 0
Decorate 452(Block) Block
MemberDecorate 454(Block) 1 Offset 24
Decorate 454(block) DescriptorSet 0
Decorate 454(Block) Block
Decorate 454(block) Binding 1
Decorate 456(block) DescriptorSet 0
Decorate 455 SpecId 100
Decorate 456(block) Binding 1
Decorate 456 SpecId 101
Decorate 457 SpecId 100
Decorate 457 SpecId 102
Decorate 458 SpecId 101
Decorate 458 SpecId 103
Decorate 459 SpecId 102
Decorate 459 SpecId 104
Decorate 460 SpecId 103
Decorate 461 SpecId 104
2: TypeVoid
2: TypeVoid
3: TypeFunction 2
3: TypeFunction 2
14: TypeInt 64 1
14: TypeInt 64 0
15: TypePointer Function 14(int)
15: TypePointer Private 14(int)
17: TypeInt 32 0
16(u64Max): 15(ptr) Variable Private
18: 17(int) Constant 3
17: 14(int) Constant 4294967295 4294967295
19: TypeArray 14(int) 18
18: TypeInt 64 1
20: 14(int) Constant 4008636143 4008636142
19: TypePointer Function 18(int)
21: 14(int) Constant 4294967295 4294967295
21: TypeInt 32 0
22: 14(int) Constant 0 1
22: 21(int) Constant 3
23: 19 ConstantComposite 20 21 22
23: TypeArray 18(int) 22
24(Uniforms): TypeStruct 17(int)
24: 18(int) Constant 4008636143 4008636142
25: TypePointer Uniform 24(Uniforms)
25: 18(int) Constant 4294967295 4294967295
26: 25(ptr) Variable Uniform
26: 18(int) Constant 0 1
27: TypeInt 32 1
27: 23 ConstantComposite 24 25 26
28: 27(int) Constant 0
28(Uniforms): TypeStruct 21(int)
29: TypePointer Uniform 17(int)
29: TypePointer Uniform 28(Uniforms)
32: TypePointer Function 19
30: 29(ptr) Variable Uniform
36: TypeInt 64 0
31: TypeInt 32 1
37: TypePointer Function 36(int)
32: 31(int) Constant 0
39: TypeArray 36(int) 18
33: TypePointer Uniform 21(int)
40: 36(int) Constant 4294967295 4294967295
36: TypePointer Function 23
41: 36(int) Constant 0 1
40: TypePointer Function 14(int)
42: 36(int) Constant 4294967295 1
42: TypeArray 14(int) 22
43: 39 ConstantComposite 40 41 42
43: 14(int) Constant 0 1
46: TypePointer Function 39
44: 14(int) Constant 4294967295 1
50: TypeVector 14(int) 2
45: 42 ConstantComposite 17 43 44
51: TypePointer Function 50(ivec2)
48: TypePointer Function 42
53: TypeBool
52: TypeVector 18(int) 2
54: TypeVector 53(bool) 2
53: TypePointer Function 52(ivec2)
55: TypePointer Function 54(bvec2)
55: TypeBool
58: 14(int) Constant 0 0
56: TypeVector 55(bool) 2
59: 14(int) Constant 1 0
57: TypePointer Function 56(bvec2)
60: 50(ivec2) ConstantComposite 58 58
60: 18(int) Constant 0 0
61: 50(ivec2) ConstantComposite 59 59
61: 18(int) Constant 1 0
63: TypeVector 36(int) 2
62: 52(ivec2) ConstantComposite 60 60
64: TypePointer Function 63(ivec2)
63: 52(ivec2) ConstantComposite 61 61
67: 36(int) Constant 0 0
65: TypeVector 14(int) 2
68: 36(int) Constant 1 0
66: TypePointer Function 65(ivec2)
69: 63(ivec2) ConstantComposite 67 67
69: 14(int) Constant 0 0
70: 63(ivec2) ConstantComposite 68 68
70: 14(int) Constant 1 0
72: TypeVector 27(int) 2
71: 65(ivec2) ConstantComposite 69 69
73: TypePointer Function 72(ivec2)
72: 65(ivec2) ConstantComposite 70 70
79: TypeVector 17(int) 2
74: TypeVector 31(int) 2
80: TypePointer Function 79(ivec2)
75: TypePointer Function 74(ivec2)
86: TypeFloat 32
81: TypeVector 21(int) 2
87: TypeVector 86(float) 2
82: TypePointer Function 81(ivec2)
88: TypePointer Function 87(fvec2)
88: TypeFloat 32
92: TypeFloat 64
89: TypeVector 88(float) 2
93: TypeVector 92(float) 2
90: TypePointer Function 89(fvec2)
94: TypePointer Function 93(fvec2)
94: TypeFloat 64
130: TypeVector 36(int) 3
95: TypeVector 94(float) 2
131: TypePointer Function 130(ivec3)
96: TypePointer Function 95(fvec2)
134: TypeVector 14(int) 3
132: TypeVector 14(int) 3
156: TypePointer Function 27(int)
133: TypePointer Function 132(ivec3)
162: TypeVector 17(int) 3
136: TypeVector 18(int) 3
163: TypePointer Function 162(ivec3)
158: TypePointer Function 31(int)
197: TypeVector 27(int) 3
164: TypeVector 21(int) 3
200: 17(int) Constant 1
165: TypePointer Function 164(ivec3)
201: TypePointer Function 17(int)
199: TypeVector 31(int) 3
207: 17(int) Constant 2
202: 21(int) Constant 1
215: TypePointer Function 53(bool)
203: TypePointer Function 21(int)
217: 17(int) Constant 0
209: 21(int) Constant 2
287: 50(ivec2) ConstantComposite 21 21
217: TypePointer Function 55(bool)
296: 130(ivec3) ConstantComposite 67 67 67
219: 21(int) Constant 0
338: 53(bool) ConstantTrue
289: 52(ivec2) ConstantComposite 25 25
345: 53(bool) ConstantFalse
298: 132(ivec3) ConstantComposite 69 69 69
346: 54(bvec2) ConstantComposite 345 345
340: 55(bool) ConstantTrue
358: TypeVector 53(bool) 3
347: 55(bool) ConstantFalse
359: 358(bvec3) ConstantComposite 345 345 345
348: 56(bvec2) ConstantComposite 347 347
361: TypeVector 92(float) 3
360: TypeVector 55(bool) 3
362: TypePointer Function 361(fvec3)
361: 360(bvec3) ConstantComposite 347 347 347
367: TypePointer Function 92(float)
363: TypeVector 94(float) 3
378: 27(int) Constant 1
364: TypePointer Function 363(fvec3)
379: 27(int) Constant 2
369: TypePointer Function 94(float)
380: 72(ivec2) ConstantComposite 378 379
380: 31(int) Constant 1
385: 79(ivec2) ConstantComposite 207 18
381: 31(int) Constant 2
390: TypePointer Function 358(bvec3)
382: 74(ivec2) ConstantComposite 380 381
452(Block): TypeStruct 134(ivec3) 36(int)
387: 81(ivec2) ConstantComposite 209 22
453: TypePointer Uniform 452(Block)
392: TypePointer Function 360(bvec3)
454(block): 453(ptr) Variable Uniform
454(Block): TypeStruct 136(ivec3) 14(int)
455: 14(int) SpecConstant 4294967286 4294967295
455: TypePointer Uniform 454(Block)
456: 36(int) SpecConstant 20 0
456(block): 455(ptr) Variable Uniform
457: 27(int) SpecConstant 4294967291
457: 18(int) SpecConstant 4294967286 4294967295
458: 17(int) SpecConstant 4
458: 14(int) SpecConstant 20 0
459: 53(bool) SpecConstantTrue
459: 31(int) SpecConstant 4294967291
460: 53(bool) SpecConstantOp 171 455 67
460: 21(int) SpecConstant 4
461: 53(bool) SpecConstantOp 171 456 67
461: 55(bool) SpecConstantTrue
462: 14(int) SpecConstantOp 169 459 59 58
462: 55(bool) SpecConstantOp 171 457 69
463: 36(int) SpecConstantOp 169 459 68 67
463: 55(bool) SpecConstantOp 171 458 69
464: 27(int) SpecConstantOp 114 455
464: 18(int) SpecConstantOp 169 461 61 60
465: 14(int) SpecConstantOp 114 457
465: 14(int) SpecConstantOp 169 461 70 69
466: 17(int) SpecConstantOp 113 456
466: 31(int) SpecConstantOp 114 457
467: 36(int) SpecConstantOp 113 458
467: 18(int) SpecConstantOp 114 459
468: 14(int) SpecConstantOp 128 456 67
468: 21(int) SpecConstantOp 113 458
469: 36(int) SpecConstantOp 128 455 67
469: 14(int) SpecConstantOp 113 460
470: 17(int) SpecConstantOp 113 456
470: 18(int) SpecConstantOp 128 458 69
471: 27(int) SpecConstantOp 128 470 217
471: 14(int) SpecConstantOp 128 457 69
472: 14(int) SpecConstantOp 114 457
472: 21(int) SpecConstantOp 113 458
473: 36(int) SpecConstantOp 128 472 67
473: 31(int) SpecConstantOp 128 472 219
474: 27(int) SpecConstantOp 114 455
474: 18(int) SpecConstantOp 114 459
475: 17(int) SpecConstantOp 128 474 217
475: 14(int) SpecConstantOp 128 474 69
476: 36(int) SpecConstantOp 113 458
476: 31(int) SpecConstantOp 114 457
477: 14(int) SpecConstantOp 128 476 67
477: 21(int) SpecConstantOp 128 476 219
478: 14(int) SpecConstantOp 113 460
479: 18(int) SpecConstantOp 128 478 69
4(main): 2 Function None 3
4(main): 2 Function None 3
5: Label
5: Label
Store 16(u64Max) 17
Return
Return
FunctionEnd
FunctionEnd
6(literal(): 2 Function None 3
6(literal(): 2 Function None 3
7: Label
7: Label
16(i64): 15
(ptr) Variable Function
20(i64): 19
(ptr) Variable Function
3
3(indexable): 32
(ptr) Variable Function
3
7(indexable): 36
(ptr) Variable Function
38(u64): 37
(ptr) Variable Function
41(u64): 40
(ptr) Variable Function
4
7(indexable): 46
(ptr) Variable Function
4
9(indexable): 48
(ptr) Variable Function
3
0: 29(ptr) AccessChain 26 28
3
4: 33(ptr) AccessChain 30 32
3
1: 17(int) Load 30
3
5: 21(int) Load 34
Store 3
3(indexable) 23
Store 3
7(indexable) 27
3
4: 15(ptr) AccessChain 33(indexable) 31
3
8: 19(ptr) AccessChain 37(indexable) 35
3
5: 14(int) Load 34
3
9: 18(int) Load 38
Store
16(i64) 35
Store
20(i64) 39
4
4: 29(ptr) AccessChain 26 28
4
6: 33(ptr) AccessChain 30 32
4
5: 17(int) Load 44
4
7: 21(int) Load 46
Store 4
7(indexable) 43
Store 4
9(indexable) 45
48: 37(ptr) AccessChain 47(indexable) 45
50: 40(ptr) AccessChain 49(indexable) 47
49: 36(int) Load 48
51: 14(int) Load 50
Store
38(u64) 49
Store
41(u64) 51
Return
Return
FunctionEnd
FunctionEnd
8(typeCast(): 2 Function None 3
8(typeCast(): 2 Function None 3
9: Label
9: Label
5
2(i64v): 51
(ptr) Variable Function
5
4(i64v): 53
(ptr) Variable Function
5
6(bv): 55
(ptr) Variable Function
5
8(bv): 57
(ptr) Variable Function
6
5(u64v): 64
(ptr) Variable Function
6
7(u64v): 66
(ptr) Variable Function
7
4(iv): 73
(ptr) Variable Function
7
6(iv): 75
(ptr) Variable Function
8
1(uv): 80
(ptr) Variable Function
8
3(uv): 82
(ptr) Variable Function
89(fv): 88
(ptr) Variable Function
91(fv): 90
(ptr) Variable Function
9
5(dv): 94
(ptr) Variable Function
9
7(dv): 96
(ptr) Variable Function
5
7: 54(bvec2) Load 56
(bv)
5
9: 56(bvec2) Load 58
(bv)
6
2: 50(ivec2) Select 57 61 60
6
4: 52(ivec2) Select 59 63 62
Store 5
2(i64v) 62
Store 5
4(i64v) 64
6
6: 54(bvec2) Load 56
(bv)
6
8: 56(bvec2) Load 58
(bv)
7
1: 63(ivec2) Select 66 70 69
7
3: 65(ivec2) Select 68 72 71
Store 6
5(u64v) 71
Store 6
7(u64v) 73
7
5: 72(ivec2) Load 74
(iv)
7
7: 74(ivec2) Load 76
(iv)
7
6: 50(ivec2) SConvert 75
7
8: 52(ivec2) SConvert 77
Store 5
2(i64v) 76
Store 5
4(i64v) 78
7
7: 50(ivec2) Load 52
(i64v)
7
9: 52(ivec2) Load 54
(i64v)
78: 72(ivec2) SConvert 77
80: 74(ivec2) SConvert 79
Store 7
4(iv) 78
Store 7
6(iv) 80
8
2: 79(ivec2) Load 81
(uv)
8
4: 81(ivec2) Load 83
(uv)
8
3: 63(ivec2) UConvert 82
8
5: 65(ivec2) UConvert 84
Store 6
5(u64v) 83
Store 6
7(u64v) 85
8
4: 63(ivec2) Load 65
(u64v)
8
6: 65(ivec2) Load 67
(u64v)
8
5: 79(ivec2) UConvert 84
8
7: 81(ivec2) UConvert 86
Store 8
1(uv) 85
Store 8
3(uv) 87
9
0: 50(ivec2) Load 52
(i64v)
9
2: 52(ivec2) Load 54
(i64v)
9
1: 87(fvec2) ConvertSToF 90
9
3: 89(fvec2) ConvertSToF 92
Store
89(fv) 91
Store
91(fv) 93
9
6: 50(ivec2) Load 52
(i64v)
9
8: 52(ivec2) Load 54
(i64v)
9
7: 93(fvec2) ConvertSToF 96
9
9: 95(fvec2) ConvertSToF 98
Store 9
5(dv) 97
Store 9
7(dv) 99
98: 63(ivec2) Load 65
(u64v)
100: 65(ivec2) Load 67
(u64v)
99: 87(fvec2) ConvertUToF 98
101: 89(fvec2) ConvertUToF 100
Store
89(fv) 99
Store
91(fv) 101
10
0: 63(ivec2) Load 65
(u64v)
10
2: 65(ivec2) Load 67
(u64v)
10
1: 93(fvec2) ConvertUToF 100
10
3: 95(fvec2) ConvertUToF 102
Store 9
5(dv) 101
Store 9
7(dv) 103
10
2: 87(fvec2) Load 89
(fv)
10
4: 89(fvec2) Load 91
(fv)
10
3: 50(ivec2) ConvertFToS 102
10
5: 52(ivec2) ConvertFToS 104
Store 5
2(i64v) 103
Store 5
4(i64v) 105
10
4: 93(fvec2) Load 95
(dv)
10
6: 95(fvec2) Load 97
(dv)
10
5: 50(ivec2) ConvertFToS 104
10
7: 52(ivec2) ConvertFToS 106
Store 5
2(i64v) 105
Store 5
4(i64v) 107
10
6: 87(fvec2) Load 89
(fv)
10
8: 89(fvec2) Load 91
(fv)
10
7: 63(ivec2) ConvertFToU 106
10
9: 65(ivec2) ConvertFToU 108
Store 6
5(u64v) 107
Store 6
7(u64v) 109
1
08: 93(fvec2) Load 95
(dv)
1
10: 95(fvec2) Load 97
(dv)
1
09: 63(ivec2) ConvertFToU 108
1
11: 65(ivec2) ConvertFToU 110
Store 6
5(u64v) 109
Store 6
7(u64v) 111
11
0: 50(ivec2) Load 52
(i64v)
11
2: 52(ivec2) Load 54
(i64v)
11
1: 54(bvec2) INotEqual 110 69
11
3: 56(bvec2) INotEqual 112 71
Store 5
6(bv) 111
Store 5
8(bv) 113
11
2: 63(ivec2) Load 65
(u64v)
11
4: 65(ivec2) Load 67
(u64v)
11
3: 54(bvec2) INotEqual 112 69
11
5: 56(bvec2) INotEqual 114 71
Store 5
6(bv) 113
Store 5
8(bv) 115
11
4: 50(ivec2) Load 52
(i64v)
11
6: 52(ivec2) Load 54
(i64v)
11
5: 63(ivec2) Bitcast 114
11
7: 65(ivec2) Bitcast 116
Store 6
5(u64v) 115
Store 6
7(u64v) 117
11
6: 63(ivec2) Load 65
(u64v)
11
8: 65(ivec2) Load 67
(u64v)
11
7: 50(ivec2) Bitcast 116
11
9: 52(ivec2) Bitcast 118
Store 5
2(i64v) 117
Store 5
4(i64v) 119
1
18: 50(ivec2) Load 52
(i64v)
1
20: 52(ivec2) Load 54
(i64v)
1
19: 72(ivec2) SConvert 118
1
21: 74(ivec2) SConvert 120
12
0: 79(ivec2) Bitcast 119
12
2: 81(ivec2) Bitcast 121
Store 8
1(uv) 120
Store 8
3(uv) 122
12
1: 79(ivec2) Load 81
(uv)
12
3: 81(ivec2) Load 83
(uv)
12
2: 63(ivec2) UConvert 121
12
4: 65(ivec2) UConvert 123
12
3: 50(ivec2) Bitcast 122
12
5: 52(ivec2) Bitcast 124
Store 5
2(i64v) 123
Store 5
4(i64v) 125
12
4: 63(ivec2) Load 65
(u64v)
12
6: 65(ivec2) Load 67
(u64v)
12
5: 79(ivec2) UConvert 124
12
7: 81(ivec2) UConvert 126
12
6: 72(ivec2) Bitcast 125
12
8: 74(ivec2) Bitcast 127
Store 7
4(iv) 126
Store 7
6(iv) 128
12
7: 72(ivec2) Load 74
(iv)
12
9: 74(ivec2) Load 76
(iv)
1
28: 50(ivec2) SConvert 127
1
30: 52(ivec2) SConvert 129
1
29: 63(ivec2) Bitcast 128
1
31: 65(ivec2) Bitcast 130
Store 6
5(u64v) 129
Store 6
7(u64v) 131
Return
Return
FunctionEnd
FunctionEnd
10(operators(): 2 Function None 3
10(operators(): 2 Function None 3
11: Label
11: Label
13
2(u64v): 131
(ptr) Variable Function
13
4(u64v): 133
(ptr) Variable Function
13
7(i64): 15
(ptr) Variable Function
13
9(i64): 19
(ptr) Variable Function
15
7(i): 156
(ptr) Variable Function
15
9(i): 158
(ptr) Variable Function
16
4(uv): 163
(ptr) Variable Function
16
6(uv): 165
(ptr) Variable Function
21
6(b): 215
(ptr) Variable Function
21
8(b): 217
(ptr) Variable Function
13
3: 130(ivec3) Load 132
(u64v)
13
5: 132(ivec3) Load 134
(u64v)
13
5: 134(ivec3) CompositeConstruct 59 59 59
13
7: 136(ivec3) CompositeConstruct 61 61 61
13
6: 130(ivec3) IAdd 133 135
13
8: 132(ivec3) IAdd 135 137
Store 13
2(u64v) 136
Store 13
4(u64v) 138
1
38: 14(int) Load 137
(i64)
1
40: 18(int) Load 139
(i64)
1
39: 14(int) ISub 138 59
1
41: 18(int) ISub 140 61
Store 13
7(i64) 139
Store 13
9(i64) 141
14
0: 14(int) Load 137
(i64)
14
2: 18(int) Load 139
(i64)
14
1: 14(int) IAdd 140 59
14
3: 18(int) IAdd 142 61
Store 13
7(i64) 141
Store 13
9(i64) 143
14
2: 130(ivec3) Load 132
(u64v)
14
4: 132(ivec3) Load 134
(u64v)
14
3: 134(ivec3) CompositeConstruct 59 59 59
14
5: 136(ivec3) CompositeConstruct 61 61 61
14
4: 130(ivec3) ISub 142 143
14
6: 132(ivec3) ISub 144 145
Store 13
2(u64v) 144
Store 13
4(u64v) 146
14
5: 130(ivec3) Load 132
(u64v)
14
7: 132(ivec3) Load 134
(u64v)
14
6: 130(ivec3) Not 145
14
8: 132(ivec3) Not 147
Store 13
2(u64v) 146
Store 13
4(u64v) 148
14
7: 14(int) Load 137
(i64)
14
9: 18(int) Load 139
(i64)
Store 13
7(i64) 147
Store 13
9(i64) 149
1
48: 130(ivec3) Load 132
(u64v)
1
50: 132(ivec3) Load 134
(u64v)
1
49: 130(ivec3) SNegate 148
1
51: 132(ivec3) SNegate 150
Store 13
2(u64v) 149
Store 13
4(u64v) 151
15
0: 14(int) Load 137
(i64)
15
2: 18(int) Load 139
(i64)
15
1: 14(int) Load 137
(i64)
15
3: 18(int) Load 139
(i64)
15
2: 14(int) IAdd 151 150
15
4: 18(int) IAdd 153 152
Store 13
7(i64) 152
Store 13
9(i64) 154
15
3: 130(ivec3) Load 132
(u64v)
15
5: 132(ivec3) Load 134
(u64v)
15
4: 130(ivec3) Load 132
(u64v)
15
6: 132(ivec3) Load 134
(u64v)
15
5: 130(ivec3) ISub 154 153
15
7: 132(ivec3) ISub 156 155
Store 13
2(u64v) 155
Store 13
4(u64v) 157
1
58: 27(int) Load 157
(i)
1
60: 31(int) Load 159
(i)
1
59: 14(int) SConvert 158
1
61: 18(int) SConvert 160
16
0: 14(int) Load 137
(i64)
16
2: 18(int) Load 139
(i64)
16
1: 14(int) IMul 160 159
16
3: 18(int) IMul 162 161
Store 13
7(i64) 161
Store 13
9(i64) 163
16
5: 162(ivec3) Load 164
(uv)
16
7: 164(ivec3) Load 166
(uv)
16
6: 130(ivec3) UConvert 165
16
8: 132(ivec3) UConvert 167
16
7: 130(ivec3) Load 132
(u64v)
16
9: 132(ivec3) Load 134
(u64v)
1
68: 130(ivec3) UDiv 167 166
1
70: 132(ivec3) UDiv 169 168
Store 13
2(u64v) 168
Store 13
4(u64v) 170
1
69: 27(int) Load 157
(i)
1
71: 31(int) Load 159
(i)
17
0: 14(int) SConvert 169
17
2: 18(int) SConvert 171
17
1: 36(int) Bitcast 170
17
3: 14(int) Bitcast 172
17
2: 130(ivec3) Load 132
(u64v)
17
4: 132(ivec3) Load 134
(u64v)
17
3: 130(ivec3) CompositeConstruct 171 171 171
17
5: 132(ivec3) CompositeConstruct 173 173 173
17
4: 130(ivec3) UMod 172 173
17
6: 132(ivec3) UMod 174 175
Store 13
2(u64v) 174
Store 13
4(u64v) 176
17
5: 130(ivec3) Load 132
(u64v)
17
7: 132(ivec3) Load 134
(u64v)
17
6: 162(ivec3) Load 164
(uv)
17
8: 164(ivec3) Load 166
(uv)
17
7: 130(ivec3) UConvert 176
17
9: 132(ivec3) UConvert 178
1
78: 130(ivec3) IAdd 175 177
1
80: 132(ivec3) IAdd 177 179
Store 13
2(u64v) 178
Store 13
4(u64v) 180
1
79: 14(int) Load 137
(i64)
1
81: 18(int) Load 139
(i64)
18
0: 27(int) Load 157
(i)
18
2: 31(int) Load 159
(i)
18
1: 14(int) SConvert 180
18
3: 18(int) SConvert 182
18
2: 14(int) ISub 179 181
18
4: 18(int) ISub 181 183
Store 13
7(i64) 182
Store 13
9(i64) 184
18
3: 130(ivec3) Load 132
(u64v)
18
5: 132(ivec3) Load 134
(u64v)
18
4: 162(ivec3) Load 164
(uv)
18
6: 164(ivec3) Load 166
(uv)
18
5: 130(ivec3) UConvert 184
18
7: 132(ivec3) UConvert 186
18
6: 130(ivec3) IMul 183 185
18
8: 132(ivec3) IMul 185 187
Store 13
2(u64v) 186
Store 13
4(u64v) 188
18
7: 14(int) Load 137
(i64)
18
9: 18(int) Load 139
(i64)
1
88: 27(int) Load 157
(i)
1
90: 31(int) Load 159
(i)
1
89: 14(int) SConvert 188
1
91: 18(int) SConvert 190
19
0: 14(int) IMul 187 189
19
2: 18(int) IMul 189 191
Store 13
7(i64) 190
Store 13
9(i64) 192
19
1: 14(int) Load 137
(i64)
19
3: 18(int) Load 139
(i64)
19
2: 27(int) Load 157
(i)
19
4: 31(int) Load 159
(i)
19
3: 14(int) SConvert 192
19
5: 18(int) SConvert 194
19
4: 14(int) SMod 191 193
19
6: 18(int) SMod 193 195
Store 13
7(i64) 194
Store 13
9(i64) 196
19
5: 27(int) Load 157
(i)
19
7: 31(int) Load 159
(i)
19
6: 130(ivec3) Load 132
(u64v)
19
8: 132(ivec3) Load 134
(u64v)
198: 197(ivec3) CompositeConstruct 195 195 195
200: 199(ivec3) CompositeConstruct 197 197 197
199: 130(ivec3) ShiftLeftLogical 196 198
201: 132(ivec3) ShiftLeftLogical 198 200
Store 13
2(u64v) 199
Store 13
4(u64v) 201
20
2: 201(ptr) AccessChain 164(uv) 200
20
4: 203(ptr) AccessChain 166(uv) 202
20
3: 17(int) Load 202
20
5: 21(int) Load 204
20
4: 14(int) Load 137
(i64)
20
6: 18(int) Load 139
(i64)
20
5: 14(int) ShiftRightArithmetic 204 203
20
7: 18(int) ShiftRightArithmetic 206 205
Store 13
7(i64) 205
Store 13
9(i64) 207
20
6: 14(int) Load 137
(i64)
20
8: 18(int) Load 139
(i64)
2
08: 37(ptr) AccessChain 132(u64v) 207
2
10: 40(ptr) AccessChain 134(u64v) 209
2
09: 36(int) Load 208
2
11: 14(int) Load 210
21
0: 14(int) ShiftLeftLogical 206 209
21
2: 18(int) ShiftLeftLogical 208 211
Store 13
7(i64) 210
Store 13
9(i64) 212
21
1: 130(ivec3) Load 132
(u64v)
21
3: 132(ivec3) Load 134
(u64v)
21
2: 14(int) Load 137
(i64)
21
4: 18(int) Load 139
(i64)
21
3: 134(ivec3) CompositeConstruct 212 212 212
21
5: 136(ivec3) CompositeConstruct 214 214 214
21
4: 130(ivec3) ShiftLeftLogical 211 213
21
6: 132(ivec3) ShiftLeftLogical 213 215
Store 13
2(u64v) 214
Store 13
4(u64v) 216
2
18: 37(ptr) AccessChain 132(u64v) 217
2
20: 40(ptr) AccessChain 134(u64v) 219
2
19: 36(int) Load 218
2
21: 14(int) Load 220
22
0: 14(int) Load 137
(i64)
22
2: 18(int) Load 139
(i64)
22
1: 36(int) Bitcast 220
22
3: 14(int) Bitcast 222
22
2: 53(bool) INotEqual 219 221
22
4: 55(bool) INotEqual 221 223
Store 21
6(b) 222
Store 21
8(b) 224
22
3: 14(int) Load 137
(i64)
22
5: 18(int) Load 139
(i64)
22
4: 36(int) Bitcast 223
22
6: 14(int) Bitcast 225
22
5: 37(ptr) AccessChain 132(u64v) 217
22
7: 40(ptr) AccessChain 134(u64v) 219
22
6: 36(int) Load 225
22
8: 14(int) Load 227
22
7: 53(bool) IEqual 224 226
22
9: 55(bool) IEqual 226 228
Store 21
6(b) 227
Store 21
8(b) 229
2
28: 37(ptr) AccessChain 132(u64v) 217
2
30: 40(ptr) AccessChain 134(u64v) 219
2
29: 36(int) Load 228
2
31: 14(int) Load 230
23
0: 201(ptr) AccessChain 164(uv) 200
23
2: 203(ptr) AccessChain 166(uv) 202
23
1: 17(int) Load 230
23
3: 21(int) Load 232
23
2: 36(int) UConvert 231
23
4: 14(int) UConvert 233
23
3: 53(bool) UGreaterThan 229 232
23
5: 55(bool) UGreaterThan 231 234
Store 21
6(b) 233
Store 21
8(b) 235
23
4: 14(int) Load 137
(i64)
23
6: 18(int) Load 139
(i64)
23
5: 27(int) Load 157
(i)
23
7: 31(int) Load 159
(i)
23
6: 14(int) SConvert 235
23
8: 18(int) SConvert 237
23
7: 53(bool) SLessThan 234 236
23
9: 55(bool) SLessThan 236 238
Store 21
6(b) 237
Store 21
8(b) 239
2
38: 37(ptr) AccessChain 132(u64v) 200
2
40: 40(ptr) AccessChain 134(u64v) 202
2
39: 36(int) Load 238
2
41: 14(int) Load 240
24
0: 201(ptr) AccessChain 164(uv) 217
24
2: 203(ptr) AccessChain 166(uv) 219
24
1: 17(int) Load 240
24
3: 21(int) Load 242
24
2: 36(int) UConvert 241
24
4: 14(int) UConvert 243
24
3: 53(bool) UGreaterThanEqual 239 242
24
5: 55(bool) UGreaterThanEqual 241 244
Store 21
6(b) 243
Store 21
8(b) 245
24
4: 14(int) Load 137
(i64)
24
6: 18(int) Load 139
(i64)
24
5: 27(int) Load 157
(i)
24
7: 31(int) Load 159
(i)
24
6: 14(int) SConvert 245
24
8: 18(int) SConvert 247
24
7: 53(bool) SLessThanEqual 244 246
24
9: 55(bool) SLessThanEqual 246 248
Store 21
6(b) 247
Store 21
8(b) 249
2
48: 27(int) Load 157
(i)
2
50: 31(int) Load 159
(i)
2
49: 14(int) SConvert 248
2
51: 18(int) SConvert 250
25
0: 36(int) Bitcast 249
25
2: 14(int) Bitcast 251
25
1: 130(ivec3) Load 132
(u64v)
25
3: 132(ivec3) Load 134
(u64v)
25
2: 130(ivec3) CompositeConstruct 250 250 250
25
4: 132(ivec3) CompositeConstruct 252 252 252
25
3: 130(ivec3) BitwiseOr 251 252
25
5: 132(ivec3) BitwiseOr 253 254
Store 13
2(u64v) 253
Store 13
4(u64v) 255
25
4: 14(int) Load 137
(i64)
25
6: 18(int) Load 139
(i64)
25
5: 27(int) Load 157
(i)
25
7: 31(int) Load 159
(i)
25
6: 14(int) SConvert 255
25
8: 18(int) SConvert 257
25
7: 14(int) BitwiseOr 254 256
25
9: 18(int) BitwiseOr 256 258
Store 13
7(i64) 257
Store 13
9(i64) 259
2
58: 27(int) Load 157
(i)
2
60: 31(int) Load 159
(i)
2
59: 14(int) SConvert 258
2
61: 18(int) SConvert 260
26
0: 14(int) Load 137
(i64)
26
2: 18(int) Load 139
(i64)
26
1: 14(int) BitwiseAnd 260 259
26
3: 18(int) BitwiseAnd 262 261
Store 13
7(i64) 261
Store 13
9(i64) 263
26
2: 130(ivec3) Load 132
(u64v)
26
4: 132(ivec3) Load 134
(u64v)
26
3: 162(ivec3) Load 164
(uv)
26
5: 164(ivec3) Load 166
(uv)
26
4: 130(ivec3) UConvert 263
26
6: 132(ivec3) UConvert 265
26
5: 130(ivec3) BitwiseAnd 262 264
26
7: 132(ivec3) BitwiseAnd 264 266
Store 13
2(u64v) 265
Store 13
4(u64v) 267
26
6: 14(int) Load 137
(i64)
26
8: 18(int) Load 139
(i64)
26
7: 36(int) Bitcast 266
26
9: 14(int) Bitcast 268
2
68: 130(ivec3) Load 132
(u64v)
2
70: 132(ivec3) Load 134
(u64v)
2
69: 130(ivec3) CompositeConstruct 267 267 267
2
71: 132(ivec3) CompositeConstruct 269 269 269
27
0: 130(ivec3) BitwiseXor 268 269
27
2: 132(ivec3) BitwiseXor 270 271
Store 13
2(u64v) 270
Store 13
4(u64v) 272
27
1: 130(ivec3) Load 132
(u64v)
27
3: 132(ivec3) Load 134
(u64v)
27
2: 14(int) Load 137
(i64)
27
4: 18(int) Load 139
(i64)
27
3: 36(int) Bitcast 272
27
5: 14(int) Bitcast 274
27
4: 130(ivec3) CompositeConstruct 273 273 273
27
6: 132(ivec3) CompositeConstruct 275 275 275
27
5: 130(ivec3) BitwiseXor 271 274
27
7: 132(ivec3) BitwiseXor 273 276
Store 13
2(u64v) 275
Store 13
4(u64v) 277
Return
Return
FunctionEnd
FunctionEnd
12(builtinFuncs(): 2 Function None 3
12(builtinFuncs(): 2 Function None 3
13: Label
13: Label
27
6(i64v): 51
(ptr) Variable Function
27
8(i64v): 53
(ptr) Variable Function
2
79(i64): 15
(ptr) Variable Function
2
81(i64): 19
(ptr) Variable Function
2
89(u64v): 131
(ptr) Variable Function
2
91(u64v): 133
(ptr) Variable Function
29
1(u64): 37
(ptr) Variable Function
29
3(u64): 40
(ptr) Variable Function
36
3(dv): 362
(ptr) Variable Function
36
5(dv): 364
(ptr) Variable Function
38
2(iv): 73
(ptr) Variable Function
38
4(iv): 75
(ptr) Variable Function
38
7(uv): 80
(ptr) Variable Function
38
9(uv): 82
(ptr) Variable Function
39
1(bv): 390
(ptr) Variable Function
39
3(bv): 392
(ptr) Variable Function
27
7: 50(ivec2) Load 276
(i64v)
27
9: 52(ivec2) Load 278
(i64v)
2
78: 50(ivec2) ExtInst 1(GLSL.std.450) 5(SAbs) 277
2
80: 52(ivec2) ExtInst 1(GLSL.std.450) 5(SAbs) 279
Store 27
6(i64v) 278
Store 27
8(i64v) 280
28
0: 14(int) Load 279
(i64)
28
2: 18(int) Load 281
(i64)
28
1: 14(int) ExtInst 1(GLSL.std.450) 7(SSign) 280
28
3: 18(int) ExtInst 1(GLSL.std.450) 7(SSign) 282
Store 2
79(i64) 281
Store 2
81(i64) 283
28
2: 50(ivec2) Load 276
(i64v)
28
4: 52(ivec2) Load 278
(i64v)
28
3: 14(int) Load 279
(i64)
28
5: 18(int) Load 281
(i64)
28
4: 50(ivec2) CompositeConstruct 283 283
28
6: 52(ivec2) CompositeConstruct 285 285
28
5: 50(ivec2) ExtInst 1(GLSL.std.450) 39(SMin) 282 284
28
7: 52(ivec2) ExtInst 1(GLSL.std.450) 39(SMin) 284 286
Store 27
6(i64v) 285
Store 27
8(i64v) 287
28
6: 50(ivec2) Load 276
(i64v)
28
8: 52(ivec2) Load 278
(i64v)
2
88: 50(ivec2) ExtInst 1(GLSL.std.450) 39(SMin) 286 287
2
90: 52(ivec2) ExtInst 1(GLSL.std.450) 39(SMin) 288 289
Store 27
6(i64v) 288
Store 27
8(i64v) 290
29
0: 130(ivec3) Load 289
(u64v)
29
2: 132(ivec3) Load 291
(u64v)
29
2: 36(int) Load 291
(u64)
29
4: 14(int) Load 293
(u64)
29
3: 130(ivec3) CompositeConstruct 292 292 292
29
5: 132(ivec3) CompositeConstruct 294 294 294
29
4: 130(ivec3) ExtInst 1(GLSL.std.450) 38(UMin) 290 293
29
6: 132(ivec3) ExtInst 1(GLSL.std.450) 38(UMin) 292 295
Store 2
89(u64v) 294
Store 2
91(u64v) 296
29
5: 130(ivec3) Load 289
(u64v)
29
7: 132(ivec3) Load 291
(u64v)
29
7: 130(ivec3) ExtInst 1(GLSL.std.450) 38(UMin) 295 296
29
9: 132(ivec3) ExtInst 1(GLSL.std.450) 38(UMin) 297 298
Store 2
89(u64v) 297
Store 2
91(u64v) 299
298: 50(ivec2) Load 276
(i64v)
300: 52(ivec2) Load 278
(i64v)
299: 14(int) Load 279
(i64)
301: 18(int) Load 281
(i64)
30
0: 50(ivec2) CompositeConstruct 299 299
30
2: 52(ivec2) CompositeConstruct 301 301
30
1: 50(ivec2) ExtInst 1(GLSL.std.450) 42(SMax) 298 300
30
3: 52(ivec2) ExtInst 1(GLSL.std.450) 42(SMax) 300 302
Store 27
6(i64v) 301
Store 27
8(i64v) 303
30
2: 50(ivec2) Load 276
(i64v)
30
4: 52(ivec2) Load 278
(i64v)
30
3: 50(ivec2) ExtInst 1(GLSL.std.450) 42(SMax) 302 287
30
5: 52(ivec2) ExtInst 1(GLSL.std.450) 42(SMax) 304 289
Store 27
6(i64v) 303
Store 27
8(i64v) 305
30
4: 130(ivec3) Load 289
(u64v)
30
6: 132(ivec3) Load 291
(u64v)
30
5: 36(int) Load 291
(u64)
30
7: 14(int) Load 293
(u64)
30
6: 130(ivec3) CompositeConstruct 305 305 305
30
8: 132(ivec3) CompositeConstruct 307 307 307
30
7: 130(ivec3) ExtInst 1(GLSL.std.450) 41(UMax) 304 306
30
9: 132(ivec3) ExtInst 1(GLSL.std.450) 41(UMax) 306 308
Store 2
89(u64v) 307
Store 2
91(u64v) 309
3
08: 130(ivec3) Load 289
(u64v)
3
10: 132(ivec3) Load 291
(u64v)
3
09: 130(ivec3) ExtInst 1(GLSL.std.450) 41(UMax) 308 296
3
11: 132(ivec3) ExtInst 1(GLSL.std.450) 41(UMax) 310 298
Store 2
89(u64v) 309
Store 2
91(u64v) 311
31
0: 50(ivec2) Load 276
(i64v)
31
2: 52(ivec2) Load 278
(i64v)
31
1: 14(int) Load 279
(i64)
31
3: 18(int) Load 281
(i64)
31
2: 14(int) SNegate 311
31
4: 18(int) SNegate 313
31
3: 14(int) Load 279
(i64)
31
5: 18(int) Load 281
(i64)
31
4: 50(ivec2) CompositeConstruct 312 312
31
6: 52(ivec2) CompositeConstruct 314 314
31
5: 50(ivec2) CompositeConstruct 313 313
31
7: 52(ivec2) CompositeConstruct 315 315
31
6: 50(ivec2) ExtInst 1(GLSL.std.450) 45(SClamp) 310 314 315
31
8: 52(ivec2) ExtInst 1(GLSL.std.450) 45(SClamp) 312 316 317
Store 27
6(i64v) 316
Store 27
8(i64v) 318
31
7: 50(ivec2) Load 276
(i64v)
31
9: 52(ivec2) Load 278
(i64v)
3
18: 50(ivec2) Load 276
(i64v)
3
20: 52(ivec2) Load 278
(i64v)
3
19: 50(ivec2) SNegate 318
3
21: 52(ivec2) SNegate 320
32
0: 50(ivec2) Load 276
(i64v)
32
2: 52(ivec2) Load 278
(i64v)
32
1: 50(ivec2) ExtInst 1(GLSL.std.450) 45(SClamp) 317 319 320
32
3: 52(ivec2) ExtInst 1(GLSL.std.450) 45(SClamp) 319 321 322
Store 27
6(i64v) 321
Store 27
8(i64v) 323
32
2: 130(ivec3) Load 289
(u64v)
32
4: 132(ivec3) Load 291
(u64v)
32
3: 36(int) Load 291
(u64)
32
5: 14(int) Load 293
(u64)
32
4: 36(int) SNegate 323
32
6: 14(int) SNegate 325
32
5: 36(int) Load 291
(u64)
32
7: 14(int) Load 293
(u64)
32
6: 130(ivec3) CompositeConstruct 324 324 324
32
8: 132(ivec3) CompositeConstruct 326 326 326
32
7: 130(ivec3) CompositeConstruct 325 325 325
32
9: 132(ivec3) CompositeConstruct 327 327 327
3
28: 130(ivec3) ExtInst 1(GLSL.std.450) 44(UClamp) 322 326 327
3
30: 132(ivec3) ExtInst 1(GLSL.std.450) 44(UClamp) 324 328 329
Store 2
89(u64v) 328
Store 2
91(u64v) 330
3
29: 130(ivec3) Load 289
(u64v)
3
31: 132(ivec3) Load 291
(u64v)
33
0: 130(ivec3) Load 289
(u64v)
33
2: 132(ivec3) Load 291
(u64v)
33
1: 130(ivec3) SNegate 330
33
3: 132(ivec3) SNegate 332
33
2: 130(ivec3) Load 289
(u64v)
33
4: 132(ivec3) Load 291
(u64v)
33
3: 130(ivec3) ExtInst 1(GLSL.std.450) 44(UClamp) 329 331 332
33
5: 132(ivec3) ExtInst 1(GLSL.std.450) 44(UClamp) 331 333 334
Store 2
89(u64v) 333
Store 2
91(u64v) 335
33
4: 15(ptr) AccessChain 276(i64v) 217
33
6: 19(ptr) AccessChain 278(i64v) 219
33
5: 14(int) Load 334
33
7: 18(int) Load 336
33
6: 15(ptr) AccessChain 276(i64v) 200
33
8: 19(ptr) AccessChain 278(i64v) 202
33
7: 14(int) Load 336
33
9: 18(int) Load 338
3
39: 14(int) Select 338 337 335
3
41: 18(int) Select 340 339 337
Store 2
79(i64) 339
Store 2
81(i64) 341
34
0: 14(int) Load 279
(i64)
34
2: 18(int) Load 281
(i64)
34
1: 50(ivec2) CompositeConstruct 340 340
34
3: 52(ivec2) CompositeConstruct 342 342
34
2: 14(int) Load 279
(i64)
34
4: 18(int) Load 281
(i64)
34
3: 14(int) SNegate 342
34
5: 18(int) SNegate 344
34
4: 50(ivec2) CompositeConstruct 343 343
34
6: 52(ivec2) CompositeConstruct 345 345
34
7: 50(ivec2) Select 346 344 341
34
9: 52(ivec2) Select 348 346 343
Store 27
6(i64v) 347
Store 27
8(i64v) 349
3
48: 37(ptr) AccessChain 289(u64v) 217
3
50: 40(ptr) AccessChain 291(u64v) 219
3
49: 36(int) Load 348
3
51: 14(int) Load 350
35
0: 37(ptr) AccessChain 289(u64v) 200
35
2: 40(ptr) AccessChain 291(u64v) 202
35
1: 36(int) Load 350
35
3: 14(int) Load 352
35
2: 36(int) Select 338 351 349
35
4: 14(int) Select 340 353 351
Store 29
1(u64) 352
Store 29
3(u64) 354
35
3: 36(int) Load 291
(u64)
35
5: 14(int) Load 293
(u64)
35
4: 130(ivec3) CompositeConstruct 353 353 353
35
6: 132(ivec3) CompositeConstruct 355 355 355
35
5: 36(int) Load 291
(u64)
35
7: 14(int) Load 293
(u64)
35
6: 36(int) SNegate 355
35
8: 14(int) SNegate 357
35
7: 130(ivec3) CompositeConstruct 356 356 356
35
9: 132(ivec3) CompositeConstruct 358 358 358
36
0: 130(ivec3) Select 359 357 354
36
2: 132(ivec3) Select 361 359 356
Store 2
89(u64v) 360
Store 2
91(u64v) 362
36
4: 361(fvec3) Load 363
(dv)
36
6: 363(fvec3) Load 365
(dv)
36
5: 93(fvec2) VectorShuffle 364 364
0 1
36
7: 95(fvec2) VectorShuffle 366 366
0 1
36
6: 50(ivec2) Bitcast 365
36
8: 52(ivec2) Bitcast 367
Store 27
6(i64v) 366
Store 27
8(i64v) 368
3
68: 367(ptr) AccessChain 363(dv) 207
3
70: 369(ptr) AccessChain 365(dv) 209
3
69: 92(float) Load 368
3
71: 94(float) Load 370
37
0: 36(int) Bitcast 369
37
2: 14(int) Bitcast 371
37
1: 37(ptr) AccessChain 289(u64v) 217
37
3: 40(ptr) AccessChain 291(u64v) 219
Store 37
1 370
Store 37
3 372
37
2: 50(ivec2) Load 276
(i64v)
37
4: 52(ivec2) Load 278
(i64v)
37
3: 93(fvec2) Bitcast 372
37
5: 95(fvec2) Bitcast 374
37
4: 361(fvec3) Load 363
(dv)
37
6: 363(fvec3) Load 365
(dv)
37
5: 361(fvec3) VectorShuffle 374 373
3 4 2
37
7: 363(fvec3) VectorShuffle 376 375
3 4 2
Store 36
3(dv) 375
Store 36
5(dv) 377
37
6: 130(ivec3) Load 289
(u64v)
37
8: 132(ivec3) Load 291
(u64v)
37
7: 361(fvec3) Bitcast 376
37
9: 363(fvec3) Bitcast 378
Store 36
3(dv) 377
Store 36
5(dv) 379
38
1: 14(int) Bitcast 380
38
3: 18(int) Bitcast 382
Store 2
79(i64) 381
Store 2
81(i64) 383
38
3: 14(int) Load 279
(i64)
38
5: 18(int) Load 281
(i64)
38
4: 72(ivec2) Bitcast 383
38
6: 74(ivec2) Bitcast 385
Store 38
2(iv) 384
Store 38
4(iv) 386
38
6: 36(int) Bitcast 385
38
8: 14(int) Bitcast 387
Store 29
1(u64) 386
Store 29
3(u64) 388
3
88: 36(int) Load 291
(u64)
3
90: 14(int) Load 293
(u64)
3
89: 79(ivec2) Bitcast 388
3
91: 81(ivec2) Bitcast 390
Store 38
7(uv) 389
Store 38
9(uv) 391
39
2: 130(ivec3) Load 289
(u64v)
39
4: 132(ivec3) Load 291
(u64v)
39
3: 36(int) Load 291
(u64)
39
5: 14(int) Load 293
(u64)
39
4: 130(ivec3) CompositeConstruct 393 393 393
39
6: 132(ivec3) CompositeConstruct 395 395 395
39
5: 358(bvec3) ULessThan 392 394
39
7: 360(bvec3) ULessThan 394 396
Store 39
1(bv) 395
Store 39
3(bv) 397
39
6: 50(ivec2) Load 276
(i64v)
39
8: 52(ivec2) Load 278
(i64v)
39
7: 14(int) Load 279
(i64)
39
9: 18(int) Load 281
(i64)
398: 50(ivec2) CompositeConstruct 397 397
400: 52(ivec2) CompositeConstruct 399 399
399: 54(bvec2) SLessThan 396 398
401: 56(bvec2) SLessThan 398 400
40
0: 358(bvec3) Load 391
(bv)
40
2: 360(bvec3) Load 393
(bv)
40
1: 358(bvec3) VectorShuffle 400 399
3 4 2
40
3: 360(bvec3) VectorShuffle 402 401
3 4 2
Store 39
1(bv) 401
Store 39
3(bv) 403
40
2: 130(ivec3) Load 289
(u64v)
40
4: 132(ivec3) Load 291
(u64v)
40
3: 36(int) Load 291
(u64)
40
5: 14(int) Load 293
(u64)
40
4: 130(ivec3) CompositeConstruct 403 403 403
40
6: 132(ivec3) CompositeConstruct 405 405 405
40
5: 358(bvec3) ULessThanEqual 402 404
40
7: 360(bvec3) ULessThanEqual 404 406
Store 39
1(bv) 405
Store 39
3(bv) 407
40
6: 50(ivec2) Load 276
(i64v)
40
8: 52(ivec2) Load 278
(i64v)
40
7: 14(int) Load 279
(i64)
40
9: 18(int) Load 281
(i64)
4
08: 50(ivec2) CompositeConstruct 407 407
4
10: 52(ivec2) CompositeConstruct 409 409
4
09: 54(bvec2) SLessThanEqual 406 408
4
11: 56(bvec2) SLessThanEqual 408 410
41
0: 358(bvec3) Load 391
(bv)
41
2: 360(bvec3) Load 393
(bv)
41
1: 358(bvec3) VectorShuffle 410 409
3 4 2
41
3: 360(bvec3) VectorShuffle 412 411
3 4 2
Store 39
1(bv) 411
Store 39
3(bv) 413
41
2: 130(ivec3) Load 289
(u64v)
41
4: 132(ivec3) Load 291
(u64v)
41
3: 36(int) Load 291
(u64)
41
5: 14(int) Load 293
(u64)
41
4: 130(ivec3) CompositeConstruct 413 413 413
41
6: 132(ivec3) CompositeConstruct 415 415 415
41
5: 358(bvec3) UGreaterThan 412 414
41
7: 360(bvec3) UGreaterThan 414 416
Store 39
1(bv) 415
Store 39
3(bv) 417
41
6: 50(ivec2) Load 276
(i64v)
41
8: 52(ivec2) Load 278
(i64v)
41
7: 14(int) Load 279
(i64)
41
9: 18(int) Load 281
(i64)
4
18: 50(ivec2) CompositeConstruct 417 417
4
20: 52(ivec2) CompositeConstruct 419 419
4
19: 54(bvec2) SGreaterThan 416 418
4
21: 56(bvec2) SGreaterThan 418 420
42
0: 358(bvec3) Load 391
(bv)
42
2: 360(bvec3) Load 393
(bv)
42
1: 358(bvec3) VectorShuffle 420 419
3 4 2
42
3: 360(bvec3) VectorShuffle 422 421
3 4 2
Store 39
1(bv) 421
Store 39
3(bv) 423
42
2: 130(ivec3) Load 289
(u64v)
42
4: 132(ivec3) Load 291
(u64v)
42
3: 36(int) Load 291
(u64)
42
5: 14(int) Load 293
(u64)
42
4: 130(ivec3) CompositeConstruct 423 423 423
42
6: 132(ivec3) CompositeConstruct 425 425 425
42
5: 358(bvec3) UGreaterThanEqual 422 424
42
7: 360(bvec3) UGreaterThanEqual 424 426
Store 39
1(bv) 425
Store 39
3(bv) 427
42
6: 50(ivec2) Load 276
(i64v)
42
8: 52(ivec2) Load 278
(i64v)
42
7: 14(int) Load 279
(i64)
42
9: 18(int) Load 281
(i64)
4
28: 50(ivec2) CompositeConstruct 427 427
4
30: 52(ivec2) CompositeConstruct 429 429
4
29: 54(bvec2) SGreaterThanEqual 426 428
4
31: 56(bvec2) SGreaterThanEqual 428 430
43
0: 358(bvec3) Load 391
(bv)
43
2: 360(bvec3) Load 393
(bv)
43
1: 358(bvec3) VectorShuffle 430 429
3 4 2
43
3: 360(bvec3) VectorShuffle 432 431
3 4 2
Store 39
1(bv) 431
Store 39
3(bv) 433
43
2: 130(ivec3) Load 289
(u64v)
43
4: 132(ivec3) Load 291
(u64v)
43
3: 36(int) Load 291
(u64)
43
5: 14(int) Load 293
(u64)
43
4: 130(ivec3) CompositeConstruct 433 433 433
43
6: 132(ivec3) CompositeConstruct 435 435 435
43
5: 358(bvec3) IEqual 432 434
43
7: 360(bvec3) IEqual 434 436
Store 39
1(bv) 435
Store 39
3(bv) 437
43
6: 50(ivec2) Load 276
(i64v)
43
8: 52(ivec2) Load 278
(i64v)
43
7: 14(int) Load 279
(i64)
43
9: 18(int) Load 281
(i64)
4
38: 50(ivec2) CompositeConstruct 437 437
4
40: 52(ivec2) CompositeConstruct 439 439
4
39: 54(bvec2) IEqual 436 438
4
41: 56(bvec2) IEqual 438 440
44
0: 358(bvec3) Load 391
(bv)
44
2: 360(bvec3) Load 393
(bv)
44
1: 358(bvec3) VectorShuffle 440 439
3 4 2
44
3: 360(bvec3) VectorShuffle 442 441
3 4 2
Store 39
1(bv) 441
Store 39
3(bv) 443
44
2: 130(ivec3) Load 289
(u64v)
44
4: 132(ivec3) Load 291
(u64v)
44
3: 36(int) Load 291
(u64)
44
5: 14(int) Load 293
(u64)
44
4: 130(ivec3) CompositeConstruct 443 443 443
44
6: 132(ivec3) CompositeConstruct 445 445 445
44
5: 358(bvec3) INotEqual 442 444
44
7: 360(bvec3) INotEqual 444 446
Store 39
1(bv) 445
Store 39
3(bv) 447
44
6: 50(ivec2) Load 276
(i64v)
44
8: 52(ivec2) Load 278
(i64v)
44
7: 14(int) Load 279
(i64)
44
9: 18(int) Load 281
(i64)
4
48: 50(ivec2) CompositeConstruct 447 447
4
50: 52(ivec2) CompositeConstruct 449 449
4
49: 54(bvec2) INotEqual 446 448
4
51: 56(bvec2) INotEqual 448 450
45
0: 358(bvec3) Load 391
(bv)
45
2: 360(bvec3) Load 393
(bv)
45
1: 358(bvec3) VectorShuffle 450 449
3 4 2
45
3: 360(bvec3) VectorShuffle 452 451
3 4 2
Store 39
1(bv) 451
Store 39
3(bv) 453
Return
Return
FunctionEnd
FunctionEnd
Test/baseResults/spv.uint.frag.out
View file @
4bfb32e1
...
@@ -7,12 +7,12 @@ Linked fragment stage:
...
@@ -7,12 +7,12 @@ Linked fragment stage:
// Module Version 10000
// Module Version 10000
// Generated by (magic number): 80001
// Generated by (magic number): 80001
// Id's are bound by 2
07
// Id's are bound by 2
13
Capability Shader
Capability Shader
1: ExtInstImport "GLSL.std.450"
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
MemoryModel Logical GLSL450
EntryPoint Fragment 4 "main" 15 68 77 20
0 202 204
EntryPoint Fragment 4 "main" 15 68 77 20
6 208 210
ExecutionMode 4 OriginUpperLeft
ExecutionMode 4 OriginUpperLeft
Source ESSL 310
Source ESSL 310
Name 4 "main"
Name 4 "main"
...
@@ -33,10 +33,10 @@ Linked fragment stage:
...
@@ -33,10 +33,10 @@ Linked fragment stage:
Name 154 "mask2"
Name 154 "mask2"
Name 156 "mask3"
Name 156 "mask3"
Name 160 "mask4"
Name 160 "mask4"
Name 20
0
"f"
Name 20
6
"f"
Name 20
2
"v"
Name 20
8
"v"
Name 2
04
"i"
Name 2
10
"i"
Name 2
06
"b"
Name 2
12
"b"
Decorate 8(count) RelaxedPrecision
Decorate 8(count) RelaxedPrecision
Decorate 12(u) RelaxedPrecision
Decorate 12(u) RelaxedPrecision
Decorate 15(t) RelaxedPrecision
Decorate 15(t) RelaxedPrecision
...
@@ -138,11 +138,13 @@ Linked fragment stage:
...
@@ -138,11 +138,13 @@ Linked fragment stage:
Decorate 196 RelaxedPrecision
Decorate 196 RelaxedPrecision
Decorate 197 RelaxedPrecision
Decorate 197 RelaxedPrecision
Decorate 198 RelaxedPrecision
Decorate 198 RelaxedPrecision
Decorate 200(f) RelaxedPrecision
Decorate 202 RelaxedPrecision
Decorate 202(v) RelaxedPrecision
Decorate 203 RelaxedPrecision
Decorate 202(v) Flat
Decorate 206(f) RelaxedPrecision
Decorate 204(i) RelaxedPrecision
Decorate 208(v) RelaxedPrecision
Decorate 204(i) Flat
Decorate 208(v) Flat
Decorate 210(i) RelaxedPrecision
Decorate 210(i) Flat
2: TypeVoid
2: TypeVoid
3: TypeFunction 2
3: TypeFunction 2
6: TypeInt 32 1
6: TypeInt 32 1
...
@@ -193,14 +195,16 @@ Linked fragment stage:
...
@@ -193,14 +195,16 @@ Linked fragment stage:
155: 10(int) Constant 2576
155: 10(int) Constant 2576
158: 6(int) Constant 4
158: 6(int) Constant 4
161: 10(int) Constant 2737
161: 10(int) Constant 2737
199: TypePointer Input 74(float)
199: 10(int) Constant 4294967295
200(f): 199(ptr) Variable Input
200: TypePointer Output 10(int)
201: TypePointer Input 66(ivec4)
205: TypePointer Input 74(float)
202(v): 201(ptr) Variable Input
206(f): 205(ptr) Variable Input
203: TypePointer Input 6(int)
207: TypePointer Input 66(ivec4)
204(i): 203(ptr) Variable Input
208(v): 207(ptr) Variable Input
205: TypePointer Private 22(bool)
209: TypePointer Input 6(int)
206(b): 205(ptr) Variable Private
210(i): 209(ptr) Variable Input
211: TypePointer Private 22(bool)
212(b): 211(ptr) Variable Private
4(main): 2 Function None 3
4(main): 2 Function None 3
5: Label
5: Label
8(count): 7(ptr) Variable Function
8(count): 7(ptr) Variable Function
...
@@ -434,5 +438,10 @@ Linked fragment stage:
...
@@ -434,5 +438,10 @@ Linked fragment stage:
197: 66(ivec4) Load 68(c)
197: 66(ivec4) Load 68(c)
198: 66(ivec4) IAdd 197 196
198: 66(ivec4) IAdd 197 196
Store 68(c) 198
Store 68(c) 198
201: 200(ptr) AccessChain 68(c) 103
202: 10(int) Load 201
203: 10(int) IAdd 202 199
204: 200(ptr) AccessChain 68(c) 103
Store 204 203
Return
Return
FunctionEnd
FunctionEnd
Test/spv.int64.frag
View file @
4bfb32e1
...
@@ -258,4 +258,7 @@ const uint64_t i_to_u64 = uint64_t(si);
...
@@ -258,4 +258,7 @@ const uint64_t i_to_u64 = uint64_t(si);
// uint <-> int64
// uint <-> int64
const
uint
i64_to_u
=
uint
(
si64
);
const
uint
i64_to_u
=
uint
(
si64
);
const
int64_t
u_to_i64
=
int64_t
(
su
);
const
int64_t
u_to_i64
=
int64_t
(
su
);
\ No newline at end of file
#define UINT64_MAX 18446744073709551615ul
uint64_t
u64Max
=
UINT64_MAX
;
Test/spv.uint.frag
View file @
4bfb32e1
...
@@ -95,5 +95,8 @@ void main()
...
@@ -95,5 +95,8 @@ void main()
if
((
mask1
^
mask4
)
==
0xA10u
)
if
((
mask1
^
mask4
)
==
0xA10u
)
count
*=
7
;
// 341413380
count
*=
7
;
// 341413380
c
+=
uvec4
(
count
);
c
+=
uvec4
(
count
);
#define UINT_MAX 4294967295u
c
.
x
+=
UINT_MAX
;
}
}
glslang/Include/revision.h
View file @
4bfb32e1
...
@@ -2,5 +2,5 @@
...
@@ -2,5 +2,5 @@
// For the version, it uses the latest git tag followed by the number of commits.
// For the version, it uses the latest git tag followed by the number of commits.
// For the date, it uses the current date (when then script is run).
// For the date, it uses the current date (when then script is run).
#define GLSLANG_REVISION "Overload400-PrecQual.147
2
"
#define GLSLANG_REVISION "Overload400-PrecQual.147
4
"
#define GLSLANG_DATE "0
5
-Sep-2016"
#define GLSLANG_DATE "0
9
-Sep-2016"
glslang/MachineIndependent/preprocessor/PpTokens.cpp
View file @
4bfb32e1
...
@@ -224,7 +224,6 @@ int TPpContext::ReadToken(TokenStream *pTok, TPpToken *ppToken)
...
@@ -224,7 +224,6 @@ int TPpContext::ReadToken(TokenStream *pTok, TPpToken *ppToken)
ppToken
->
dval
=
atof
(
ppToken
->
name
);
ppToken
->
dval
=
atof
(
ppToken
->
name
);
break
;
break
;
case
PpAtomConstInt
:
case
PpAtomConstInt
:
case
PpAtomConstUint
:
if
(
len
>
0
&&
tokenText
[
0
]
==
'0'
)
{
if
(
len
>
0
&&
tokenText
[
0
]
==
'0'
)
{
if
(
len
>
1
&&
(
tokenText
[
1
]
==
'x'
||
tokenText
[
1
]
==
'X'
))
if
(
len
>
1
&&
(
tokenText
[
1
]
==
'x'
||
tokenText
[
1
]
==
'X'
))
ppToken
->
ival
=
strtol
(
ppToken
->
name
,
0
,
16
);
ppToken
->
ival
=
strtol
(
ppToken
->
name
,
0
,
16
);
...
@@ -233,8 +232,16 @@ int TPpContext::ReadToken(TokenStream *pTok, TPpToken *ppToken)
...
@@ -233,8 +232,16 @@ int TPpContext::ReadToken(TokenStream *pTok, TPpToken *ppToken)
}
else
}
else
ppToken
->
ival
=
atoi
(
ppToken
->
name
);
ppToken
->
ival
=
atoi
(
ppToken
->
name
);
break
;
break
;
case
PpAtomConstUint
:
if
(
len
>
0
&&
tokenText
[
0
]
==
'0'
)
{
if
(
len
>
1
&&
(
tokenText
[
1
]
==
'x'
||
tokenText
[
1
]
==
'X'
))
ppToken
->
ival
=
(
int
)
strtoul
(
ppToken
->
name
,
0
,
16
);
else
ppToken
->
ival
=
(
int
)
strtoul
(
ppToken
->
name
,
0
,
8
);
}
else
ppToken
->
ival
=
(
int
)
strtoul
(
ppToken
->
name
,
0
,
10
);
break
;
case
PpAtomConstInt64
:
case
PpAtomConstInt64
:
case
PpAtomConstUint64
:
if
(
len
>
0
&&
tokenText
[
0
]
==
'0'
)
{
if
(
len
>
0
&&
tokenText
[
0
]
==
'0'
)
{
if
(
len
>
1
&&
(
tokenText
[
1
]
==
'x'
||
tokenText
[
1
]
==
'X'
))
if
(
len
>
1
&&
(
tokenText
[
1
]
==
'x'
||
tokenText
[
1
]
==
'X'
))
ppToken
->
i64val
=
strtoll
(
ppToken
->
name
,
nullptr
,
16
);
ppToken
->
i64val
=
strtoll
(
ppToken
->
name
,
nullptr
,
16
);
...
@@ -243,6 +250,15 @@ int TPpContext::ReadToken(TokenStream *pTok, TPpToken *ppToken)
...
@@ -243,6 +250,15 @@ int TPpContext::ReadToken(TokenStream *pTok, TPpToken *ppToken)
}
else
}
else
ppToken
->
i64val
=
atoll
(
ppToken
->
name
);
ppToken
->
i64val
=
atoll
(
ppToken
->
name
);
break
;
break
;
case
PpAtomConstUint64
:
if
(
len
>
0
&&
tokenText
[
0
]
==
'0'
)
{
if
(
len
>
1
&&
(
tokenText
[
1
]
==
'x'
||
tokenText
[
1
]
==
'X'
))
ppToken
->
i64val
=
(
long
long
)
strtoull
(
ppToken
->
name
,
nullptr
,
16
);
else
ppToken
->
i64val
=
(
long
long
)
strtoull
(
ppToken
->
name
,
nullptr
,
8
);
}
else
ppToken
->
i64val
=
(
long
long
)
strtoull
(
ppToken
->
name
,
0
,
10
);
break
;
}
}
}
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment