xref: /aosp_15_r20/external/llvm/lib/Target/MSP430/MSP430.h (revision 9880d6810fe72a1726cb53787c6711e909410d58)
1*9880d681SAndroid Build Coastguard Worker //==-- MSP430.h - Top-level interface for MSP430 representation --*- C++ -*-==//
2*9880d681SAndroid Build Coastguard Worker //
3*9880d681SAndroid Build Coastguard Worker //                     The LLVM Compiler Infrastructure
4*9880d681SAndroid Build Coastguard Worker //
5*9880d681SAndroid Build Coastguard Worker // This file is distributed under the University of Illinois Open Source
6*9880d681SAndroid Build Coastguard Worker // License. See LICENSE.TXT for details.
7*9880d681SAndroid Build Coastguard Worker //
8*9880d681SAndroid Build Coastguard Worker //===----------------------------------------------------------------------===//
9*9880d681SAndroid Build Coastguard Worker //
10*9880d681SAndroid Build Coastguard Worker // This file contains the entry points for global functions defined in
11*9880d681SAndroid Build Coastguard Worker // the LLVM MSP430 backend.
12*9880d681SAndroid Build Coastguard Worker //
13*9880d681SAndroid Build Coastguard Worker //===----------------------------------------------------------------------===//
14*9880d681SAndroid Build Coastguard Worker 
15*9880d681SAndroid Build Coastguard Worker #ifndef LLVM_LIB_TARGET_MSP430_MSP430_H
16*9880d681SAndroid Build Coastguard Worker #define LLVM_LIB_TARGET_MSP430_MSP430_H
17*9880d681SAndroid Build Coastguard Worker 
18*9880d681SAndroid Build Coastguard Worker #include "MCTargetDesc/MSP430MCTargetDesc.h"
19*9880d681SAndroid Build Coastguard Worker #include "llvm/Target/TargetMachine.h"
20*9880d681SAndroid Build Coastguard Worker 
21*9880d681SAndroid Build Coastguard Worker namespace MSP430CC {
22*9880d681SAndroid Build Coastguard Worker   // MSP430 specific condition code.
23*9880d681SAndroid Build Coastguard Worker   enum CondCodes {
24*9880d681SAndroid Build Coastguard Worker     COND_E  = 0,  // aka COND_Z
25*9880d681SAndroid Build Coastguard Worker     COND_NE = 1,  // aka COND_NZ
26*9880d681SAndroid Build Coastguard Worker     COND_HS = 2,  // aka COND_C
27*9880d681SAndroid Build Coastguard Worker     COND_LO = 3,  // aka COND_NC
28*9880d681SAndroid Build Coastguard Worker     COND_GE = 4,
29*9880d681SAndroid Build Coastguard Worker     COND_L  = 5,
30*9880d681SAndroid Build Coastguard Worker 
31*9880d681SAndroid Build Coastguard Worker     COND_INVALID = -1
32*9880d681SAndroid Build Coastguard Worker   };
33*9880d681SAndroid Build Coastguard Worker }
34*9880d681SAndroid Build Coastguard Worker 
35*9880d681SAndroid Build Coastguard Worker namespace llvm {
36*9880d681SAndroid Build Coastguard Worker   class MSP430TargetMachine;
37*9880d681SAndroid Build Coastguard Worker   class FunctionPass;
38*9880d681SAndroid Build Coastguard Worker   class formatted_raw_ostream;
39*9880d681SAndroid Build Coastguard Worker 
40*9880d681SAndroid Build Coastguard Worker   FunctionPass *createMSP430ISelDag(MSP430TargetMachine &TM,
41*9880d681SAndroid Build Coastguard Worker                                     CodeGenOpt::Level OptLevel);
42*9880d681SAndroid Build Coastguard Worker 
43*9880d681SAndroid Build Coastguard Worker   FunctionPass *createMSP430BranchSelectionPass();
44*9880d681SAndroid Build Coastguard Worker 
45*9880d681SAndroid Build Coastguard Worker } // end namespace llvm;
46*9880d681SAndroid Build Coastguard Worker 
47*9880d681SAndroid Build Coastguard Worker #endif
48