The Volatile, Coherent, NonWritable and NonReadable decorations can
only be applied to images if they are storage images, which require
the Shader capability.
Note that in SPIR-V 1.4 and later, the NonWritable decoration can
also be applied to objects in the Private and Function storage classes
(although Private also requires the Shader capability), but this was
not covered by the existing test for the NonWritable decoration.
Signed-off-by: Stuart Brady <stuart.brady@arm.com>
* remove SPV_KHR_no_integer_wrap_decoration
* address review comments
* remove the assemble_spirv script
There is another PR in flight that adds a much more complete
script that we should merge instead.
* New spirv_new test case OpSpecConstant OpSpecConstantTrue OpSpecConstantfalse
* Register test case with minimal OpenCL version
* Specialization constant - add files uint/int cases
* Specialization constants - fix second build program
* Fix changes clang format.
* spirv_new - Make functions visible outside of main
* Fix clang format issues
* Fix int/uint 32 bit cases
* Fix minimal required version for test_op_spec_constant
* Remove not needed OpName. Update binaries
* Fix code format
* Remove op_spec_constant_int cases in spirv_new tests
* op_spec_constant - add simplified spirv files
* no redundant OpUConvert OpSConvert
* no redundant OpName
* instead of buffers scalar variable
* op_spec_constant - refactor to address review issues
* avoid using program that has already kernel program attached
* remove not used buffer
* Simplified test case - instead of buffers use scalar variable
* spirv_new - remove spec_const duplicated cases (singed versions)
* spirv_new - set clSetProgramSpecializationConstant before clBuildProgram
* Test spirv_new - fix spec const after rebase
* Test spirv_new - fix spec const set min version for bool type tests
The OpenCL SPIR-V Environment Specification was updated to mandate that
all variables decorated with `BuiltIn` must be in the `Input` storage
class, see https://github.com/KhronosGroup/OpenCL-Docs/pull/278.
Global variables with the Input storage class have to be listed in the
entry points’ interface, which was also taken care of in this commit.
* 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>
* Fix Issue 38 - Test spirv_new - new test for cl_khr_spirv_no_integer_wrap_decoration SPV_KHR_no_integer_wrap_decoration extension
* Remove not used variable.
The OpenCL SPIR-V Environment Specification v2.2-10, Section 2.1
states that:
For all OpTypeImage type-declaration instructions:
The optional image Access Qualifier must be present.
Add the ReadOnly or WriteOnly qualifier as appropriate to the .spvasm
files, and regenerate the .spv files using
spirv-as --target-env spv1.0
The maintenance of the conformance tests is moving to Github.
This commit contains all the changes that have been done in
Gitlab since the first public release of the conformance tests.
Signed-off-by: Kevin Petit kevin.petit@arm.com