mirror of
https://github.com/KhronosGroup/OpenCL-CTS.git
synced 2026-03-19 06:09:01 +00:00
Reformat SPIR-V assembly and fix validation errors (#472)
* Reformat SPIR-V assembly using spirv-dis Signed-off-by: Stuart Brady <stuart.brady@arm.com> * Fix duplicate non-aggregate type decls in SPIR-V as reported by spirv-val Signed-off-by: Stuart Brady <stuart.brady@arm.com> * Reposition OpExtensions correctly in SPIR-V as reported by spirv-val Signed-off-by: Stuart Brady <stuart.brady@arm.com> * Reposition OpVariables correctly in SPIR-V as reported by spirv-val Signed-off-by: Stuart Brady <stuart.brady@arm.com> * Add missing OpTypeImage access qualifiers in SPIR-V as reported by spirv-val Signed-off-by: Stuart Brady <stuart.brady@arm.com> * Remove same-width OpSConverts in SPIR-V as reported by spirv-val Signed-off-by: Stuart Brady <stuart.brady@arm.com> * Replace -ILPath with --spirv-binaries-path in README Signed-off-by: Stuart Brady <stuart.brady@arm.com>
This commit is contained in:
committed by
Kévin Petit
parent
60101c24cf
commit
2398587980
@@ -1,13 +1,13 @@
|
|||||||
test_conformance/spirv_new README
|
test_conformance/spirv_new README
|
||||||
==================================
|
==================================
|
||||||
|
|
||||||
The text versions of the spirv files are present in `conformance-tests/test_conformance/spriv_new/spirv_txt`.
|
The text versions of the spirv files are present in `conformance-tests/test_conformance/spriv_new/spirv_asm`.
|
||||||
These text files have been used to generate the binaries in `spirv_bin` using the assembler from `spirv-tools`.
|
These text files have been used to generate the binaries in `spirv_bin` using the assembler from `spirv-tools`.
|
||||||
|
|
||||||
The absolute path to `spirv_bin` needs to be passed after `-ILPath` token for the test to find the SPIRV binaries.
|
The absolute path to `spirv_bin` needs to be passed after `--spirv-binaries-path` token for the test to find the SPIRV binaries.
|
||||||
|
|
||||||
An example invocation looks like the following:
|
An example invocation looks like the following:
|
||||||
|
|
||||||
```
|
```
|
||||||
./test_conformance/spirv_new/test_conformance_spirv_new -ILPath /home/user/workspace/conformance-tests/test_conformance/spirv_new/spirv_bin/ [other options]
|
./test_conformance/spirv_new/test_conformance_spirv_new --spirv-binaries-path /home/user/workspace/conformance-tests/test_conformance/spirv_new/spirv_bin/ [other options]
|
||||||
```
|
```
|
||||||
|
|||||||
@@ -0,0 +1,37 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 18
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpMemoryModel Physical32 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "atomic_dec_global"
|
||||||
|
OpName %__spirv_GlobalInvocationId "__spirv_GlobalInvocationId"
|
||||||
|
OpName %val "val"
|
||||||
|
OpName %counter "counter"
|
||||||
|
OpDecorate %__spirv_GlobalInvocationId BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %__spirv_GlobalInvocationId Constant
|
||||||
|
OpDecorate %val FuncParamAttr NoCapture
|
||||||
|
OpDecorate %__spirv_GlobalInvocationId LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%v3uint = OpTypeVector %uint 3
|
||||||
|
%_ptr_UniformConstant_v3uint = OpTypePointer UniformConstant %v3uint
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%_ptr_CrossWorkgroup_uint = OpTypePointer CrossWorkgroup %uint
|
||||||
|
%10 = OpTypeFunction %void %_ptr_CrossWorkgroup_uint %_ptr_CrossWorkgroup_uint
|
||||||
|
%uint_1 = OpConstant %uint 1
|
||||||
|
%uint_512 = OpConstant %uint 512
|
||||||
|
%__spirv_GlobalInvocationId = OpVariable %_ptr_UniformConstant_v3uint UniformConstant
|
||||||
|
%1 = OpFunction %void None %10
|
||||||
|
%val = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%counter = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%13 = OpLabel
|
||||||
|
%14 = OpLoad %v3uint %__spirv_GlobalInvocationId Aligned 0
|
||||||
|
%15 = OpCompositeExtract %uint %14 0
|
||||||
|
%16 = OpAtomicIDecrement %uint %counter %uint_1 %uint_512
|
||||||
|
%17 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %val %15
|
||||||
|
OpStore %17 %16 Aligned 4
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,42 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 22
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int64
|
||||||
|
OpMemoryModel Physical64 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "atomic_dec_global"
|
||||||
|
OpName %__spirv_GlobalInvocationId "__spirv_GlobalInvocationId"
|
||||||
|
OpName %val "val"
|
||||||
|
OpName %counter "counter"
|
||||||
|
OpDecorate %__spirv_GlobalInvocationId BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %__spirv_GlobalInvocationId Constant
|
||||||
|
OpDecorate %val FuncParamAttr NoCapture
|
||||||
|
OpDecorate %__spirv_GlobalInvocationId LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%ulong = OpTypeInt 64 0
|
||||||
|
%v3ulong = OpTypeVector %ulong 3
|
||||||
|
%_ptr_UniformConstant_v3ulong = OpTypePointer UniformConstant %v3ulong
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%_ptr_CrossWorkgroup_uint = OpTypePointer CrossWorkgroup %uint
|
||||||
|
%11 = OpTypeFunction %void %_ptr_CrossWorkgroup_uint %_ptr_CrossWorkgroup_uint
|
||||||
|
%uint_1 = OpConstant %uint 1
|
||||||
|
%uint_512 = OpConstant %uint 512
|
||||||
|
%ulong_32 = OpConstant %ulong 32
|
||||||
|
%__spirv_GlobalInvocationId = OpVariable %_ptr_UniformConstant_v3ulong UniformConstant
|
||||||
|
%1 = OpFunction %void None %11
|
||||||
|
%val = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%counter = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%15 = OpLabel
|
||||||
|
%16 = OpLoad %v3ulong %__spirv_GlobalInvocationId Aligned 0
|
||||||
|
%17 = OpCompositeExtract %ulong %16 0
|
||||||
|
%18 = OpShiftLeftLogical %ulong %17 %ulong_32
|
||||||
|
%19 = OpShiftRightArithmetic %ulong %18 %ulong_32
|
||||||
|
%20 = OpAtomicIDecrement %uint %counter %uint_1 %uint_512
|
||||||
|
%21 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %val %19
|
||||||
|
OpStore %21 %20 Aligned 4
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,37 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 18
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpMemoryModel Physical32 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "atomic_inc_global"
|
||||||
|
OpName %__spirv_GlobalInvocationId "__spirv_GlobalInvocationId"
|
||||||
|
OpName %val "val"
|
||||||
|
OpName %counter "counter"
|
||||||
|
OpDecorate %__spirv_GlobalInvocationId BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %__spirv_GlobalInvocationId Constant
|
||||||
|
OpDecorate %val FuncParamAttr NoCapture
|
||||||
|
OpDecorate %__spirv_GlobalInvocationId LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%v3uint = OpTypeVector %uint 3
|
||||||
|
%_ptr_UniformConstant_v3uint = OpTypePointer UniformConstant %v3uint
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%_ptr_CrossWorkgroup_uint = OpTypePointer CrossWorkgroup %uint
|
||||||
|
%10 = OpTypeFunction %void %_ptr_CrossWorkgroup_uint %_ptr_CrossWorkgroup_uint
|
||||||
|
%uint_1 = OpConstant %uint 1
|
||||||
|
%uint_512 = OpConstant %uint 512
|
||||||
|
%__spirv_GlobalInvocationId = OpVariable %_ptr_UniformConstant_v3uint UniformConstant
|
||||||
|
%1 = OpFunction %void None %10
|
||||||
|
%val = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%counter = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%13 = OpLabel
|
||||||
|
%14 = OpLoad %v3uint %__spirv_GlobalInvocationId Aligned 0
|
||||||
|
%15 = OpCompositeExtract %uint %14 0
|
||||||
|
%16 = OpAtomicIIncrement %uint %counter %uint_1 %uint_512
|
||||||
|
%17 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %val %15
|
||||||
|
OpStore %17 %16 Aligned 4
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,42 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 22
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int64
|
||||||
|
OpMemoryModel Physical64 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "atomic_inc_global"
|
||||||
|
OpName %__spirv_GlobalInvocationId "__spirv_GlobalInvocationId"
|
||||||
|
OpName %val "val"
|
||||||
|
OpName %counter "counter"
|
||||||
|
OpDecorate %__spirv_GlobalInvocationId BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %__spirv_GlobalInvocationId Constant
|
||||||
|
OpDecorate %val FuncParamAttr NoCapture
|
||||||
|
OpDecorate %__spirv_GlobalInvocationId LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%ulong = OpTypeInt 64 0
|
||||||
|
%v3ulong = OpTypeVector %ulong 3
|
||||||
|
%_ptr_UniformConstant_v3ulong = OpTypePointer UniformConstant %v3ulong
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%_ptr_CrossWorkgroup_uint = OpTypePointer CrossWorkgroup %uint
|
||||||
|
%11 = OpTypeFunction %void %_ptr_CrossWorkgroup_uint %_ptr_CrossWorkgroup_uint
|
||||||
|
%uint_1 = OpConstant %uint 1
|
||||||
|
%uint_512 = OpConstant %uint 512
|
||||||
|
%ulong_32 = OpConstant %ulong 32
|
||||||
|
%__spirv_GlobalInvocationId = OpVariable %_ptr_UniformConstant_v3ulong UniformConstant
|
||||||
|
%1 = OpFunction %void None %11
|
||||||
|
%val = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%counter = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%15 = OpLabel
|
||||||
|
%16 = OpLoad %v3ulong %__spirv_GlobalInvocationId Aligned 0
|
||||||
|
%17 = OpCompositeExtract %ulong %16 0
|
||||||
|
%18 = OpShiftLeftLogical %ulong %17 %ulong_32
|
||||||
|
%19 = OpShiftRightArithmetic %ulong %18 %ulong_32
|
||||||
|
%20 = OpAtomicIIncrement %uint %counter %uint_1 %uint_512
|
||||||
|
%21 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %val %19
|
||||||
|
OpStore %21 %20 Aligned 4
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,57 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 32
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpMemoryModel Physical32 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "branch_conditional"
|
||||||
|
OpName %res "res"
|
||||||
|
OpName %lhs "lhs"
|
||||||
|
OpName %rhs "rhs"
|
||||||
|
OpDecorate %5 FuncParamAttr NoCapture
|
||||||
|
%5 = OpDecorationGroup
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
OpGroupDecorate %5 %res %lhs %rhs
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%v3uint = OpTypeVector %uint 3
|
||||||
|
%_ptr_UniformConstant_v3uint = OpTypePointer UniformConstant %v3uint
|
||||||
|
%bool = OpTypeBool
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%uint_0 = OpConstant %uint 0
|
||||||
|
%_ptr_CrossWorkgroup_uint = OpTypePointer CrossWorkgroup %uint
|
||||||
|
%_ptr_Function_uint = OpTypePointer Function %uint
|
||||||
|
%15 = OpTypeFunction %void %_ptr_CrossWorkgroup_uint %_ptr_CrossWorkgroup_uint %_ptr_CrossWorkgroup_uint
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3uint UniformConstant
|
||||||
|
%1 = OpFunction %void None %15
|
||||||
|
%res = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%lhs = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%rhs = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%16 = OpLabel
|
||||||
|
%17 = OpVariable %_ptr_Function_uint Function
|
||||||
|
%18 = OpLoad %v3uint %gl_GlobalInvocationID Aligned 0
|
||||||
|
%19 = OpCompositeExtract %uint %18 0
|
||||||
|
%20 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %lhs %19
|
||||||
|
%21 = OpLoad %uint %20 Aligned 4
|
||||||
|
%22 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %rhs %19
|
||||||
|
%23 = OpLoad %uint %22 Aligned 4
|
||||||
|
%24 = OpSLessThan %bool %21 %23
|
||||||
|
OpBranchConditional %24 %25 %26
|
||||||
|
%25 = OpLabel
|
||||||
|
%27 = OpISub %uint %23 %21
|
||||||
|
OpStore %17 %27
|
||||||
|
OpBranch %28
|
||||||
|
%26 = OpLabel
|
||||||
|
%29 = OpISub %uint %21 %23
|
||||||
|
OpStore %17 %29
|
||||||
|
OpBranch %28
|
||||||
|
%28 = OpLabel
|
||||||
|
%30 = OpLoad %uint %17
|
||||||
|
%31 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %res %19
|
||||||
|
OpStore %31 %30 Aligned 4
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,63 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 36
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int64
|
||||||
|
OpMemoryModel Physical64 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "branch_conditional"
|
||||||
|
OpName %res "res"
|
||||||
|
OpName %lhs "lhs"
|
||||||
|
OpName %rhs "rhs"
|
||||||
|
OpDecorate %5 FuncParamAttr NoCapture
|
||||||
|
%5 = OpDecorationGroup
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
OpGroupDecorate %5 %res %lhs %rhs
|
||||||
|
%ulong = OpTypeInt 64 0
|
||||||
|
%v3ulong = OpTypeVector %ulong 3
|
||||||
|
%_ptr_UniformConstant_v3ulong = OpTypePointer UniformConstant %v3ulong
|
||||||
|
%bool = OpTypeBool
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%ulong_32 = OpConstant %ulong 32
|
||||||
|
%uint_0 = OpConstant %uint 0
|
||||||
|
%_ptr_CrossWorkgroup_uint = OpTypePointer CrossWorkgroup %uint
|
||||||
|
%_ptr_Function_uint = OpTypePointer Function %uint
|
||||||
|
%17 = OpTypeFunction %void %_ptr_CrossWorkgroup_uint %_ptr_CrossWorkgroup_uint %_ptr_CrossWorkgroup_uint
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3ulong UniformConstant
|
||||||
|
%1 = OpFunction %void None %17
|
||||||
|
%res = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%lhs = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%rhs = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%18 = OpLabel
|
||||||
|
%19 = OpVariable %_ptr_Function_uint Function
|
||||||
|
%20 = OpLoad %v3ulong %gl_GlobalInvocationID Aligned 0
|
||||||
|
%21 = OpCompositeExtract %ulong %20 0
|
||||||
|
%22 = OpShiftLeftLogical %ulong %21 %ulong_32
|
||||||
|
%23 = OpShiftRightArithmetic %ulong %22 %ulong_32
|
||||||
|
%24 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %lhs %23
|
||||||
|
%25 = OpLoad %uint %24 Aligned 4
|
||||||
|
%26 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %rhs %23
|
||||||
|
%27 = OpLoad %uint %26 Aligned 4
|
||||||
|
OpStore %19 %uint_0
|
||||||
|
%28 = OpSLessThan %bool %25 %27
|
||||||
|
OpBranchConditional %28 %29 %30
|
||||||
|
%29 = OpLabel
|
||||||
|
%31 = OpISub %uint %27 %25
|
||||||
|
OpStore %19 %31
|
||||||
|
OpBranch %32
|
||||||
|
%30 = OpLabel
|
||||||
|
%33 = OpISub %uint %25 %27
|
||||||
|
OpStore %19 %33
|
||||||
|
OpBranch %32
|
||||||
|
%32 = OpLabel
|
||||||
|
%34 = OpLoad %uint %19
|
||||||
|
%35 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %res %23
|
||||||
|
OpStore %35 %34 Aligned 4
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,57 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 32
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpMemoryModel Physical32 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "branch_conditional_weighted"
|
||||||
|
OpName %res "res"
|
||||||
|
OpName %lhs "lhs"
|
||||||
|
OpName %rhs "rhs"
|
||||||
|
OpDecorate %5 FuncParamAttr NoCapture
|
||||||
|
%5 = OpDecorationGroup
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
OpGroupDecorate %5 %res %lhs %rhs
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%v3uint = OpTypeVector %uint 3
|
||||||
|
%_ptr_UniformConstant_v3uint = OpTypePointer UniformConstant %v3uint
|
||||||
|
%bool = OpTypeBool
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%uint_0 = OpConstant %uint 0
|
||||||
|
%_ptr_CrossWorkgroup_uint = OpTypePointer CrossWorkgroup %uint
|
||||||
|
%_ptr_Function_uint = OpTypePointer Function %uint
|
||||||
|
%15 = OpTypeFunction %void %_ptr_CrossWorkgroup_uint %_ptr_CrossWorkgroup_uint %_ptr_CrossWorkgroup_uint
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3uint UniformConstant
|
||||||
|
%1 = OpFunction %void None %15
|
||||||
|
%res = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%lhs = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%rhs = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%16 = OpLabel
|
||||||
|
%17 = OpVariable %_ptr_Function_uint Function
|
||||||
|
%18 = OpLoad %v3uint %gl_GlobalInvocationID Aligned 0
|
||||||
|
%19 = OpCompositeExtract %uint %18 0
|
||||||
|
%20 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %lhs %19
|
||||||
|
%21 = OpLoad %uint %20 Aligned 4
|
||||||
|
%22 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %rhs %19
|
||||||
|
%23 = OpLoad %uint %22 Aligned 4
|
||||||
|
%24 = OpSLessThan %bool %21 %23
|
||||||
|
OpBranchConditional %24 %25 %26 4 6
|
||||||
|
%25 = OpLabel
|
||||||
|
%27 = OpISub %uint %23 %21
|
||||||
|
OpStore %17 %27
|
||||||
|
OpBranch %28
|
||||||
|
%26 = OpLabel
|
||||||
|
%29 = OpISub %uint %21 %23
|
||||||
|
OpStore %17 %29
|
||||||
|
OpBranch %28
|
||||||
|
%28 = OpLabel
|
||||||
|
%30 = OpLoad %uint %17
|
||||||
|
%31 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %res %19
|
||||||
|
OpStore %31 %30 Aligned 4
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,63 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 36
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int64
|
||||||
|
OpMemoryModel Physical64 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "branch_conditional_weighted"
|
||||||
|
OpName %res "res"
|
||||||
|
OpName %lhs "lhs"
|
||||||
|
OpName %rhs "rhs"
|
||||||
|
OpDecorate %5 FuncParamAttr NoCapture
|
||||||
|
%5 = OpDecorationGroup
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
OpGroupDecorate %5 %res %lhs %rhs
|
||||||
|
%ulong = OpTypeInt 64 0
|
||||||
|
%v3ulong = OpTypeVector %ulong 3
|
||||||
|
%_ptr_UniformConstant_v3ulong = OpTypePointer UniformConstant %v3ulong
|
||||||
|
%bool = OpTypeBool
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%ulong_32 = OpConstant %ulong 32
|
||||||
|
%uint_0 = OpConstant %uint 0
|
||||||
|
%_ptr_CrossWorkgroup_uint = OpTypePointer CrossWorkgroup %uint
|
||||||
|
%_ptr_Function_uint = OpTypePointer Function %uint
|
||||||
|
%17 = OpTypeFunction %void %_ptr_CrossWorkgroup_uint %_ptr_CrossWorkgroup_uint %_ptr_CrossWorkgroup_uint
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3ulong UniformConstant
|
||||||
|
%1 = OpFunction %void None %17
|
||||||
|
%res = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%lhs = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%rhs = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%18 = OpLabel
|
||||||
|
%19 = OpVariable %_ptr_Function_uint Function
|
||||||
|
%20 = OpLoad %v3ulong %gl_GlobalInvocationID Aligned 0
|
||||||
|
%21 = OpCompositeExtract %ulong %20 0
|
||||||
|
%22 = OpShiftLeftLogical %ulong %21 %ulong_32
|
||||||
|
%23 = OpShiftRightArithmetic %ulong %22 %ulong_32
|
||||||
|
%24 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %lhs %23
|
||||||
|
%25 = OpLoad %uint %24 Aligned 4
|
||||||
|
%26 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %rhs %23
|
||||||
|
%27 = OpLoad %uint %26 Aligned 4
|
||||||
|
OpStore %19 %uint_0
|
||||||
|
%28 = OpSLessThan %bool %25 %27
|
||||||
|
OpBranchConditional %28 %29 %30 4 6
|
||||||
|
%29 = OpLabel
|
||||||
|
%31 = OpISub %uint %27 %25
|
||||||
|
OpStore %19 %31
|
||||||
|
OpBranch %32
|
||||||
|
%30 = OpLabel
|
||||||
|
%33 = OpISub %uint %25 %27
|
||||||
|
OpStore %19 %33
|
||||||
|
OpBranch %32
|
||||||
|
%32 = OpLabel
|
||||||
|
%34 = OpLoad %uint %19
|
||||||
|
%35 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %res %23
|
||||||
|
OpStore %35 %34 Aligned 4
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
36
test_conformance/spirv_new/spirv_asm/branch_simple.spvasm32
Normal file
36
test_conformance/spirv_new/spirv_asm/branch_simple.spvasm32
Normal file
@@ -0,0 +1,36 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 18
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpMemoryModel Physical32 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "branch_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%v3uint = OpTypeVector %uint 3
|
||||||
|
%_ptr_UniformConstant_v3uint = OpTypePointer UniformConstant %v3uint
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%_ptr_CrossWorkgroup_uint = OpTypePointer CrossWorkgroup %uint
|
||||||
|
%9 = OpTypeFunction %void %_ptr_CrossWorkgroup_uint %_ptr_CrossWorkgroup_uint
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3uint UniformConstant
|
||||||
|
%1 = OpFunction %void None %9
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%10 = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%11 = OpLabel
|
||||||
|
%12 = OpLoad %v3uint %gl_GlobalInvocationID Aligned 0
|
||||||
|
%13 = OpCompositeExtract %uint %12 0
|
||||||
|
%14 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %in %13
|
||||||
|
%15 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %10 %13
|
||||||
|
%16 = OpLoad %uint %14
|
||||||
|
OpBranch %17
|
||||||
|
%17 = OpLabel
|
||||||
|
OpStore %15 %16
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
42
test_conformance/spirv_new/spirv_asm/branch_simple.spvasm64
Normal file
42
test_conformance/spirv_new/spirv_asm/branch_simple.spvasm64
Normal file
@@ -0,0 +1,42 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 22
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int64
|
||||||
|
OpMemoryModel Physical64 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "branch_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpName %out "out"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%ulong = OpTypeInt 64 0
|
||||||
|
%v3ulong = OpTypeVector %ulong 3
|
||||||
|
%_ptr_UniformConstant_v3ulong = OpTypePointer UniformConstant %v3ulong
|
||||||
|
%ulong_32 = OpConstant %ulong 32
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%_ptr_CrossWorkgroup_uint = OpTypePointer CrossWorkgroup %uint
|
||||||
|
%12 = OpTypeFunction %void %_ptr_CrossWorkgroup_uint %_ptr_CrossWorkgroup_uint
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3ulong UniformConstant
|
||||||
|
%1 = OpFunction %void None %12
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%out = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%13 = OpLabel
|
||||||
|
%14 = OpLoad %v3ulong %gl_GlobalInvocationID Aligned 0
|
||||||
|
%15 = OpCompositeExtract %ulong %14 0
|
||||||
|
%16 = OpShiftLeftLogical %ulong %15 %ulong_32
|
||||||
|
%17 = OpShiftRightArithmetic %ulong %16 %ulong_32
|
||||||
|
%18 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %in %17
|
||||||
|
%19 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %out %17
|
||||||
|
OpBranch %20
|
||||||
|
%20 = OpLabel
|
||||||
|
%21 = OpLoad %uint %18
|
||||||
|
OpStore %19 %21
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,37 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 20
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpMemoryModel Physical32 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "composite_construct_int4"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%v3uint = OpTypeVector %uint 3
|
||||||
|
%_ptr_UniformConstant_v3uint = OpTypePointer UniformConstant %v3uint
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%v4uint = OpTypeVector %uint 4
|
||||||
|
%_ptr_CrossWorkgroup_v4uint = OpTypePointer CrossWorkgroup %v4uint
|
||||||
|
%10 = OpTypeFunction %void %_ptr_CrossWorkgroup_v4uint
|
||||||
|
%uint_123 = OpConstant %uint 123
|
||||||
|
%uint_122 = OpConstant %uint 122
|
||||||
|
%uint_121 = OpConstant %uint 121
|
||||||
|
%uint_119 = OpConstant %uint 119
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3uint UniformConstant
|
||||||
|
%1 = OpFunction %void None %10
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_v4uint
|
||||||
|
%15 = OpLabel
|
||||||
|
%16 = OpLoad %v3uint %gl_GlobalInvocationID Aligned 0
|
||||||
|
%17 = OpCompositeExtract %uint %16 0
|
||||||
|
%18 = OpCompositeConstruct %v4uint %uint_123 %uint_122 %uint_121 %uint_119
|
||||||
|
%19 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_v4uint %in %17
|
||||||
|
OpStore %19 %18 Aligned 16
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,42 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 24
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int64
|
||||||
|
OpMemoryModel Physical64 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "composite_construct_int4"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%ulong = OpTypeInt 64 0
|
||||||
|
%v3ulong = OpTypeVector %ulong 3
|
||||||
|
%_ptr_UniformConstant_v3ulong = OpTypePointer UniformConstant %v3ulong
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%v4uint = OpTypeVector %uint 4
|
||||||
|
%_ptr_CrossWorkgroup_v4uint = OpTypePointer CrossWorkgroup %v4uint
|
||||||
|
%11 = OpTypeFunction %void %_ptr_CrossWorkgroup_v4uint
|
||||||
|
%ulong_32 = OpConstant %ulong 32
|
||||||
|
%uint_123 = OpConstant %uint 123
|
||||||
|
%uint_122 = OpConstant %uint 122
|
||||||
|
%uint_121 = OpConstant %uint 121
|
||||||
|
%uint_119 = OpConstant %uint 119
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3ulong UniformConstant
|
||||||
|
%1 = OpFunction %void None %11
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_v4uint
|
||||||
|
%17 = OpLabel
|
||||||
|
%18 = OpLoad %v3ulong %gl_GlobalInvocationID Aligned 0
|
||||||
|
%19 = OpCompositeExtract %ulong %18 0
|
||||||
|
%20 = OpShiftLeftLogical %ulong %19 %ulong_32
|
||||||
|
%21 = OpShiftRightArithmetic %ulong %20 %ulong_32
|
||||||
|
%22 = OpCompositeConstruct %v4uint %uint_123 %uint_122 %uint_121 %uint_119
|
||||||
|
%23 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_v4uint %in %21
|
||||||
|
OpStore %23 %22
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,43 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 25
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int8
|
||||||
|
OpMemoryModel Physical32 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "composite_construct_struct"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%v3uint = OpTypeVector %uint 3
|
||||||
|
%_ptr_UniformConstant_v3uint = OpTypePointer UniformConstant %v3uint
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%v2uint = OpTypeVector %uint 2
|
||||||
|
%uchar = OpTypeInt 8 0
|
||||||
|
%_struct_10 = OpTypeStruct %uint %uchar
|
||||||
|
%_struct_11 = OpTypeStruct %v2uint %_struct_10
|
||||||
|
%_ptr_CrossWorkgroup__struct_11 = OpTypePointer CrossWorkgroup %_struct_11
|
||||||
|
%13 = OpTypeFunction %void %_ptr_CrossWorkgroup__struct_11
|
||||||
|
%uint_2100483600 = OpConstant %uint 2100483600
|
||||||
|
%uchar_128 = OpConstant %uchar 128
|
||||||
|
%uint_2100480000 = OpConstant %uint 2100480000
|
||||||
|
%uint_2100480000_0 = OpConstant %uint 2100480000
|
||||||
|
%18 = OpConstantComposite %v2uint %uint_2100480000 %uint_2100480000_0
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3uint UniformConstant
|
||||||
|
%1 = OpFunction %void None %13
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup__struct_11
|
||||||
|
%19 = OpLabel
|
||||||
|
%20 = OpCompositeConstruct %_struct_10 %uint_2100483600 %uchar_128
|
||||||
|
%21 = OpCompositeConstruct %_struct_11 %18 %20
|
||||||
|
%22 = OpLoad %v3uint %gl_GlobalInvocationID Aligned 0
|
||||||
|
%23 = OpCompositeExtract %uint %22 0
|
||||||
|
%24 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup__struct_11 %in %23
|
||||||
|
OpStore %24 %21
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,48 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 29
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int64
|
||||||
|
OpCapability Int8
|
||||||
|
OpMemoryModel Physical64 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "composite_construct_struct"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%ulong = OpTypeInt 64 0
|
||||||
|
%v3ulong = OpTypeVector %ulong 3
|
||||||
|
%_ptr_UniformConstant_v3ulong = OpTypePointer UniformConstant %v3ulong
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%v2uint = OpTypeVector %uint 2
|
||||||
|
%uchar = OpTypeInt 8 0
|
||||||
|
%_struct_11 = OpTypeStruct %uint %uchar
|
||||||
|
%_struct_12 = OpTypeStruct %v2uint %_struct_11
|
||||||
|
%_ptr_CrossWorkgroup__struct_12 = OpTypePointer CrossWorkgroup %_struct_12
|
||||||
|
%14 = OpTypeFunction %void %_ptr_CrossWorkgroup__struct_12
|
||||||
|
%ulong_32 = OpConstant %ulong 32
|
||||||
|
%uint_2100483600 = OpConstant %uint 2100483600
|
||||||
|
%uchar_128 = OpConstant %uchar 128
|
||||||
|
%uint_2100480000 = OpConstant %uint 2100480000
|
||||||
|
%uint_2100480000_0 = OpConstant %uint 2100480000
|
||||||
|
%20 = OpConstantComposite %v2uint %uint_2100480000 %uint_2100480000_0
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3ulong UniformConstant
|
||||||
|
%1 = OpFunction %void None %14
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup__struct_12
|
||||||
|
%21 = OpLabel
|
||||||
|
%22 = OpCompositeConstruct %_struct_11 %uint_2100483600 %uchar_128
|
||||||
|
%23 = OpCompositeConstruct %_struct_12 %20 %22
|
||||||
|
%24 = OpLoad %v3ulong %gl_GlobalInvocationID Aligned 0
|
||||||
|
%25 = OpCompositeExtract %ulong %24 0
|
||||||
|
%26 = OpShiftLeftLogical %ulong %25 %ulong_32
|
||||||
|
%27 = OpShiftRightArithmetic %ulong %26 %ulong_32
|
||||||
|
%28 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup__struct_12 %in %27
|
||||||
|
OpStore %28 %23
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,34 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 16
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int8
|
||||||
|
OpMemoryModel Physical32 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "constant_char_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%v3uint = OpTypeVector %uint 3
|
||||||
|
%_ptr_UniformConstant_v3uint = OpTypePointer UniformConstant %v3uint
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%uchar = OpTypeInt 8 0
|
||||||
|
%_ptr_CrossWorkgroup_uchar = OpTypePointer CrossWorkgroup %uchar
|
||||||
|
%10 = OpTypeFunction %void %_ptr_CrossWorkgroup_uchar
|
||||||
|
%uchar_20 = OpConstant %uchar 20
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3uint UniformConstant
|
||||||
|
%1 = OpFunction %void None %10
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_uchar
|
||||||
|
%12 = OpLabel
|
||||||
|
%13 = OpLoad %v3uint %gl_GlobalInvocationID Aligned 0
|
||||||
|
%14 = OpCompositeExtract %uint %13 0
|
||||||
|
%15 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uchar %in %14
|
||||||
|
OpStore %15 %uchar_20
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,38 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 19
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int64
|
||||||
|
OpCapability Int8
|
||||||
|
OpMemoryModel Physical64 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "constant_char_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%ulong = OpTypeInt 64 0
|
||||||
|
%v3ulong = OpTypeVector %ulong 3
|
||||||
|
%_ptr_UniformConstant_v3ulong = OpTypePointer UniformConstant %v3ulong
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%uchar = OpTypeInt 8 0
|
||||||
|
%_ptr_CrossWorkgroup_uchar = OpTypePointer CrossWorkgroup %uchar
|
||||||
|
%10 = OpTypeFunction %void %_ptr_CrossWorkgroup_uchar
|
||||||
|
%ulong_32 = OpConstant %ulong 32
|
||||||
|
%uchar_20 = OpConstant %uchar 20
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3ulong UniformConstant
|
||||||
|
%1 = OpFunction %void None %10
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_uchar
|
||||||
|
%13 = OpLabel
|
||||||
|
%14 = OpLoad %v3ulong %gl_GlobalInvocationID Aligned 0
|
||||||
|
%15 = OpCompositeExtract %ulong %14 0
|
||||||
|
%16 = OpShiftLeftLogical %ulong %15 %ulong_32
|
||||||
|
%17 = OpShiftRightArithmetic %ulong %16 %ulong_32
|
||||||
|
%18 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uchar %in %17
|
||||||
|
OpStore %18 %uchar_20
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,34 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 16
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Float64
|
||||||
|
OpMemoryModel Physical32 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "constant_double_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%v3uint = OpTypeVector %uint 3
|
||||||
|
%_ptr_UniformConstant_v3uint = OpTypePointer UniformConstant %v3uint
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%double = OpTypeFloat 64
|
||||||
|
%_ptr_CrossWorkgroup_double = OpTypePointer CrossWorkgroup %double
|
||||||
|
%10 = OpTypeFunction %void %_ptr_CrossWorkgroup_double
|
||||||
|
%double_3_1415926535897931 = OpConstant %double 3.1415926535897931
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3uint UniformConstant
|
||||||
|
%1 = OpFunction %void None %10
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_double
|
||||||
|
%12 = OpLabel
|
||||||
|
%13 = OpLoad %v3uint %gl_GlobalInvocationID Aligned 0
|
||||||
|
%14 = OpCompositeExtract %uint %13 0
|
||||||
|
%15 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_double %in %14
|
||||||
|
OpStore %15 %double_3_1415926535897931
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,38 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 19
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int64
|
||||||
|
OpCapability Float64
|
||||||
|
OpMemoryModel Physical64 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "constant_double_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%ulong = OpTypeInt 64 0
|
||||||
|
%v3ulong = OpTypeVector %ulong 3
|
||||||
|
%_ptr_UniformConstant_v3ulong = OpTypePointer UniformConstant %v3ulong
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%double = OpTypeFloat 64
|
||||||
|
%_ptr_CrossWorkgroup_double = OpTypePointer CrossWorkgroup %double
|
||||||
|
%10 = OpTypeFunction %void %_ptr_CrossWorkgroup_double
|
||||||
|
%ulong_32 = OpConstant %ulong 32
|
||||||
|
%double_3_1415926535897931 = OpConstant %double 3.1415926535897931
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3ulong UniformConstant
|
||||||
|
%1 = OpFunction %void None %10
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_double
|
||||||
|
%13 = OpLabel
|
||||||
|
%14 = OpLoad %v3ulong %gl_GlobalInvocationID Aligned 0
|
||||||
|
%15 = OpCompositeExtract %ulong %14 0
|
||||||
|
%16 = OpShiftLeftLogical %ulong %15 %ulong_32
|
||||||
|
%17 = OpShiftRightArithmetic %ulong %16 %ulong_32
|
||||||
|
%18 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_double %in %17
|
||||||
|
OpStore %18 %double_3_1415926535897931
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,36 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 19
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpMemoryModel Physical32 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "constant_false_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%v3uint = OpTypeVector %uint 3
|
||||||
|
%_ptr_UniformConstant_v3uint = OpTypePointer UniformConstant %v3uint
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%bool = OpTypeBool
|
||||||
|
%_ptr_CrossWorkgroup_uint = OpTypePointer CrossWorkgroup %uint
|
||||||
|
%10 = OpTypeFunction %void %_ptr_CrossWorkgroup_uint
|
||||||
|
%false = OpConstantFalse %bool
|
||||||
|
%uint_1 = OpConstant %uint 1
|
||||||
|
%uint_0 = OpConstant %uint 0
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3uint UniformConstant
|
||||||
|
%1 = OpFunction %void None %10
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%14 = OpLabel
|
||||||
|
%15 = OpSelect %uint %false %uint_1 %uint_0
|
||||||
|
%16 = OpLoad %v3uint %gl_GlobalInvocationID Aligned 0
|
||||||
|
%17 = OpCompositeExtract %uint %16 0
|
||||||
|
%18 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %in %17
|
||||||
|
OpStore %18 %15
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,41 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 23
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int64
|
||||||
|
OpMemoryModel Physical64 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "constant_false_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%ulong = OpTypeInt 64 0
|
||||||
|
%v3ulong = OpTypeVector %ulong 3
|
||||||
|
%_ptr_UniformConstant_v3ulong = OpTypePointer UniformConstant %v3ulong
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%bool = OpTypeBool
|
||||||
|
%_ptr_CrossWorkgroup_uint = OpTypePointer CrossWorkgroup %uint
|
||||||
|
%11 = OpTypeFunction %void %_ptr_CrossWorkgroup_uint
|
||||||
|
%ulong_32 = OpConstant %ulong 32
|
||||||
|
%false = OpConstantFalse %bool
|
||||||
|
%uint_1 = OpConstant %uint 1
|
||||||
|
%uint_0 = OpConstant %uint 0
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3ulong UniformConstant
|
||||||
|
%1 = OpFunction %void None %11
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%16 = OpLabel
|
||||||
|
%17 = OpSelect %uint %false %uint_1 %uint_0
|
||||||
|
%18 = OpLoad %v3ulong %gl_GlobalInvocationID Aligned 0
|
||||||
|
%19 = OpCompositeExtract %ulong %18 0
|
||||||
|
%20 = OpShiftLeftLogical %ulong %19 %ulong_32
|
||||||
|
%21 = OpShiftRightArithmetic %ulong %20 %ulong_32
|
||||||
|
%22 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %in %21
|
||||||
|
OpStore %22 %17
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,33 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 16
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpMemoryModel Physical32 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "constant_float_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%v3uint = OpTypeVector %uint 3
|
||||||
|
%_ptr_UniformConstant_v3uint = OpTypePointer UniformConstant %v3uint
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%float = OpTypeFloat 32
|
||||||
|
%_ptr_CrossWorkgroup_float = OpTypePointer CrossWorkgroup %float
|
||||||
|
%10 = OpTypeFunction %void %_ptr_CrossWorkgroup_float
|
||||||
|
%float_3_14159274 = OpConstant %float 3.14159274
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3uint UniformConstant
|
||||||
|
%1 = OpFunction %void None %10
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_float
|
||||||
|
%12 = OpLabel
|
||||||
|
%13 = OpLoad %v3uint %gl_GlobalInvocationID Aligned 0
|
||||||
|
%14 = OpCompositeExtract %uint %13 0
|
||||||
|
%15 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_float %in %14
|
||||||
|
OpStore %15 %float_3_14159274
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,37 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 19
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int64
|
||||||
|
OpMemoryModel Physical64 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "constant_float_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%ulong = OpTypeInt 64 0
|
||||||
|
%v3ulong = OpTypeVector %ulong 3
|
||||||
|
%_ptr_UniformConstant_v3ulong = OpTypePointer UniformConstant %v3ulong
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%float = OpTypeFloat 32
|
||||||
|
%_ptr_CrossWorkgroup_float = OpTypePointer CrossWorkgroup %float
|
||||||
|
%10 = OpTypeFunction %void %_ptr_CrossWorkgroup_float
|
||||||
|
%ulong_32 = OpConstant %ulong 32
|
||||||
|
%float_3_14159274 = OpConstant %float 3.14159274
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3ulong UniformConstant
|
||||||
|
%1 = OpFunction %void None %10
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_float
|
||||||
|
%13 = OpLabel
|
||||||
|
%14 = OpLoad %v3ulong %gl_GlobalInvocationID Aligned 0
|
||||||
|
%15 = OpCompositeExtract %ulong %14 0
|
||||||
|
%16 = OpShiftLeftLogical %ulong %15 %ulong_32
|
||||||
|
%17 = OpShiftRightArithmetic %ulong %16 %ulong_32
|
||||||
|
%18 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_float %in %17
|
||||||
|
OpStore %18 %float_3_14159274
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,36 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 18
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Float16
|
||||||
|
OpMemoryModel Physical32 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "constant_half_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%v3uint = OpTypeVector %uint 3
|
||||||
|
%_ptr_UniformConstant_v3uint = OpTypePointer UniformConstant %v3uint
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%float = OpTypeFloat 32
|
||||||
|
%half = OpTypeFloat 16
|
||||||
|
%_ptr_CrossWorkgroup_float = OpTypePointer CrossWorkgroup %float
|
||||||
|
%11 = OpTypeFunction %void %_ptr_CrossWorkgroup_float
|
||||||
|
%half_0x1_ap_1 = OpConstant %half 0x1.ap+1
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3uint UniformConstant
|
||||||
|
%1 = OpFunction %void None %11
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_float
|
||||||
|
%13 = OpLabel
|
||||||
|
%14 = OpFConvert %float %half_0x1_ap_1
|
||||||
|
%15 = OpLoad %v3uint %gl_GlobalInvocationID Aligned 0
|
||||||
|
%16 = OpCompositeExtract %uint %15 0
|
||||||
|
%17 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_float %in %16
|
||||||
|
OpStore %17 %14
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,40 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 21
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int64
|
||||||
|
OpCapability Float16
|
||||||
|
OpMemoryModel Physical64 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "constant_half_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%ulong = OpTypeInt 64 0
|
||||||
|
%v3ulong = OpTypeVector %ulong 3
|
||||||
|
%_ptr_UniformConstant_v3ulong = OpTypePointer UniformConstant %v3ulong
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%float = OpTypeFloat 32
|
||||||
|
%half = OpTypeFloat 16
|
||||||
|
%_ptr_CrossWorkgroup_float = OpTypePointer CrossWorkgroup %float
|
||||||
|
%11 = OpTypeFunction %void %_ptr_CrossWorkgroup_float
|
||||||
|
%ulong_32 = OpConstant %ulong 32
|
||||||
|
%half_0x1_ap_1 = OpConstant %half 0x1.ap+1
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3ulong UniformConstant
|
||||||
|
%1 = OpFunction %void None %11
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_float
|
||||||
|
%14 = OpLabel
|
||||||
|
%15 = OpFConvert %float %half_0x1_ap_1
|
||||||
|
%16 = OpLoad %v3ulong %gl_GlobalInvocationID Aligned 0
|
||||||
|
%17 = OpCompositeExtract %ulong %16 0
|
||||||
|
%18 = OpShiftLeftLogical %ulong %17 %ulong_32
|
||||||
|
%19 = OpShiftRightArithmetic %ulong %18 %ulong_32
|
||||||
|
%20 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_float %in %19
|
||||||
|
OpStore %20 %15
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,35 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 18
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpMemoryModel Physical32 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "constant_int3_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%v3uint = OpTypeVector %uint 3
|
||||||
|
%_ptr_UniformConstant_v3uint = OpTypePointer UniformConstant %v3uint
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%_ptr_CrossWorkgroup_v3uint = OpTypePointer CrossWorkgroup %v3uint
|
||||||
|
%9 = OpTypeFunction %void %_ptr_CrossWorkgroup_v3uint
|
||||||
|
%uint_123 = OpConstant %uint 123
|
||||||
|
%uint_122 = OpConstant %uint 122
|
||||||
|
%uint_121 = OpConstant %uint 121
|
||||||
|
%13 = OpConstantComposite %v3uint %uint_123 %uint_122 %uint_121
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3uint UniformConstant
|
||||||
|
%1 = OpFunction %void None %9
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_v3uint
|
||||||
|
%14 = OpLabel
|
||||||
|
%15 = OpLoad %v3uint %gl_GlobalInvocationID Aligned 0
|
||||||
|
%16 = OpCompositeExtract %uint %15 0
|
||||||
|
%17 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_v3uint %in %16
|
||||||
|
OpStore %17 %13 Aligned 16
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,41 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 23
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int64
|
||||||
|
OpMemoryModel Physical64 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "constant_int3_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%ulong = OpTypeInt 64 0
|
||||||
|
%v3ulong = OpTypeVector %ulong 3
|
||||||
|
%_ptr_UniformConstant_v3ulong = OpTypePointer UniformConstant %v3ulong
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%v3uint = OpTypeVector %uint 3
|
||||||
|
%_ptr_CrossWorkgroup_v3uint = OpTypePointer CrossWorkgroup %v3uint
|
||||||
|
%11 = OpTypeFunction %void %_ptr_CrossWorkgroup_v3uint
|
||||||
|
%ulong_32 = OpConstant %ulong 32
|
||||||
|
%uint_123 = OpConstant %uint 123
|
||||||
|
%uint_122 = OpConstant %uint 122
|
||||||
|
%uint_121 = OpConstant %uint 121
|
||||||
|
%16 = OpConstantComposite %v3uint %uint_123 %uint_122 %uint_121
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3ulong UniformConstant
|
||||||
|
%1 = OpFunction %void None %11
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_v3uint
|
||||||
|
%17 = OpLabel
|
||||||
|
%18 = OpLoad %v3ulong %gl_GlobalInvocationID Aligned 0
|
||||||
|
%19 = OpCompositeExtract %ulong %18 0
|
||||||
|
%20 = OpShiftLeftLogical %ulong %19 %ulong_32
|
||||||
|
%21 = OpShiftRightArithmetic %ulong %20 %ulong_32
|
||||||
|
%22 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_v3uint %in %21
|
||||||
|
OpStore %22 %16 Aligned 16
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,37 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 20
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpMemoryModel Physical32 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "constant_int4_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%v3uint = OpTypeVector %uint 3
|
||||||
|
%_ptr_UniformConstant_v3uint = OpTypePointer UniformConstant %v3uint
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%v4uint = OpTypeVector %uint 4
|
||||||
|
%_ptr_CrossWorkgroup_v4uint = OpTypePointer CrossWorkgroup %v4uint
|
||||||
|
%10 = OpTypeFunction %void %_ptr_CrossWorkgroup_v4uint
|
||||||
|
%uint_123 = OpConstant %uint 123
|
||||||
|
%uint_122 = OpConstant %uint 122
|
||||||
|
%uint_121 = OpConstant %uint 121
|
||||||
|
%uint_119 = OpConstant %uint 119
|
||||||
|
%15 = OpConstantComposite %v4uint %uint_123 %uint_122 %uint_121 %uint_119
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3uint UniformConstant
|
||||||
|
%1 = OpFunction %void None %10
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_v4uint
|
||||||
|
%16 = OpLabel
|
||||||
|
%17 = OpLoad %v3uint %gl_GlobalInvocationID Aligned 0
|
||||||
|
%18 = OpCompositeExtract %uint %17 0
|
||||||
|
%19 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_v4uint %in %18
|
||||||
|
OpStore %19 %15 Aligned 16
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,42 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 24
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int64
|
||||||
|
OpMemoryModel Physical64 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "constant_int4_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%ulong = OpTypeInt 64 0
|
||||||
|
%v3ulong = OpTypeVector %ulong 3
|
||||||
|
%_ptr_UniformConstant_v3ulong = OpTypePointer UniformConstant %v3ulong
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%v4uint = OpTypeVector %uint 4
|
||||||
|
%_ptr_CrossWorkgroup_v4uint = OpTypePointer CrossWorkgroup %v4uint
|
||||||
|
%11 = OpTypeFunction %void %_ptr_CrossWorkgroup_v4uint
|
||||||
|
%ulong_32 = OpConstant %ulong 32
|
||||||
|
%uint_123 = OpConstant %uint 123
|
||||||
|
%uint_122 = OpConstant %uint 122
|
||||||
|
%uint_121 = OpConstant %uint 121
|
||||||
|
%uint_119 = OpConstant %uint 119
|
||||||
|
%17 = OpConstantComposite %v4uint %uint_123 %uint_122 %uint_121 %uint_119
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3ulong UniformConstant
|
||||||
|
%1 = OpFunction %void None %11
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_v4uint
|
||||||
|
%18 = OpLabel
|
||||||
|
%19 = OpLoad %v3ulong %gl_GlobalInvocationID Aligned 0
|
||||||
|
%20 = OpCompositeExtract %ulong %19 0
|
||||||
|
%21 = OpShiftLeftLogical %ulong %20 %ulong_32
|
||||||
|
%22 = OpShiftRightArithmetic %ulong %21 %ulong_32
|
||||||
|
%23 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_v4uint %in %22
|
||||||
|
OpStore %23 %17
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,32 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 15
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpMemoryModel Physical32 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "constant_int_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%v3uint = OpTypeVector %uint 3
|
||||||
|
%_ptr_UniformConstant_v3uint = OpTypePointer UniformConstant %v3uint
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%_ptr_CrossWorkgroup_uint = OpTypePointer CrossWorkgroup %uint
|
||||||
|
%9 = OpTypeFunction %void %_ptr_CrossWorkgroup_uint
|
||||||
|
%uint_123 = OpConstant %uint 123
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3uint UniformConstant
|
||||||
|
%1 = OpFunction %void None %9
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%11 = OpLabel
|
||||||
|
%12 = OpLoad %v3uint %gl_GlobalInvocationID Aligned 0
|
||||||
|
%13 = OpCompositeExtract %uint %12 0
|
||||||
|
%14 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %in %13
|
||||||
|
OpStore %14 %uint_123
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,37 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 19
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int64
|
||||||
|
OpMemoryModel Physical64 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "constant_int_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%ulong = OpTypeInt 64 0
|
||||||
|
%v3ulong = OpTypeVector %ulong 3
|
||||||
|
%_ptr_UniformConstant_v3ulong = OpTypePointer UniformConstant %v3ulong
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%_ptr_CrossWorkgroup_uint = OpTypePointer CrossWorkgroup %uint
|
||||||
|
%10 = OpTypeFunction %void %_ptr_CrossWorkgroup_uint
|
||||||
|
%ulong_32 = OpConstant %ulong 32
|
||||||
|
%uint_123 = OpConstant %uint 123
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3ulong UniformConstant
|
||||||
|
%1 = OpFunction %void None %10
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%13 = OpLabel
|
||||||
|
%14 = OpLoad %v3ulong %gl_GlobalInvocationID Aligned 0
|
||||||
|
%15 = OpCompositeExtract %ulong %14 0
|
||||||
|
%16 = OpShiftLeftLogical %ulong %15 %ulong_32
|
||||||
|
%17 = OpShiftRightArithmetic %ulong %16 %ulong_32
|
||||||
|
%18 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %in %17
|
||||||
|
OpStore %18 %uint_123
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,34 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 16
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int64
|
||||||
|
OpMemoryModel Physical32 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "constant_long_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%v3uint = OpTypeVector %uint 3
|
||||||
|
%_ptr_UniformConstant_v3uint = OpTypePointer UniformConstant %v3uint
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%ulong = OpTypeInt 64 0
|
||||||
|
%_ptr_CrossWorkgroup_ulong = OpTypePointer CrossWorkgroup %ulong
|
||||||
|
%10 = OpTypeFunction %void %_ptr_CrossWorkgroup_ulong
|
||||||
|
%ulong_34359738368 = OpConstant %ulong 34359738368
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3uint UniformConstant
|
||||||
|
%1 = OpFunction %void None %10
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_ulong
|
||||||
|
%12 = OpLabel
|
||||||
|
%13 = OpLoad %v3uint %gl_GlobalInvocationID Aligned 0
|
||||||
|
%14 = OpCompositeExtract %uint %13 0
|
||||||
|
%15 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_ulong %in %14
|
||||||
|
OpStore %15 %ulong_34359738368
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,36 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 18
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int64
|
||||||
|
OpMemoryModel Physical64 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "constant_long_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%ulong = OpTypeInt 64 0
|
||||||
|
%v3ulong = OpTypeVector %ulong 3
|
||||||
|
%_ptr_UniformConstant_v3ulong = OpTypePointer UniformConstant %v3ulong
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%_ptr_CrossWorkgroup_ulong = OpTypePointer CrossWorkgroup %ulong
|
||||||
|
%9 = OpTypeFunction %void %_ptr_CrossWorkgroup_ulong
|
||||||
|
%ulong_32 = OpConstant %ulong 32
|
||||||
|
%ulong_34359738368 = OpConstant %ulong 34359738368
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3ulong UniformConstant
|
||||||
|
%1 = OpFunction %void None %9
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_ulong
|
||||||
|
%12 = OpLabel
|
||||||
|
%13 = OpLoad %v3ulong %gl_GlobalInvocationID Aligned 0
|
||||||
|
%14 = OpCompositeExtract %ulong %13 0
|
||||||
|
%15 = OpShiftLeftLogical %ulong %14 %ulong_32
|
||||||
|
%16 = OpShiftRightArithmetic %ulong %15 %ulong_32
|
||||||
|
%17 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_ulong %in %16
|
||||||
|
OpStore %17 %ulong_34359738368
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,34 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 16
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int16
|
||||||
|
OpMemoryModel Physical32 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "constant_short_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%v3uint = OpTypeVector %uint 3
|
||||||
|
%_ptr_UniformConstant_v3uint = OpTypePointer UniformConstant %v3uint
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%ushort = OpTypeInt 16 0
|
||||||
|
%_ptr_CrossWorkgroup_ushort = OpTypePointer CrossWorkgroup %ushort
|
||||||
|
%10 = OpTypeFunction %void %_ptr_CrossWorkgroup_ushort
|
||||||
|
%ushort_32000 = OpConstant %ushort 32000
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3uint UniformConstant
|
||||||
|
%1 = OpFunction %void None %10
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_ushort
|
||||||
|
%12 = OpLabel
|
||||||
|
%13 = OpLoad %v3uint %gl_GlobalInvocationID Aligned 0
|
||||||
|
%14 = OpCompositeExtract %uint %13 0
|
||||||
|
%15 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_ushort %in %14
|
||||||
|
OpStore %15 %ushort_32000
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,38 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 19
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int64
|
||||||
|
OpCapability Int16
|
||||||
|
OpMemoryModel Physical64 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "constant_short_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%ulong = OpTypeInt 64 0
|
||||||
|
%v3ulong = OpTypeVector %ulong 3
|
||||||
|
%_ptr_UniformConstant_v3ulong = OpTypePointer UniformConstant %v3ulong
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%ushort = OpTypeInt 16 0
|
||||||
|
%_ptr_CrossWorkgroup_ushort = OpTypePointer CrossWorkgroup %ushort
|
||||||
|
%10 = OpTypeFunction %void %_ptr_CrossWorkgroup_ushort
|
||||||
|
%ulong_32 = OpConstant %ulong 32
|
||||||
|
%ushort_32000 = OpConstant %ushort 32000
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3ulong UniformConstant
|
||||||
|
%1 = OpFunction %void None %10
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_ushort
|
||||||
|
%13 = OpLabel
|
||||||
|
%14 = OpLoad %v3ulong %gl_GlobalInvocationID Aligned 0
|
||||||
|
%15 = OpCompositeExtract %ulong %14 0
|
||||||
|
%16 = OpShiftLeftLogical %ulong %15 %ulong_32
|
||||||
|
%17 = OpShiftRightArithmetic %ulong %16 %ulong_32
|
||||||
|
%18 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_ushort %in %17
|
||||||
|
OpStore %18 %ushort_32000
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,37 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 19
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int8
|
||||||
|
OpMemoryModel Physical32 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "constant_struct_int_char_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%v3uint = OpTypeVector %uint 3
|
||||||
|
%_ptr_UniformConstant_v3uint = OpTypePointer UniformConstant %v3uint
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%uchar = OpTypeInt 8 0
|
||||||
|
%_struct_9 = OpTypeStruct %uint %uchar
|
||||||
|
%_ptr_CrossWorkgroup__struct_9 = OpTypePointer CrossWorkgroup %_struct_9
|
||||||
|
%11 = OpTypeFunction %void %_ptr_CrossWorkgroup__struct_9
|
||||||
|
%uint_2100483600 = OpConstant %uint 2100483600
|
||||||
|
%uchar_128 = OpConstant %uchar 128
|
||||||
|
%14 = OpConstantComposite %_struct_9 %uint_2100483600 %uchar_128
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3uint UniformConstant
|
||||||
|
%1 = OpFunction %void None %11
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup__struct_9
|
||||||
|
%15 = OpLabel
|
||||||
|
%16 = OpLoad %v3uint %gl_GlobalInvocationID Aligned 0
|
||||||
|
%17 = OpCompositeExtract %uint %16 0
|
||||||
|
%18 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup__struct_9 %in %17
|
||||||
|
OpStore %18 %14
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,42 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 23
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int64
|
||||||
|
OpCapability Int8
|
||||||
|
OpMemoryModel Physical64 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "constant_struct_int_char_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%ulong = OpTypeInt 64 0
|
||||||
|
%v3ulong = OpTypeVector %ulong 3
|
||||||
|
%_ptr_UniformConstant_v3ulong = OpTypePointer UniformConstant %v3ulong
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%uchar = OpTypeInt 8 0
|
||||||
|
%_struct_10 = OpTypeStruct %uint %uchar
|
||||||
|
%_ptr_CrossWorkgroup__struct_10 = OpTypePointer CrossWorkgroup %_struct_10
|
||||||
|
%12 = OpTypeFunction %void %_ptr_CrossWorkgroup__struct_10
|
||||||
|
%ulong_32 = OpConstant %ulong 32
|
||||||
|
%uint_2100483600 = OpConstant %uint 2100483600
|
||||||
|
%uchar_128 = OpConstant %uchar 128
|
||||||
|
%16 = OpConstantComposite %_struct_10 %uint_2100483600 %uchar_128
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3ulong UniformConstant
|
||||||
|
%1 = OpFunction %void None %12
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup__struct_10
|
||||||
|
%17 = OpLabel
|
||||||
|
%18 = OpLoad %v3ulong %gl_GlobalInvocationID Aligned 0
|
||||||
|
%19 = OpCompositeExtract %ulong %18 0
|
||||||
|
%20 = OpShiftLeftLogical %ulong %19 %ulong_32
|
||||||
|
%21 = OpShiftRightArithmetic %ulong %20 %ulong_32
|
||||||
|
%22 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup__struct_10 %in %21
|
||||||
|
OpStore %22 %16
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,36 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 19
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Linkage
|
||||||
|
OpMemoryModel Physical32 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "constant_struct_int_float_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%v3uint = OpTypeVector %uint 3
|
||||||
|
%_ptr_UniformConstant_v3uint = OpTypePointer UniformConstant %v3uint
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%float = OpTypeFloat 32
|
||||||
|
%_struct_9 = OpTypeStruct %uint %float
|
||||||
|
%_ptr_CrossWorkgroup__struct_9 = OpTypePointer CrossWorkgroup %_struct_9
|
||||||
|
%11 = OpTypeFunction %void %_ptr_CrossWorkgroup__struct_9
|
||||||
|
%uint_1024 = OpConstant %uint 1024
|
||||||
|
%float_3_1415 = OpConstant %float 3.1415
|
||||||
|
%14 = OpConstantComposite %_struct_9 %uint_1024 %float_3_1415
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3uint UniformConstant
|
||||||
|
%1 = OpFunction %void None %11
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup__struct_9
|
||||||
|
%15 = OpLabel
|
||||||
|
%16 = OpLoad %v3uint %gl_GlobalInvocationID Aligned 0
|
||||||
|
%17 = OpCompositeExtract %uint %16 0
|
||||||
|
%18 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup__struct_9 %in %17
|
||||||
|
OpStore %18 %14
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,41 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 23
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int64
|
||||||
|
OpMemoryModel Physical64 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "constant_struct_int_float_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%ulong = OpTypeInt 64 0
|
||||||
|
%v3ulong = OpTypeVector %ulong 3
|
||||||
|
%_ptr_UniformConstant_v3ulong = OpTypePointer UniformConstant %v3ulong
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%float = OpTypeFloat 32
|
||||||
|
%_struct_10 = OpTypeStruct %uint %float
|
||||||
|
%_ptr_CrossWorkgroup__struct_10 = OpTypePointer CrossWorkgroup %_struct_10
|
||||||
|
%12 = OpTypeFunction %void %_ptr_CrossWorkgroup__struct_10
|
||||||
|
%ulong_32 = OpConstant %ulong 32
|
||||||
|
%uint_1024 = OpConstant %uint 1024
|
||||||
|
%float_3_1415 = OpConstant %float 3.1415
|
||||||
|
%16 = OpConstantComposite %_struct_10 %uint_1024 %float_3_1415
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3ulong UniformConstant
|
||||||
|
%1 = OpFunction %void None %12
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup__struct_10
|
||||||
|
%17 = OpLabel
|
||||||
|
%18 = OpLoad %v3ulong %gl_GlobalInvocationID Aligned 0
|
||||||
|
%19 = OpCompositeExtract %ulong %18 0
|
||||||
|
%20 = OpShiftLeftLogical %ulong %19 %ulong_32
|
||||||
|
%21 = OpShiftRightArithmetic %ulong %20 %ulong_32
|
||||||
|
%22 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup__struct_10 %in %21
|
||||||
|
OpStore %22 %16
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,43 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 25
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Int8
|
||||||
|
OpMemoryModel Physical32 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "constant_struct_struct_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%v3uint = OpTypeVector %uint 3
|
||||||
|
%_ptr_UniformConstant_v3uint = OpTypePointer UniformConstant %v3uint
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%v2uint = OpTypeVector %uint 2
|
||||||
|
%uchar = OpTypeInt 8 0
|
||||||
|
%_struct_10 = OpTypeStruct %uint %uchar
|
||||||
|
%_struct_11 = OpTypeStruct %v2uint %_struct_10
|
||||||
|
%_ptr_CrossWorkgroup__struct_11 = OpTypePointer CrossWorkgroup %_struct_11
|
||||||
|
%13 = OpTypeFunction %void %_ptr_CrossWorkgroup__struct_11
|
||||||
|
%uint_2100483600 = OpConstant %uint 2100483600
|
||||||
|
%uchar_128 = OpConstant %uchar 128
|
||||||
|
%uint_2100480000 = OpConstant %uint 2100480000
|
||||||
|
%uint_2100480000_0 = OpConstant %uint 2100480000
|
||||||
|
%18 = OpConstantComposite %_struct_10 %uint_2100483600 %uchar_128
|
||||||
|
%19 = OpConstantComposite %v2uint %uint_2100480000 %uint_2100480000_0
|
||||||
|
%20 = OpConstantComposite %_struct_11 %19 %18
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3uint UniformConstant
|
||||||
|
%1 = OpFunction %void None %13
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup__struct_11
|
||||||
|
%21 = OpLabel
|
||||||
|
%22 = OpLoad %v3uint %gl_GlobalInvocationID Aligned 0
|
||||||
|
%23 = OpCompositeExtract %uint %22 0
|
||||||
|
%24 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup__struct_11 %in %23
|
||||||
|
OpStore %24 %20
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,48 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 29
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int64
|
||||||
|
OpCapability Int8
|
||||||
|
OpMemoryModel Physical64 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "constant_struct_struct_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%ulong = OpTypeInt 64 0
|
||||||
|
%v3ulong = OpTypeVector %ulong 3
|
||||||
|
%_ptr_UniformConstant_v3ulong = OpTypePointer UniformConstant %v3ulong
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%v2uint = OpTypeVector %uint 2
|
||||||
|
%uchar = OpTypeInt 8 0
|
||||||
|
%_struct_11 = OpTypeStruct %uint %uchar
|
||||||
|
%_struct_12 = OpTypeStruct %v2uint %_struct_11
|
||||||
|
%_ptr_CrossWorkgroup__struct_12 = OpTypePointer CrossWorkgroup %_struct_12
|
||||||
|
%14 = OpTypeFunction %void %_ptr_CrossWorkgroup__struct_12
|
||||||
|
%ulong_32 = OpConstant %ulong 32
|
||||||
|
%uint_2100483600 = OpConstant %uint 2100483600
|
||||||
|
%uchar_128 = OpConstant %uchar 128
|
||||||
|
%uint_2100480000 = OpConstant %uint 2100480000
|
||||||
|
%uint_2100480000_0 = OpConstant %uint 2100480000
|
||||||
|
%20 = OpConstantComposite %_struct_11 %uint_2100483600 %uchar_128
|
||||||
|
%21 = OpConstantComposite %v2uint %uint_2100480000 %uint_2100480000_0
|
||||||
|
%22 = OpConstantComposite %_struct_12 %21 %20
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3ulong UniformConstant
|
||||||
|
%1 = OpFunction %void None %14
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup__struct_12
|
||||||
|
%23 = OpLabel
|
||||||
|
%24 = OpLoad %v3ulong %gl_GlobalInvocationID Aligned 0
|
||||||
|
%25 = OpCompositeExtract %ulong %24 0
|
||||||
|
%26 = OpShiftLeftLogical %ulong %25 %ulong_32
|
||||||
|
%27 = OpShiftRightArithmetic %ulong %26 %ulong_32
|
||||||
|
%28 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup__struct_12 %in %27
|
||||||
|
OpStore %28 %22
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,36 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 19
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpMemoryModel Physical32 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "constant_true_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%v3uint = OpTypeVector %uint 3
|
||||||
|
%_ptr_UniformConstant_v3uint = OpTypePointer UniformConstant %v3uint
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%bool = OpTypeBool
|
||||||
|
%_ptr_CrossWorkgroup_uint = OpTypePointer CrossWorkgroup %uint
|
||||||
|
%10 = OpTypeFunction %void %_ptr_CrossWorkgroup_uint
|
||||||
|
%true = OpConstantTrue %bool
|
||||||
|
%uint_1 = OpConstant %uint 1
|
||||||
|
%uint_0 = OpConstant %uint 0
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3uint UniformConstant
|
||||||
|
%1 = OpFunction %void None %10
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%14 = OpLabel
|
||||||
|
%15 = OpSelect %uint %true %uint_1 %uint_0
|
||||||
|
%16 = OpLoad %v3uint %gl_GlobalInvocationID Aligned 0
|
||||||
|
%17 = OpCompositeExtract %uint %16 0
|
||||||
|
%18 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %in %17
|
||||||
|
OpStore %18 %15 Aligned 4
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,41 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 23
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int64
|
||||||
|
OpMemoryModel Physical64 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "constant_true_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%ulong = OpTypeInt 64 0
|
||||||
|
%v3ulong = OpTypeVector %ulong 3
|
||||||
|
%_ptr_UniformConstant_v3ulong = OpTypePointer UniformConstant %v3ulong
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%bool = OpTypeBool
|
||||||
|
%_ptr_CrossWorkgroup_uint = OpTypePointer CrossWorkgroup %uint
|
||||||
|
%11 = OpTypeFunction %void %_ptr_CrossWorkgroup_uint
|
||||||
|
%ulong_32 = OpConstant %ulong 32
|
||||||
|
%true = OpConstantTrue %bool
|
||||||
|
%uint_1 = OpConstant %uint 1
|
||||||
|
%uint_0 = OpConstant %uint 0
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3ulong UniformConstant
|
||||||
|
%1 = OpFunction %void None %11
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%16 = OpLabel
|
||||||
|
%17 = OpSelect %uint %true %uint_1 %uint_0
|
||||||
|
%18 = OpLoad %v3ulong %gl_GlobalInvocationID Aligned 0
|
||||||
|
%19 = OpCompositeExtract %ulong %18 0
|
||||||
|
%20 = OpShiftLeftLogical %ulong %19 %ulong_32
|
||||||
|
%21 = OpShiftRightArithmetic %ulong %20 %ulong_32
|
||||||
|
%22 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %in %21
|
||||||
|
OpStore %22 %17
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,34 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 16
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int8
|
||||||
|
OpMemoryModel Physical32 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "constant_uchar_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%v3uint = OpTypeVector %uint 3
|
||||||
|
%_ptr_UniformConstant_v3uint = OpTypePointer UniformConstant %v3uint
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%uchar = OpTypeInt 8 0
|
||||||
|
%_ptr_CrossWorkgroup_uchar = OpTypePointer CrossWorkgroup %uchar
|
||||||
|
%10 = OpTypeFunction %void %_ptr_CrossWorkgroup_uchar
|
||||||
|
%uchar_19 = OpConstant %uchar 19
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3uint UniformConstant
|
||||||
|
%1 = OpFunction %void None %10
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_uchar
|
||||||
|
%12 = OpLabel
|
||||||
|
%13 = OpLoad %v3uint %gl_GlobalInvocationID Aligned 0
|
||||||
|
%14 = OpCompositeExtract %uint %13 0
|
||||||
|
%15 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uchar %in %14
|
||||||
|
OpStore %15 %uchar_19
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,38 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 19
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int64
|
||||||
|
OpCapability Int8
|
||||||
|
OpMemoryModel Physical64 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "constant_uchar_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%ulong = OpTypeInt 64 0
|
||||||
|
%v3ulong = OpTypeVector %ulong 3
|
||||||
|
%_ptr_UniformConstant_v3ulong = OpTypePointer UniformConstant %v3ulong
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%uchar = OpTypeInt 8 0
|
||||||
|
%_ptr_CrossWorkgroup_uchar = OpTypePointer CrossWorkgroup %uchar
|
||||||
|
%10 = OpTypeFunction %void %_ptr_CrossWorkgroup_uchar
|
||||||
|
%ulong_32 = OpConstant %ulong 32
|
||||||
|
%uchar_19 = OpConstant %uchar 19
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3ulong UniformConstant
|
||||||
|
%1 = OpFunction %void None %10
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_uchar
|
||||||
|
%13 = OpLabel
|
||||||
|
%14 = OpLoad %v3ulong %gl_GlobalInvocationID Aligned 0
|
||||||
|
%15 = OpCompositeExtract %ulong %14 0
|
||||||
|
%16 = OpShiftLeftLogical %ulong %15 %ulong_32
|
||||||
|
%17 = OpShiftRightArithmetic %ulong %16 %ulong_32
|
||||||
|
%18 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uchar %in %17
|
||||||
|
OpStore %18 %uchar_19
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,32 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 15
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpMemoryModel Physical32 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "constant_uint_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%v3uint = OpTypeVector %uint 3
|
||||||
|
%_ptr_UniformConstant_v3uint = OpTypePointer UniformConstant %v3uint
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%_ptr_CrossWorkgroup_uint = OpTypePointer CrossWorkgroup %uint
|
||||||
|
%9 = OpTypeFunction %void %_ptr_CrossWorkgroup_uint
|
||||||
|
%uint_54321 = OpConstant %uint 54321
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3uint UniformConstant
|
||||||
|
%1 = OpFunction %void None %9
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%11 = OpLabel
|
||||||
|
%12 = OpLoad %v3uint %gl_GlobalInvocationID Aligned 0
|
||||||
|
%13 = OpCompositeExtract %uint %12 0
|
||||||
|
%14 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %in %13
|
||||||
|
OpStore %14 %uint_54321
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,37 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 19
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int64
|
||||||
|
OpMemoryModel Physical64 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "constant_uint_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%ulong = OpTypeInt 64 0
|
||||||
|
%v3ulong = OpTypeVector %ulong 3
|
||||||
|
%_ptr_UniformConstant_v3ulong = OpTypePointer UniformConstant %v3ulong
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%_ptr_CrossWorkgroup_uint = OpTypePointer CrossWorkgroup %uint
|
||||||
|
%10 = OpTypeFunction %void %_ptr_CrossWorkgroup_uint
|
||||||
|
%ulong_32 = OpConstant %ulong 32
|
||||||
|
%uint_54321 = OpConstant %uint 54321
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3ulong UniformConstant
|
||||||
|
%1 = OpFunction %void None %10
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%13 = OpLabel
|
||||||
|
%14 = OpLoad %v3ulong %gl_GlobalInvocationID Aligned 0
|
||||||
|
%15 = OpCompositeExtract %ulong %14 0
|
||||||
|
%16 = OpShiftLeftLogical %ulong %15 %ulong_32
|
||||||
|
%17 = OpShiftRightArithmetic %ulong %16 %ulong_32
|
||||||
|
%18 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %in %17
|
||||||
|
OpStore %18 %uint_54321
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,34 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 16
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int64
|
||||||
|
OpMemoryModel Physical32 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "constant_ulong_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%v3uint = OpTypeVector %uint 3
|
||||||
|
%_ptr_UniformConstant_v3uint = OpTypePointer UniformConstant %v3uint
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%ulong = OpTypeInt 64 0
|
||||||
|
%_ptr_CrossWorkgroup_ulong = OpTypePointer CrossWorkgroup %ulong
|
||||||
|
%10 = OpTypeFunction %void %_ptr_CrossWorkgroup_ulong
|
||||||
|
%ulong_9223372036854775810 = OpConstant %ulong 9223372036854775810
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3uint UniformConstant
|
||||||
|
%1 = OpFunction %void None %10
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_ulong
|
||||||
|
%12 = OpLabel
|
||||||
|
%13 = OpLoad %v3uint %gl_GlobalInvocationID Aligned 0
|
||||||
|
%14 = OpCompositeExtract %uint %13 0
|
||||||
|
%15 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_ulong %in %14
|
||||||
|
OpStore %15 %ulong_9223372036854775810
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,36 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 18
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int64
|
||||||
|
OpMemoryModel Physical64 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "constant_ulong_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%ulong = OpTypeInt 64 0
|
||||||
|
%v3ulong = OpTypeVector %ulong 3
|
||||||
|
%_ptr_UniformConstant_v3ulong = OpTypePointer UniformConstant %v3ulong
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%_ptr_CrossWorkgroup_ulong = OpTypePointer CrossWorkgroup %ulong
|
||||||
|
%9 = OpTypeFunction %void %_ptr_CrossWorkgroup_ulong
|
||||||
|
%ulong_32 = OpConstant %ulong 32
|
||||||
|
%ulong_9223372036854775810 = OpConstant %ulong 9223372036854775810
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3ulong UniformConstant
|
||||||
|
%1 = OpFunction %void None %9
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_ulong
|
||||||
|
%12 = OpLabel
|
||||||
|
%13 = OpLoad %v3ulong %gl_GlobalInvocationID Aligned 0
|
||||||
|
%14 = OpCompositeExtract %ulong %13 0
|
||||||
|
%15 = OpShiftLeftLogical %ulong %14 %ulong_32
|
||||||
|
%16 = OpShiftRightArithmetic %ulong %15 %ulong_32
|
||||||
|
%17 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_ulong %in %16
|
||||||
|
OpStore %17 %ulong_9223372036854775810
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,34 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 16
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int16
|
||||||
|
OpMemoryModel Physical32 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "constant_ushort_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%v3uint = OpTypeVector %uint 3
|
||||||
|
%_ptr_UniformConstant_v3uint = OpTypePointer UniformConstant %v3uint
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%ushort = OpTypeInt 16 0
|
||||||
|
%_ptr_CrossWorkgroup_ushort = OpTypePointer CrossWorkgroup %ushort
|
||||||
|
%10 = OpTypeFunction %void %_ptr_CrossWorkgroup_ushort
|
||||||
|
%ushort_65000 = OpConstant %ushort 65000
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3uint UniformConstant
|
||||||
|
%1 = OpFunction %void None %10
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_ushort
|
||||||
|
%12 = OpLabel
|
||||||
|
%13 = OpLoad %v3uint %gl_GlobalInvocationID Aligned 0
|
||||||
|
%14 = OpCompositeExtract %uint %13 0
|
||||||
|
%15 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_ushort %in %14
|
||||||
|
OpStore %15 %ushort_65000
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,38 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 19
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int64
|
||||||
|
OpCapability Int16
|
||||||
|
OpMemoryModel Physical64 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "constant_ushort_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%ulong = OpTypeInt 64 0
|
||||||
|
%v3ulong = OpTypeVector %ulong 3
|
||||||
|
%_ptr_UniformConstant_v3ulong = OpTypePointer UniformConstant %v3ulong
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%ushort = OpTypeInt 16 0
|
||||||
|
%_ptr_CrossWorkgroup_ushort = OpTypePointer CrossWorkgroup %ushort
|
||||||
|
%10 = OpTypeFunction %void %_ptr_CrossWorkgroup_ushort
|
||||||
|
%ulong_32 = OpConstant %ulong 32
|
||||||
|
%ushort_65000 = OpConstant %ushort 65000
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3ulong UniformConstant
|
||||||
|
%1 = OpFunction %void None %10
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_ushort
|
||||||
|
%13 = OpLabel
|
||||||
|
%14 = OpLoad %v3ulong %gl_GlobalInvocationID Aligned 0
|
||||||
|
%15 = OpCompositeExtract %ulong %14 0
|
||||||
|
%16 = OpShiftLeftLogical %ulong %15 %ulong_32
|
||||||
|
%17 = OpShiftRightArithmetic %ulong %16 %ulong_32
|
||||||
|
%18 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_ushort %in %17
|
||||||
|
OpStore %18 %ushort_65000
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,35 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 17
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int8
|
||||||
|
OpMemoryModel Physical32 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "copy_char_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%v3uint = OpTypeVector %uint 3
|
||||||
|
%_ptr_UniformConstant_v3uint = OpTypePointer UniformConstant %v3uint
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%uchar = OpTypeInt 8 0
|
||||||
|
%_ptr_CrossWorkgroup_uchar = OpTypePointer CrossWorkgroup %uchar
|
||||||
|
%10 = OpTypeFunction %void %_ptr_CrossWorkgroup_uchar
|
||||||
|
%uchar_20 = OpConstant %uchar 20
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3uint UniformConstant
|
||||||
|
%1 = OpFunction %void None %10
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_uchar
|
||||||
|
%12 = OpLabel
|
||||||
|
%13 = OpLoad %v3uint %gl_GlobalInvocationID Aligned 0
|
||||||
|
%14 = OpCompositeExtract %uint %13 0
|
||||||
|
%15 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uchar %in %14
|
||||||
|
%16 = OpCopyObject %uchar %uchar_20
|
||||||
|
OpStore %15 %16
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,39 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 20
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int64
|
||||||
|
OpCapability Int8
|
||||||
|
OpMemoryModel Physical64 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "copy_char_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%ulong = OpTypeInt 64 0
|
||||||
|
%v3ulong = OpTypeVector %ulong 3
|
||||||
|
%_ptr_UniformConstant_v3ulong = OpTypePointer UniformConstant %v3ulong
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%uchar = OpTypeInt 8 0
|
||||||
|
%_ptr_CrossWorkgroup_uchar = OpTypePointer CrossWorkgroup %uchar
|
||||||
|
%10 = OpTypeFunction %void %_ptr_CrossWorkgroup_uchar
|
||||||
|
%ulong_32 = OpConstant %ulong 32
|
||||||
|
%uchar_20 = OpConstant %uchar 20
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3ulong UniformConstant
|
||||||
|
%1 = OpFunction %void None %10
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_uchar
|
||||||
|
%13 = OpLabel
|
||||||
|
%14 = OpLoad %v3ulong %gl_GlobalInvocationID Aligned 0
|
||||||
|
%15 = OpCompositeExtract %ulong %14 0
|
||||||
|
%16 = OpShiftLeftLogical %ulong %15 %ulong_32
|
||||||
|
%17 = OpShiftRightArithmetic %ulong %16 %ulong_32
|
||||||
|
%18 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uchar %in %17
|
||||||
|
%19 = OpCopyObject %uchar %uchar_20
|
||||||
|
OpStore %18 %19
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,35 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 17
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Float64
|
||||||
|
OpMemoryModel Physical32 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "copy_double_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%v3uint = OpTypeVector %uint 3
|
||||||
|
%_ptr_UniformConstant_v3uint = OpTypePointer UniformConstant %v3uint
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%double = OpTypeFloat 64
|
||||||
|
%_ptr_CrossWorkgroup_double = OpTypePointer CrossWorkgroup %double
|
||||||
|
%10 = OpTypeFunction %void %_ptr_CrossWorkgroup_double
|
||||||
|
%double_3_1415926535897931 = OpConstant %double 3.1415926535897931
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3uint UniformConstant
|
||||||
|
%1 = OpFunction %void None %10
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_double
|
||||||
|
%12 = OpLabel
|
||||||
|
%13 = OpLoad %v3uint %gl_GlobalInvocationID Aligned 0
|
||||||
|
%14 = OpCompositeExtract %uint %13 0
|
||||||
|
%15 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_double %in %14
|
||||||
|
%16 = OpCopyObject %double %double_3_1415926535897931
|
||||||
|
OpStore %15 %16
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,39 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 20
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int64
|
||||||
|
OpCapability Float64
|
||||||
|
OpMemoryModel Physical64 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "copy_double_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%ulong = OpTypeInt 64 0
|
||||||
|
%v3ulong = OpTypeVector %ulong 3
|
||||||
|
%_ptr_UniformConstant_v3ulong = OpTypePointer UniformConstant %v3ulong
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%double = OpTypeFloat 64
|
||||||
|
%_ptr_CrossWorkgroup_double = OpTypePointer CrossWorkgroup %double
|
||||||
|
%10 = OpTypeFunction %void %_ptr_CrossWorkgroup_double
|
||||||
|
%ulong_32 = OpConstant %ulong 32
|
||||||
|
%double_3_1415926535897931 = OpConstant %double 3.1415926535897931
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3ulong UniformConstant
|
||||||
|
%1 = OpFunction %void None %10
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_double
|
||||||
|
%13 = OpLabel
|
||||||
|
%14 = OpLoad %v3ulong %gl_GlobalInvocationID Aligned 0
|
||||||
|
%15 = OpCompositeExtract %ulong %14 0
|
||||||
|
%16 = OpShiftLeftLogical %ulong %15 %ulong_32
|
||||||
|
%17 = OpShiftRightArithmetic %ulong %16 %ulong_32
|
||||||
|
%18 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_double %in %17
|
||||||
|
%19 = OpCopyObject %double %double_3_1415926535897931
|
||||||
|
OpStore %18 %19
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,34 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 17
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpMemoryModel Physical32 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "copy_float_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%v3uint = OpTypeVector %uint 3
|
||||||
|
%_ptr_UniformConstant_v3uint = OpTypePointer UniformConstant %v3uint
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%float = OpTypeFloat 32
|
||||||
|
%_ptr_CrossWorkgroup_float = OpTypePointer CrossWorkgroup %float
|
||||||
|
%10 = OpTypeFunction %void %_ptr_CrossWorkgroup_float
|
||||||
|
%float_3_14159274 = OpConstant %float 3.14159274
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3uint UniformConstant
|
||||||
|
%1 = OpFunction %void None %10
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_float
|
||||||
|
%12 = OpLabel
|
||||||
|
%13 = OpLoad %v3uint %gl_GlobalInvocationID Aligned 0
|
||||||
|
%14 = OpCompositeExtract %uint %13 0
|
||||||
|
%15 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_float %in %14
|
||||||
|
%16 = OpCopyObject %float %float_3_14159274
|
||||||
|
OpStore %15 %16
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,38 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 20
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int64
|
||||||
|
OpMemoryModel Physical64 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "copy_float_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%ulong = OpTypeInt 64 0
|
||||||
|
%v3ulong = OpTypeVector %ulong 3
|
||||||
|
%_ptr_UniformConstant_v3ulong = OpTypePointer UniformConstant %v3ulong
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%float = OpTypeFloat 32
|
||||||
|
%_ptr_CrossWorkgroup_float = OpTypePointer CrossWorkgroup %float
|
||||||
|
%10 = OpTypeFunction %void %_ptr_CrossWorkgroup_float
|
||||||
|
%ulong_32 = OpConstant %ulong 32
|
||||||
|
%float_3_14159274 = OpConstant %float 3.14159274
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3ulong UniformConstant
|
||||||
|
%1 = OpFunction %void None %10
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_float
|
||||||
|
%13 = OpLabel
|
||||||
|
%14 = OpLoad %v3ulong %gl_GlobalInvocationID Aligned 0
|
||||||
|
%15 = OpCompositeExtract %ulong %14 0
|
||||||
|
%16 = OpShiftLeftLogical %ulong %15 %ulong_32
|
||||||
|
%17 = OpShiftRightArithmetic %ulong %16 %ulong_32
|
||||||
|
%18 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_float %in %17
|
||||||
|
%19 = OpCopyObject %float %float_3_14159274
|
||||||
|
OpStore %18 %19
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,37 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 19
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Float16
|
||||||
|
OpMemoryModel Physical32 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "copy_half_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%v3uint = OpTypeVector %uint 3
|
||||||
|
%_ptr_UniformConstant_v3uint = OpTypePointer UniformConstant %v3uint
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%float = OpTypeFloat 32
|
||||||
|
%half = OpTypeFloat 16
|
||||||
|
%_ptr_CrossWorkgroup_float = OpTypePointer CrossWorkgroup %float
|
||||||
|
%11 = OpTypeFunction %void %_ptr_CrossWorkgroup_float
|
||||||
|
%half_0x1_ap_1 = OpConstant %half 0x1.ap+1
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3uint UniformConstant
|
||||||
|
%1 = OpFunction %void None %11
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_float
|
||||||
|
%13 = OpLabel
|
||||||
|
%14 = OpCopyObject %half %half_0x1_ap_1
|
||||||
|
%15 = OpFConvert %float %14
|
||||||
|
%16 = OpLoad %v3uint %gl_GlobalInvocationID Aligned 0
|
||||||
|
%17 = OpCompositeExtract %uint %16 0
|
||||||
|
%18 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_float %in %17
|
||||||
|
OpStore %18 %15
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,41 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 22
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int64
|
||||||
|
OpCapability Float16
|
||||||
|
OpMemoryModel Physical64 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "copy_half_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%ulong = OpTypeInt 64 0
|
||||||
|
%v3ulong = OpTypeVector %ulong 3
|
||||||
|
%_ptr_UniformConstant_v3ulong = OpTypePointer UniformConstant %v3ulong
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%float = OpTypeFloat 32
|
||||||
|
%half = OpTypeFloat 16
|
||||||
|
%_ptr_CrossWorkgroup_float = OpTypePointer CrossWorkgroup %float
|
||||||
|
%11 = OpTypeFunction %void %_ptr_CrossWorkgroup_float
|
||||||
|
%ulong_32 = OpConstant %ulong 32
|
||||||
|
%half_0x1_ap_1 = OpConstant %half 0x1.ap+1
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3ulong UniformConstant
|
||||||
|
%1 = OpFunction %void None %11
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_float
|
||||||
|
%14 = OpLabel
|
||||||
|
%15 = OpCopyObject %half %half_0x1_ap_1
|
||||||
|
%16 = OpFConvert %float %15
|
||||||
|
%17 = OpLoad %v3ulong %gl_GlobalInvocationID Aligned 0
|
||||||
|
%18 = OpCompositeExtract %ulong %17 0
|
||||||
|
%19 = OpShiftLeftLogical %ulong %18 %ulong_32
|
||||||
|
%20 = OpShiftRightArithmetic %ulong %19 %ulong_32
|
||||||
|
%21 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_float %in %20
|
||||||
|
OpStore %21 %16
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,36 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 19
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpMemoryModel Physical32 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "copy_int3_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%v3uint = OpTypeVector %uint 3
|
||||||
|
%_ptr_UniformConstant_v3uint = OpTypePointer UniformConstant %v3uint
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%_ptr_CrossWorkgroup_v3uint = OpTypePointer CrossWorkgroup %v3uint
|
||||||
|
%9 = OpTypeFunction %void %_ptr_CrossWorkgroup_v3uint
|
||||||
|
%uint_123 = OpConstant %uint 123
|
||||||
|
%uint_122 = OpConstant %uint 122
|
||||||
|
%uint_121 = OpConstant %uint 121
|
||||||
|
%13 = OpConstantComposite %v3uint %uint_123 %uint_122 %uint_121
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3uint UniformConstant
|
||||||
|
%1 = OpFunction %void None %9
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_v3uint
|
||||||
|
%14 = OpLabel
|
||||||
|
%15 = OpLoad %v3uint %gl_GlobalInvocationID Aligned 0
|
||||||
|
%16 = OpCompositeExtract %uint %15 0
|
||||||
|
%17 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_v3uint %in %16
|
||||||
|
%18 = OpCopyObject %v3uint %13
|
||||||
|
OpStore %17 %18 Aligned 16
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,42 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 24
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int64
|
||||||
|
OpMemoryModel Physical64 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "copy_int3_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%ulong = OpTypeInt 64 0
|
||||||
|
%v3ulong = OpTypeVector %ulong 3
|
||||||
|
%_ptr_UniformConstant_v3ulong = OpTypePointer UniformConstant %v3ulong
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%v3uint = OpTypeVector %uint 3
|
||||||
|
%_ptr_CrossWorkgroup_v3uint = OpTypePointer CrossWorkgroup %v3uint
|
||||||
|
%11 = OpTypeFunction %void %_ptr_CrossWorkgroup_v3uint
|
||||||
|
%ulong_32 = OpConstant %ulong 32
|
||||||
|
%uint_123 = OpConstant %uint 123
|
||||||
|
%uint_122 = OpConstant %uint 122
|
||||||
|
%uint_121 = OpConstant %uint 121
|
||||||
|
%16 = OpConstantComposite %v3uint %uint_123 %uint_122 %uint_121
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3ulong UniformConstant
|
||||||
|
%1 = OpFunction %void None %11
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_v3uint
|
||||||
|
%17 = OpLabel
|
||||||
|
%18 = OpLoad %v3ulong %gl_GlobalInvocationID Aligned 0
|
||||||
|
%19 = OpCompositeExtract %ulong %18 0
|
||||||
|
%20 = OpShiftLeftLogical %ulong %19 %ulong_32
|
||||||
|
%21 = OpShiftRightArithmetic %ulong %20 %ulong_32
|
||||||
|
%22 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_v3uint %in %21
|
||||||
|
%23 = OpCopyObject %v3uint %16
|
||||||
|
OpStore %22 %23 Aligned 16
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,38 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 21
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpMemoryModel Physical32 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "copy_int4_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%v3uint = OpTypeVector %uint 3
|
||||||
|
%_ptr_UniformConstant_v3uint = OpTypePointer UniformConstant %v3uint
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%v4uint = OpTypeVector %uint 4
|
||||||
|
%_ptr_CrossWorkgroup_v4uint = OpTypePointer CrossWorkgroup %v4uint
|
||||||
|
%10 = OpTypeFunction %void %_ptr_CrossWorkgroup_v4uint
|
||||||
|
%uint_123 = OpConstant %uint 123
|
||||||
|
%uint_122 = OpConstant %uint 122
|
||||||
|
%uint_121 = OpConstant %uint 121
|
||||||
|
%uint_119 = OpConstant %uint 119
|
||||||
|
%15 = OpConstantComposite %v4uint %uint_123 %uint_122 %uint_121 %uint_119
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3uint UniformConstant
|
||||||
|
%1 = OpFunction %void None %10
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_v4uint
|
||||||
|
%16 = OpLabel
|
||||||
|
%17 = OpLoad %v3uint %gl_GlobalInvocationID Aligned 0
|
||||||
|
%18 = OpCompositeExtract %uint %17 0
|
||||||
|
%19 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_v4uint %in %18
|
||||||
|
%20 = OpCopyObject %v4uint %15
|
||||||
|
OpStore %19 %20 Aligned 16
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,43 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 25
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int64
|
||||||
|
OpMemoryModel Physical64 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "copy_int4_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%ulong = OpTypeInt 64 0
|
||||||
|
%v3ulong = OpTypeVector %ulong 3
|
||||||
|
%_ptr_UniformConstant_v3ulong = OpTypePointer UniformConstant %v3ulong
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%v4uint = OpTypeVector %uint 4
|
||||||
|
%_ptr_CrossWorkgroup_v4uint = OpTypePointer CrossWorkgroup %v4uint
|
||||||
|
%11 = OpTypeFunction %void %_ptr_CrossWorkgroup_v4uint
|
||||||
|
%ulong_32 = OpConstant %ulong 32
|
||||||
|
%uint_123 = OpConstant %uint 123
|
||||||
|
%uint_122 = OpConstant %uint 122
|
||||||
|
%uint_121 = OpConstant %uint 121
|
||||||
|
%uint_119 = OpConstant %uint 119
|
||||||
|
%17 = OpConstantComposite %v4uint %uint_123 %uint_122 %uint_121 %uint_119
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3ulong UniformConstant
|
||||||
|
%1 = OpFunction %void None %11
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_v4uint
|
||||||
|
%18 = OpLabel
|
||||||
|
%19 = OpLoad %v3ulong %gl_GlobalInvocationID Aligned 0
|
||||||
|
%20 = OpCompositeExtract %ulong %19 0
|
||||||
|
%21 = OpShiftLeftLogical %ulong %20 %ulong_32
|
||||||
|
%22 = OpShiftRightArithmetic %ulong %21 %ulong_32
|
||||||
|
%23 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_v4uint %in %22
|
||||||
|
%24 = OpCopyObject %v4uint %17
|
||||||
|
OpStore %23 %24 Aligned 16
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,33 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 16
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpMemoryModel Physical32 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "copy_int_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%v3uint = OpTypeVector %uint 3
|
||||||
|
%_ptr_UniformConstant_v3uint = OpTypePointer UniformConstant %v3uint
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%_ptr_CrossWorkgroup_uint = OpTypePointer CrossWorkgroup %uint
|
||||||
|
%9 = OpTypeFunction %void %_ptr_CrossWorkgroup_uint
|
||||||
|
%uint_123 = OpConstant %uint 123
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3uint UniformConstant
|
||||||
|
%1 = OpFunction %void None %9
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%11 = OpLabel
|
||||||
|
%12 = OpLoad %v3uint %gl_GlobalInvocationID Aligned 0
|
||||||
|
%13 = OpCompositeExtract %uint %12 0
|
||||||
|
%14 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %in %13
|
||||||
|
%15 = OpCopyObject %uint %uint_123
|
||||||
|
OpStore %14 %15
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,38 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 20
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int64
|
||||||
|
OpMemoryModel Physical64 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "copy_int_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%ulong = OpTypeInt 64 0
|
||||||
|
%v3ulong = OpTypeVector %ulong 3
|
||||||
|
%_ptr_UniformConstant_v3ulong = OpTypePointer UniformConstant %v3ulong
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%_ptr_CrossWorkgroup_uint = OpTypePointer CrossWorkgroup %uint
|
||||||
|
%10 = OpTypeFunction %void %_ptr_CrossWorkgroup_uint
|
||||||
|
%ulong_32 = OpConstant %ulong 32
|
||||||
|
%uint_123 = OpConstant %uint 123
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3ulong UniformConstant
|
||||||
|
%1 = OpFunction %void None %10
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%13 = OpLabel
|
||||||
|
%14 = OpLoad %v3ulong %gl_GlobalInvocationID Aligned 0
|
||||||
|
%15 = OpCompositeExtract %ulong %14 0
|
||||||
|
%16 = OpShiftLeftLogical %ulong %15 %ulong_32
|
||||||
|
%17 = OpShiftRightArithmetic %ulong %16 %ulong_32
|
||||||
|
%18 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %in %17
|
||||||
|
%19 = OpCopyObject %uint %uint_123
|
||||||
|
OpStore %18 %19
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,35 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 17
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int64
|
||||||
|
OpMemoryModel Physical32 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "copy_long_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%v3uint = OpTypeVector %uint 3
|
||||||
|
%_ptr_UniformConstant_v3uint = OpTypePointer UniformConstant %v3uint
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%ulong = OpTypeInt 64 0
|
||||||
|
%_ptr_CrossWorkgroup_ulong = OpTypePointer CrossWorkgroup %ulong
|
||||||
|
%10 = OpTypeFunction %void %_ptr_CrossWorkgroup_ulong
|
||||||
|
%ulong_34359738368 = OpConstant %ulong 34359738368
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3uint UniformConstant
|
||||||
|
%1 = OpFunction %void None %10
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_ulong
|
||||||
|
%12 = OpLabel
|
||||||
|
%13 = OpLoad %v3uint %gl_GlobalInvocationID Aligned 0
|
||||||
|
%14 = OpCompositeExtract %uint %13 0
|
||||||
|
%15 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_ulong %in %14
|
||||||
|
%16 = OpCopyObject %ulong %ulong_34359738368
|
||||||
|
OpStore %15 %16
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,37 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 19
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int64
|
||||||
|
OpMemoryModel Physical64 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "copy_long_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%ulong = OpTypeInt 64 0
|
||||||
|
%v3ulong = OpTypeVector %ulong 3
|
||||||
|
%_ptr_UniformConstant_v3ulong = OpTypePointer UniformConstant %v3ulong
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%_ptr_CrossWorkgroup_ulong = OpTypePointer CrossWorkgroup %ulong
|
||||||
|
%9 = OpTypeFunction %void %_ptr_CrossWorkgroup_ulong
|
||||||
|
%ulong_32 = OpConstant %ulong 32
|
||||||
|
%ulong_34359738368 = OpConstant %ulong 34359738368
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3ulong UniformConstant
|
||||||
|
%1 = OpFunction %void None %9
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_ulong
|
||||||
|
%12 = OpLabel
|
||||||
|
%13 = OpLoad %v3ulong %gl_GlobalInvocationID Aligned 0
|
||||||
|
%14 = OpCompositeExtract %ulong %13 0
|
||||||
|
%15 = OpShiftLeftLogical %ulong %14 %ulong_32
|
||||||
|
%16 = OpShiftRightArithmetic %ulong %15 %ulong_32
|
||||||
|
%17 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_ulong %in %16
|
||||||
|
%18 = OpCopyObject %ulong %ulong_34359738368
|
||||||
|
OpStore %17 %18
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,35 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 17
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int16
|
||||||
|
OpMemoryModel Physical32 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "copy_short_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%v3uint = OpTypeVector %uint 3
|
||||||
|
%_ptr_UniformConstant_v3uint = OpTypePointer UniformConstant %v3uint
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%ushort = OpTypeInt 16 0
|
||||||
|
%_ptr_CrossWorkgroup_ushort = OpTypePointer CrossWorkgroup %ushort
|
||||||
|
%10 = OpTypeFunction %void %_ptr_CrossWorkgroup_ushort
|
||||||
|
%ushort_32000 = OpConstant %ushort 32000
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3uint UniformConstant
|
||||||
|
%1 = OpFunction %void None %10
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_ushort
|
||||||
|
%12 = OpLabel
|
||||||
|
%13 = OpLoad %v3uint %gl_GlobalInvocationID Aligned 0
|
||||||
|
%14 = OpCompositeExtract %uint %13 0
|
||||||
|
%15 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_ushort %in %14
|
||||||
|
%16 = OpCopyObject %ushort %ushort_32000
|
||||||
|
OpStore %15 %16
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,39 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 20
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int64
|
||||||
|
OpCapability Int16
|
||||||
|
OpMemoryModel Physical64 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "copy_short_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%ulong = OpTypeInt 64 0
|
||||||
|
%v3ulong = OpTypeVector %ulong 3
|
||||||
|
%_ptr_UniformConstant_v3ulong = OpTypePointer UniformConstant %v3ulong
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%ushort = OpTypeInt 16 0
|
||||||
|
%_ptr_CrossWorkgroup_ushort = OpTypePointer CrossWorkgroup %ushort
|
||||||
|
%10 = OpTypeFunction %void %_ptr_CrossWorkgroup_ushort
|
||||||
|
%ulong_32 = OpConstant %ulong 32
|
||||||
|
%ushort_32000 = OpConstant %ushort 32000
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3ulong UniformConstant
|
||||||
|
%1 = OpFunction %void None %10
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_ushort
|
||||||
|
%13 = OpLabel
|
||||||
|
%14 = OpLoad %v3ulong %gl_GlobalInvocationID Aligned 0
|
||||||
|
%15 = OpCompositeExtract %ulong %14 0
|
||||||
|
%16 = OpShiftLeftLogical %ulong %15 %ulong_32
|
||||||
|
%17 = OpShiftRightArithmetic %ulong %16 %ulong_32
|
||||||
|
%18 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_ushort %in %17
|
||||||
|
%19 = OpCopyObject %ushort %ushort_32000
|
||||||
|
OpStore %18 %19
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,38 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 20
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Int8
|
||||||
|
OpMemoryModel Physical32 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "copy_struct_int_char_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%v3uint = OpTypeVector %uint 3
|
||||||
|
%_ptr_UniformConstant_v3uint = OpTypePointer UniformConstant %v3uint
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%uchar = OpTypeInt 8 0
|
||||||
|
%_struct_9 = OpTypeStruct %uint %uchar
|
||||||
|
%_ptr_CrossWorkgroup__struct_9 = OpTypePointer CrossWorkgroup %_struct_9
|
||||||
|
%11 = OpTypeFunction %void %_ptr_CrossWorkgroup__struct_9
|
||||||
|
%uint_2100483600 = OpConstant %uint 2100483600
|
||||||
|
%uchar_128 = OpConstant %uchar 128
|
||||||
|
%14 = OpConstantComposite %_struct_9 %uint_2100483600 %uchar_128
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3uint UniformConstant
|
||||||
|
%1 = OpFunction %void None %11
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup__struct_9
|
||||||
|
%15 = OpLabel
|
||||||
|
%16 = OpLoad %v3uint %gl_GlobalInvocationID Aligned 0
|
||||||
|
%17 = OpCompositeExtract %uint %16 0
|
||||||
|
%18 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup__struct_9 %in %17
|
||||||
|
%19 = OpCopyObject %_struct_9 %14
|
||||||
|
OpStore %18 %19
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,43 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 24
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int64
|
||||||
|
OpCapability Int8
|
||||||
|
OpMemoryModel Physical64 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "copy_struct_int_char_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%ulong = OpTypeInt 64 0
|
||||||
|
%v3ulong = OpTypeVector %ulong 3
|
||||||
|
%_ptr_UniformConstant_v3ulong = OpTypePointer UniformConstant %v3ulong
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%uchar = OpTypeInt 8 0
|
||||||
|
%_struct_10 = OpTypeStruct %uint %uchar
|
||||||
|
%_ptr_CrossWorkgroup__struct_10 = OpTypePointer CrossWorkgroup %_struct_10
|
||||||
|
%12 = OpTypeFunction %void %_ptr_CrossWorkgroup__struct_10
|
||||||
|
%ulong_32 = OpConstant %ulong 32
|
||||||
|
%uint_2100483600 = OpConstant %uint 2100483600
|
||||||
|
%uchar_128 = OpConstant %uchar 128
|
||||||
|
%16 = OpConstantComposite %_struct_10 %uint_2100483600 %uchar_128
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3ulong UniformConstant
|
||||||
|
%1 = OpFunction %void None %12
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup__struct_10
|
||||||
|
%17 = OpLabel
|
||||||
|
%18 = OpLoad %v3ulong %gl_GlobalInvocationID Aligned 0
|
||||||
|
%19 = OpCompositeExtract %ulong %18 0
|
||||||
|
%20 = OpShiftLeftLogical %ulong %19 %ulong_32
|
||||||
|
%21 = OpShiftRightArithmetic %ulong %20 %ulong_32
|
||||||
|
%22 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup__struct_10 %in %21
|
||||||
|
%23 = OpCopyObject %_struct_10 %16
|
||||||
|
OpStore %22 %23
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,37 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 20
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Linkage
|
||||||
|
OpMemoryModel Physical32 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "copy_struct_int_float_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%v3uint = OpTypeVector %uint 3
|
||||||
|
%_ptr_UniformConstant_v3uint = OpTypePointer UniformConstant %v3uint
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%float = OpTypeFloat 32
|
||||||
|
%_struct_9 = OpTypeStruct %uint %float
|
||||||
|
%_ptr_CrossWorkgroup__struct_9 = OpTypePointer CrossWorkgroup %_struct_9
|
||||||
|
%11 = OpTypeFunction %void %_ptr_CrossWorkgroup__struct_9
|
||||||
|
%uint_1024 = OpConstant %uint 1024
|
||||||
|
%float_3_1415 = OpConstant %float 3.1415
|
||||||
|
%14 = OpConstantComposite %_struct_9 %uint_1024 %float_3_1415
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3uint UniformConstant
|
||||||
|
%1 = OpFunction %void None %11
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup__struct_9
|
||||||
|
%15 = OpLabel
|
||||||
|
%16 = OpLoad %v3uint %gl_GlobalInvocationID Aligned 0
|
||||||
|
%17 = OpCompositeExtract %uint %16 0
|
||||||
|
%18 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup__struct_9 %in %17
|
||||||
|
%19 = OpCopyObject %_struct_9 %14
|
||||||
|
OpStore %18 %19
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,42 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 24
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int64
|
||||||
|
OpMemoryModel Physical64 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "copy_struct_int_float_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%ulong = OpTypeInt 64 0
|
||||||
|
%v3ulong = OpTypeVector %ulong 3
|
||||||
|
%_ptr_UniformConstant_v3ulong = OpTypePointer UniformConstant %v3ulong
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%float = OpTypeFloat 32
|
||||||
|
%_struct_10 = OpTypeStruct %uint %float
|
||||||
|
%_ptr_CrossWorkgroup__struct_10 = OpTypePointer CrossWorkgroup %_struct_10
|
||||||
|
%12 = OpTypeFunction %void %_ptr_CrossWorkgroup__struct_10
|
||||||
|
%ulong_32 = OpConstant %ulong 32
|
||||||
|
%uint_1024 = OpConstant %uint 1024
|
||||||
|
%float_3_1415 = OpConstant %float 3.1415
|
||||||
|
%16 = OpConstantComposite %_struct_10 %uint_1024 %float_3_1415
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3ulong UniformConstant
|
||||||
|
%1 = OpFunction %void None %12
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup__struct_10
|
||||||
|
%17 = OpLabel
|
||||||
|
%18 = OpLoad %v3ulong %gl_GlobalInvocationID Aligned 0
|
||||||
|
%19 = OpCompositeExtract %ulong %18 0
|
||||||
|
%20 = OpShiftLeftLogical %ulong %19 %ulong_32
|
||||||
|
%21 = OpShiftRightArithmetic %ulong %20 %ulong_32
|
||||||
|
%22 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup__struct_10 %in %21
|
||||||
|
%23 = OpCopyObject %_struct_10 %16
|
||||||
|
OpStore %22 %23
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,44 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 26
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int8
|
||||||
|
OpCapability Linkage
|
||||||
|
OpMemoryModel Physical32 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "copy_struct_struct_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%v3uint = OpTypeVector %uint 3
|
||||||
|
%_ptr_UniformConstant_v3uint = OpTypePointer UniformConstant %v3uint
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%v2uint = OpTypeVector %uint 2
|
||||||
|
%uchar = OpTypeInt 8 0
|
||||||
|
%_struct_10 = OpTypeStruct %uint %uchar
|
||||||
|
%_struct_11 = OpTypeStruct %v2uint %_struct_10
|
||||||
|
%_ptr_CrossWorkgroup__struct_11 = OpTypePointer CrossWorkgroup %_struct_11
|
||||||
|
%13 = OpTypeFunction %void %_ptr_CrossWorkgroup__struct_11
|
||||||
|
%uint_2100483600 = OpConstant %uint 2100483600
|
||||||
|
%uchar_128 = OpConstant %uchar 128
|
||||||
|
%uint_2100480000 = OpConstant %uint 2100480000
|
||||||
|
%uint_2100480000_0 = OpConstant %uint 2100480000
|
||||||
|
%18 = OpConstantComposite %_struct_10 %uint_2100483600 %uchar_128
|
||||||
|
%19 = OpConstantComposite %v2uint %uint_2100480000 %uint_2100480000_0
|
||||||
|
%20 = OpConstantComposite %_struct_11 %19 %18
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3uint UniformConstant
|
||||||
|
%1 = OpFunction %void None %13
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup__struct_11
|
||||||
|
%21 = OpLabel
|
||||||
|
%22 = OpLoad %v3uint %gl_GlobalInvocationID Aligned 0
|
||||||
|
%23 = OpCompositeExtract %uint %22 0
|
||||||
|
%24 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup__struct_11 %in %23
|
||||||
|
%25 = OpCopyObject %_struct_11 %20
|
||||||
|
OpStore %24 %25
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,49 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 30
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int64
|
||||||
|
OpCapability Int8
|
||||||
|
OpMemoryModel Physical64 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "copy_struct_struct_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%ulong = OpTypeInt 64 0
|
||||||
|
%v3ulong = OpTypeVector %ulong 3
|
||||||
|
%_ptr_UniformConstant_v3ulong = OpTypePointer UniformConstant %v3ulong
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%v2uint = OpTypeVector %uint 2
|
||||||
|
%uchar = OpTypeInt 8 0
|
||||||
|
%_struct_11 = OpTypeStruct %uint %uchar
|
||||||
|
%_struct_12 = OpTypeStruct %v2uint %_struct_11
|
||||||
|
%_ptr_CrossWorkgroup__struct_12 = OpTypePointer CrossWorkgroup %_struct_12
|
||||||
|
%14 = OpTypeFunction %void %_ptr_CrossWorkgroup__struct_12
|
||||||
|
%ulong_32 = OpConstant %ulong 32
|
||||||
|
%uint_2100483600 = OpConstant %uint 2100483600
|
||||||
|
%uchar_128 = OpConstant %uchar 128
|
||||||
|
%uint_2100480000 = OpConstant %uint 2100480000
|
||||||
|
%uint_2100480000_0 = OpConstant %uint 2100480000
|
||||||
|
%20 = OpConstantComposite %_struct_11 %uint_2100483600 %uchar_128
|
||||||
|
%21 = OpConstantComposite %v2uint %uint_2100480000 %uint_2100480000_0
|
||||||
|
%22 = OpConstantComposite %_struct_12 %21 %20
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3ulong UniformConstant
|
||||||
|
%1 = OpFunction %void None %14
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup__struct_12
|
||||||
|
%23 = OpLabel
|
||||||
|
%24 = OpLoad %v3ulong %gl_GlobalInvocationID Aligned 0
|
||||||
|
%25 = OpCompositeExtract %ulong %24 0
|
||||||
|
%26 = OpShiftLeftLogical %ulong %25 %ulong_32
|
||||||
|
%27 = OpShiftRightArithmetic %ulong %26 %ulong_32
|
||||||
|
%28 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup__struct_12 %in %27
|
||||||
|
%29 = OpCopyObject %_struct_12 %22
|
||||||
|
OpStore %28 %29
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,35 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 17
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int8
|
||||||
|
OpMemoryModel Physical32 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "copy_uchar_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%v3uint = OpTypeVector %uint 3
|
||||||
|
%_ptr_UniformConstant_v3uint = OpTypePointer UniformConstant %v3uint
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%uchar = OpTypeInt 8 0
|
||||||
|
%_ptr_CrossWorkgroup_uchar = OpTypePointer CrossWorkgroup %uchar
|
||||||
|
%10 = OpTypeFunction %void %_ptr_CrossWorkgroup_uchar
|
||||||
|
%uchar_19 = OpConstant %uchar 19
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3uint UniformConstant
|
||||||
|
%1 = OpFunction %void None %10
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_uchar
|
||||||
|
%12 = OpLabel
|
||||||
|
%13 = OpLoad %v3uint %gl_GlobalInvocationID Aligned 0
|
||||||
|
%14 = OpCompositeExtract %uint %13 0
|
||||||
|
%15 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uchar %in %14
|
||||||
|
%16 = OpCopyObject %uchar %uchar_19
|
||||||
|
OpStore %15 %16
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,39 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 20
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int64
|
||||||
|
OpCapability Int8
|
||||||
|
OpMemoryModel Physical64 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "copy_uchar_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%ulong = OpTypeInt 64 0
|
||||||
|
%v3ulong = OpTypeVector %ulong 3
|
||||||
|
%_ptr_UniformConstant_v3ulong = OpTypePointer UniformConstant %v3ulong
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%uchar = OpTypeInt 8 0
|
||||||
|
%_ptr_CrossWorkgroup_uchar = OpTypePointer CrossWorkgroup %uchar
|
||||||
|
%10 = OpTypeFunction %void %_ptr_CrossWorkgroup_uchar
|
||||||
|
%ulong_32 = OpConstant %ulong 32
|
||||||
|
%uchar_19 = OpConstant %uchar 19
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3ulong UniformConstant
|
||||||
|
%1 = OpFunction %void None %10
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_uchar
|
||||||
|
%13 = OpLabel
|
||||||
|
%14 = OpLoad %v3ulong %gl_GlobalInvocationID Aligned 0
|
||||||
|
%15 = OpCompositeExtract %ulong %14 0
|
||||||
|
%16 = OpShiftLeftLogical %ulong %15 %ulong_32
|
||||||
|
%17 = OpShiftRightArithmetic %ulong %16 %ulong_32
|
||||||
|
%18 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uchar %in %17
|
||||||
|
%19 = OpCopyObject %uchar %uchar_19
|
||||||
|
OpStore %18 %19
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,33 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 16
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpMemoryModel Physical32 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "copy_uint_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%v3uint = OpTypeVector %uint 3
|
||||||
|
%_ptr_UniformConstant_v3uint = OpTypePointer UniformConstant %v3uint
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%_ptr_CrossWorkgroup_uint = OpTypePointer CrossWorkgroup %uint
|
||||||
|
%9 = OpTypeFunction %void %_ptr_CrossWorkgroup_uint
|
||||||
|
%uint_54321 = OpConstant %uint 54321
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3uint UniformConstant
|
||||||
|
%1 = OpFunction %void None %9
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%11 = OpLabel
|
||||||
|
%12 = OpLoad %v3uint %gl_GlobalInvocationID Aligned 0
|
||||||
|
%13 = OpCompositeExtract %uint %12 0
|
||||||
|
%14 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %in %13
|
||||||
|
%15 = OpCopyObject %uint %uint_54321
|
||||||
|
OpStore %14 %15
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,38 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 20
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int64
|
||||||
|
OpMemoryModel Physical64 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "copy_uint_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%ulong = OpTypeInt 64 0
|
||||||
|
%v3ulong = OpTypeVector %ulong 3
|
||||||
|
%_ptr_UniformConstant_v3ulong = OpTypePointer UniformConstant %v3ulong
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%_ptr_CrossWorkgroup_uint = OpTypePointer CrossWorkgroup %uint
|
||||||
|
%10 = OpTypeFunction %void %_ptr_CrossWorkgroup_uint
|
||||||
|
%ulong_32 = OpConstant %ulong 32
|
||||||
|
%uint_54321 = OpConstant %uint 54321
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3ulong UniformConstant
|
||||||
|
%1 = OpFunction %void None %10
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%13 = OpLabel
|
||||||
|
%14 = OpLoad %v3ulong %gl_GlobalInvocationID Aligned 0
|
||||||
|
%15 = OpCompositeExtract %ulong %14 0
|
||||||
|
%16 = OpShiftLeftLogical %ulong %15 %ulong_32
|
||||||
|
%17 = OpShiftRightArithmetic %ulong %16 %ulong_32
|
||||||
|
%18 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %in %17
|
||||||
|
%19 = OpCopyObject %uint %uint_54321
|
||||||
|
OpStore %18 %19
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,35 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 17
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int64
|
||||||
|
OpMemoryModel Physical32 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "copy_ulong_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%v3uint = OpTypeVector %uint 3
|
||||||
|
%_ptr_UniformConstant_v3uint = OpTypePointer UniformConstant %v3uint
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%ulong = OpTypeInt 64 0
|
||||||
|
%_ptr_CrossWorkgroup_ulong = OpTypePointer CrossWorkgroup %ulong
|
||||||
|
%10 = OpTypeFunction %void %_ptr_CrossWorkgroup_ulong
|
||||||
|
%ulong_9223372036854775810 = OpConstant %ulong 9223372036854775810
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3uint UniformConstant
|
||||||
|
%1 = OpFunction %void None %10
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_ulong
|
||||||
|
%12 = OpLabel
|
||||||
|
%13 = OpLoad %v3uint %gl_GlobalInvocationID Aligned 0
|
||||||
|
%14 = OpCompositeExtract %uint %13 0
|
||||||
|
%15 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_ulong %in %14
|
||||||
|
%16 = OpCopyObject %ulong %ulong_9223372036854775810
|
||||||
|
OpStore %15 %16
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,37 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 19
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int64
|
||||||
|
OpMemoryModel Physical64 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "copy_ulong_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%ulong = OpTypeInt 64 0
|
||||||
|
%v3ulong = OpTypeVector %ulong 3
|
||||||
|
%_ptr_UniformConstant_v3ulong = OpTypePointer UniformConstant %v3ulong
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%_ptr_CrossWorkgroup_ulong = OpTypePointer CrossWorkgroup %ulong
|
||||||
|
%9 = OpTypeFunction %void %_ptr_CrossWorkgroup_ulong
|
||||||
|
%ulong_32 = OpConstant %ulong 32
|
||||||
|
%ulong_9223372036854775810 = OpConstant %ulong 9223372036854775810
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3ulong UniformConstant
|
||||||
|
%1 = OpFunction %void None %9
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_ulong
|
||||||
|
%12 = OpLabel
|
||||||
|
%13 = OpLoad %v3ulong %gl_GlobalInvocationID Aligned 0
|
||||||
|
%14 = OpCompositeExtract %ulong %13 0
|
||||||
|
%15 = OpShiftLeftLogical %ulong %14 %ulong_32
|
||||||
|
%16 = OpShiftRightArithmetic %ulong %15 %ulong_32
|
||||||
|
%17 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_ulong %in %16
|
||||||
|
%18 = OpCopyObject %ulong %ulong_9223372036854775810
|
||||||
|
OpStore %17 %18
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,35 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 17
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int16
|
||||||
|
OpMemoryModel Physical32 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "copy_ushort_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%v3uint = OpTypeVector %uint 3
|
||||||
|
%_ptr_UniformConstant_v3uint = OpTypePointer UniformConstant %v3uint
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%ushort = OpTypeInt 16 0
|
||||||
|
%_ptr_CrossWorkgroup_ushort = OpTypePointer CrossWorkgroup %ushort
|
||||||
|
%10 = OpTypeFunction %void %_ptr_CrossWorkgroup_ushort
|
||||||
|
%ushort_65000 = OpConstant %ushort 65000
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3uint UniformConstant
|
||||||
|
%1 = OpFunction %void None %10
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_ushort
|
||||||
|
%12 = OpLabel
|
||||||
|
%13 = OpLoad %v3uint %gl_GlobalInvocationID Aligned 0
|
||||||
|
%14 = OpCompositeExtract %uint %13 0
|
||||||
|
%15 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_ushort %in %14
|
||||||
|
%16 = OpCopyObject %ushort %ushort_65000
|
||||||
|
OpStore %15 %16
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,39 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 20
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int64
|
||||||
|
OpCapability Int16
|
||||||
|
OpMemoryModel Physical64 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "copy_ushort_simple"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
%ulong = OpTypeInt 64 0
|
||||||
|
%v3ulong = OpTypeVector %ulong 3
|
||||||
|
%_ptr_UniformConstant_v3ulong = OpTypePointer UniformConstant %v3ulong
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%ushort = OpTypeInt 16 0
|
||||||
|
%_ptr_CrossWorkgroup_ushort = OpTypePointer CrossWorkgroup %ushort
|
||||||
|
%10 = OpTypeFunction %void %_ptr_CrossWorkgroup_ushort
|
||||||
|
%ulong_32 = OpConstant %ulong 32
|
||||||
|
%ushort_65000 = OpConstant %ushort 65000
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3ulong UniformConstant
|
||||||
|
%1 = OpFunction %void None %10
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup_ushort
|
||||||
|
%13 = OpLabel
|
||||||
|
%14 = OpLoad %v3ulong %gl_GlobalInvocationID Aligned 0
|
||||||
|
%15 = OpCompositeExtract %ulong %14 0
|
||||||
|
%16 = OpShiftLeftLogical %ulong %15 %ulong_32
|
||||||
|
%17 = OpShiftRightArithmetic %ulong %16 %ulong_32
|
||||||
|
%18 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_ushort %in %17
|
||||||
|
%19 = OpCopyObject %ushort %ushort_65000
|
||||||
|
OpStore %18 %19
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,43 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 22
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpMemoryModel Physical32 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "decorate_aliased"
|
||||||
|
OpName %res "res"
|
||||||
|
OpName %lhs "lhs"
|
||||||
|
OpName %rhs "rhs"
|
||||||
|
OpName %entry "entry"
|
||||||
|
OpDecorate %6 Aliased
|
||||||
|
%6 = OpDecorationGroup
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
OpGroupDecorate %6 %res %lhs %rhs
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%v3uint = OpTypeVector %uint 3
|
||||||
|
%_ptr_UniformConstant_v3uint = OpTypePointer UniformConstant %v3uint
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%_ptr_CrossWorkgroup_uint = OpTypePointer CrossWorkgroup %uint
|
||||||
|
%13 = OpTypeFunction %void %_ptr_CrossWorkgroup_uint %_ptr_CrossWorkgroup_uint %_ptr_CrossWorkgroup_uint
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3uint UniformConstant
|
||||||
|
%1 = OpFunction %void None %13
|
||||||
|
%res = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%lhs = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%rhs = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%entry = OpLabel
|
||||||
|
%14 = OpLoad %v3uint %gl_GlobalInvocationID Aligned 0
|
||||||
|
%15 = OpCompositeExtract %uint %14 0
|
||||||
|
%16 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %lhs %15
|
||||||
|
%17 = OpLoad %uint %16 Aligned 4
|
||||||
|
%18 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %rhs %15
|
||||||
|
%19 = OpLoad %uint %18 Aligned 4
|
||||||
|
%20 = OpIAdd %uint %17 %19
|
||||||
|
%21 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %res %15
|
||||||
|
OpStore %21 %20 Aligned 4
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,48 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 26
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int64
|
||||||
|
OpMemoryModel Physical64 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "decorate_aliased"
|
||||||
|
OpName %res "res"
|
||||||
|
OpName %lhs "lhs"
|
||||||
|
OpName %rhs "rhs"
|
||||||
|
OpName %entry "entry"
|
||||||
|
OpDecorate %6 Aliased
|
||||||
|
%6 = OpDecorationGroup
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
OpGroupDecorate %6 %res %lhs %rhs
|
||||||
|
%ulong = OpTypeInt 64 0
|
||||||
|
%v3ulong = OpTypeVector %ulong 3
|
||||||
|
%_ptr_UniformConstant_v3ulong = OpTypePointer UniformConstant %v3ulong
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%_ptr_CrossWorkgroup_uint = OpTypePointer CrossWorkgroup %uint
|
||||||
|
%14 = OpTypeFunction %void %_ptr_CrossWorkgroup_uint %_ptr_CrossWorkgroup_uint %_ptr_CrossWorkgroup_uint
|
||||||
|
%ulong_32 = OpConstant %ulong 32
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3ulong UniformConstant
|
||||||
|
%1 = OpFunction %void None %14
|
||||||
|
%res = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%lhs = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%rhs = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%entry = OpLabel
|
||||||
|
%16 = OpLoad %v3ulong %gl_GlobalInvocationID Aligned 0
|
||||||
|
%17 = OpCompositeExtract %ulong %16 0
|
||||||
|
%18 = OpShiftLeftLogical %ulong %17 %ulong_32
|
||||||
|
%19 = OpShiftRightArithmetic %ulong %18 %ulong_32
|
||||||
|
%20 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %lhs %19
|
||||||
|
%21 = OpLoad %uint %20 Aligned 4
|
||||||
|
%22 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %rhs %19
|
||||||
|
%23 = OpLoad %uint %22 Aligned 4
|
||||||
|
%24 = OpIAdd %uint %21 %23
|
||||||
|
%25 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %res %19
|
||||||
|
OpStore %25 %24 Aligned 4
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,43 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 22
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpMemoryModel Physical32 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "decorate_alignment"
|
||||||
|
OpName %res "res"
|
||||||
|
OpName %lhs "lhs"
|
||||||
|
OpName %rhs "rhs"
|
||||||
|
OpName %entry "entry"
|
||||||
|
OpDecorate %6 Alignment 4
|
||||||
|
%6 = OpDecorationGroup
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
OpGroupDecorate %6 %res %lhs %rhs
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%v3uint = OpTypeVector %uint 3
|
||||||
|
%_ptr_UniformConstant_v3uint = OpTypePointer UniformConstant %v3uint
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%_ptr_CrossWorkgroup_uint = OpTypePointer CrossWorkgroup %uint
|
||||||
|
%13 = OpTypeFunction %void %_ptr_CrossWorkgroup_uint %_ptr_CrossWorkgroup_uint %_ptr_CrossWorkgroup_uint
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3uint UniformConstant
|
||||||
|
%1 = OpFunction %void None %13
|
||||||
|
%res = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%lhs = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%rhs = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%entry = OpLabel
|
||||||
|
%14 = OpLoad %v3uint %gl_GlobalInvocationID Aligned 0
|
||||||
|
%15 = OpCompositeExtract %uint %14 0
|
||||||
|
%16 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %lhs %15
|
||||||
|
%17 = OpLoad %uint %16 Aligned 4
|
||||||
|
%18 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %rhs %15
|
||||||
|
%19 = OpLoad %uint %18 Aligned 4
|
||||||
|
%20 = OpIAdd %uint %17 %19
|
||||||
|
%21 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %res %15
|
||||||
|
OpStore %21 %20 Aligned 4
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,48 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 26
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int64
|
||||||
|
OpMemoryModel Physical64 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "decorate_alignment"
|
||||||
|
OpName %res "res"
|
||||||
|
OpName %lhs "lhs"
|
||||||
|
OpName %rhs "rhs"
|
||||||
|
OpName %entry "entry"
|
||||||
|
OpDecorate %6 Alignment 4
|
||||||
|
%6 = OpDecorationGroup
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
OpGroupDecorate %6 %res %lhs %rhs
|
||||||
|
%ulong = OpTypeInt 64 0
|
||||||
|
%v3ulong = OpTypeVector %ulong 3
|
||||||
|
%_ptr_UniformConstant_v3ulong = OpTypePointer UniformConstant %v3ulong
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%_ptr_CrossWorkgroup_uint = OpTypePointer CrossWorkgroup %uint
|
||||||
|
%14 = OpTypeFunction %void %_ptr_CrossWorkgroup_uint %_ptr_CrossWorkgroup_uint %_ptr_CrossWorkgroup_uint
|
||||||
|
%ulong_32 = OpConstant %ulong 32
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3ulong UniformConstant
|
||||||
|
%1 = OpFunction %void None %14
|
||||||
|
%res = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%lhs = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%rhs = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%entry = OpLabel
|
||||||
|
%16 = OpLoad %v3ulong %gl_GlobalInvocationID Aligned 0
|
||||||
|
%17 = OpCompositeExtract %ulong %16 0
|
||||||
|
%18 = OpShiftLeftLogical %ulong %17 %ulong_32
|
||||||
|
%19 = OpShiftRightArithmetic %ulong %18 %ulong_32
|
||||||
|
%20 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %lhs %19
|
||||||
|
%21 = OpLoad %uint %20 Aligned 4
|
||||||
|
%22 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %rhs %19
|
||||||
|
%23 = OpLoad %uint %22 Aligned 4
|
||||||
|
%24 = OpIAdd %uint %21 %23
|
||||||
|
%25 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %res %19
|
||||||
|
OpStore %25 %24 Aligned 4
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,80 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 40
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability ImageBasic
|
||||||
|
OpCapability LiteralSampler
|
||||||
|
%1 = OpExtInstImport "OpenCL.std"
|
||||||
|
OpMemoryModel Physical32 OpenCL
|
||||||
|
OpEntryPoint Kernel %2 "decorate_coherent"
|
||||||
|
OpName %sampler "sampler"
|
||||||
|
OpName %__spirv_BuiltInGlobalInvocationId "__spirv_BuiltInGlobalInvocationId"
|
||||||
|
OpName %__spirv_BuiltInGlobalSize "__spirv_BuiltInGlobalSize"
|
||||||
|
OpName %dst "dst"
|
||||||
|
OpName %src "src"
|
||||||
|
OpName %entry "entry"
|
||||||
|
OpName %call "call"
|
||||||
|
OpName %call1 "call1"
|
||||||
|
OpName %call2 "call2"
|
||||||
|
OpName %mul "mul"
|
||||||
|
OpName %add "add"
|
||||||
|
OpName %vecinit "vecinit"
|
||||||
|
OpName %vecinit6 "vecinit6"
|
||||||
|
OpName %TempSampledImage "TempSampledImage"
|
||||||
|
OpName %call7_old "call7.old"
|
||||||
|
OpName %arrayidx "arrayidx"
|
||||||
|
OpDecorate %src Coherent
|
||||||
|
OpDecorate %19 Constant
|
||||||
|
%19 = OpDecorationGroup
|
||||||
|
OpDecorate %__spirv_BuiltInGlobalInvocationId BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %__spirv_BuiltInGlobalSize BuiltIn GlobalSize
|
||||||
|
OpDecorate %dst FuncParamAttr NoCapture
|
||||||
|
OpDecorate %sampler LinkageAttributes "sampler" Export
|
||||||
|
OpDecorate %__spirv_BuiltInGlobalSize LinkageAttributes "__spirv_BuiltInGlobalSize" Import
|
||||||
|
OpDecorate %__spirv_BuiltInGlobalInvocationId LinkageAttributes "__spirv_BuiltInGlobalInvocationId" Import
|
||||||
|
OpDecorate %sampler Alignment 4
|
||||||
|
OpGroupDecorate %19 %sampler %__spirv_BuiltInGlobalInvocationId %__spirv_BuiltInGlobalSize
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%uint_16 = OpConstant %uint 16
|
||||||
|
%_ptr_UniformConstant_uint = OpTypePointer UniformConstant %uint
|
||||||
|
%v3uint = OpTypeVector %uint 3
|
||||||
|
%_ptr_UniformConstant_v3uint = OpTypePointer UniformConstant %v3uint
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%v4uint = OpTypeVector %uint 4
|
||||||
|
%_ptr_CrossWorkgroup_v4uint = OpTypePointer CrossWorkgroup %v4uint
|
||||||
|
%28 = OpTypeImage %void 2D 0 0 0 0 Unknown ReadOnly
|
||||||
|
%29 = OpTypeFunction %void %_ptr_CrossWorkgroup_v4uint %28
|
||||||
|
%v2uint = OpTypeVector %uint 2
|
||||||
|
%31 = OpTypeSampler
|
||||||
|
%32 = OpTypeSampledImage %28
|
||||||
|
%float = OpTypeFloat 32
|
||||||
|
%34 = OpConstantSampler %31 None 0 Nearest
|
||||||
|
%float_0 = OpConstant %float 0
|
||||||
|
%sampler = OpVariable %_ptr_UniformConstant_uint UniformConstant %uint_16
|
||||||
|
%__spirv_BuiltInGlobalInvocationId = OpVariable %_ptr_UniformConstant_v3uint UniformConstant
|
||||||
|
%__spirv_BuiltInGlobalSize = OpVariable %_ptr_UniformConstant_v3uint UniformConstant
|
||||||
|
%2 = OpFunction %void None %29
|
||||||
|
%dst = OpFunctionParameter %_ptr_CrossWorkgroup_v4uint
|
||||||
|
%src = OpFunctionParameter %28
|
||||||
|
%entry = OpLabel
|
||||||
|
%36 = OpUndef %v2uint
|
||||||
|
%37 = OpLoad %v3uint %__spirv_BuiltInGlobalInvocationId Aligned 0
|
||||||
|
%call = OpCompositeExtract %uint %37 0
|
||||||
|
%38 = OpLoad %v3uint %__spirv_BuiltInGlobalInvocationId Aligned 0
|
||||||
|
%call1 = OpCompositeExtract %uint %38 1
|
||||||
|
%39 = OpLoad %v3uint %__spirv_BuiltInGlobalSize Aligned 0
|
||||||
|
%call2 = OpCompositeExtract %uint %39 0
|
||||||
|
%mul = OpIMul %uint %call2 %call1
|
||||||
|
%add = OpIAdd %uint %mul %call
|
||||||
|
%vecinit = OpCompositeInsert %v2uint %call1 %36 0
|
||||||
|
%vecinit6 = OpCompositeInsert %v2uint %call %vecinit 1
|
||||||
|
%TempSampledImage = OpSampledImage %32 %src %34
|
||||||
|
%call7_old = OpImageSampleExplicitLod %v4uint %TempSampledImage %vecinit6 Lod %float_0
|
||||||
|
%arrayidx = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_v4uint %dst %add
|
||||||
|
OpStore %arrayidx %call7_old Aligned 16
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,93 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 47
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int64
|
||||||
|
OpCapability ImageBasic
|
||||||
|
OpCapability LiteralSampler
|
||||||
|
%1 = OpExtInstImport "OpenCL.std"
|
||||||
|
OpMemoryModel Physical64 OpenCL
|
||||||
|
OpEntryPoint Kernel %2 "decorate_coherent"
|
||||||
|
OpName %sampler "sampler"
|
||||||
|
OpName %__spirv_BuiltInGlobalInvocationId "__spirv_BuiltInGlobalInvocationId"
|
||||||
|
OpName %__spirv_BuiltInGlobalSize "__spirv_BuiltInGlobalSize"
|
||||||
|
OpName %dst "dst"
|
||||||
|
OpName %src "src"
|
||||||
|
OpName %entry "entry"
|
||||||
|
OpName %call "call"
|
||||||
|
OpName %conv "conv"
|
||||||
|
OpName %call1 "call1"
|
||||||
|
OpName %conv2 "conv2"
|
||||||
|
OpName %conv3 "conv3"
|
||||||
|
OpName %call4 "call4"
|
||||||
|
OpName %mul "mul"
|
||||||
|
OpName %add "add"
|
||||||
|
OpName %vecinit "vecinit"
|
||||||
|
OpName %vecinit10 "vecinit10"
|
||||||
|
OpName %TempSampledImage "TempSampledImage"
|
||||||
|
OpName %call11_old "call11.old"
|
||||||
|
OpName %sext "sext"
|
||||||
|
OpName %idxprom "idxprom"
|
||||||
|
OpName %arrayidx "arrayidx"
|
||||||
|
OpDecorate %src Coherent
|
||||||
|
OpDecorate %24 Constant
|
||||||
|
%24 = OpDecorationGroup
|
||||||
|
OpDecorate %__spirv_BuiltInGlobalInvocationId BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %__spirv_BuiltInGlobalSize BuiltIn GlobalSize
|
||||||
|
OpDecorate %dst FuncParamAttr NoCapture
|
||||||
|
OpDecorate %sampler LinkageAttributes "sampler" Export
|
||||||
|
OpDecorate %__spirv_BuiltInGlobalSize LinkageAttributes "__spirv_BuiltInGlobalSize" Import
|
||||||
|
OpDecorate %__spirv_BuiltInGlobalInvocationId LinkageAttributes "__spirv_BuiltInGlobalInvocationId" Import
|
||||||
|
OpDecorate %sampler Alignment 4
|
||||||
|
OpGroupDecorate %24 %sampler %__spirv_BuiltInGlobalInvocationId %__spirv_BuiltInGlobalSize
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%ulong = OpTypeInt 64 0
|
||||||
|
%uint_16 = OpConstant %uint 16
|
||||||
|
%ulong_32 = OpConstant %ulong 32
|
||||||
|
%_ptr_UniformConstant_uint = OpTypePointer UniformConstant %uint
|
||||||
|
%v3ulong = OpTypeVector %ulong 3
|
||||||
|
%_ptr_UniformConstant_v3ulong = OpTypePointer UniformConstant %v3ulong
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%v4uint = OpTypeVector %uint 4
|
||||||
|
%_ptr_CrossWorkgroup_v4uint = OpTypePointer CrossWorkgroup %v4uint
|
||||||
|
%35 = OpTypeImage %void 2D 0 0 0 0 Unknown ReadOnly
|
||||||
|
%36 = OpTypeFunction %void %_ptr_CrossWorkgroup_v4uint %35
|
||||||
|
%v2uint = OpTypeVector %uint 2
|
||||||
|
%38 = OpTypeSampler
|
||||||
|
%39 = OpTypeSampledImage %35
|
||||||
|
%float = OpTypeFloat 32
|
||||||
|
%41 = OpConstantSampler %38 None 0 Nearest
|
||||||
|
%float_0 = OpConstant %float 0
|
||||||
|
%sampler = OpVariable %_ptr_UniformConstant_uint UniformConstant %uint_16
|
||||||
|
%__spirv_BuiltInGlobalInvocationId = OpVariable %_ptr_UniformConstant_v3ulong UniformConstant
|
||||||
|
%__spirv_BuiltInGlobalSize = OpVariable %_ptr_UniformConstant_v3ulong UniformConstant
|
||||||
|
%2 = OpFunction %void None %36
|
||||||
|
%dst = OpFunctionParameter %_ptr_CrossWorkgroup_v4uint
|
||||||
|
%src = OpFunctionParameter %35
|
||||||
|
%entry = OpLabel
|
||||||
|
%43 = OpUndef %v2uint
|
||||||
|
%44 = OpLoad %v3ulong %__spirv_BuiltInGlobalInvocationId Aligned 0
|
||||||
|
%call = OpCompositeExtract %ulong %44 0
|
||||||
|
%conv = OpUConvert %uint %call
|
||||||
|
%45 = OpLoad %v3ulong %__spirv_BuiltInGlobalInvocationId Aligned 0
|
||||||
|
%call1 = OpCompositeExtract %ulong %45 1
|
||||||
|
%conv2 = OpUConvert %uint %call1
|
||||||
|
%conv3 = OpSConvert %ulong %conv2
|
||||||
|
%46 = OpLoad %v3ulong %__spirv_BuiltInGlobalSize Aligned 0
|
||||||
|
%call4 = OpCompositeExtract %ulong %46 0
|
||||||
|
%mul = OpIMul %ulong %conv3 %call4
|
||||||
|
%add = OpIAdd %ulong %mul %call
|
||||||
|
%vecinit = OpCompositeInsert %v2uint %conv2 %43 0
|
||||||
|
%vecinit10 = OpCompositeInsert %v2uint %conv %vecinit 1
|
||||||
|
%TempSampledImage = OpSampledImage %39 %src %41
|
||||||
|
%call11_old = OpImageSampleExplicitLod %v4uint %TempSampledImage %vecinit10 Lod %float_0
|
||||||
|
%sext = OpShiftLeftLogical %ulong %add %ulong_32
|
||||||
|
%idxprom = OpShiftRightArithmetic %ulong %sext %ulong_32
|
||||||
|
%arrayidx = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_v4uint %dst %idxprom
|
||||||
|
OpStore %arrayidx %call11_old Aligned 16
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,43 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 22
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpMemoryModel Physical32 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "decorate_constant"
|
||||||
|
OpName %res "res"
|
||||||
|
OpName %lhs "lhs"
|
||||||
|
OpName %rhs "rhs"
|
||||||
|
OpName %entry "entry"
|
||||||
|
OpDecorate %6 Constant
|
||||||
|
%6 = OpDecorationGroup
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
OpGroupDecorate %6 %lhs %rhs
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%v3uint = OpTypeVector %uint 3
|
||||||
|
%_ptr_UniformConstant_v3uint = OpTypePointer UniformConstant %v3uint
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%_ptr_CrossWorkgroup_uint = OpTypePointer CrossWorkgroup %uint
|
||||||
|
%13 = OpTypeFunction %void %_ptr_CrossWorkgroup_uint %_ptr_CrossWorkgroup_uint %_ptr_CrossWorkgroup_uint
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3uint UniformConstant
|
||||||
|
%1 = OpFunction %void None %13
|
||||||
|
%res = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%lhs = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%rhs = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%entry = OpLabel
|
||||||
|
%14 = OpLoad %v3uint %gl_GlobalInvocationID Aligned 0
|
||||||
|
%15 = OpCompositeExtract %uint %14 0
|
||||||
|
%16 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %lhs %15
|
||||||
|
%17 = OpLoad %uint %16 Aligned 4
|
||||||
|
%18 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %rhs %15
|
||||||
|
%19 = OpLoad %uint %18 Aligned 4
|
||||||
|
%20 = OpIAdd %uint %17 %19
|
||||||
|
%21 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %res %15
|
||||||
|
OpStore %21 %20 Aligned 4
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,48 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 26
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int64
|
||||||
|
OpMemoryModel Physical64 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "decorate_constant"
|
||||||
|
OpName %res "res"
|
||||||
|
OpName %lhs "lhs"
|
||||||
|
OpName %rhs "rhs"
|
||||||
|
OpName %entry "entry"
|
||||||
|
OpDecorate %6 Constant
|
||||||
|
%6 = OpDecorationGroup
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
OpGroupDecorate %6 %lhs %rhs
|
||||||
|
%ulong = OpTypeInt 64 0
|
||||||
|
%v3ulong = OpTypeVector %ulong 3
|
||||||
|
%_ptr_UniformConstant_v3ulong = OpTypePointer UniformConstant %v3ulong
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%_ptr_CrossWorkgroup_uint = OpTypePointer CrossWorkgroup %uint
|
||||||
|
%14 = OpTypeFunction %void %_ptr_CrossWorkgroup_uint %_ptr_CrossWorkgroup_uint %_ptr_CrossWorkgroup_uint
|
||||||
|
%ulong_32 = OpConstant %ulong 32
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3ulong UniformConstant
|
||||||
|
%1 = OpFunction %void None %14
|
||||||
|
%res = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%lhs = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%rhs = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%entry = OpLabel
|
||||||
|
%16 = OpLoad %v3ulong %gl_GlobalInvocationID Aligned 0
|
||||||
|
%17 = OpCompositeExtract %ulong %16 0
|
||||||
|
%18 = OpShiftLeftLogical %ulong %17 %ulong_32
|
||||||
|
%19 = OpShiftRightArithmetic %ulong %18 %ulong_32
|
||||||
|
%20 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %lhs %19
|
||||||
|
%21 = OpLoad %uint %20 Aligned 4
|
||||||
|
%22 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %rhs %19
|
||||||
|
%23 = OpLoad %uint %22 Aligned 4
|
||||||
|
%24 = OpIAdd %uint %21 %23
|
||||||
|
%25 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %res %19
|
||||||
|
OpStore %25 %24 Aligned 4
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,43 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 22
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpMemoryModel Physical32 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "decorate_constant"
|
||||||
|
OpName %res "res"
|
||||||
|
OpName %lhs "lhs"
|
||||||
|
OpName %rhs "rhs"
|
||||||
|
OpName %entry "entry"
|
||||||
|
OpDecorate %6 Constant
|
||||||
|
%6 = OpDecorationGroup
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
OpGroupDecorate %6 %res %lhs %rhs
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%v3uint = OpTypeVector %uint 3
|
||||||
|
%_ptr_UniformConstant_v3uint = OpTypePointer UniformConstant %v3uint
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%_ptr_CrossWorkgroup_uint = OpTypePointer CrossWorkgroup %uint
|
||||||
|
%13 = OpTypeFunction %void %_ptr_CrossWorkgroup_uint %_ptr_CrossWorkgroup_uint %_ptr_CrossWorkgroup_uint
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3uint UniformConstant
|
||||||
|
%1 = OpFunction %void None %13
|
||||||
|
%res = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%lhs = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%rhs = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%entry = OpLabel
|
||||||
|
%14 = OpLoad %v3uint %gl_GlobalInvocationID Aligned 0
|
||||||
|
%15 = OpCompositeExtract %uint %14 0
|
||||||
|
%16 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %lhs %15
|
||||||
|
%17 = OpLoad %uint %16 Aligned 4
|
||||||
|
%18 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %rhs %15
|
||||||
|
%19 = OpLoad %uint %18 Aligned 4
|
||||||
|
%20 = OpIAdd %uint %17 %19
|
||||||
|
%21 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %res %15
|
||||||
|
OpStore %21 %20 Aligned 4
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,48 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 26
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int64
|
||||||
|
OpMemoryModel Physical64 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "decorate_constant"
|
||||||
|
OpName %res "res"
|
||||||
|
OpName %lhs "lhs"
|
||||||
|
OpName %rhs "rhs"
|
||||||
|
OpName %entry "entry"
|
||||||
|
OpDecorate %6 Constant
|
||||||
|
%6 = OpDecorationGroup
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
OpGroupDecorate %6 %res %lhs %rhs
|
||||||
|
%ulong = OpTypeInt 64 0
|
||||||
|
%v3ulong = OpTypeVector %ulong 3
|
||||||
|
%_ptr_UniformConstant_v3ulong = OpTypePointer UniformConstant %v3ulong
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%_ptr_CrossWorkgroup_uint = OpTypePointer CrossWorkgroup %uint
|
||||||
|
%14 = OpTypeFunction %void %_ptr_CrossWorkgroup_uint %_ptr_CrossWorkgroup_uint %_ptr_CrossWorkgroup_uint
|
||||||
|
%ulong_32 = OpConstant %ulong 32
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3ulong UniformConstant
|
||||||
|
%1 = OpFunction %void None %14
|
||||||
|
%res = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%lhs = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%rhs = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%entry = OpLabel
|
||||||
|
%16 = OpLoad %v3ulong %gl_GlobalInvocationID Aligned 0
|
||||||
|
%17 = OpCompositeExtract %ulong %16 0
|
||||||
|
%18 = OpShiftLeftLogical %ulong %17 %ulong_32
|
||||||
|
%19 = OpShiftRightArithmetic %ulong %18 %ulong_32
|
||||||
|
%20 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %lhs %19
|
||||||
|
%21 = OpLoad %uint %20 Aligned 4
|
||||||
|
%22 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %rhs %19
|
||||||
|
%23 = OpLoad %uint %22 Aligned 4
|
||||||
|
%24 = OpIAdd %uint %21 %23
|
||||||
|
%25 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %res %19
|
||||||
|
OpStore %25 %24 Aligned 4
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,38 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 19
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int8
|
||||||
|
OpMemoryModel Physical32 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "decorate_cpacked"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
OpDecorate %_struct_4 CPacked
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%v3uint = OpTypeVector %uint 3
|
||||||
|
%_ptr_UniformConstant_v3uint = OpTypePointer UniformConstant %v3uint
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%uchar = OpTypeInt 8 0
|
||||||
|
%_struct_4 = OpTypeStruct %uint %uchar
|
||||||
|
%_ptr_CrossWorkgroup__struct_4 = OpTypePointer CrossWorkgroup %_struct_4
|
||||||
|
%11 = OpTypeFunction %void %_ptr_CrossWorkgroup__struct_4
|
||||||
|
%uint_2100483600 = OpConstant %uint 2100483600
|
||||||
|
%uchar_127 = OpConstant %uchar 127
|
||||||
|
%14 = OpConstantComposite %_struct_4 %uint_2100483600 %uchar_127
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3uint UniformConstant
|
||||||
|
%1 = OpFunction %void None %11
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup__struct_4
|
||||||
|
%15 = OpLabel
|
||||||
|
%16 = OpLoad %v3uint %gl_GlobalInvocationID Aligned 0
|
||||||
|
%17 = OpCompositeExtract %uint %16 0
|
||||||
|
%18 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup__struct_4 %in %17
|
||||||
|
OpStore %18 %14
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,43 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 23
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int64
|
||||||
|
OpCapability Int8
|
||||||
|
OpMemoryModel Physical64 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "decorate_cpacked"
|
||||||
|
OpName %in "in"
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %in FuncParamAttr NoCapture
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
OpDecorate %_struct_4 CPacked
|
||||||
|
%ulong = OpTypeInt 64 0
|
||||||
|
%v3ulong = OpTypeVector %ulong 3
|
||||||
|
%_ptr_UniformConstant_v3ulong = OpTypePointer UniformConstant %v3ulong
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%uchar = OpTypeInt 8 0
|
||||||
|
%_struct_4 = OpTypeStruct %uint %uchar
|
||||||
|
%_ptr_CrossWorkgroup__struct_4 = OpTypePointer CrossWorkgroup %_struct_4
|
||||||
|
%12 = OpTypeFunction %void %_ptr_CrossWorkgroup__struct_4
|
||||||
|
%ulong_32 = OpConstant %ulong 32
|
||||||
|
%uint_2100483600 = OpConstant %uint 2100483600
|
||||||
|
%uchar_127 = OpConstant %uchar 127
|
||||||
|
%16 = OpConstantComposite %_struct_4 %uint_2100483600 %uchar_127
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3ulong UniformConstant
|
||||||
|
%1 = OpFunction %void None %12
|
||||||
|
%in = OpFunctionParameter %_ptr_CrossWorkgroup__struct_4
|
||||||
|
%17 = OpLabel
|
||||||
|
%18 = OpLoad %v3ulong %gl_GlobalInvocationID Aligned 0
|
||||||
|
%19 = OpCompositeExtract %ulong %18 0
|
||||||
|
%20 = OpShiftLeftLogical %ulong %19 %ulong_32
|
||||||
|
%21 = OpShiftRightArithmetic %ulong %20 %ulong_32
|
||||||
|
%22 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup__struct_4 %in %21
|
||||||
|
OpStore %22 %16
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,66 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 31
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability ImageBasic
|
||||||
|
%1 = OpExtInstImport "OpenCL.std"
|
||||||
|
OpMemoryModel Physical32 OpenCL
|
||||||
|
OpEntryPoint Kernel %2 "decorate_nonreadable"
|
||||||
|
OpSource OpenCL_C 100000
|
||||||
|
OpName %__spirv_BuiltInGlobalInvocationId "__spirv_BuiltInGlobalInvocationId"
|
||||||
|
OpName %__spirv_BuiltInGlobalSize "__spirv_BuiltInGlobalSize"
|
||||||
|
OpName %dst "dst"
|
||||||
|
OpName %src "src"
|
||||||
|
OpName %entry "entry"
|
||||||
|
OpName %call "call"
|
||||||
|
OpName %call1 "call1"
|
||||||
|
OpName %call2 "call2"
|
||||||
|
OpName %mul "mul"
|
||||||
|
OpName %add "add"
|
||||||
|
OpName %vecinit "vecinit"
|
||||||
|
OpName %vecinit3 "vecinit3"
|
||||||
|
OpName %arrayidx "arrayidx"
|
||||||
|
OpDecorate %dst NonReadable
|
||||||
|
OpDecorate %16 Constant
|
||||||
|
%16 = OpDecorationGroup
|
||||||
|
OpDecorate %__spirv_BuiltInGlobalInvocationId BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %__spirv_BuiltInGlobalSize BuiltIn GlobalSize
|
||||||
|
OpDecorate %src FuncParamAttr NoCapture
|
||||||
|
OpDecorate %__spirv_BuiltInGlobalSize LinkageAttributes "__spirv_BuiltInGlobalSize" Import
|
||||||
|
OpDecorate %__spirv_BuiltInGlobalInvocationId LinkageAttributes "__spirv_BuiltInGlobalInvocationId" Import
|
||||||
|
OpGroupDecorate %16 %__spirv_BuiltInGlobalInvocationId %__spirv_BuiltInGlobalSize
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%v3uint = OpTypeVector %uint 3
|
||||||
|
%_ptr_UniformConstant_v3uint = OpTypePointer UniformConstant %v3uint
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%21 = OpTypeImage %void 2D 0 0 0 0 Unknown WriteOnly
|
||||||
|
%v4uint = OpTypeVector %uint 4
|
||||||
|
%_ptr_CrossWorkgroup_v4uint = OpTypePointer CrossWorkgroup %v4uint
|
||||||
|
%24 = OpTypeFunction %void %21 %_ptr_CrossWorkgroup_v4uint
|
||||||
|
%v2uint = OpTypeVector %uint 2
|
||||||
|
%__spirv_BuiltInGlobalInvocationId = OpVariable %_ptr_UniformConstant_v3uint UniformConstant
|
||||||
|
%__spirv_BuiltInGlobalSize = OpVariable %_ptr_UniformConstant_v3uint UniformConstant
|
||||||
|
%2 = OpFunction %void None %24
|
||||||
|
%dst = OpFunctionParameter %21
|
||||||
|
%src = OpFunctionParameter %_ptr_CrossWorkgroup_v4uint
|
||||||
|
%entry = OpLabel
|
||||||
|
%26 = OpUndef %v2uint
|
||||||
|
%27 = OpLoad %v3uint %__spirv_BuiltInGlobalInvocationId Aligned 0
|
||||||
|
%call = OpCompositeExtract %uint %27 0
|
||||||
|
%28 = OpLoad %v3uint %__spirv_BuiltInGlobalInvocationId Aligned 0
|
||||||
|
%call1 = OpCompositeExtract %uint %28 1
|
||||||
|
%29 = OpLoad %v3uint %__spirv_BuiltInGlobalSize Aligned 0
|
||||||
|
%call2 = OpCompositeExtract %uint %29 0
|
||||||
|
%mul = OpIMul %uint %call2 %call1
|
||||||
|
%add = OpIAdd %uint %mul %call
|
||||||
|
%vecinit = OpCompositeInsert %v2uint %call1 %26 0
|
||||||
|
%vecinit3 = OpCompositeInsert %v2uint %call %vecinit 1
|
||||||
|
%arrayidx = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_v4uint %src %add
|
||||||
|
%30 = OpLoad %v4uint %arrayidx Aligned 16
|
||||||
|
OpImageWrite %dst %vecinit3 %30
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,79 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 38
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int64
|
||||||
|
OpCapability ImageBasic
|
||||||
|
%1 = OpExtInstImport "OpenCL.std"
|
||||||
|
OpMemoryModel Physical64 OpenCL
|
||||||
|
OpEntryPoint Kernel %2 "decorate_nonreadable"
|
||||||
|
OpSource OpenCL_C 100000
|
||||||
|
OpName %__spirv_BuiltInGlobalInvocationId "__spirv_BuiltInGlobalInvocationId"
|
||||||
|
OpName %__spirv_BuiltInGlobalSize "__spirv_BuiltInGlobalSize"
|
||||||
|
OpName %dst "dst"
|
||||||
|
OpName %src "src"
|
||||||
|
OpName %entry "entry"
|
||||||
|
OpName %call "call"
|
||||||
|
OpName %conv "conv"
|
||||||
|
OpName %call1 "call1"
|
||||||
|
OpName %conv2 "conv2"
|
||||||
|
OpName %conv3 "conv3"
|
||||||
|
OpName %call4 "call4"
|
||||||
|
OpName %mul "mul"
|
||||||
|
OpName %add "add"
|
||||||
|
OpName %vecinit "vecinit"
|
||||||
|
OpName %vecinit7 "vecinit7"
|
||||||
|
OpName %sext "sext"
|
||||||
|
OpName %idxprom "idxprom"
|
||||||
|
OpName %arrayidx "arrayidx"
|
||||||
|
OpDecorate %dst NonReadable
|
||||||
|
OpDecorate %21 Constant
|
||||||
|
%21 = OpDecorationGroup
|
||||||
|
OpDecorate %__spirv_BuiltInGlobalInvocationId BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %__spirv_BuiltInGlobalSize BuiltIn GlobalSize
|
||||||
|
OpDecorate %src FuncParamAttr NoCapture
|
||||||
|
OpDecorate %__spirv_BuiltInGlobalSize LinkageAttributes "__spirv_BuiltInGlobalSize" Import
|
||||||
|
OpDecorate %__spirv_BuiltInGlobalInvocationId LinkageAttributes "__spirv_BuiltInGlobalInvocationId" Import
|
||||||
|
OpGroupDecorate %21 %__spirv_BuiltInGlobalInvocationId %__spirv_BuiltInGlobalSize
|
||||||
|
%ulong = OpTypeInt 64 0
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%ulong_32 = OpConstant %ulong 32
|
||||||
|
%v3ulong = OpTypeVector %ulong 3
|
||||||
|
%_ptr_UniformConstant_v3ulong = OpTypePointer UniformConstant %v3ulong
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%28 = OpTypeImage %void 2D 0 0 0 0 Unknown WriteOnly
|
||||||
|
%v4uint = OpTypeVector %uint 4
|
||||||
|
%_ptr_CrossWorkgroup_v4uint = OpTypePointer CrossWorkgroup %v4uint
|
||||||
|
%31 = OpTypeFunction %void %28 %_ptr_CrossWorkgroup_v4uint
|
||||||
|
%v2uint = OpTypeVector %uint 2
|
||||||
|
%__spirv_BuiltInGlobalInvocationId = OpVariable %_ptr_UniformConstant_v3ulong UniformConstant
|
||||||
|
%__spirv_BuiltInGlobalSize = OpVariable %_ptr_UniformConstant_v3ulong UniformConstant
|
||||||
|
%2 = OpFunction %void None %31
|
||||||
|
%dst = OpFunctionParameter %28
|
||||||
|
%src = OpFunctionParameter %_ptr_CrossWorkgroup_v4uint
|
||||||
|
%entry = OpLabel
|
||||||
|
%33 = OpUndef %v2uint
|
||||||
|
%34 = OpLoad %v3ulong %__spirv_BuiltInGlobalInvocationId Aligned 0
|
||||||
|
%call = OpCompositeExtract %ulong %34 0
|
||||||
|
%conv = OpUConvert %uint %call
|
||||||
|
%35 = OpLoad %v3ulong %__spirv_BuiltInGlobalInvocationId Aligned 0
|
||||||
|
%call1 = OpCompositeExtract %ulong %35 1
|
||||||
|
%conv2 = OpUConvert %uint %call1
|
||||||
|
%conv3 = OpSConvert %ulong %conv2
|
||||||
|
%36 = OpLoad %v3ulong %__spirv_BuiltInGlobalSize Aligned 0
|
||||||
|
%call4 = OpCompositeExtract %ulong %36 0
|
||||||
|
%mul = OpIMul %ulong %conv3 %call4
|
||||||
|
%add = OpIAdd %ulong %mul %call
|
||||||
|
%vecinit = OpCompositeInsert %v2uint %conv2 %33 0
|
||||||
|
%vecinit7 = OpCompositeInsert %v2uint %conv %vecinit 1
|
||||||
|
%sext = OpShiftLeftLogical %ulong %add %ulong_32
|
||||||
|
%idxprom = OpShiftRightArithmetic %ulong %sext %ulong_32
|
||||||
|
%arrayidx = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_v4uint %src %idxprom
|
||||||
|
%37 = OpLoad %v4uint %arrayidx Aligned 16
|
||||||
|
OpImageWrite %dst %vecinit7 %37
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,80 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 40
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability ImageBasic
|
||||||
|
OpCapability LiteralSampler
|
||||||
|
%1 = OpExtInstImport "OpenCL.std"
|
||||||
|
OpMemoryModel Physical32 OpenCL
|
||||||
|
OpEntryPoint Kernel %2 "decorate_nonwritable"
|
||||||
|
OpName %sampler "sampler"
|
||||||
|
OpName %__spirv_BuiltInGlobalInvocationId "__spirv_BuiltInGlobalInvocationId"
|
||||||
|
OpName %__spirv_BuiltInGlobalSize "__spirv_BuiltInGlobalSize"
|
||||||
|
OpName %dst "dst"
|
||||||
|
OpName %src "src"
|
||||||
|
OpName %entry "entry"
|
||||||
|
OpName %call "call"
|
||||||
|
OpName %call1 "call1"
|
||||||
|
OpName %call2 "call2"
|
||||||
|
OpName %mul "mul"
|
||||||
|
OpName %add "add"
|
||||||
|
OpName %vecinit "vecinit"
|
||||||
|
OpName %vecinit6 "vecinit6"
|
||||||
|
OpName %TempSampledImage "TempSampledImage"
|
||||||
|
OpName %call7_old "call7.old"
|
||||||
|
OpName %arrayidx "arrayidx"
|
||||||
|
OpDecorate %src NonWritable
|
||||||
|
OpDecorate %19 Constant
|
||||||
|
%19 = OpDecorationGroup
|
||||||
|
OpDecorate %__spirv_BuiltInGlobalInvocationId BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %__spirv_BuiltInGlobalSize BuiltIn GlobalSize
|
||||||
|
OpDecorate %dst FuncParamAttr NoCapture
|
||||||
|
OpDecorate %sampler LinkageAttributes "sampler" Export
|
||||||
|
OpDecorate %__spirv_BuiltInGlobalSize LinkageAttributes "__spirv_BuiltInGlobalSize" Import
|
||||||
|
OpDecorate %__spirv_BuiltInGlobalInvocationId LinkageAttributes "__spirv_BuiltInGlobalInvocationId" Import
|
||||||
|
OpDecorate %sampler Alignment 4
|
||||||
|
OpGroupDecorate %19 %sampler %__spirv_BuiltInGlobalInvocationId %__spirv_BuiltInGlobalSize
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%uint_16 = OpConstant %uint 16
|
||||||
|
%_ptr_UniformConstant_uint = OpTypePointer UniformConstant %uint
|
||||||
|
%v3uint = OpTypeVector %uint 3
|
||||||
|
%_ptr_UniformConstant_v3uint = OpTypePointer UniformConstant %v3uint
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%v4uint = OpTypeVector %uint 4
|
||||||
|
%_ptr_CrossWorkgroup_v4uint = OpTypePointer CrossWorkgroup %v4uint
|
||||||
|
%28 = OpTypeImage %void 2D 0 0 0 0 Unknown ReadOnly
|
||||||
|
%29 = OpTypeFunction %void %_ptr_CrossWorkgroup_v4uint %28
|
||||||
|
%v2uint = OpTypeVector %uint 2
|
||||||
|
%31 = OpTypeSampler
|
||||||
|
%32 = OpTypeSampledImage %28
|
||||||
|
%float = OpTypeFloat 32
|
||||||
|
%34 = OpConstantSampler %31 None 0 Nearest
|
||||||
|
%float_0 = OpConstant %float 0
|
||||||
|
%sampler = OpVariable %_ptr_UniformConstant_uint UniformConstant %uint_16
|
||||||
|
%__spirv_BuiltInGlobalInvocationId = OpVariable %_ptr_UniformConstant_v3uint UniformConstant
|
||||||
|
%__spirv_BuiltInGlobalSize = OpVariable %_ptr_UniformConstant_v3uint UniformConstant
|
||||||
|
%2 = OpFunction %void None %29
|
||||||
|
%dst = OpFunctionParameter %_ptr_CrossWorkgroup_v4uint
|
||||||
|
%src = OpFunctionParameter %28
|
||||||
|
%entry = OpLabel
|
||||||
|
%36 = OpUndef %v2uint
|
||||||
|
%37 = OpLoad %v3uint %__spirv_BuiltInGlobalInvocationId Aligned 0
|
||||||
|
%call = OpCompositeExtract %uint %37 0
|
||||||
|
%38 = OpLoad %v3uint %__spirv_BuiltInGlobalInvocationId Aligned 0
|
||||||
|
%call1 = OpCompositeExtract %uint %38 1
|
||||||
|
%39 = OpLoad %v3uint %__spirv_BuiltInGlobalSize Aligned 0
|
||||||
|
%call2 = OpCompositeExtract %uint %39 0
|
||||||
|
%mul = OpIMul %uint %call2 %call1
|
||||||
|
%add = OpIAdd %uint %mul %call
|
||||||
|
%vecinit = OpCompositeInsert %v2uint %call1 %36 0
|
||||||
|
%vecinit6 = OpCompositeInsert %v2uint %call %vecinit 1
|
||||||
|
%TempSampledImage = OpSampledImage %32 %src %34
|
||||||
|
%call7_old = OpImageSampleExplicitLod %v4uint %TempSampledImage %vecinit6 Lod %float_0
|
||||||
|
%arrayidx = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_v4uint %dst %add
|
||||||
|
OpStore %arrayidx %call7_old Aligned 16
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,93 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 47
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpCapability Int64
|
||||||
|
OpCapability ImageBasic
|
||||||
|
OpCapability LiteralSampler
|
||||||
|
%1 = OpExtInstImport "OpenCL.std"
|
||||||
|
OpMemoryModel Physical64 OpenCL
|
||||||
|
OpEntryPoint Kernel %2 "decorate_nonwritable"
|
||||||
|
OpName %sampler "sampler"
|
||||||
|
OpName %__spirv_BuiltInGlobalInvocationId "__spirv_BuiltInGlobalInvocationId"
|
||||||
|
OpName %__spirv_BuiltInGlobalSize "__spirv_BuiltInGlobalSize"
|
||||||
|
OpName %dst "dst"
|
||||||
|
OpName %src "src"
|
||||||
|
OpName %entry "entry"
|
||||||
|
OpName %call "call"
|
||||||
|
OpName %conv "conv"
|
||||||
|
OpName %call1 "call1"
|
||||||
|
OpName %conv2 "conv2"
|
||||||
|
OpName %conv3 "conv3"
|
||||||
|
OpName %call4 "call4"
|
||||||
|
OpName %mul "mul"
|
||||||
|
OpName %add "add"
|
||||||
|
OpName %vecinit "vecinit"
|
||||||
|
OpName %vecinit10 "vecinit10"
|
||||||
|
OpName %TempSampledImage "TempSampledImage"
|
||||||
|
OpName %call11_old "call11.old"
|
||||||
|
OpName %sext "sext"
|
||||||
|
OpName %idxprom "idxprom"
|
||||||
|
OpName %arrayidx "arrayidx"
|
||||||
|
OpDecorate %src NonWritable
|
||||||
|
OpDecorate %24 Constant
|
||||||
|
%24 = OpDecorationGroup
|
||||||
|
OpDecorate %__spirv_BuiltInGlobalInvocationId BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %__spirv_BuiltInGlobalSize BuiltIn GlobalSize
|
||||||
|
OpDecorate %dst FuncParamAttr NoCapture
|
||||||
|
OpDecorate %sampler LinkageAttributes "sampler" Export
|
||||||
|
OpDecorate %__spirv_BuiltInGlobalSize LinkageAttributes "__spirv_BuiltInGlobalSize" Import
|
||||||
|
OpDecorate %__spirv_BuiltInGlobalInvocationId LinkageAttributes "__spirv_BuiltInGlobalInvocationId" Import
|
||||||
|
OpDecorate %sampler Alignment 4
|
||||||
|
OpGroupDecorate %24 %sampler %__spirv_BuiltInGlobalInvocationId %__spirv_BuiltInGlobalSize
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%ulong = OpTypeInt 64 0
|
||||||
|
%uint_16 = OpConstant %uint 16
|
||||||
|
%ulong_32 = OpConstant %ulong 32
|
||||||
|
%_ptr_UniformConstant_uint = OpTypePointer UniformConstant %uint
|
||||||
|
%v3ulong = OpTypeVector %ulong 3
|
||||||
|
%_ptr_UniformConstant_v3ulong = OpTypePointer UniformConstant %v3ulong
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%v4uint = OpTypeVector %uint 4
|
||||||
|
%_ptr_CrossWorkgroup_v4uint = OpTypePointer CrossWorkgroup %v4uint
|
||||||
|
%35 = OpTypeImage %void 2D 0 0 0 0 Unknown ReadOnly
|
||||||
|
%36 = OpTypeFunction %void %_ptr_CrossWorkgroup_v4uint %35
|
||||||
|
%v2uint = OpTypeVector %uint 2
|
||||||
|
%38 = OpTypeSampler
|
||||||
|
%39 = OpTypeSampledImage %35
|
||||||
|
%float = OpTypeFloat 32
|
||||||
|
%41 = OpConstantSampler %38 None 0 Nearest
|
||||||
|
%float_0 = OpConstant %float 0
|
||||||
|
%sampler = OpVariable %_ptr_UniformConstant_uint UniformConstant %uint_16
|
||||||
|
%__spirv_BuiltInGlobalInvocationId = OpVariable %_ptr_UniformConstant_v3ulong UniformConstant
|
||||||
|
%__spirv_BuiltInGlobalSize = OpVariable %_ptr_UniformConstant_v3ulong UniformConstant
|
||||||
|
%2 = OpFunction %void None %36
|
||||||
|
%dst = OpFunctionParameter %_ptr_CrossWorkgroup_v4uint
|
||||||
|
%src = OpFunctionParameter %35
|
||||||
|
%entry = OpLabel
|
||||||
|
%43 = OpUndef %v2uint
|
||||||
|
%44 = OpLoad %v3ulong %__spirv_BuiltInGlobalInvocationId Aligned 0
|
||||||
|
%call = OpCompositeExtract %ulong %44 0
|
||||||
|
%conv = OpUConvert %uint %call
|
||||||
|
%45 = OpLoad %v3ulong %__spirv_BuiltInGlobalInvocationId Aligned 0
|
||||||
|
%call1 = OpCompositeExtract %ulong %45 1
|
||||||
|
%conv2 = OpUConvert %uint %call1
|
||||||
|
%conv3 = OpSConvert %ulong %conv2
|
||||||
|
%46 = OpLoad %v3ulong %__spirv_BuiltInGlobalSize Aligned 0
|
||||||
|
%call4 = OpCompositeExtract %ulong %46 0
|
||||||
|
%mul = OpIMul %ulong %conv3 %call4
|
||||||
|
%add = OpIAdd %ulong %mul %call
|
||||||
|
%vecinit = OpCompositeInsert %v2uint %conv2 %43 0
|
||||||
|
%vecinit10 = OpCompositeInsert %v2uint %conv %vecinit 1
|
||||||
|
%TempSampledImage = OpSampledImage %39 %src %41
|
||||||
|
%call11_old = OpImageSampleExplicitLod %v4uint %TempSampledImage %vecinit10 Lod %float_0
|
||||||
|
%sext = OpShiftLeftLogical %ulong %add %ulong_32
|
||||||
|
%idxprom = OpShiftRightArithmetic %ulong %sext %ulong_32
|
||||||
|
%arrayidx = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_v4uint %dst %idxprom
|
||||||
|
OpStore %arrayidx %call11_old Aligned 16
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
@@ -0,0 +1,43 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||||
|
; Bound: 22
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Addresses
|
||||||
|
OpCapability Linkage
|
||||||
|
OpCapability Kernel
|
||||||
|
OpMemoryModel Physical32 OpenCL
|
||||||
|
OpEntryPoint Kernel %1 "decorate_restrict"
|
||||||
|
OpName %res "res"
|
||||||
|
OpName %lhs "lhs"
|
||||||
|
OpName %rhs "rhs"
|
||||||
|
OpName %entry "entry"
|
||||||
|
OpDecorate %6 Restrict
|
||||||
|
%6 = OpDecorationGroup
|
||||||
|
OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
|
||||||
|
OpDecorate %gl_GlobalInvocationID Constant
|
||||||
|
OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import
|
||||||
|
OpGroupDecorate %6 %res %lhs %rhs
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%v3uint = OpTypeVector %uint 3
|
||||||
|
%_ptr_UniformConstant_v3uint = OpTypePointer UniformConstant %v3uint
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%_ptr_CrossWorkgroup_uint = OpTypePointer CrossWorkgroup %uint
|
||||||
|
%13 = OpTypeFunction %void %_ptr_CrossWorkgroup_uint %_ptr_CrossWorkgroup_uint %_ptr_CrossWorkgroup_uint
|
||||||
|
%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3uint UniformConstant
|
||||||
|
%1 = OpFunction %void None %13
|
||||||
|
%res = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%lhs = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%rhs = OpFunctionParameter %_ptr_CrossWorkgroup_uint
|
||||||
|
%entry = OpLabel
|
||||||
|
%14 = OpLoad %v3uint %gl_GlobalInvocationID Aligned 0
|
||||||
|
%15 = OpCompositeExtract %uint %14 0
|
||||||
|
%16 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %lhs %15
|
||||||
|
%17 = OpLoad %uint %16 Aligned 4
|
||||||
|
%18 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %rhs %15
|
||||||
|
%19 = OpLoad %uint %18 Aligned 4
|
||||||
|
%20 = OpIAdd %uint %17 %19
|
||||||
|
%21 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uint %res %15
|
||||||
|
OpStore %21 %20 Aligned 4
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user