aboutsummaryrefslogtreecommitdiffstats
path: root/lib/Target/ARM
diff options
context:
space:
mode:
authorEric Christopher <echristo@apple.com>2010-08-17 00:46:57 +0000
committerEric Christopher <echristo@apple.com>2010-08-17 00:46:57 +0000
commited477833e7e42b30e473b8cdeadd76a93d0d9193 (patch)
treecd21f37ca8f73d10f7c0cbd4807b5526c8ebe613 /lib/Target/ARM
parent82e43a0dd479a865d668cbc2f602a383c96e70e6 (diff)
downloadexternal_llvm-ed477833e7e42b30e473b8cdeadd76a93d0d9193.zip
external_llvm-ed477833e7e42b30e473b8cdeadd76a93d0d9193.tar.gz
external_llvm-ed477833e7e42b30e473b8cdeadd76a93d0d9193.tar.bz2
Make arm fast-isel possible to enable via command line.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111219 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/ARM')
-rw-r--r--lib/Target/ARM/ARMFastISel.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/lib/Target/ARM/ARMFastISel.cpp b/lib/Target/ARM/ARMFastISel.cpp
index aad037a..3679b59 100644
--- a/lib/Target/ARM/ARMFastISel.cpp
+++ b/lib/Target/ARM/ARMFastISel.cpp
@@ -29,11 +29,17 @@
#include "llvm/CodeGen/MachineFrameInfo.h"
#include "llvm/CodeGen/MachineRegisterInfo.h"
#include "llvm/Support/CallSite.h"
+#include "llvm/Support/CommandLine.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/GetElementPtrTypeIterator.h"
#include "llvm/Target/TargetOptions.h"
using namespace llvm;
+static cl::opt<bool>
+EnableARMFastISel("arm-fast-isel",
+ cl::desc("Turn on experimental ARM fast-isel support"),
+ cl::init(false), cl::Hidden);
+
namespace {
class ARMFastISel : public FastISel {
@@ -66,7 +72,7 @@ bool ARMFastISel::TargetSelectInstruction(const Instruction *I) {
namespace llvm {
llvm::FastISel *ARM::createFastISel(FunctionLoweringInfo &funcInfo) {
- // Turn it off for now. It's not quite ready.
+ if (EnableARMFastISel) return new ARMFastISel(funcInfo);
return 0;
}
}