aboutsummaryrefslogtreecommitdiff
path: root/SPIRV/SpvTools.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'SPIRV/SpvTools.cpp')
-rw-r--r--SPIRV/SpvTools.cpp52
1 files changed, 1 insertions, 51 deletions
diff --git a/SPIRV/SpvTools.cpp b/SPIRV/SpvTools.cpp
index ff04f4f9..8cc17cca 100644
--- a/SPIRV/SpvTools.cpp
+++ b/SPIRV/SpvTools.cpp
@@ -212,7 +212,7 @@ void SpirvToolsTransform(const glslang::TIntermediate& intermediate, std::vector
optimizer.RegisterPass(spvtools::CreateInterpolateFixupPass());
if (options->optimizeSize) {
optimizer.RegisterPass(spvtools::CreateRedundancyEliminationPass());
- optimizer.RegisterPass(spvtools::CreateEliminateDeadInputComponentsSafePass());
+ optimizer.RegisterPass(spvtools::CreateEliminateDeadInputComponentsPass());
}
optimizer.RegisterPass(spvtools::CreateAggressiveDCEPass());
optimizer.RegisterPass(spvtools::CreateCFGCleanupPass());
@@ -223,56 +223,6 @@ void SpirvToolsTransform(const glslang::TIntermediate& intermediate, std::vector
optimizer.Run(spirv.data(), spirv.size(), &spirv, spvOptOptions);
}
-bool SpirvToolsAnalyzeDeadOutputStores(spv_target_env target_env, std::vector<unsigned int>& spirv,
- std::unordered_set<uint32_t>* live_locs,
- std::unordered_set<uint32_t>* live_builtins,
- spv::SpvBuildLogger*)
-{
- spvtools::Optimizer optimizer(target_env);
- optimizer.SetMessageConsumer(OptimizerMesssageConsumer);
-
- optimizer.RegisterPass(spvtools::CreateAnalyzeLiveInputPass(live_locs, live_builtins));
-
- spvtools::OptimizerOptions spvOptOptions;
- optimizer.SetTargetEnv(target_env);
- spvOptOptions.set_run_validator(false);
- return optimizer.Run(spirv.data(), spirv.size(), &spirv, spvOptOptions);
-}
-
-void SpirvToolsEliminateDeadOutputStores(spv_target_env target_env, std::vector<unsigned int>& spirv,
- std::unordered_set<uint32_t>* live_locs,
- std::unordered_set<uint32_t>* live_builtins,
- spv::SpvBuildLogger*)
-{
- spvtools::Optimizer optimizer(target_env);
- optimizer.SetMessageConsumer(OptimizerMesssageConsumer);
-
- optimizer.RegisterPass(spvtools::CreateEliminateDeadOutputStoresPass(live_locs, live_builtins));
- optimizer.RegisterPass(spvtools::CreateAggressiveDCEPass(false, true));
- optimizer.RegisterPass(spvtools::CreateEliminateDeadOutputComponentsPass());
- optimizer.RegisterPass(spvtools::CreateAggressiveDCEPass(false, true));
-
- spvtools::OptimizerOptions spvOptOptions;
- optimizer.SetTargetEnv(target_env);
- spvOptOptions.set_run_validator(false);
- optimizer.Run(spirv.data(), spirv.size(), &spirv, spvOptOptions);
-}
-
-void SpirvToolsEliminateDeadInputComponents(spv_target_env target_env, std::vector<unsigned int>& spirv,
- spv::SpvBuildLogger*)
-{
- spvtools::Optimizer optimizer(target_env);
- optimizer.SetMessageConsumer(OptimizerMesssageConsumer);
-
- optimizer.RegisterPass(spvtools::CreateEliminateDeadInputComponentsPass());
- optimizer.RegisterPass(spvtools::CreateAggressiveDCEPass());
-
- spvtools::OptimizerOptions spvOptOptions;
- optimizer.SetTargetEnv(target_env);
- spvOptOptions.set_run_validator(false);
- optimizer.Run(spirv.data(), spirv.size(), &spirv, spvOptOptions);
-}
-
// Apply the SPIRV-Tools optimizer to strip debug info from SPIR-V. This is implicitly done by
// SpirvToolsTransform if spvOptions->stripDebugInfo is set, but can be called separately if
// optimization is disabled.