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
66b319d3
Commit
66b319d3
authored
Nov 27, 2017
by
Sebastian Tafuri
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Added new test to gtests and updated test data
parent
59677dae
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
475 additions
and
268 deletions
+475
-268
hlsl.store.rwbyteaddressbuffer.type.comp.out
.../baseResults/hlsl.store.rwbyteaddressbuffer.type.comp.out
+173
-0
hlsl.structbuffer.rwbyte.frag.out
Test/baseResults/hlsl.structbuffer.rwbyte.frag.out
+292
-268
hlsl.store.rwbyteaddressbuffer.type.comp
Test/hlsl.store.rwbyteaddressbuffer.type.comp
+9
-0
Hlsl.FromFile.cpp
gtests/Hlsl.FromFile.cpp
+1
-0
No files found.
Test/baseResults/hlsl.store.rwbyteaddressbuffer.type.comp.out
0 → 100644
View file @
66b319d3
hlsl.store.rwbyteaddressbuffer.type.comp
Shader version: 500
local_size = (64, 1, 1)
0:? Sequence
0:5 Function Definition: @main(vu3; ( temp void)
0:5 Function Parameters:
0:5 'dispatchThreadID' ( in 3-component vector of uint)
0:? Sequence
0:6 Test condition and select ( temp void)
0:6 Condition
0:6 Compare Equal ( temp bool)
0:6 direct index ( temp uint)
0:6 'dispatchThreadID' ( in 3-component vector of uint)
0:6 Constant:
0:6 0 (const int)
0:6 Constant:
0:6 0 (const uint)
0:6 true case
0:? Sequence
0:7 move second child to first child ( temp int)
0:7 'byteAddrTemp' ( temp int)
0:7 right-shift ( temp int)
0:7 Constant:
0:7 0 (const int)
0:7 Constant:
0:7 2 (const int)
0:7 move second child to first child ( temp uint)
0:7 indirect index (layout( row_major std430) buffer uint)
0:7 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint)
0:7 'buffer' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data})
0:7 Constant:
0:7 0 (const uint)
0:7 'byteAddrTemp' ( temp int)
0:7 Constant:
0:7 2 (const uint)
0:5 Function Definition: main( ( temp void)
0:5 Function Parameters:
0:? Sequence
0:5 move second child to first child ( temp 3-component vector of uint)
0:? 'dispatchThreadID' ( temp 3-component vector of uint)
0:? 'dispatchThreadID' ( in 3-component vector of uint GlobalInvocationID)
0:5 Function Call: @main(vu3; ( temp void)
0:? 'dispatchThreadID' ( temp 3-component vector of uint)
0:? Linker Objects
0:? 'buffer' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data})
0:? 'dispatchThreadID' ( in 3-component vector of uint GlobalInvocationID)
Linked compute stage:
Shader version: 500
local_size = (64, 1, 1)
0:? Sequence
0:5 Function Definition: @main(vu3; ( temp void)
0:5 Function Parameters:
0:5 'dispatchThreadID' ( in 3-component vector of uint)
0:? Sequence
0:6 Test condition and select ( temp void)
0:6 Condition
0:6 Compare Equal ( temp bool)
0:6 direct index ( temp uint)
0:6 'dispatchThreadID' ( in 3-component vector of uint)
0:6 Constant:
0:6 0 (const int)
0:6 Constant:
0:6 0 (const uint)
0:6 true case
0:? Sequence
0:7 move second child to first child ( temp int)
0:7 'byteAddrTemp' ( temp int)
0:7 right-shift ( temp int)
0:7 Constant:
0:7 0 (const int)
0:7 Constant:
0:7 2 (const int)
0:7 move second child to first child ( temp uint)
0:7 indirect index (layout( row_major std430) buffer uint)
0:7 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint)
0:7 'buffer' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data})
0:7 Constant:
0:7 0 (const uint)
0:7 'byteAddrTemp' ( temp int)
0:7 Constant:
0:7 2 (const uint)
0:5 Function Definition: main( ( temp void)
0:5 Function Parameters:
0:? Sequence
0:5 move second child to first child ( temp 3-component vector of uint)
0:? 'dispatchThreadID' ( temp 3-component vector of uint)
0:? 'dispatchThreadID' ( in 3-component vector of uint GlobalInvocationID)
0:5 Function Call: @main(vu3; ( temp void)
0:? 'dispatchThreadID' ( temp 3-component vector of uint)
0:? Linker Objects
0:? 'buffer' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data})
0:? 'dispatchThreadID' ( in 3-component vector of uint GlobalInvocationID)
// Module Version 10000
// Generated by (magic number): 80002
// Id's are bound by 42
Capability Shader
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint GLCompute 4 "main" 37
ExecutionMode 4 LocalSize 64 1 1
Source HLSL 500
Name 4 "main"
Name 11 "@main(vu3;"
Name 10 "dispatchThreadID"
Name 23 "byteAddrTemp"
Name 28 "buffer"
MemberName 28(buffer) 0 "@data"
Name 30 "buffer"
Name 35 "dispatchThreadID"
Name 37 "dispatchThreadID"
Name 39 "param"
Decorate 27 ArrayStride 4
MemberDecorate 28(buffer) 0 Offset 0
Decorate 28(buffer) BufferBlock
Decorate 30(buffer) DescriptorSet 0
Decorate 37(dispatchThreadID) BuiltIn GlobalInvocationId
2: TypeVoid
3: TypeFunction 2
6: TypeInt 32 0
7: TypeVector 6(int) 3
8: TypePointer Function 7(ivec3)
9: TypeFunction 2 8(ptr)
13: 6(int) Constant 0
14: TypePointer Function 6(int)
17: TypeBool
21: TypeInt 32 1
22: TypePointer Function 21(int)
24: 21(int) Constant 0
25: 21(int) Constant 2
27: TypeRuntimeArray 6(int)
28(buffer): TypeStruct 27
29: TypePointer Uniform 28(buffer)
30(buffer): 29(ptr) Variable Uniform
32: 6(int) Constant 2
33: TypePointer Uniform 6(int)
36: TypePointer Input 7(ivec3)
37(dispatchThreadID): 36(ptr) Variable Input
4(main): 2 Function None 3
5: Label
35(dispatchThreadID): 8(ptr) Variable Function
39(param): 8(ptr) Variable Function
38: 7(ivec3) Load 37(dispatchThreadID)
Store 35(dispatchThreadID) 38
40: 7(ivec3) Load 35(dispatchThreadID)
Store 39(param) 40
41: 2 FunctionCall 11(@main(vu3;) 39(param)
Return
FunctionEnd
11(@main(vu3;): 2 Function None 9
10(dispatchThreadID): 8(ptr) FunctionParameter
12: Label
23(byteAddrTemp): 22(ptr) Variable Function
15: 14(ptr) AccessChain 10(dispatchThreadID) 13
16: 6(int) Load 15
18: 17(bool) IEqual 16 13
SelectionMerge 20 None
BranchConditional 18 19 20
19: Label
26: 21(int) ShiftRightArithmetic 24 25
Store 23(byteAddrTemp) 26
31: 21(int) Load 23(byteAddrTemp)
34: 33(ptr) AccessChain 30(buffer) 24 31
Store 34 32
Branch 20
20: Label
Return
FunctionEnd
Test/baseResults/hlsl.structbuffer.rwbyte.frag.out
View file @
66b319d3
...
@@ -21,14 +21,13 @@ gl_FragCoord origin is upper left
...
@@ -21,14 +21,13 @@ gl_FragCoord origin is upper left
0:9 'pos' ( in uint)
0:9 'pos' ( in uint)
0:9 Constant:
0:9 Constant:
0:9 2 (const int)
0:9 2 (const int)
0:9 move second child to first child ( temp
floa
t)
0:9 move second child to first child ( temp
uin
t)
0:9 indirect index (
temp floa
t)
0:9 indirect index (
layout( row_major std430) buffer uin
t)
0:9 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint)
0:9 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint)
0:9 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data})
0:9 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data})
0:9 Constant:
0:9 Constant:
0:9 0 (const uint)
0:9 0 (const uint)
0:9 'byteAddrTemp' ( temp int)
0:9 'byteAddrTemp' ( temp int)
0:9 Convert uint to float ( temp float)
0:9 indirect index (layout( row_major std430) buffer uint)
0:9 indirect index (layout( row_major std430) buffer uint)
0:9 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint)
0:9 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint)
0:9 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data})
0:9 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data})
...
@@ -45,13 +44,14 @@ gl_FragCoord origin is upper left
...
@@ -45,13 +44,14 @@ gl_FragCoord origin is upper left
0:10 'pos' ( in uint)
0:10 'pos' ( in uint)
0:10 Constant:
0:10 Constant:
0:10 2 (const int)
0:10 2 (const int)
0:10 move second child to first child ( temp
floa
t)
0:10 move second child to first child ( temp
uin
t)
0:10 indirect index (
temp floa
t)
0:10 indirect index (
layout( row_major std430) buffer uin
t)
0:10 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint)
0:10 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint)
0:10 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data})
0:10 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data})
0:10 Constant:
0:10 Constant:
0:10 0 (const uint)
0:10 0 (const uint)
0:10 'byteAddrTemp' ( temp int)
0:10 'byteAddrTemp' ( temp int)
0:10 Convert float to uint ( temp uint)
0:10 direct index ( temp float)
0:10 direct index ( temp float)
0:? Sequence
0:? Sequence
0:10 move second child to first child ( temp int)
0:10 move second child to first child ( temp int)
...
@@ -78,8 +78,8 @@ gl_FragCoord origin is upper left
...
@@ -78,8 +78,8 @@ gl_FragCoord origin is upper left
0:10 1 (const int)
0:10 1 (const int)
0:10 Constant:
0:10 Constant:
0:10 0 (const int)
0:10 0 (const int)
0:10 move second child to first child ( temp
floa
t)
0:10 move second child to first child ( temp
uin
t)
0:10 indirect index (
temp floa
t)
0:10 indirect index (
layout( row_major std430) buffer uin
t)
0:10 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint)
0:10 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint)
0:10 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data})
0:10 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data})
0:10 Constant:
0:10 Constant:
...
@@ -88,6 +88,7 @@ gl_FragCoord origin is upper left
...
@@ -88,6 +88,7 @@ gl_FragCoord origin is upper left
0:10 'byteAddrTemp' ( temp int)
0:10 'byteAddrTemp' ( temp int)
0:10 Constant:
0:10 Constant:
0:10 1 (const int)
0:10 1 (const int)
0:10 Convert float to uint ( temp uint)
0:10 direct index ( temp float)
0:10 direct index ( temp float)
0:? Sequence
0:? Sequence
0:10 move second child to first child ( temp int)
0:10 move second child to first child ( temp int)
...
@@ -121,13 +122,14 @@ gl_FragCoord origin is upper left
...
@@ -121,13 +122,14 @@ gl_FragCoord origin is upper left
0:11 'pos' ( in uint)
0:11 'pos' ( in uint)
0:11 Constant:
0:11 Constant:
0:11 2 (const int)
0:11 2 (const int)
0:11 move second child to first child ( temp
floa
t)
0:11 move second child to first child ( temp
uin
t)
0:11 indirect index (
temp floa
t)
0:11 indirect index (
layout( row_major std430) buffer uin
t)
0:11 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint)
0:11 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint)
0:11 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data})
0:11 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data})
0:11 Constant:
0:11 Constant:
0:11 0 (const uint)
0:11 0 (const uint)
0:11 'byteAddrTemp' ( temp int)
0:11 'byteAddrTemp' ( temp int)
0:11 Convert float to uint ( temp uint)
0:11 direct index ( temp float)
0:11 direct index ( temp float)
0:? Sequence
0:? Sequence
0:11 move second child to first child ( temp int)
0:11 move second child to first child ( temp int)
...
@@ -163,8 +165,8 @@ gl_FragCoord origin is upper left
...
@@ -163,8 +165,8 @@ gl_FragCoord origin is upper left
0:11 2 (const int)
0:11 2 (const int)
0:11 Constant:
0:11 Constant:
0:11 0 (const int)
0:11 0 (const int)
0:11 move second child to first child ( temp
floa
t)
0:11 move second child to first child ( temp
uin
t)
0:11 indirect index (
temp floa
t)
0:11 indirect index (
layout( row_major std430) buffer uin
t)
0:11 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint)
0:11 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint)
0:11 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data})
0:11 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data})
0:11 Constant:
0:11 Constant:
...
@@ -173,6 +175,7 @@ gl_FragCoord origin is upper left
...
@@ -173,6 +175,7 @@ gl_FragCoord origin is upper left
0:11 'byteAddrTemp' ( temp int)
0:11 'byteAddrTemp' ( temp int)
0:11 Constant:
0:11 Constant:
0:11 1 (const int)
0:11 1 (const int)
0:11 Convert float to uint ( temp uint)
0:11 direct index ( temp float)
0:11 direct index ( temp float)
0:? Sequence
0:? Sequence
0:11 move second child to first child ( temp int)
0:11 move second child to first child ( temp int)
...
@@ -208,8 +211,8 @@ gl_FragCoord origin is upper left
...
@@ -208,8 +211,8 @@ gl_FragCoord origin is upper left
0:11 2 (const int)
0:11 2 (const int)
0:11 Constant:
0:11 Constant:
0:11 1 (const int)
0:11 1 (const int)
0:11 move second child to first child ( temp
floa
t)
0:11 move second child to first child ( temp
uin
t)
0:11 indirect index (
temp floa
t)
0:11 indirect index (
layout( row_major std430) buffer uin
t)
0:11 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint)
0:11 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint)
0:11 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data})
0:11 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data})
0:11 Constant:
0:11 Constant:
...
@@ -218,6 +221,7 @@ gl_FragCoord origin is upper left
...
@@ -218,6 +221,7 @@ gl_FragCoord origin is upper left
0:11 'byteAddrTemp' ( temp int)
0:11 'byteAddrTemp' ( temp int)
0:11 Constant:
0:11 Constant:
0:11 2 (const int)
0:11 2 (const int)
0:11 Convert float to uint ( temp uint)
0:11 direct index ( temp float)
0:11 direct index ( temp float)
0:? Sequence
0:? Sequence
0:11 move second child to first child ( temp int)
0:11 move second child to first child ( temp int)
...
@@ -260,13 +264,14 @@ gl_FragCoord origin is upper left
...
@@ -260,13 +264,14 @@ gl_FragCoord origin is upper left
0:12 'pos' ( in uint)
0:12 'pos' ( in uint)
0:12 Constant:
0:12 Constant:
0:12 2 (const int)
0:12 2 (const int)
0:12 move second child to first child ( temp
floa
t)
0:12 move second child to first child ( temp
uin
t)
0:12 indirect index (
temp floa
t)
0:12 indirect index (
layout( row_major std430) buffer uin
t)
0:12 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint)
0:12 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint)
0:12 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data})
0:12 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data})
0:12 Constant:
0:12 Constant:
0:12 0 (const uint)
0:12 0 (const uint)
0:12 'byteAddrTemp' ( temp int)
0:12 'byteAddrTemp' ( temp int)
0:12 Convert float to uint ( temp uint)
0:12 direct index ( temp float)
0:12 direct index ( temp float)
0:? Sequence
0:? Sequence
0:12 move second child to first child ( temp int)
0:12 move second child to first child ( temp int)
...
@@ -311,8 +316,8 @@ gl_FragCoord origin is upper left
...
@@ -311,8 +316,8 @@ gl_FragCoord origin is upper left
0:12 3 (const int)
0:12 3 (const int)
0:12 Constant:
0:12 Constant:
0:12 0 (const int)
0:12 0 (const int)
0:12 move second child to first child ( temp
floa
t)
0:12 move second child to first child ( temp
uin
t)
0:12 indirect index (
temp floa
t)
0:12 indirect index (
layout( row_major std430) buffer uin
t)
0:12 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint)
0:12 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint)
0:12 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data})
0:12 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data})
0:12 Constant:
0:12 Constant:
...
@@ -321,6 +326,7 @@ gl_FragCoord origin is upper left
...
@@ -321,6 +326,7 @@ gl_FragCoord origin is upper left
0:12 'byteAddrTemp' ( temp int)
0:12 'byteAddrTemp' ( temp int)
0:12 Constant:
0:12 Constant:
0:12 1 (const int)
0:12 1 (const int)
0:12 Convert float to uint ( temp uint)
0:12 direct index ( temp float)
0:12 direct index ( temp float)
0:? Sequence
0:? Sequence
0:12 move second child to first child ( temp int)
0:12 move second child to first child ( temp int)
...
@@ -365,8 +371,8 @@ gl_FragCoord origin is upper left
...
@@ -365,8 +371,8 @@ gl_FragCoord origin is upper left
0:12 3 (const int)
0:12 3 (const int)
0:12 Constant:
0:12 Constant:
0:12 1 (const int)
0:12 1 (const int)
0:12 move second child to first child ( temp
floa
t)
0:12 move second child to first child ( temp
uin
t)
0:12 indirect index (
temp floa
t)
0:12 indirect index (
layout( row_major std430) buffer uin
t)
0:12 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint)
0:12 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint)
0:12 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data})
0:12 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data})
0:12 Constant:
0:12 Constant:
...
@@ -375,6 +381,7 @@ gl_FragCoord origin is upper left
...
@@ -375,6 +381,7 @@ gl_FragCoord origin is upper left
0:12 'byteAddrTemp' ( temp int)
0:12 'byteAddrTemp' ( temp int)
0:12 Constant:
0:12 Constant:
0:12 2 (const int)
0:12 2 (const int)
0:12 Convert float to uint ( temp uint)
0:12 direct index ( temp float)
0:12 direct index ( temp float)
0:? Sequence
0:? Sequence
0:12 move second child to first child ( temp int)
0:12 move second child to first child ( temp int)
...
@@ -419,8 +426,8 @@ gl_FragCoord origin is upper left
...
@@ -419,8 +426,8 @@ gl_FragCoord origin is upper left
0:12 3 (const int)
0:12 3 (const int)
0:12 Constant:
0:12 Constant:
0:12 2 (const int)
0:12 2 (const int)
0:12 move second child to first child ( temp
floa
t)
0:12 move second child to first child ( temp
uin
t)
0:12 indirect index (
temp floa
t)
0:12 indirect index (
layout( row_major std430) buffer uin
t)
0:12 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint)
0:12 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint)
0:12 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data})
0:12 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data})
0:12 Constant:
0:12 Constant:
...
@@ -429,6 +436,7 @@ gl_FragCoord origin is upper left
...
@@ -429,6 +436,7 @@ gl_FragCoord origin is upper left
0:12 'byteAddrTemp' ( temp int)
0:12 'byteAddrTemp' ( temp int)
0:12 Constant:
0:12 Constant:
0:12 3 (const int)
0:12 3 (const int)
0:12 Convert float to uint ( temp uint)
0:12 direct index ( temp float)
0:12 direct index ( temp float)
0:? Sequence
0:? Sequence
0:12 move second child to first child ( temp int)
0:12 move second child to first child ( temp int)
...
@@ -526,14 +534,13 @@ gl_FragCoord origin is upper left
...
@@ -526,14 +534,13 @@ gl_FragCoord origin is upper left
0:9 'pos' ( in uint)
0:9 'pos' ( in uint)
0:9 Constant:
0:9 Constant:
0:9 2 (const int)
0:9 2 (const int)
0:9 move second child to first child ( temp
floa
t)
0:9 move second child to first child ( temp
uin
t)
0:9 indirect index (
temp floa
t)
0:9 indirect index (
layout( row_major std430) buffer uin
t)
0:9 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint)
0:9 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint)
0:9 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data})
0:9 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data})
0:9 Constant:
0:9 Constant:
0:9 0 (const uint)
0:9 0 (const uint)
0:9 'byteAddrTemp' ( temp int)
0:9 'byteAddrTemp' ( temp int)
0:9 Convert uint to float ( temp float)
0:9 indirect index (layout( row_major std430) buffer uint)
0:9 indirect index (layout( row_major std430) buffer uint)
0:9 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint)
0:9 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint)
0:9 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data})
0:9 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data})
...
@@ -550,13 +557,14 @@ gl_FragCoord origin is upper left
...
@@ -550,13 +557,14 @@ gl_FragCoord origin is upper left
0:10 'pos' ( in uint)
0:10 'pos' ( in uint)
0:10 Constant:
0:10 Constant:
0:10 2 (const int)
0:10 2 (const int)
0:10 move second child to first child ( temp
floa
t)
0:10 move second child to first child ( temp
uin
t)
0:10 indirect index (
temp floa
t)
0:10 indirect index (
layout( row_major std430) buffer uin
t)
0:10 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint)
0:10 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint)
0:10 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data})
0:10 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data})
0:10 Constant:
0:10 Constant:
0:10 0 (const uint)
0:10 0 (const uint)
0:10 'byteAddrTemp' ( temp int)
0:10 'byteAddrTemp' ( temp int)
0:10 Convert float to uint ( temp uint)
0:10 direct index ( temp float)
0:10 direct index ( temp float)
0:? Sequence
0:? Sequence
0:10 move second child to first child ( temp int)
0:10 move second child to first child ( temp int)
...
@@ -583,8 +591,8 @@ gl_FragCoord origin is upper left
...
@@ -583,8 +591,8 @@ gl_FragCoord origin is upper left
0:10 1 (const int)
0:10 1 (const int)
0:10 Constant:
0:10 Constant:
0:10 0 (const int)
0:10 0 (const int)
0:10 move second child to first child ( temp
floa
t)
0:10 move second child to first child ( temp
uin
t)
0:10 indirect index (
temp floa
t)
0:10 indirect index (
layout( row_major std430) buffer uin
t)
0:10 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint)
0:10 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint)
0:10 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data})
0:10 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data})
0:10 Constant:
0:10 Constant:
...
@@ -593,6 +601,7 @@ gl_FragCoord origin is upper left
...
@@ -593,6 +601,7 @@ gl_FragCoord origin is upper left
0:10 'byteAddrTemp' ( temp int)
0:10 'byteAddrTemp' ( temp int)
0:10 Constant:
0:10 Constant:
0:10 1 (const int)
0:10 1 (const int)
0:10 Convert float to uint ( temp uint)
0:10 direct index ( temp float)
0:10 direct index ( temp float)
0:? Sequence
0:? Sequence
0:10 move second child to first child ( temp int)
0:10 move second child to first child ( temp int)
...
@@ -626,13 +635,14 @@ gl_FragCoord origin is upper left
...
@@ -626,13 +635,14 @@ gl_FragCoord origin is upper left
0:11 'pos' ( in uint)
0:11 'pos' ( in uint)
0:11 Constant:
0:11 Constant:
0:11 2 (const int)
0:11 2 (const int)
0:11 move second child to first child ( temp
floa
t)
0:11 move second child to first child ( temp
uin
t)
0:11 indirect index (
temp floa
t)
0:11 indirect index (
layout( row_major std430) buffer uin
t)
0:11 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint)
0:11 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint)
0:11 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data})
0:11 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data})
0:11 Constant:
0:11 Constant:
0:11 0 (const uint)
0:11 0 (const uint)
0:11 'byteAddrTemp' ( temp int)
0:11 'byteAddrTemp' ( temp int)
0:11 Convert float to uint ( temp uint)
0:11 direct index ( temp float)
0:11 direct index ( temp float)
0:? Sequence
0:? Sequence
0:11 move second child to first child ( temp int)
0:11 move second child to first child ( temp int)
...
@@ -668,8 +678,8 @@ gl_FragCoord origin is upper left
...
@@ -668,8 +678,8 @@ gl_FragCoord origin is upper left
0:11 2 (const int)
0:11 2 (const int)
0:11 Constant:
0:11 Constant:
0:11 0 (const int)
0:11 0 (const int)
0:11 move second child to first child ( temp
floa
t)
0:11 move second child to first child ( temp
uin
t)
0:11 indirect index (
temp floa
t)
0:11 indirect index (
layout( row_major std430) buffer uin
t)
0:11 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint)
0:11 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint)
0:11 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data})
0:11 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data})
0:11 Constant:
0:11 Constant:
...
@@ -678,6 +688,7 @@ gl_FragCoord origin is upper left
...
@@ -678,6 +688,7 @@ gl_FragCoord origin is upper left
0:11 'byteAddrTemp' ( temp int)
0:11 'byteAddrTemp' ( temp int)
0:11 Constant:
0:11 Constant:
0:11 1 (const int)
0:11 1 (const int)
0:11 Convert float to uint ( temp uint)
0:11 direct index ( temp float)
0:11 direct index ( temp float)
0:? Sequence
0:? Sequence
0:11 move second child to first child ( temp int)
0:11 move second child to first child ( temp int)
...
@@ -713,8 +724,8 @@ gl_FragCoord origin is upper left
...
@@ -713,8 +724,8 @@ gl_FragCoord origin is upper left
0:11 2 (const int)
0:11 2 (const int)
0:11 Constant:
0:11 Constant:
0:11 1 (const int)
0:11 1 (const int)
0:11 move second child to first child ( temp
floa
t)
0:11 move second child to first child ( temp
uin
t)
0:11 indirect index (
temp floa
t)
0:11 indirect index (
layout( row_major std430) buffer uin
t)
0:11 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint)
0:11 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint)
0:11 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data})
0:11 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data})
0:11 Constant:
0:11 Constant:
...
@@ -723,6 +734,7 @@ gl_FragCoord origin is upper left
...
@@ -723,6 +734,7 @@ gl_FragCoord origin is upper left
0:11 'byteAddrTemp' ( temp int)
0:11 'byteAddrTemp' ( temp int)
0:11 Constant:
0:11 Constant:
0:11 2 (const int)
0:11 2 (const int)
0:11 Convert float to uint ( temp uint)
0:11 direct index ( temp float)
0:11 direct index ( temp float)
0:? Sequence
0:? Sequence
0:11 move second child to first child ( temp int)
0:11 move second child to first child ( temp int)
...
@@ -765,13 +777,14 @@ gl_FragCoord origin is upper left
...
@@ -765,13 +777,14 @@ gl_FragCoord origin is upper left
0:12 'pos' ( in uint)
0:12 'pos' ( in uint)
0:12 Constant:
0:12 Constant:
0:12 2 (const int)
0:12 2 (const int)
0:12 move second child to first child ( temp
floa
t)
0:12 move second child to first child ( temp
uin
t)
0:12 indirect index (
temp floa
t)
0:12 indirect index (
layout( row_major std430) buffer uin
t)
0:12 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint)
0:12 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint)
0:12 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data})
0:12 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data})
0:12 Constant:
0:12 Constant:
0:12 0 (const uint)
0:12 0 (const uint)
0:12 'byteAddrTemp' ( temp int)
0:12 'byteAddrTemp' ( temp int)
0:12 Convert float to uint ( temp uint)
0:12 direct index ( temp float)
0:12 direct index ( temp float)
0:? Sequence
0:? Sequence
0:12 move second child to first child ( temp int)
0:12 move second child to first child ( temp int)
...
@@ -816,8 +829,8 @@ gl_FragCoord origin is upper left
...
@@ -816,8 +829,8 @@ gl_FragCoord origin is upper left
0:12 3 (const int)
0:12 3 (const int)
0:12 Constant:
0:12 Constant:
0:12 0 (const int)
0:12 0 (const int)
0:12 move second child to first child ( temp
floa
t)
0:12 move second child to first child ( temp
uin
t)
0:12 indirect index (
temp floa
t)
0:12 indirect index (
layout( row_major std430) buffer uin
t)
0:12 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint)
0:12 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint)
0:12 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data})
0:12 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data})
0:12 Constant:
0:12 Constant:
...
@@ -826,6 +839,7 @@ gl_FragCoord origin is upper left
...
@@ -826,6 +839,7 @@ gl_FragCoord origin is upper left
0:12 'byteAddrTemp' ( temp int)
0:12 'byteAddrTemp' ( temp int)
0:12 Constant:
0:12 Constant:
0:12 1 (const int)
0:12 1 (const int)
0:12 Convert float to uint ( temp uint)
0:12 direct index ( temp float)
0:12 direct index ( temp float)
0:? Sequence
0:? Sequence
0:12 move second child to first child ( temp int)
0:12 move second child to first child ( temp int)
...
@@ -870,8 +884,8 @@ gl_FragCoord origin is upper left
...
@@ -870,8 +884,8 @@ gl_FragCoord origin is upper left
0:12 3 (const int)
0:12 3 (const int)
0:12 Constant:
0:12 Constant:
0:12 1 (const int)
0:12 1 (const int)
0:12 move second child to first child ( temp
floa
t)
0:12 move second child to first child ( temp
uin
t)
0:12 indirect index (
temp floa
t)
0:12 indirect index (
layout( row_major std430) buffer uin
t)
0:12 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint)
0:12 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint)
0:12 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data})
0:12 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data})
0:12 Constant:
0:12 Constant:
...
@@ -880,6 +894,7 @@ gl_FragCoord origin is upper left
...
@@ -880,6 +894,7 @@ gl_FragCoord origin is upper left
0:12 'byteAddrTemp' ( temp int)
0:12 'byteAddrTemp' ( temp int)
0:12 Constant:
0:12 Constant:
0:12 2 (const int)
0:12 2 (const int)
0:12 Convert float to uint ( temp uint)
0:12 direct index ( temp float)
0:12 direct index ( temp float)
0:? Sequence
0:? Sequence
0:12 move second child to first child ( temp int)
0:12 move second child to first child ( temp int)
...
@@ -924,8 +939,8 @@ gl_FragCoord origin is upper left
...
@@ -924,8 +939,8 @@ gl_FragCoord origin is upper left
0:12 3 (const int)
0:12 3 (const int)
0:12 Constant:
0:12 Constant:
0:12 2 (const int)
0:12 2 (const int)
0:12 move second child to first child ( temp
floa
t)
0:12 move second child to first child ( temp
uin
t)
0:12 indirect index (
temp floa
t)
0:12 indirect index (
layout( row_major std430) buffer uin
t)
0:12 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint)
0:12 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint)
0:12 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data})
0:12 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data})
0:12 Constant:
0:12 Constant:
...
@@ -934,6 +949,7 @@ gl_FragCoord origin is upper left
...
@@ -934,6 +949,7 @@ gl_FragCoord origin is upper left
0:12 'byteAddrTemp' ( temp int)
0:12 'byteAddrTemp' ( temp int)
0:12 Constant:
0:12 Constant:
0:12 3 (const int)
0:12 3 (const int)
0:12 Convert float to uint ( temp uint)
0:12 direct index ( temp float)
0:12 direct index ( temp float)
0:? Sequence
0:? Sequence
0:12 move second child to first child ( temp int)
0:12 move second child to first child ( temp int)
...
@@ -1007,12 +1023,12 @@ gl_FragCoord origin is upper left
...
@@ -1007,12 +1023,12 @@ gl_FragCoord origin is upper left
// Module Version 10000
// Module Version 10000
// Generated by (magic number): 80002
// Generated by (magic number): 80002
// Id's are bound by 24
0
// Id's are bound by 24
8
Capability Shader
Capability Shader
1: ExtInstImport "GLSL.std.450"
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
MemoryModel Logical GLSL450
EntryPoint Fragment 4 "main" 2
33 236
EntryPoint Fragment 4 "main" 2
41 244
ExecutionMode 4 OriginUpperLeft
ExecutionMode 4 OriginUpperLeft
Source HLSL 500
Source HLSL 500
Name 4 "main"
Name 4 "main"
...
@@ -1023,23 +1039,23 @@ gl_FragCoord origin is upper left
...
@@ -1023,23 +1039,23 @@ gl_FragCoord origin is upper left
MemberName 16(sbuf) 0 "@data"
MemberName 16(sbuf) 0 "@data"
Name 18 "sbuf"
Name 18 "sbuf"
Name 22 "byteAddrTemp"
Name 22 "byteAddrTemp"
Name 35 "byteAddrTemp"
Name 34 "byteAddrTemp"
Name 39 "byteAddrTemp"
Name 38 "byteAddrTemp"
Name 70 "byteAddrTemp"
Name 71 "byteAddrTemp"
Name 74 "byteAddrTemp"
Name 75 "byteAddrTemp"
Name 129 "byteAddrTemp"
Name 133 "byteAddrTemp"
Name 133 "byteAddrTemp"
Name 231 "pos"
Name 137 "byteAddrTemp"
Name 233 "pos"
Name 239 "pos"
Name 236 "@entryPointOutput"
Name 241 "pos"
Name 237 "param"
Name 244 "@entryPointOutput"
Name 245 "param"
Decorate 15 ArrayStride 4
Decorate 15 ArrayStride 4
MemberDecorate 16(sbuf) 0 Offset 0
MemberDecorate 16(sbuf) 0 Offset 0
Decorate 16(sbuf) BufferBlock
Decorate 16(sbuf) BufferBlock
Decorate 18(sbuf) DescriptorSet 0
Decorate 18(sbuf) DescriptorSet 0
Decorate 2
33
(pos) Flat
Decorate 2
41
(pos) Flat
Decorate 2
33
(pos) Location 0
Decorate 2
41
(pos) Location 0
Decorate 2
36
(@entryPointOutput) Location 0
Decorate 2
44
(@entryPointOutput) Location 0
2: TypeVoid
2: TypeVoid
3: TypeFunction 2
3: TypeFunction 2
6: TypeInt 32 0
6: TypeInt 32 0
...
@@ -1056,29 +1072,29 @@ gl_FragCoord origin is upper left
...
@@ -1056,29 +1072,29 @@ gl_FragCoord origin is upper left
24: 19(int) Constant 2
24: 19(int) Constant 2
26: 19(int) Constant 0
26: 19(int) Constant 0
30: TypePointer Uniform 6(int)
30: TypePointer Uniform 6(int)
4
6
: 19(int) Constant 1
4
5
: 19(int) Constant 1
50
: TypeVector 6(int) 2
49
: TypeVector 6(int) 2
5
2
: 6(int) Constant 0
5
1
: 6(int) Constant 0
67: 6(int) Constant 1
67: 6(int) Constant 1
8
8
: TypeVector 6(int) 3
8
9
: TypeVector 6(int) 3
12
6
: 6(int) Constant 2
12
9
: 6(int) Constant 2
1
48
: 19(int) Constant 3
1
52
: 19(int) Constant 3
15
2
: TypeVector 6(int) 4
15
6
: TypeVector 6(int) 4
22
0
: 6(int) Constant 3
22
7
: 6(int) Constant 3
2
32
: TypePointer Input 6(int)
2
40
: TypePointer Input 6(int)
2
33(pos): 232
(ptr) Variable Input
2
41(pos): 240
(ptr) Variable Input
2
35
: TypePointer Output 9(fvec4)
2
43
: TypePointer Output 9(fvec4)
2
36(@entryPointOutput): 235
(ptr) Variable Output
2
44(@entryPointOutput): 243
(ptr) Variable Output
4(main): 2 Function None 3
4(main): 2 Function None 3
5: Label
5: Label
23
1
(pos): 7(ptr) Variable Function
23
9
(pos): 7(ptr) Variable Function
2
37
(param): 7(ptr) Variable Function
2
45
(param): 7(ptr) Variable Function
2
34: 6(int) Load 233
(pos)
2
42: 6(int) Load 241
(pos)
Store 23
1(pos) 234
Store 23
9(pos) 242
2
38: 6(int) Load 231
(pos)
2
46: 6(int) Load 239
(pos)
Store 2
37(param) 238
Store 2
45(param) 246
2
39: 9(fvec4) FunctionCall 12(@main(u1;) 237
(param)
2
47: 9(fvec4) FunctionCall 12(@main(u1;) 245
(param)
Store 2
36(@entryPointOutput) 239
Store 2
44(@entryPointOutput) 247
Return
Return
FunctionEnd
FunctionEnd
12(@main(u1;): 9(fvec4) Function None 10
12(@main(u1;): 9(fvec4) Function None 10
...
@@ -1086,12 +1102,12 @@ gl_FragCoord origin is upper left
...
@@ -1086,12 +1102,12 @@ gl_FragCoord origin is upper left
13: Label
13: Label
14(size): 7(ptr) Variable Function
14(size): 7(ptr) Variable Function
22(byteAddrTemp): 21(ptr) Variable Function
22(byteAddrTemp): 21(ptr) Variable Function
35(byteAddrTemp): 21(ptr) Variable Function
34(byteAddrTemp): 21(ptr) Variable Function
39(byteAddrTemp): 21(ptr) Variable Function
38(byteAddrTemp): 21(ptr) Variable Function
70(byteAddrTemp): 21(ptr) Variable Function
71(byteAddrTemp): 21(ptr) Variable Function
74(byteAddrTemp): 21(ptr) Variable Function
75(byteAddrTemp): 21(ptr) Variable Function
129(byteAddrTemp): 21(ptr) Variable Function
133(byteAddrTemp): 21(ptr) Variable Function
133(byteAddrTemp): 21(ptr) Variable Function
137(byteAddrTemp): 21(ptr) Variable Function
20: 19(int) ArrayLength 18(sbuf) 0
20: 19(int) ArrayLength 18(sbuf) 0
Store 14(size) 20
Store 14(size) 20
23: 6(int) Load 11(pos)
23: 6(int) Load 11(pos)
...
@@ -1102,208 +1118,216 @@ gl_FragCoord origin is upper left
...
@@ -1102,208 +1118,216 @@ gl_FragCoord origin is upper left
29: 19(int) ShiftRightLogical 28 24
29: 19(int) ShiftRightLogical 28 24
31: 30(ptr) AccessChain 18(sbuf) 26 29
31: 30(ptr) AccessChain 18(sbuf) 26 29
32: 6(int) Load 31
32: 6(int) Load 31
33:
8(float) ConvertUToF 32
33:
30(ptr) AccessChain 18(sbuf) 26 27
34: 30(ptr) AccessChain 18(sbuf) 26 27
Store 33 32
Store 34 33
35: 6(int) Load 11(pos)
36:
6(int) Load 11(pos)
36:
19(int) ShiftRightLogical 35 24
37: 19(int) ShiftRightLogical 36 24
Store 34(byteAddrTemp) 36
Store 35(byteAddrTemp) 37
37: 19(int) Load 34(byteAddrTemp)
3
8: 19(int) Load 35(byteAddrTemp
)
3
9: 6(int) Load 11(pos
)
40:
6(int) Load 11(pos)
40:
19(int) ShiftRightLogical 39 24
41: 19(int) ShiftRightLogical 40 24
Store 38(byteAddrTemp) 40
Store 39(byteAddrTemp) 41
41: 19(int) Load 38(byteAddrTemp)
42:
19(int) Load 39(byteAddrTemp)
42:
30(ptr) AccessChain 18(sbuf) 26 41
43:
30(ptr) AccessChain 18(sbuf) 26
42
43:
6(int) Load
42
44:
6(int) Load 43
44:
19(int) Load 38(byteAddrTemp)
4
5: 19(int) Load 39(byteAddrTemp)
4
6: 19(int) IAdd 44 45
47:
19(int) IAdd 45
46
47:
30(ptr) AccessChain 18(sbuf) 26
46
48:
30(ptr) AccessChain 18(sbuf) 26
47
48:
6(int) Load
47
49: 6(int) Load
48
50: 49(ivec2) CompositeConstruct 43
48
5
1: 50(ivec2) CompositeConstruct 44 49
5
2: 6(int) CompositeExtract 50 0
53: 6(int) Co
mpositeExtract 51 0
53: 6(int) Co
nvertFToU 52
54: 30(ptr) AccessChain 18(sbuf) 26 3
8
54: 30(ptr) AccessChain 18(sbuf) 26 3
7
Store 54 53
Store 54 53
55: 19(int) Load 3
5
(byteAddrTemp)
55: 19(int) Load 3
4
(byteAddrTemp)
56: 19(int) IAdd 55 4
6
56: 19(int) IAdd 55 4
5
57: 6(int) Load 11(pos)
57: 6(int) Load 11(pos)
58: 19(int) ShiftRightLogical 57 24
58: 19(int) ShiftRightLogical 57 24
Store 3
9
(byteAddrTemp) 58
Store 3
8
(byteAddrTemp) 58
59: 19(int) Load 3
9
(byteAddrTemp)
59: 19(int) Load 3
8
(byteAddrTemp)
60: 30(ptr) AccessChain 18(sbuf) 26 59
60: 30(ptr) AccessChain 18(sbuf) 26 59
61: 6(int) Load 60
61: 6(int) Load 60
62: 19(int) Load 3
9
(byteAddrTemp)
62: 19(int) Load 3
8
(byteAddrTemp)
63: 19(int) IAdd 62 4
6
63: 19(int) IAdd 62 4
5
64: 30(ptr) AccessChain 18(sbuf) 26 63
64: 30(ptr) AccessChain 18(sbuf) 26 63
65: 6(int) Load 64
65: 6(int) Load 64
66:
50
(ivec2) CompositeConstruct 61 65
66:
49
(ivec2) CompositeConstruct 61 65
68: 6(int) CompositeExtract 66 1
68: 6(int) CompositeExtract 66 1
69:
30(ptr) AccessChain 18(sbuf) 26 56
69:
6(int) ConvertFToU 68
Store 69 68
70: 30(ptr) AccessChain 18(sbuf) 26 56
71: 6(int) Load 11(pos)
Store 70 69
72:
19(int) ShiftRightLogical 71 24
72:
6(int) Load 11(pos)
Store 70(byteAddrTemp) 72
73: 19(int) ShiftRightLogical 72 24
73: 19(int) Load 70(byteAddrTemp)
Store 71(byteAddrTemp) 73
7
5: 6(int) Load 11(pos
)
7
4: 19(int) Load 71(byteAddrTemp
)
76:
19(int) ShiftRightLogical 75 24
76:
6(int) Load 11(pos)
Store 74(byteAddrTemp) 76
77: 19(int) ShiftRightLogical 76 24
77: 19(int) Load 74(byteAddrTemp)
Store 75(byteAddrTemp) 77
78:
30(ptr) AccessChain 18(sbuf) 26 77
78:
19(int) Load 75(byteAddrTemp)
79:
6(int) Load
78
79:
30(ptr) AccessChain 18(sbuf) 26
78
80:
19(int) Load 74(byteAddrTemp)
80:
6(int) Load 79
81: 19(int)
IAdd 80 46
81: 19(int)
Load 75(byteAddrTemp)
82:
30(ptr) AccessChain 18(sbuf) 26 81
82:
19(int) IAdd 81 45
83:
6(int) Load
82
83:
30(ptr) AccessChain 18(sbuf) 26
82
84:
19(int) Load 74(byteAddrTemp)
84:
6(int) Load 83
85: 19(int)
IAdd 84 24
85: 19(int)
Load 75(byteAddrTemp)
86:
30(ptr) AccessChain 18(sbuf) 26 85
86:
19(int) IAdd 85 24
87:
6(int) Load
86
87:
30(ptr) AccessChain 18(sbuf) 26
86
8
9: 88(ivec3) CompositeConstruct 79 83
87
8
8: 6(int) Load
87
90:
6(int) CompositeExtract 89 0
90:
89(ivec3) CompositeConstruct 80 84 88
91:
30(ptr) AccessChain 18(sbuf) 26 73
91:
6(int) CompositeExtract 90 0
Store 91 90
92: 6(int) ConvertFToU 91
9
2: 19(int) Load 70(byteAddrTemp)
9
3: 30(ptr) AccessChain 18(sbuf) 26 74
93: 19(int) IAdd 92 46
Store 93 92
94:
6(int) Load 11(pos
)
94:
19(int) Load 71(byteAddrTemp
)
95: 19(int)
ShiftRightLogical 94 24
95: 19(int)
IAdd 94 45
Store 74(byteAddrTemp) 95
96: 6(int) Load 11(pos)
9
6: 19(int) Load 74(byteAddrTemp)
9
7: 19(int) ShiftRightLogical 96 24
97: 30(ptr) AccessChain 18(sbuf) 26 96
Store 75(byteAddrTemp) 97
98:
6(int) Load 97
98:
19(int) Load 75(byteAddrTemp)
99:
19(int) Load 74(byteAddrTemp)
99:
30(ptr) AccessChain 18(sbuf) 26 98
100:
19(int) IAdd 99 46
100:
6(int) Load 99
101:
30(ptr) AccessChain 18(sbuf) 26 100
101:
19(int) Load 75(byteAddrTemp)
102:
6(int) Load 101
102:
19(int) IAdd 101 45
103:
19(int) Load 74(byteAddrTemp)
103:
30(ptr) AccessChain 18(sbuf) 26 102
104:
19(int) IAdd 103 24
104:
6(int) Load 103
105:
30(ptr) AccessChain 18(sbuf) 26 104
105:
19(int) Load 75(byteAddrTemp)
106:
6(int) Load 105
106:
19(int) IAdd 105 24
107:
88(ivec3) CompositeConstruct 98 102
106
107:
30(ptr) AccessChain 18(sbuf) 26
106
108: 6(int)
CompositeExtract 107 1
108: 6(int)
Load 107
109:
30(ptr) AccessChain 18(sbuf) 26 93
109:
89(ivec3) CompositeConstruct 100 104 108
Store 109 108
110: 6(int) CompositeExtract 109 1
11
0: 19(int) Load 70(byteAddrTemp)
11
1: 6(int) ConvertFToU 110
11
1: 19(int) IAdd 110 24
11
2: 30(ptr) AccessChain 18(sbuf) 26 95
112: 6(int) Load 11(pos)
Store 112 111
113: 19(int)
ShiftRightLogical 112 24
113: 19(int)
Load 71(byteAddrTemp)
Store 74(byteAddrTemp) 113
114: 19(int) IAdd 113 24
11
4: 19(int) Load 74(byteAddrTemp
)
11
5: 6(int) Load 11(pos
)
11
5: 30(ptr) AccessChain 18(sbuf) 26 11
4
11
6: 19(int) ShiftRightLogical 115 2
4
116: 6(int) Load 115
Store 75(byteAddrTemp) 116
117: 19(int) Load 7
4
(byteAddrTemp)
117: 19(int) Load 7
5
(byteAddrTemp)
118:
19(int) IAdd 117 46
118:
30(ptr) AccessChain 18(sbuf) 26 117
119:
30(ptr) AccessChain 18(sbuf) 26
118
119:
6(int) Load
118
120:
6(int) Load 119
120:
19(int) Load 75(byteAddrTemp)
121: 19(int)
Load 74(byteAddrTemp)
121: 19(int)
IAdd 120 45
122:
19(int) IAdd 121 24
122:
30(ptr) AccessChain 18(sbuf) 26 121
123:
30(ptr) AccessChain 18(sbuf) 26
122
123:
6(int) Load
122
124:
6(int) Load 123
124:
19(int) Load 75(byteAddrTemp)
125:
88(ivec3) CompositeConstruct 116 120 1
24
125:
19(int) IAdd 124
24
12
7: 6(int) CompositeExtract 125 2
12
6: 30(ptr) AccessChain 18(sbuf) 26 125
12
8: 30(ptr) AccessChain 18(sbuf) 26 111
12
7: 6(int) Load 126
Store 128
127
128: 89(ivec3) CompositeConstruct 119 123
127
130: 6(int)
Load 11(pos)
130: 6(int)
CompositeExtract 128 2
131:
19(int) ShiftRightLogical 130 24
131:
6(int) ConvertFToU 130
Store 129(byteAddrTemp) 131
132: 30(ptr) AccessChain 18(sbuf) 26 114
132: 19(int) Load 129(byteAddrTemp)
Store 132 131
134: 6(int) Load 11(pos)
134: 6(int) Load 11(pos)
135: 19(int) ShiftRightLogical 134 24
135: 19(int) ShiftRightLogical 134 24
Store 133(byteAddrTemp) 135
Store 133(byteAddrTemp) 135
136: 19(int) Load 133(byteAddrTemp)
136: 19(int) Load 133(byteAddrTemp)
13
7: 30(ptr) AccessChain 18(sbuf) 26 136
13
8: 6(int) Load 11(pos)
13
8: 6(int) Load 137
13
9: 19(int) ShiftRightLogical 138 24
139: 19(int) Load 133(byteAddrTemp)
Store 137(byteAddrTemp) 139
140: 19(int)
IAdd 139 46
140: 19(int)
Load 137(byteAddrTemp)
141: 30(ptr) AccessChain 18(sbuf) 26 140
141: 30(ptr) AccessChain 18(sbuf) 26 140
142: 6(int) Load 141
142: 6(int) Load 141
143: 19(int) Load 13
3
(byteAddrTemp)
143: 19(int) Load 13
7
(byteAddrTemp)
144: 19(int) IAdd 143
24
144: 19(int) IAdd 143
45
145: 30(ptr) AccessChain 18(sbuf) 26 144
145: 30(ptr) AccessChain 18(sbuf) 26 144
146: 6(int) Load 145
146: 6(int) Load 145
147: 19(int) Load 133(byteAddrTemp)
147: 19(int) Load 137(byteAddrTemp)
149: 19(int) IAdd 147 148
148: 19(int) IAdd 147 24
150: 30(ptr) AccessChain 18(sbuf) 26 149
149: 30(ptr) AccessChain 18(sbuf) 26 148
151: 6(int) Load 150
150: 6(int) Load 149
153: 152(ivec4) CompositeConstruct 138 142 146 151
151: 19(int) Load 137(byteAddrTemp)
154: 6(int) CompositeExtract 153 0
153: 19(int) IAdd 151 152
155: 30(ptr) AccessChain 18(sbuf) 26 132
154: 30(ptr) AccessChain 18(sbuf) 26 153
Store 155 154
155: 6(int) Load 154
156: 19(int) Load 129(byteAddrTemp)
157: 156(ivec4) CompositeConstruct 142 146 150 155
157: 19(int) IAdd 156 46
158: 6(int) CompositeExtract 157 0
158: 6(int) Load 11(pos)
159: 6(int) ConvertFToU 158
159: 19(int) ShiftRightLogical 158 24
160: 30(ptr) AccessChain 18(sbuf) 26 136
Store 133(byteAddrTemp) 159
Store 160 159
160: 19(int) Load 133(byteAddrTemp)
161: 19(int) Load 133(byteAddrTemp)
161: 30(ptr) AccessChain 18(sbuf) 26 160
162: 19(int) IAdd 161 45
162: 6(int) Load 161
163: 6(int) Load 11(pos)
163: 19(int) Load 133(byteAddrTemp)
164: 19(int) ShiftRightLogical 163 24
164: 19(int) IAdd 163 46
Store 137(byteAddrTemp) 164
165: 30(ptr) AccessChain 18(sbuf) 26 164
165: 19(int) Load 137(byteAddrTemp)
166: 6(int) Load 165
166: 30(ptr) AccessChain 18(sbuf) 26 165
167: 19(int) Load 133(byteAddrTemp)
167: 6(int) Load 166
168: 19(int) IAdd 167 24
168: 19(int) Load 137(byteAddrTemp)
169: 30(ptr) AccessChain 18(sbuf) 26 168
169: 19(int) IAdd 168 45
170: 6(int) Load 169
170: 30(ptr) AccessChain 18(sbuf) 26 169
171: 19(int) Load 133(byteAddrTemp)
171: 6(int) Load 170
172: 19(int) IAdd 171 148
172: 19(int) Load 137(byteAddrTemp)
173: 30(ptr) AccessChain 18(sbuf) 26 172
173: 19(int) IAdd 172 24
174: 6(int) Load 173
174: 30(ptr) AccessChain 18(sbuf) 26 173
175: 152(ivec4) CompositeConstruct 162 166 170 174
175: 6(int) Load 174
176: 6(int) CompositeExtract 175 1
176: 19(int) Load 137(byteAddrTemp)
177: 30(ptr) AccessChain 18(sbuf) 26 157
177: 19(int) IAdd 176 152
Store 177 176
178: 30(ptr) AccessChain 18(sbuf) 26 177
178: 19(int) Load 129(byteAddrTemp)
179: 6(int) Load 178
179: 19(int) IAdd 178 24
180: 156(ivec4) CompositeConstruct 167 171 175 179
180: 6(int) Load 11(pos)
181: 6(int) CompositeExtract 180 1
181: 19(int) ShiftRightLogical 180 24
182: 6(int) ConvertFToU 181
Store 133(byteAddrTemp) 181
183: 30(ptr) AccessChain 18(sbuf) 26 162
182: 19(int) Load 133(byteAddrTemp)
Store 183 182
183: 30(ptr) AccessChain 18(sbuf) 26 182
184: 19(int) Load 133(byteAddrTemp)
184: 6(int) Load 183
185: 19(int) IAdd 184 24
185: 19(int) Load 133(byteAddrTemp)
186: 6(int) Load 11(pos)
186: 19(int) IAdd 185 46
187: 19(int) ShiftRightLogical 186 24
187: 30(ptr) AccessChain 18(sbuf) 26 186
Store 137(byteAddrTemp) 187
188: 6(int) Load 187
188: 19(int) Load 137(byteAddrTemp)
189: 19(int) Load 133(byteAddrTemp)
189: 30(ptr) AccessChain 18(sbuf) 26 188
190: 19(int) IAdd 189 24
190: 6(int) Load 189
191: 30(ptr) AccessChain 18(sbuf) 26 190
191: 19(int) Load 137(byteAddrTemp)
192: 6(int) Load 191
192: 19(int) IAdd 191 45
193: 19(int) Load 133(byteAddrTemp)
193: 30(ptr) AccessChain 18(sbuf) 26 192
194: 19(int) IAdd 193 148
194: 6(int) Load 193
195: 30(ptr) AccessChain 18(sbuf) 26 194
195: 19(int) Load 137(byteAddrTemp)
196: 6(int) Load 195
196: 19(int) IAdd 195 24
197: 152(ivec4) CompositeConstruct 184 188 192 196
197: 30(ptr) AccessChain 18(sbuf) 26 196
198: 6(int) CompositeExtract 197 2
198: 6(int) Load 197
199: 30(ptr) AccessChain 18(sbuf) 26 179
199: 19(int) Load 137(byteAddrTemp)
Store 199 198
200: 19(int) IAdd 199 152
200: 19(int) Load 129(byteAddrTemp)
201: 30(ptr) AccessChain 18(sbuf) 26 200
201: 19(int) IAdd 200 148
202: 6(int) Load 201
202: 6(int) Load 11(pos)
203: 156(ivec4) CompositeConstruct 190 194 198 202
203: 19(int) ShiftRightLogical 202 24
204: 6(int) CompositeExtract 203 2
Store 133(byteAddrTemp) 203
205: 6(int) ConvertFToU 204
204: 19(int) Load 133(byteAddrTemp)
206: 30(ptr) AccessChain 18(sbuf) 26 185
205: 30(ptr) AccessChain 18(sbuf) 26 204
Store 206 205
206: 6(int) Load 205
207: 19(int) Load 133(byteAddrTemp)
207: 19(int) Load 133(byteAddrTemp)
208: 19(int) IAdd 207 46
208: 19(int) IAdd 207 152
209: 30(ptr) AccessChain 18(sbuf) 26 208
209: 6(int) Load 11(pos)
210: 6(int) Load 209
210: 19(int) ShiftRightLogical 209 24
211: 19(int) Load 133(byteAddrTemp)
Store 137(byteAddrTemp) 210
212: 19(int) IAdd 211 24
211: 19(int) Load 137(byteAddrTemp)
213: 30(ptr) AccessChain 18(sbuf) 26 212
212: 30(ptr) AccessChain 18(sbuf) 26 211
214: 6(int) Load 213
213: 6(int) Load 212
215: 19(int) Load 133(byteAddrTemp)
214: 19(int) Load 137(byteAddrTemp)
216: 19(int) IAdd 215 148
215: 19(int) IAdd 214 45
217: 30(ptr) AccessChain 18(sbuf) 26 216
216: 30(ptr) AccessChain 18(sbuf) 26 215
218: 6(int) Load 217
217: 6(int) Load 216
219: 152(ivec4) CompositeConstruct 206 210 214 218
218: 19(int) Load 137(byteAddrTemp)
221: 6(int) CompositeExtract 219 3
219: 19(int) IAdd 218 24
222: 30(ptr) AccessChain 18(sbuf) 26 201
220: 30(ptr) AccessChain 18(sbuf) 26 219
Store 222 221
221: 6(int) Load 220
223: 6(int) Load 11(pos)
222: 19(int) Load 137(byteAddrTemp)
224: 19(int) ShiftRightLogical 223 24
223: 19(int) IAdd 222 152
225: 30(ptr) AccessChain 18(sbuf) 26 224
224: 30(ptr) AccessChain 18(sbuf) 26 223
226: 6(int) Load 225
225: 6(int) Load 224
227: 8(float) ConvertUToF 226
226: 156(ivec4) CompositeConstruct 213 217 221 225
228: 9(fvec4) CompositeConstruct 227 227 227 227
228: 6(int) CompositeExtract 226 3
ReturnValue 228
229: 6(int) ConvertFToU 228
230: 30(ptr) AccessChain 18(sbuf) 26 208
Store 230 229
231: 6(int) Load 11(pos)
232: 19(int) ShiftRightLogical 231 24
233: 30(ptr) AccessChain 18(sbuf) 26 232
234: 6(int) Load 233
235: 8(float) ConvertUToF 234
236: 9(fvec4) CompositeConstruct 235 235 235 235
ReturnValue 236
FunctionEnd
FunctionEnd
Test/hlsl.store.rwbyteaddressbuffer.type.comp
0 → 100644
View file @
66b319d3
RWByteAddressBuffer buffer;
[numthreads(64, 1, 1)]
void main( uint3 dispatchThreadID : SV_DispatchThreadID)
{
if(dispatchThreadID.x == 0)
buffer.Store(0, 2);
}
\ No newline at end of file
gtests/Hlsl.FromFile.cpp
View file @
66b319d3
...
@@ -301,6 +301,7 @@ INSTANTIATE_TEST_CASE_P(
...
@@ -301,6 +301,7 @@ INSTANTIATE_TEST_CASE_P(
{
"hlsl.shapeConvRet.frag"
,
"main"
},
{
"hlsl.shapeConvRet.frag"
,
"main"
},
{
"hlsl.snorm.uav.comp"
,
"main"
},
{
"hlsl.snorm.uav.comp"
,
"main"
},
{
"hlsl.staticMemberFunction.frag"
,
"main"
},
{
"hlsl.staticMemberFunction.frag"
,
"main"
},
{
"hlsl.store.rwbyteaddressbuffer.type.comp"
,
"main"
},
{
"hlsl.stringtoken.frag"
,
"main"
},
{
"hlsl.stringtoken.frag"
,
"main"
},
{
"hlsl.string.frag"
,
"main"
},
{
"hlsl.string.frag"
,
"main"
},
{
"hlsl.struct.split-1.vert"
,
"main"
},
{
"hlsl.struct.split-1.vert"
,
"main"
},
...
...
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