diff options
author | Dan Gohman <gohman@apple.com> | 2008-08-19 21:45:35 +0000 |
---|---|---|
committer | Dan Gohman <gohman@apple.com> | 2008-08-19 21:45:35 +0000 |
commit | 1adf1b03af9b1e2ee5a527caa5b14c9d55a32173 (patch) | |
tree | b081ffa9ec9368103efdff2910eaab34d09e5e03 | |
parent | d9f3c480a7bc0969b08ace68af7dcde40f6caff1 (diff) |
Instantiate FastISel for X86.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55011 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | lib/Target/X86/X86FastISel.cpp | 20 | ||||
-rw-r--r-- | lib/Target/X86/X86FastISel.h | 34 | ||||
-rw-r--r-- | lib/Target/X86/X86ISelLowering.cpp | 4 |
3 files changed, 56 insertions, 2 deletions
diff --git a/lib/Target/X86/X86FastISel.cpp b/lib/Target/X86/X86FastISel.cpp new file mode 100644 index 0000000000..0c0660c783 --- /dev/null +++ b/lib/Target/X86/X86FastISel.cpp @@ -0,0 +1,20 @@ +//===-- X86FastISel.cpp - X86 FastISel implementation ---------------------===// +// +// The LLVM Compiler Infrastructure +// +// This file is distributed under the University of Illinois Open Source +// License. See LICENSE.TXT for details. +// +//===----------------------------------------------------------------------===// +// +// This file defines the X86-specific support for the FastISel class. Much +// of the target-specific code is generated by tablegen in the file +// X86GenFastISel.inc, which is #included here. +// +//===----------------------------------------------------------------------===// + +#include "X86.h" +#include "X86RegisterInfo.h" +#include "X86ISelLowering.h" +#include "X86FastISel.h" +#include "X86GenFastISel.inc" diff --git a/lib/Target/X86/X86FastISel.h b/lib/Target/X86/X86FastISel.h new file mode 100644 index 0000000000..0f2b26a4d2 --- /dev/null +++ b/lib/Target/X86/X86FastISel.h @@ -0,0 +1,34 @@ +//===-- X86FastISel.h - X86 FastISel header -------------------------------===// +// +// The LLVM Compiler Infrastructure +// +// This file is distributed under the University of Illinois Open Source +// License. See LICENSE.TXT for details. +// +//===----------------------------------------------------------------------===// +// +// This file defines the interface to the X86-specific support for the FastISel +// class. +// +//===----------------------------------------------------------------------===// + +#ifndef X86FASTISEL_H +#define X86FASTISEL_H + +namespace llvm { + +class FastISel; +class MachineBasicBlock; +class MachineFunction; +class TargetInstrInfo; + +namespace X86 { + +FastISel *createFastISel(MachineBasicBlock *mbb, MachineFunction *mf, + const TargetInstrInfo *tii); + +} // namespace X86 + +} // namespace llvm + +#endif diff --git a/lib/Target/X86/X86ISelLowering.cpp b/lib/Target/X86/X86ISelLowering.cpp index 3f49c11170..7cf74bf79e 100644 --- a/lib/Target/X86/X86ISelLowering.cpp +++ b/lib/Target/X86/X86ISelLowering.cpp @@ -17,6 +17,7 @@ #include "X86ISelLowering.h" #include "X86MachineFunctionInfo.h" #include "X86TargetMachine.h" +#include "X86FastISel.h" #include "llvm/CallingConv.h" #include "llvm/Constants.h" #include "llvm/DerivedTypes.h" @@ -1872,8 +1873,7 @@ bool X86TargetLowering::IsEligibleForTailCallOptimization(SDValue Call, FastISel *X86TargetLowering::createFastISel(MachineBasicBlock *mbb, MachineFunction *mf, const TargetInstrInfo *tii) { - // FastISel isn't yet supported. - return 0; + return X86::createFastISel(mbb, mf, tii); } |