1193323Sed//==-- MSP430.h - Top-level interface for MSP430 representation --*- C++ -*-==//
2193323Sed//
3193323Sed//                     The LLVM Compiler Infrastructure
4193323Sed//
5193323Sed// This file is distributed under the University of Illinois Open Source
6193323Sed// License. See LICENSE.TXT for details.
7193323Sed//
8193323Sed//===----------------------------------------------------------------------===//
9193323Sed//
10193323Sed// This file contains the entry points for global functions defined in
11193323Sed// the LLVM MSP430 backend.
12193323Sed//
13193323Sed//===----------------------------------------------------------------------===//
14193323Sed
15193323Sed#ifndef LLVM_TARGET_MSP430_H
16193323Sed#define LLVM_TARGET_MSP430_H
17193323Sed
18224145Sdim#include "MCTargetDesc/MSP430MCTargetDesc.h"
19193323Sed#include "llvm/Target/TargetMachine.h"
20193323Sed
21198396Srdivackynamespace MSP430CC {
22198396Srdivacky  // MSP430 specific condition code.
23198396Srdivacky  enum CondCodes {
24198396Srdivacky    COND_E  = 0,  // aka COND_Z
25198396Srdivacky    COND_NE = 1,  // aka COND_NZ
26198396Srdivacky    COND_HS = 2,  // aka COND_C
27198396Srdivacky    COND_LO = 3,  // aka COND_NC
28198396Srdivacky    COND_GE = 4,
29198396Srdivacky    COND_L  = 5,
30198396Srdivacky
31198396Srdivacky    COND_INVALID = -1
32198396Srdivacky  };
33198396Srdivacky}
34198396Srdivacky
35193323Sednamespace llvm {
36193323Sed  class MSP430TargetMachine;
37193323Sed  class FunctionPass;
38198090Srdivacky  class formatted_raw_ostream;
39193323Sed
40193323Sed  FunctionPass *createMSP430ISelDag(MSP430TargetMachine &TM,
41193323Sed                                    CodeGenOpt::Level OptLevel);
42198090Srdivacky
43202878Srdivacky  FunctionPass *createMSP430BranchSelectionPass();
44202878Srdivacky
45193323Sed} // end namespace llvm;
46193323Sed
47193323Sed#endif
48