aboutsummaryrefslogtreecommitdiffstats
path: root/lib/Target/TargetMachine.cpp
diff options
context:
space:
mode:
authorOwen Anderson <resistor@mac.com>2008-08-04 23:54:43 +0000
committerOwen Anderson <resistor@mac.com>2008-08-04 23:54:43 +0000
commitbd3ba461eb5578a81ba09ff7bd7eb271d1130196 (patch)
treef97e9269835f2a482c4f28f14e48de796079d007 /lib/Target/TargetMachine.cpp
parentb42a6261225e5a1b9a75b9aa11732944046d7999 (diff)
downloadexternal_llvm-bd3ba461eb5578a81ba09ff7bd7eb271d1130196.zip
external_llvm-bd3ba461eb5578a81ba09ff7bd7eb271d1130196.tar.gz
external_llvm-bd3ba461eb5578a81ba09ff7bd7eb271d1130196.tar.bz2
- Fix SelectionDAG to generate correct CFGs.
- Add a basic machine-level dead block eliminator. These two have to go together, since many other parts of the code generator are unable to handle the unreachable blocks otherwise created. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54333 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/TargetMachine.cpp')
-rw-r--r--lib/Target/TargetMachine.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/lib/Target/TargetMachine.cpp b/lib/Target/TargetMachine.cpp
index 600a120..2916763 100644
--- a/lib/Target/TargetMachine.cpp
+++ b/lib/Target/TargetMachine.cpp
@@ -40,6 +40,7 @@ namespace llvm {
bool RealignStack;
bool VerboseAsm;
bool DisableJumpTables;
+ bool DisableCorrectBranchFolding;
}
static cl::opt<bool, true> PrintCode("print-machineinstrs",
@@ -163,6 +164,11 @@ DisableSwitchTables(cl::Hidden, "disable-jump-tables",
cl::location(DisableJumpTables),
cl::init(false));
+static cl::opt<bool, true>
+DisableCorrectISelFolding(cl::Hidden, "disable-correct-folding",
+cl::desc("Do not perform correct branch folding in the instruction selector."),
+cl::location(DisableCorrectBranchFolding), cl::init(false));
+
//---------------------------------------------------------------------------
// TargetMachine Class
//