]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - contrib/llvm/lib/Target/MSP430/MSP430.h
MFV r345515: netbsd-tests: import memory bump for libc/regex/t_exhaust
[FreeBSD/FreeBSD.git] / contrib / llvm / lib / Target / MSP430 / MSP430.h
1 //==-- 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_LIB_TARGET_MSP430_MSP430_H
16 #define LLVM_LIB_TARGET_MSP430_MSP430_H
17
18 #include "MCTargetDesc/MSP430MCTargetDesc.h"
19 #include "llvm/Target/TargetMachine.h"
20
21 namespace MSP430CC {
22   // MSP430 specific condition code.
23   enum CondCodes {
24     COND_E  = 0,  // aka COND_Z
25     COND_NE = 1,  // aka COND_NZ
26     COND_HS = 2,  // aka COND_C
27     COND_LO = 3,  // aka COND_NC
28     COND_GE = 4,
29     COND_L  = 5,
30     COND_N  = 6,  // jump if negative
31     COND_NONE,    // unconditional
32
33     COND_INVALID = -1
34   };
35 }
36
37 namespace llvm {
38   class MSP430TargetMachine;
39   class FunctionPass;
40   class formatted_raw_ostream;
41
42   FunctionPass *createMSP430ISelDag(MSP430TargetMachine &TM,
43                                     CodeGenOpt::Level OptLevel);
44
45   FunctionPass *createMSP430BranchSelectionPass();
46
47 } // end namespace llvm;
48
49 #endif