summaryrefslogtreecommitdiffstatshomepage
path: root/3rdparty/bgfx/3rdparty/spirv-tools/test/opt/dead_variable_elim_test.cpp
diff options
context:
space:
mode:
Diffstat (limited to '3rdparty/bgfx/3rdparty/spirv-tools/test/opt/dead_variable_elim_test.cpp')
-rw-r--r--3rdparty/bgfx/3rdparty/spirv-tools/test/opt/dead_variable_elim_test.cpp298
1 files changed, 0 insertions, 298 deletions
diff --git a/3rdparty/bgfx/3rdparty/spirv-tools/test/opt/dead_variable_elim_test.cpp b/3rdparty/bgfx/3rdparty/spirv-tools/test/opt/dead_variable_elim_test.cpp
deleted file mode 100644
index fca13a8e2fd..00000000000
--- a/3rdparty/bgfx/3rdparty/spirv-tools/test/opt/dead_variable_elim_test.cpp
+++ /dev/null
@@ -1,298 +0,0 @@
-// Copyright (c) 2017 Google 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 <string>
-
-#include "test/opt/pass_fixture.h"
-#include "test/opt/pass_utils.h"
-
-namespace spvtools {
-namespace opt {
-namespace {
-
-using DeadVariableElimTest = PassTest<::testing::Test>;
-
-// %dead is unused. Make sure we remove it along with its name.
-TEST_F(DeadVariableElimTest, RemoveUnreferenced) {
- const std::string before =
- R"(OpCapability Shader
-OpCapability Linkage
-%1 = OpExtInstImport "GLSL.std.450"
-OpMemoryModel Logical GLSL450
-OpEntryPoint Fragment %main "main"
-OpExecutionMode %main OriginUpperLeft
-OpSource GLSL 150
-OpName %main "main"
-OpName %dead "dead"
-%void = OpTypeVoid
-%5 = OpTypeFunction %void
-%float = OpTypeFloat 32
-%_ptr_Private_float = OpTypePointer Private %float
-%dead = OpVariable %_ptr_Private_float Private
-%main = OpFunction %void None %5
-%8 = OpLabel
-OpReturn
-OpFunctionEnd
-)";
-
- const std::string after =
- R"(OpCapability Shader
-OpCapability Linkage
-%1 = OpExtInstImport "GLSL.std.450"
-OpMemoryModel Logical GLSL450
-OpEntryPoint Fragment %main "main"
-OpExecutionMode %main OriginUpperLeft
-OpSource GLSL 150
-OpName %main "main"
-%void = OpTypeVoid
-%5 = OpTypeFunction %void
-%float = OpTypeFloat 32
-%_ptr_Private_float = OpTypePointer Private %float
-%main = OpFunction %void None %5
-%8 = OpLabel
-OpReturn
-OpFunctionEnd
-)";
-
- SetAssembleOptions(SPV_TEXT_TO_BINARY_OPTION_PRESERVE_NUMERIC_IDS);
- SinglePassRunAndCheck<DeadVariableElimination>(before, after, true, true);
-}
-
-// Since %dead is exported, make sure we keep it. It could be referenced
-// somewhere else.
-TEST_F(DeadVariableElimTest, KeepExported) {
- const std::string before =
- R"(OpCapability Shader
-OpCapability Linkage
-%1 = OpExtInstImport "GLSL.std.450"
-OpMemoryModel Logical GLSL450
-OpEntryPoint Fragment %main "main"
-OpExecutionMode %main OriginUpperLeft
-OpSource GLSL 150
-OpName %main "main"
-OpName %dead "dead"
-OpDecorate %dead LinkageAttributes "dead" Export
-%void = OpTypeVoid
-%5 = OpTypeFunction %void
-%float = OpTypeFloat 32
-%_ptr_Private_float = OpTypePointer Private %float
-%dead = OpVariable %_ptr_Private_float Private
-%main = OpFunction %void None %5
-%8 = OpLabel
-OpReturn
-OpFunctionEnd
-)";
-
- SetAssembleOptions(SPV_TEXT_TO_BINARY_OPTION_PRESERVE_NUMERIC_IDS);
- SinglePassRunAndCheck<DeadVariableElimination>(before, before, true, true);
-}
-
-// Delete %dead because it is unreferenced. Then %initializer becomes
-// unreferenced, so remove it as well.
-TEST_F(DeadVariableElimTest, RemoveUnreferencedWithInit1) {
- const std::string before =
- R"(OpCapability Shader
-OpCapability Linkage
-%1 = OpExtInstImport "GLSL.std.450"
-OpMemoryModel Logical GLSL450
-OpEntryPoint Fragment %main "main"
-OpExecutionMode %main OriginUpperLeft
-OpSource GLSL 150
-OpName %main "main"
-OpName %dead "dead"
-OpName %initializer "initializer"
-%void = OpTypeVoid
-%6 = OpTypeFunction %void
-%float = OpTypeFloat 32
-%_ptr_Private_float = OpTypePointer Private %float
-%initializer = OpVariable %_ptr_Private_float Private
-%dead = OpVariable %_ptr_Private_float Private %initializer
-%main = OpFunction %void None %6
-%9 = OpLabel
-OpReturn
-OpFunctionEnd
-)";
-
- const std::string after =
- R"(OpCapability Shader
-OpCapability Linkage
-%1 = OpExtInstImport "GLSL.std.450"
-OpMemoryModel Logical GLSL450
-OpEntryPoint Fragment %main "main"
-OpExecutionMode %main OriginUpperLeft
-OpSource GLSL 150
-OpName %main "main"
-%void = OpTypeVoid
-%6 = OpTypeFunction %void
-%float = OpTypeFloat 32
-%_ptr_Private_float = OpTypePointer Private %float
-%main = OpFunction %void None %6
-%9 = OpLabel
-OpReturn
-OpFunctionEnd
-)";
-
- SetAssembleOptions(SPV_TEXT_TO_BINARY_OPTION_PRESERVE_NUMERIC_IDS);
- SinglePassRunAndCheck<DeadVariableElimination>(before, after, true, true);
-}
-
-// Delete %dead because it is unreferenced. In this case, the initialized has
-// another reference, and should not be removed.
-TEST_F(DeadVariableElimTest, RemoveUnreferencedWithInit2) {
- const std::string before =
- R"(OpCapability Shader
-OpCapability Linkage
-%1 = OpExtInstImport "GLSL.std.450"
-OpMemoryModel Logical GLSL450
-OpEntryPoint Fragment %main "main"
-OpExecutionMode %main OriginUpperLeft
-OpSource GLSL 150
-OpName %main "main"
-OpName %dead "dead"
-OpName %initializer "initializer"
-%void = OpTypeVoid
-%6 = OpTypeFunction %void
-%float = OpTypeFloat 32
-%_ptr_Private_float = OpTypePointer Private %float
-%initializer = OpVariable %_ptr_Private_float Private
-%dead = OpVariable %_ptr_Private_float Private %initializer
-%main = OpFunction %void None %6
-%9 = OpLabel
-%10 = OpLoad %float %initializer
-OpReturn
-OpFunctionEnd
-)";
-
- const std::string after =
- R"(OpCapability Shader
-OpCapability Linkage
-%1 = OpExtInstImport "GLSL.std.450"
-OpMemoryModel Logical GLSL450
-OpEntryPoint Fragment %main "main"
-OpExecutionMode %main OriginUpperLeft
-OpSource GLSL 150
-OpName %main "main"
-OpName %initializer "initializer"
-%void = OpTypeVoid
-%6 = OpTypeFunction %void
-%float = OpTypeFloat 32
-%_ptr_Private_float = OpTypePointer Private %float
-%initializer = OpVariable %_ptr_Private_float Private
-%main = OpFunction %void None %6
-%9 = OpLabel
-%10 = OpLoad %float %initializer
-OpReturn
-OpFunctionEnd
-)";
-
- SetAssembleOptions(SPV_TEXT_TO_BINARY_OPTION_PRESERVE_NUMERIC_IDS);
- SinglePassRunAndCheck<DeadVariableElimination>(before, after, true, true);
-}
-
-// Keep %live because it is used, and its initializer.
-TEST_F(DeadVariableElimTest, KeepReferenced) {
- const std::string before =
- R"(OpCapability Shader
-OpCapability Linkage
-%1 = OpExtInstImport "GLSL.std.450"
-OpMemoryModel Logical GLSL450
-OpEntryPoint Fragment %main "main"
-OpExecutionMode %main OriginUpperLeft
-OpSource GLSL 150
-OpName %main "main"
-OpName %live "live"
-OpName %initializer "initializer"
-%void = OpTypeVoid
-%6 = OpTypeFunction %void
-%float = OpTypeFloat 32
-%_ptr_Private_float = OpTypePointer Private %float
-%initializer = OpVariable %_ptr_Private_float Private
-%live = OpVariable %_ptr_Private_float Private %initializer
-%main = OpFunction %void None %6
-%9 = OpLabel
-%10 = OpLoad %float %live
-OpReturn
-OpFunctionEnd
-)";
-
- SetAssembleOptions(SPV_TEXT_TO_BINARY_OPTION_PRESERVE_NUMERIC_IDS);
- SinglePassRunAndCheck<DeadVariableElimination>(before, before, true, true);
-}
-
-// This test that the decoration associated with a variable are removed when the
-// variable is removed.
-TEST_F(DeadVariableElimTest, RemoveVariableAndDecorations) {
- const std::string before =
- R"(OpCapability Shader
-%1 = OpExtInstImport "GLSL.std.450"
-OpMemoryModel Logical GLSL450
-OpEntryPoint Vertex %main "main"
-OpSource GLSL 450
-OpName %main "main"
-OpName %B "B"
-OpMemberName %B 0 "a"
-OpName %Bdat "Bdat"
-OpMemberDecorate %B 0 Offset 0
-OpDecorate %B BufferBlock
-OpDecorate %Bdat DescriptorSet 0
-OpDecorate %Bdat Binding 0
-%void = OpTypeVoid
-%6 = OpTypeFunction %void
-%uint = OpTypeInt 32 0
-%B = OpTypeStruct %uint
-%_ptr_Uniform_B = OpTypePointer Uniform %B
-%Bdat = OpVariable %_ptr_Uniform_B Uniform
-%int = OpTypeInt 32 1
-%int_0 = OpConstant %int 0
-%uint_1 = OpConstant %uint 1
-%_ptr_Uniform_uint = OpTypePointer Uniform %uint
-%main = OpFunction %void None %6
-%13 = OpLabel
-OpReturn
-OpFunctionEnd
-)";
-
- const std::string after =
- R"(OpCapability Shader
-%1 = OpExtInstImport "GLSL.std.450"
-OpMemoryModel Logical GLSL450
-OpEntryPoint Vertex %main "main"
-OpSource GLSL 450
-OpName %main "main"
-OpName %B "B"
-OpMemberName %B 0 "a"
-OpMemberDecorate %B 0 Offset 0
-OpDecorate %B BufferBlock
-%void = OpTypeVoid
-%6 = OpTypeFunction %void
-%uint = OpTypeInt 32 0
-%B = OpTypeStruct %uint
-%_ptr_Uniform_B = OpTypePointer Uniform %B
-%int = OpTypeInt 32 1
-%int_0 = OpConstant %int 0
-%uint_1 = OpConstant %uint 1
-%_ptr_Uniform_uint = OpTypePointer Uniform %uint
-%main = OpFunction %void None %6
-%13 = OpLabel
-OpReturn
-OpFunctionEnd
-)";
-
- SetAssembleOptions(SPV_TEXT_TO_BINARY_OPTION_PRESERVE_NUMERIC_IDS);
- SinglePassRunAndCheck<DeadVariableElimination>(before, after, true, true);
-}
-
-} // namespace
-} // namespace opt
-} // namespace spvtools