//=-- 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