Add a TargetLowering hook for creating a FastISel object.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55009 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Dan Gohman 2008-08-19 21:26:29 +00:00
parent cf711aa5b6
commit d4641a254c

View File

@ -33,13 +33,16 @@
namespace llvm { namespace llvm {
class Function; class Function;
class FastISel;
class MachineBasicBlock; class MachineBasicBlock;
class MachineFunction;
class MachineFrameInfo; class MachineFrameInfo;
class MachineInstr; class MachineInstr;
class SDNode; class SDNode;
class SDValue; class SDValue;
class SelectionDAG; class SelectionDAG;
class TargetData; class TargetData;
class TargetInstrInfo;
class TargetMachine; class TargetMachine;
class TargetRegisterClass; class TargetRegisterClass;
class TargetSubtarget; class TargetSubtarget;
@ -1111,6 +1114,12 @@ public:
/// DAG node. /// DAG node.
virtual const char *getTargetNodeName(unsigned Opcode) const; virtual const char *getTargetNodeName(unsigned Opcode) const;
/// createFastISel - This method returns a target specific FastISel object,
/// or null if the target does not support "fast" ISel.
virtual FastISel *createFastISel(MachineBasicBlock *,
MachineFunction *,
const TargetInstrInfo *) { return 0; }
//===--------------------------------------------------------------------===// //===--------------------------------------------------------------------===//
// Inline Asm Support hooks // Inline Asm Support hooks
// //