blob: c58daa374c85bb44f32f3951236b5e0b7f6fd38c [file] [log] [blame]
Anton Korobeynikov4403b932009-07-16 13:27:25 +00001//=-- SystemZ.h - Top-level interface for SystemZ 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 SystemZ backend.
12//
13//===----------------------------------------------------------------------===//
14
15#ifndef LLVM_TARGET_SystemZ_H
16#define LLVM_TARGET_SystemZ_H
17
18#include "llvm/Target/TargetMachine.h"
19
20namespace llvm {
21 class SystemZTargetMachine;
22 class FunctionPass;
23 class raw_ostream;
24
25 FunctionPass *createSystemZISelDag(SystemZTargetMachine &TM,
26 CodeGenOpt::Level OptLevel);
27 FunctionPass *createSystemZCodePrinterPass(raw_ostream &o,
28 SystemZTargetMachine &tm,
29 CodeGenOpt::Level OptLevel,
30 bool verbose);
31} // end namespace llvm;
32
33// Defines symbolic names for SystemZ registers.
34// This defines a mapping from register name to register number.
35#include "SystemZGenRegisterNames.inc"
36
37// Defines symbolic names for the SystemZ instructions.
38#include "SystemZGenInstrNames.inc"
39
40#endif