diff options
| -rw-r--r-- | llvm/lib/CodeGen/TargetPassConfig.cpp | 16 | ||||
| -rw-r--r-- | llvm/test/CodeGen/AArch64/machine-outliner-flags.ll | 30 | 
2 files changed, 4 insertions, 42 deletions
diff --git a/llvm/lib/CodeGen/TargetPassConfig.cpp b/llvm/lib/CodeGen/TargetPassConfig.cpp index 20771eef620..8c5bdde888e 100644 --- a/llvm/lib/CodeGen/TargetPassConfig.cpp +++ b/llvm/lib/CodeGen/TargetPassConfig.cpp @@ -111,17 +111,9 @@ static cl::opt<bool> VerifyMachineCode("verify-machineinstrs", cl::Hidden,      cl::desc("Verify generated machine code"),      cl::init(false),      cl::ZeroOrMore); -enum RunOutliner { AlwaysOutline, NeverOutline }; -// Enable or disable the MachineOutliner. -static cl::opt<RunOutliner> EnableMachineOutliner( -    "enable-machine-outliner", cl::desc("Enable the machine outliner"), -    cl::Hidden, cl::ValueOptional, cl::init(NeverOutline), -    cl::values(clEnumValN(AlwaysOutline, "always", -                          "Run on all functions guaranteed to be beneficial " -                          "(pass -enable-linkonceodr-outlining for more)"), -               clEnumValN(NeverOutline, "never", "Disable all outlining"), -               // Sentinel value for unspecified option. -               clEnumValN(AlwaysOutline, "", ""))); +static cl::opt<bool> EnableMachineOutliner("enable-machine-outliner", +    cl::Hidden, +    cl::desc("Enable machine outliner"));  // Enable or disable FastISel. Both options are needed, because  // FastISel is enabled by default with -fast, and we wish to be  // able to enable or disable fast-isel independently from -O0. @@ -914,7 +906,7 @@ void TargetPassConfig::addMachinePasses() {    addPass(&XRayInstrumentationID, false);    addPass(&PatchableFunctionID, false); -  if (EnableMachineOutliner == AlwaysOutline) +  if (EnableMachineOutliner)      addPass(createMachineOutlinerPass());    // Add passes that directly emit MI after all other MI passes. diff --git a/llvm/test/CodeGen/AArch64/machine-outliner-flags.ll b/llvm/test/CodeGen/AArch64/machine-outliner-flags.ll deleted file mode 100644 index 0f232c8a1f0..00000000000 --- a/llvm/test/CodeGen/AArch64/machine-outliner-flags.ll +++ /dev/null @@ -1,30 +0,0 @@ -; RUN: llc %s -debug-pass=Structure -verify-machineinstrs \ -; RUN: -enable-machine-outliner=always -mtriple arm64---- -o /dev/null 2>&1 \ -; RUN: | FileCheck %s -check-prefix=ALWAYS - -; RUN: llc %s -debug-pass=Structure -verify-machineinstrs \ -; RUN: -enable-machine-outliner -mtriple arm64---- -o /dev/null 2>&1 \ -; RUN: | FileCheck %s -check-prefix=ENABLE - -; RUN: llc %s -debug-pass=Structure -verify-machineinstrs \ -; RUN: -enable-machine-outliner=never -mtriple arm64---- -o /dev/null 2>&1 \ -; RUN: | FileCheck %s -check-prefix=NEVER - -; RUN: llc %s -debug-pass=Structure -verify-machineinstrs \ -; RUN: -mtriple arm64---- -o /dev/null 2>&1 \ -; RUN: | FileCheck %s -check-prefix=NOT-ADDED - -; Make sure that the outliner flags all work properly. If we specify -; -enable-machine-outliner with always or no argument, it should be added to the -; pass pipeline. If we specify it with never, or don't pass the flag, -; then we shouldn't add it. - -; ALWAYS: Machine Outliner -; ENABLE: Machine Outliner -; NEVER-NOT: Machine Outliner -; NOT-ADDED-NOT: Machine Outliner - -define void @foo() { -  ret void; -} -  | 

