diff options
Diffstat (limited to '3rdparty/bgfx/3rdparty/spirv-tools/test/opcode_require_capabilities_test.cpp')
-rw-r--r-- | 3rdparty/bgfx/3rdparty/spirv-tools/test/opcode_require_capabilities_test.cpp | 78 |
1 files changed, 0 insertions, 78 deletions
diff --git a/3rdparty/bgfx/3rdparty/spirv-tools/test/opcode_require_capabilities_test.cpp b/3rdparty/bgfx/3rdparty/spirv-tools/test/opcode_require_capabilities_test.cpp deleted file mode 100644 index 32bf1dc085a..00000000000 --- a/3rdparty/bgfx/3rdparty/spirv-tools/test/opcode_require_capabilities_test.cpp +++ /dev/null @@ -1,78 +0,0 @@ -// Copyright (c) 2015-2016 The Khronos Group Inc. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -#include "test/unit_spirv.h" - -#include "source/enum_set.h" - -namespace spvtools { -namespace { - -using spvtest::ElementsIn; - -// Capabilities required by an Opcode. -struct ExpectedOpCodeCapabilities { - SpvOp opcode; - CapabilitySet capabilities; -}; - -using OpcodeTableCapabilitiesTest = - ::testing::TestWithParam<ExpectedOpCodeCapabilities>; - -TEST_P(OpcodeTableCapabilitiesTest, TableEntryMatchesExpectedCapabilities) { - auto env = SPV_ENV_UNIVERSAL_1_1; - spv_opcode_table opcodeTable; - ASSERT_EQ(SPV_SUCCESS, spvOpcodeTableGet(&opcodeTable, env)); - spv_opcode_desc entry; - ASSERT_EQ(SPV_SUCCESS, spvOpcodeTableValueLookup(env, opcodeTable, - GetParam().opcode, &entry)); - EXPECT_EQ( - ElementsIn(GetParam().capabilities), - ElementsIn(CapabilitySet(entry->numCapabilities, entry->capabilities))); -} - -INSTANTIATE_TEST_CASE_P( - TableRowTest, OpcodeTableCapabilitiesTest, - // Spot-check a few opcodes. - ::testing::Values( - ExpectedOpCodeCapabilities{ - SpvOpImageQuerySize, - CapabilitySet{SpvCapabilityKernel, SpvCapabilityImageQuery}}, - ExpectedOpCodeCapabilities{ - SpvOpImageQuerySizeLod, - CapabilitySet{SpvCapabilityKernel, SpvCapabilityImageQuery}}, - ExpectedOpCodeCapabilities{ - SpvOpImageQueryLevels, - CapabilitySet{SpvCapabilityKernel, SpvCapabilityImageQuery}}, - ExpectedOpCodeCapabilities{ - SpvOpImageQuerySamples, - CapabilitySet{SpvCapabilityKernel, SpvCapabilityImageQuery}}, - ExpectedOpCodeCapabilities{SpvOpImageSparseSampleImplicitLod, - CapabilitySet{SpvCapabilitySparseResidency}}, - ExpectedOpCodeCapabilities{SpvOpCopyMemorySized, - CapabilitySet{SpvCapabilityAddresses}}, - ExpectedOpCodeCapabilities{SpvOpArrayLength, - CapabilitySet{SpvCapabilityShader}}, - ExpectedOpCodeCapabilities{SpvOpFunction, CapabilitySet()}, - ExpectedOpCodeCapabilities{SpvOpConvertFToS, CapabilitySet()}, - ExpectedOpCodeCapabilities{SpvOpEmitStreamVertex, - CapabilitySet{SpvCapabilityGeometryStreams}}, - ExpectedOpCodeCapabilities{SpvOpTypeNamedBarrier, - CapabilitySet{SpvCapabilityNamedBarrier}}, - ExpectedOpCodeCapabilities{ - SpvOpGetKernelMaxNumSubgroups, - CapabilitySet{SpvCapabilitySubgroupDispatch}}), ); - -} // namespace -} // namespace spvtools |