| //=-- SystemZ.h - Top-level interface for SystemZ representation -*- C++ -*-==// | |
| // | |
| // The LLVM Compiler Infrastructure | |
| // | |
| // This file is distributed under the University of Illinois Open Source | |
| // License. See LICENSE.TXT for details. | |
| // | |
| //===----------------------------------------------------------------------===// | |
| // | |
| // This file contains the entry points for global functions defined in | |
| // the LLVM SystemZ backend. | |
| // | |
| //===----------------------------------------------------------------------===// | |
| #ifndef LLVM_TARGET_SystemZ_H | |
| #define LLVM_TARGET_SystemZ_H | |
| #include "MCTargetDesc/SystemZMCTargetDesc.h" | |
| #include "llvm/Target/TargetMachine.h" | |
| namespace llvm { | |
| class SystemZTargetMachine; | |
| class FunctionPass; | |
| class formatted_raw_ostream; | |
| namespace SystemZCC { | |
| // SystemZ specific condition code. These correspond to SYSTEMZ_*_COND in | |
| // SystemZInstrInfo.td. They must be kept in synch. | |
| enum CondCodes { | |
| O = 0, | |
| H = 1, | |
| NLE = 2, | |
| L = 3, | |
| NHE = 4, | |
| LH = 5, | |
| NE = 6, | |
| E = 7, | |
| NLH = 8, | |
| HE = 9, | |
| NL = 10, | |
| LE = 11, | |
| NH = 12, | |
| NO = 13, | |
| INVALID = -1 | |
| }; | |
| } | |
| FunctionPass *createSystemZISelDag(SystemZTargetMachine &TM, | |
| CodeGenOpt::Level OptLevel); | |
| } // end namespace llvm; | |
| #endif |