[clang] [llvm] [OptBisect][IR] Adding a new OptPassGate for disabling passes via name (PR #145059)
Nikita Popov via llvm-commits
llvm-commits at lists.llvm.org
Thu Jul 10 06:17:51 PDT 2025
================
@@ -55,4 +72,29 @@ bool OptBisect::shouldRunPass(StringRef PassName,
return ShouldRun;
}
-OptPassGate &llvm::getGlobalPassGate() { return getOptBisector(); }
+static void printDisablePassMessage(const StringRef &Name, StringRef TargetDesc,
+ bool Running) {
+ StringRef Status = Running ? "" : "NOT ";
+ dbgs() << "OptDisable: " << Status << "running pass " << Name << " on "
+ << TargetDesc << "\n";
+}
+
+void OptDisable::setDisabled(StringRef Pass) {
+ DisabledPasses.insert(Pass.lower());
+}
+
+bool OptDisable::shouldRunPass(StringRef PassName,
+ StringRef IRDescription) const {
+ assert(isEnabled());
+
+ const bool ShouldRun = !DisabledPasses.contains(PassName.lower());
----------------
nikic wrote:
```suggestion
const bool ShouldRun = !DisabledPasses.contains(PassName);
```
Now that this is using pass names, I think it's best to be case sensitive (they are lowercase).
https://github.com/llvm/llvm-project/pull/145059
More information about the llvm-commits
mailing list