aboutsummaryrefslogtreecommitdiff
path: root/third_party/vulkan-deps/spirv-tools/src/source/opt/optimizer.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/vulkan-deps/spirv-tools/src/source/opt/optimizer.cpp')
-rw-r--r--third_party/vulkan-deps/spirv-tools/src/source/opt/optimizer.cpp10
1 files changed, 7 insertions, 3 deletions
diff --git a/third_party/vulkan-deps/spirv-tools/src/source/opt/optimizer.cpp b/third_party/vulkan-deps/spirv-tools/src/source/opt/optimizer.cpp
index afff9ece43..675bd1bd94 100644
--- a/third_party/vulkan-deps/spirv-tools/src/source/opt/optimizer.cpp
+++ b/third_party/vulkan-deps/spirv-tools/src/source/opt/optimizer.cpp
@@ -158,7 +158,8 @@ Optimizer& Optimizer::RegisterLegalizationPasses(bool preserve_interface) {
.RegisterPass(CreateDeadInsertElimPass())
.RegisterPass(CreateReduceLoadSizePass())
.RegisterPass(CreateAggressiveDCEPass(preserve_interface))
- .RegisterPass(CreateInterpolateFixupPass());
+ .RegisterPass(CreateInterpolateFixupPass())
+ .RegisterPass(CreateInvocationInterlockPlacementPass());
}
Optimizer& Optimizer::RegisterLegalizationPasses() {
@@ -438,10 +439,8 @@ bool Optimizer::RegisterPassFromFlag(const std::string& flag) {
RegisterPass(CreateSimplificationPass());
RegisterPass(CreateDeadBranchElimPass());
RegisterPass(CreateBlockMergePass());
- RegisterPass(CreateAggressiveDCEPass(true));
} else if (pass_name == "inst-buff-addr-check") {
RegisterPass(CreateInstBuffAddrCheckPass(23));
- RegisterPass(CreateAggressiveDCEPass(true));
} else if (pass_name == "convert-relaxed-to-half") {
RegisterPass(CreateConvertRelaxedToHalfPass());
} else if (pass_name == "relax-float-ops") {
@@ -1113,6 +1112,11 @@ Optimizer::PassToken CreateSwitchDescriptorSetPass(uint32_t from, uint32_t to) {
return MakeUnique<Optimizer::PassToken::Impl>(
MakeUnique<opt::SwitchDescriptorSetPass>(from, to));
}
+
+Optimizer::PassToken CreateInvocationInterlockPlacementPass() {
+ return MakeUnique<Optimizer::PassToken::Impl>(
+ MakeUnique<opt::InvocationInterlockPlacementPass>());
+}
} // namespace spvtools
extern "C" {