Wesley Peck | a70f28c | 2010-02-23 19:15:24 +0000 | [diff] [blame] | 1 | //===-- MBlaze.h - Top-level interface for MBlaze ---------------*- C++ -*-===// |
| 2 | // |
| 3 | // The LLVM Compiler Infrastructure |
| 4 | // |
| 5 | // This file is distributed under the University of Illinois Open Source |
| 6 | // License. See LICENSE.TXT for details. |
| 7 | // |
| 8 | //===----------------------------------------------------------------------===// |
| 9 | // |
| 10 | // This file contains the entry points for global functions defined in |
| 11 | // the LLVM MBlaze back-end. |
| 12 | // |
| 13 | //===----------------------------------------------------------------------===// |
| 14 | |
| 15 | #ifndef TARGET_MBLAZE_H |
| 16 | #define TARGET_MBLAZE_H |
| 17 | |
| 18 | #include "llvm/Target/TargetMachine.h" |
| 19 | |
| 20 | namespace llvm { |
| 21 | class MBlazeTargetMachine; |
| 22 | class FunctionPass; |
| 23 | class MachineCodeEmitter; |
Wesley Peck | 4e9141f | 2010-10-21 03:57:26 +0000 | [diff] [blame] | 24 | class MCCodeEmitter; |
| 25 | class TargetAsmBackend; |
Wesley Peck | a70f28c | 2010-02-23 19:15:24 +0000 | [diff] [blame] | 26 | class formatted_raw_ostream; |
| 27 | |
Wesley Peck | 4e9141f | 2010-10-21 03:57:26 +0000 | [diff] [blame] | 28 | MCCodeEmitter *createMBlazeMCCodeEmitter(const Target &, |
| 29 | TargetMachine &TM, |
| 30 | MCContext &Ctx); |
| 31 | |
| 32 | TargetAsmBackend *createMBlazeAsmBackend(const Target &, const std::string &); |
| 33 | |
Wesley Peck | a70f28c | 2010-02-23 19:15:24 +0000 | [diff] [blame] | 34 | FunctionPass *createMBlazeISelDag(MBlazeTargetMachine &TM); |
| 35 | FunctionPass *createMBlazeDelaySlotFillerPass(MBlazeTargetMachine &TM); |
| 36 | |
| 37 | extern Target TheMBlazeTarget; |
| 38 | } // end namespace llvm; |
| 39 | |
| 40 | // Defines symbolic names for MBlaze registers. This defines a mapping from |
| 41 | // register name to register number. |
Evan Cheng | 73f50d9 | 2011-06-27 18:32:37 +0000 | [diff] [blame] | 42 | #define GET_REGINFO_ENUM |
| 43 | #include "MBlazeGenRegisterInfo.inc" |
Wesley Peck | a70f28c | 2010-02-23 19:15:24 +0000 | [diff] [blame] | 44 | |
| 45 | // Defines symbolic names for the MBlaze instructions. |
Evan Cheng | 22fee2d | 2011-06-28 20:07:07 +0000 | [diff] [blame] | 46 | #define GET_INSTRINFO_ENUM |
| 47 | #include "MBlazeGenInstrInfo.inc" |
Wesley Peck | a70f28c | 2010-02-23 19:15:24 +0000 | [diff] [blame] | 48 | |
| 49 | #endif |