14#ifndef LLVM_IR_OPTBISECT_H
15#define LLVM_IR_OPTBISECT_H
76 return !BisectIntervals.empty() || !DisabledPasses.empty();
81 DisabledPasses.clear();
86 BisectIntervals = std::move(Intervals);
91 BisectIntervals.clear();
100 mutable int LastBisectNum = 0;
StringSet - A set-like wrapper for the StringMap.
static const char PassName[]
void setDisabled(StringRef Pass)
Parses the command line argument to extract the names of the passes to be disabled.
~OptBisect() override=default
void clearIntervals()
Clear all intervals, effectively disabling bisection.
bool shouldRunPass(StringRef PassName, StringRef IRDescription) const override
Checks the bisect intervals to determine if the specified pass should run.
void setIntervals(IntegerInclusiveIntervalUtils::IntervalList Intervals)
Set intervals directly from an IntervalList.
bool isEnabled() const override
isEnabled() should return true before calling shouldRunPass().
void reset() override
Reset the pass gate to its initial configuration, before any command line options were parsed.
OptBisect()=default
Default constructor.
Extensions to this class implement mechanisms to disable passes and individual optimizations at compi...
virtual bool isEnabled() const
isEnabled() should return true before calling shouldRunPass().
virtual void reset()
Reset the pass gate to its initial configuration, before any command line options were parsed.
virtual bool shouldRunPass(StringRef PassName, StringRef IRDescription) const
IRDescription is a textual description of the IR unit the pass is running over.
virtual ~OptPassGate()=default
Pass interface - Implemented by all 'passes'.
Represent a constant reference to a string, i.e.
StringSet - A wrapper for StringMap that provides set-like functionality.
SmallVector< IntegerInclusiveInterval, 8 > IntervalList
A list of integer intervals.
This is an optimization pass for GlobalISel generic memory operations.
LLVM_ABI OptPassGate & getGlobalPassGate()
Singleton instance of the OptPassGate class, so multiple pass managers don't need to coordinate their...