blob: 6251a42f9043c32c81bf727e26da9569c3b139a5 [file] [log] [blame]
Anton Korobeynikovf2c3e172009-05-03 12:57:15 +00001//==-- MSP430.h - Top-level interface for MSP430 representation --*- 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 MSP430 backend.
12//
13//===----------------------------------------------------------------------===//
14
15#ifndef LLVM_TARGET_MSP430_H
16#define LLVM_TARGET_MSP430_H
17
Anton Korobeynikov60871cb2009-05-03 13:19:42 +000018#include "llvm/Target/TargetMachine.h"
19
Anton Korobeynikovf2c3e172009-05-03 12:57:15 +000020namespace llvm {
21 class MSP430TargetMachine;
22 class FunctionPass;
David Greene71847812009-07-14 20:18:05 +000023 class formatted_raw_ostream;
Anton Korobeynikovf2c3e172009-05-03 12:57:15 +000024
Anton Korobeynikov60871cb2009-05-03 13:19:42 +000025 FunctionPass *createMSP430ISelDag(MSP430TargetMachine &TM,
26 CodeGenOpt::Level OptLevel);
David Greene71847812009-07-14 20:18:05 +000027 FunctionPass *createMSP430CodePrinterPass(formatted_raw_ostream &o,
Daniel Dunbar1e1f8ba2009-07-15 23:17:20 +000028 TargetMachine &tm,
Anton Korobeynikov60871cb2009-05-03 13:19:42 +000029 bool verbose);
Daniel Dunbar4cb1e132009-07-18 23:03:22 +000030
31 extern Target TheMSP430Target;
32
Anton Korobeynikovf2c3e172009-05-03 12:57:15 +000033} // end namespace llvm;
34
35// Defines symbolic names for MSP430 registers.
36// This defines a mapping from register name to register number.
37#include "MSP430GenRegisterNames.inc"
38
39// Defines symbolic names for the MSP430 instructions.
40#include "MSP430GenInstrNames.inc"
41
42#endif