#include "DeltaManager.h"
#include "ReducerWorkItem.h"
#include "TestRunner.h"
#include "deltas/Delta.h"
#include "deltas/ReduceAliases.h"
#include "deltas/ReduceArguments.h"
#include "deltas/ReduceAttributes.h"
#include "deltas/ReduceBasicBlocks.h"
#include "deltas/ReduceDIMetadata.h"
#include "deltas/ReduceDbgRecords.h"
#include "deltas/ReduceDistinctMetadata.h"
#include "deltas/ReduceFunctionBodies.h"
#include "deltas/ReduceFunctions.h"
#include "deltas/ReduceGlobalObjects.h"
#include "deltas/ReduceGlobalValues.h"
#include "deltas/ReduceGlobalVarInitializers.h"
#include "deltas/ReduceGlobalVars.h"
#include "deltas/ReduceIRReferences.h"
#include "deltas/ReduceInstructionFlags.h"
#include "deltas/ReduceInstructionFlagsMIR.h"
#include "deltas/ReduceInstructions.h"
#include "deltas/ReduceInstructionsMIR.h"
#include "deltas/ReduceInvokes.h"
#include "deltas/ReduceMemoryOperations.h"
#include "deltas/ReduceMetadata.h"
#include "deltas/ReduceModuleData.h"
#include "deltas/ReduceOpcodes.h"
#include "deltas/ReduceOperandBundles.h"
#include "deltas/ReduceOperands.h"
#include "deltas/ReduceOperandsSkip.h"
#include "deltas/ReduceOperandsToArgs.h"
#include "deltas/ReduceRegisterDefs.h"
#include "deltas/ReduceRegisterMasks.h"
#include "deltas/ReduceRegisterUses.h"
#include "deltas/ReduceSpecialGlobals.h"
#include "deltas/ReduceUsingSimplifyCFG.h"
#include "deltas/ReduceVirtualRegisters.h"
#include "deltas/RunIRPasses.h"
#include "deltas/SimplifyInstructions.h"
#include "deltas/StripDebugInfo.h"
#include "llvm/ADT/SmallSet.h"
#include "llvm/Support/CommandLine.h"
usingnamespacellvm;
SmallStringSet;
extern cl::OptionCategory LLVMReduceOptions;
static cl::list<std::string>
DeltaPasses("delta-passes",
cl::desc("Delta passes to run, separated by commas. By "
"default, run all delta passes."),
cl::cat(LLVMReduceOptions), cl::CommaSeparated);
static cl::list<std::string>
SkipDeltaPasses("skip-delta-passes",
cl::desc("Delta passes to not run, separated by commas. By "
"default, run all delta passes."),
cl::cat(LLVMReduceOptions), cl::CommaSeparated);
#define DELTA_PASSES …
#define DELTA_PASSES_MIR …
static void runAllDeltaPasses(TestRunner &Tester,
const SmallStringSet &SkipPass) { … }
static void runDeltaPassName(TestRunner &Tester, StringRef PassName) { … }
void llvm::printDeltaPasses(raw_ostream &OS) { … }
static void collectPassNames(const TestRunner &Tester,
SmallStringSet &NameSet) { … }
static SmallStringSet handlePassList(const TestRunner &Tester,
const cl::list<std::string> &PassList) { … }
void llvm::runDeltaPasses(TestRunner &Tester, int MaxPassIterations) { … }