blob: f9d828b266160286daaa326f14f17f4fe5ac612e [file] [log] [blame]
Wesley Pecka70f28c2010-02-23 19:15:24 +00001//===-- 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
20namespace llvm {
21 class MBlazeTargetMachine;
22 class FunctionPass;
23 class MachineCodeEmitter;
24 class formatted_raw_ostream;
25
26 FunctionPass *createMBlazeISelDag(MBlazeTargetMachine &TM);
27 FunctionPass *createMBlazeDelaySlotFillerPass(MBlazeTargetMachine &TM);
28
29 extern Target TheMBlazeTarget;
30} // end namespace llvm;
31
32// Defines symbolic names for MBlaze registers. This defines a mapping from
33// register name to register number.
34#include "MBlazeGenRegisterNames.inc"
35
36// Defines symbolic names for the MBlaze instructions.
37#include "MBlazeGenInstrNames.inc"
38
39#endif