[clang] [llvm] [OptBisect][IR] Adding a new OptPassGate for disabling passes via name (PR #145059)
Cristian Assaiante via llvm-commits
llvm-commits at lists.llvm.org
Thu Jul 3 01:30:29 PDT 2025
================
@@ -55,4 +55,48 @@ bool OptBisect::shouldRunPass(StringRef PassName,
return ShouldRun;
}
-OptPassGate &llvm::getGlobalPassGate() { return getOptBisector(); }
+const int OptBisect::Disabled;
+
+static OptDisable &getOptDisabler() {
+ static OptDisable OptDisabler;
+ return OptDisabler;
+}
+
+static cl::list<std::string> OptDisablePasses(
+ "opt-disable", cl::Hidden, cl::CommaSeparated, cl::Optional,
+ cl::cb<void, std::string>([](std::string Pass) {
+ getOptDisabler().setDisabled(Pass);
+ }),
+ cl::desc("Optimization pass(es) to disable (comma-separated list)"));
+
+static cl::opt<bool>
+ OptDisableVerbose("opt-disable-enable-verbosity",
+ cl::desc("Show verbose output when opt-disable is set"),
+ cl::Hidden, cl::init(false), cl::Optional);
+
+static void printDisablePassMessage(const StringRef &Name, StringRef TargetDesc,
+ bool Running) {
+ StringRef Status = Running ? "" : "NOT ";
+ errs() << "DISABLE: " << Status << "running pass " << Name << " on "
----------------
cristianassaiante wrote:
Makes sense. After this maybe we should also change it for the bisect print.
https://github.com/llvm/llvm-project/pull/145059
More information about the llvm-commits
mailing list