Commit b64fbfec by Ben Clayton

VkPipeline: Replace spirv-opt list with RegisterPerformancePasses()

The full list of optimization passes was taken from RegisterPerformancePasses(). Let's just call that instead of copying the list. This way, we'll keep track of new optimization passes, or re-orderings that are deemed 'better' when updating SPIRV-Tools. Bug: b/144832356 Change-Id: I90c69131b5e55c185892cefc2e5de8180b44ce9d Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/38454 Kokoro-Presubmit: kokoro <noreply+kokoro@google.com> Reviewed-by: 's avatarChris Forbes <chrisforbes@google.com> Reviewed-by: 's avatarNicolas Capens <nicolascapens@google.com> Tested-by: 's avatarBen Clayton <bclayton@google.com>
parent 6e2ff45f
......@@ -194,40 +194,7 @@ std::vector<uint32_t> preprocessSpirv(
}
// Full optimization list taken from spirv-opt.
opt.RegisterPass(spvtools::CreateWrapOpKillPass())
.RegisterPass(spvtools::CreateDeadBranchElimPass())
.RegisterPass(spvtools::CreateMergeReturnPass())
.RegisterPass(spvtools::CreateInlineExhaustivePass())
.RegisterPass(spvtools::CreateAggressiveDCEPass())
.RegisterPass(spvtools::CreatePrivateToLocalPass())
.RegisterPass(spvtools::CreateLocalSingleBlockLoadStoreElimPass())
.RegisterPass(spvtools::CreateLocalSingleStoreElimPass())
.RegisterPass(spvtools::CreateAggressiveDCEPass())
.RegisterPass(spvtools::CreateScalarReplacementPass())
.RegisterPass(spvtools::CreateLocalAccessChainConvertPass())
.RegisterPass(spvtools::CreateLocalSingleBlockLoadStoreElimPass())
.RegisterPass(spvtools::CreateLocalSingleStoreElimPass())
.RegisterPass(spvtools::CreateAggressiveDCEPass())
.RegisterPass(spvtools::CreateLocalMultiStoreElimPass())
.RegisterPass(spvtools::CreateAggressiveDCEPass())
.RegisterPass(spvtools::CreateCCPPass())
.RegisterPass(spvtools::CreateAggressiveDCEPass())
.RegisterPass(spvtools::CreateRedundancyEliminationPass())
.RegisterPass(spvtools::CreateCombineAccessChainsPass())
.RegisterPass(spvtools::CreateSimplificationPass())
.RegisterPass(spvtools::CreateVectorDCEPass())
.RegisterPass(spvtools::CreateDeadInsertElimPass())
.RegisterPass(spvtools::CreateDeadBranchElimPass())
.RegisterPass(spvtools::CreateSimplificationPass())
.RegisterPass(spvtools::CreateIfConversionPass())
.RegisterPass(spvtools::CreateCopyPropagateArraysPass())
.RegisterPass(spvtools::CreateReduceLoadSizePass())
.RegisterPass(spvtools::CreateAggressiveDCEPass())
.RegisterPass(spvtools::CreateBlockMergePass())
.RegisterPass(spvtools::CreateRedundancyEliminationPass())
.RegisterPass(spvtools::CreateDeadBranchElimPass())
.RegisterPass(spvtools::CreateBlockMergePass())
.RegisterPass(spvtools::CreateSimplificationPass());
opt.RegisterPerformancePasses();
std::vector<uint32_t> optimized;
opt.Run(code.data(), code.size(), &optimized);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment