Add a TargetLowering hook for creating a FastISel object.
authorDan Gohman <gohman@apple.com>
Tue, 19 Aug 2008 21:26:29 +0000 (21:26 +0000)
committerDan Gohman <gohman@apple.com>
Tue, 19 Aug 2008 21:26:29 +0000 (21:26 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55009 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/Target/TargetLowering.h

index 3c2ef0004b9e71058a451a281b93864418790718..3702dbae9181a7f67212e87f9f1c72a84ee292fa 100644 (file)
 
 namespace llvm {
   class Function;
+  class FastISel;
   class MachineBasicBlock;
+  class MachineFunction;
   class MachineFrameInfo;
   class MachineInstr;
   class SDNode;
   class SDValue;
   class SelectionDAG;
   class TargetData;
+  class TargetInstrInfo;
   class TargetMachine;
   class TargetRegisterClass;
   class TargetSubtarget;
@@ -1111,6 +1114,12 @@ public:
   /// DAG node.
   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
   //