PPC.h revision eb1ac3385096dd6f45a1548f3492f21648f55b4c
1//===-- PPC.h - Top-level interface for PowerPC Target ----------*- C++ -*-===// 2// 3// The LLVM Compiler Infrastructure 4// 5// This file was developed by the LLVM research group and is distributed under 6// the University of Illinois Open Source License. See LICENSE.TXT for details. 7// 8//===----------------------------------------------------------------------===// 9// 10// This file contains the entry points for global functions defined in the LLVM 11// PowerPC back-end. 12// 13//===----------------------------------------------------------------------===// 14 15#ifndef LLVM_TARGET_POWERPC_H 16#define LLVM_TARGET_POWERPC_H 17 18#include <iosfwd> 19 20 21// GCC #defines PPC on Linux but we use it as our namespace name 22#undef PPC 23 24namespace llvm { 25 class PPCTargetMachine; 26 class FunctionPassManager; 27 class FunctionPass; 28 class MachineCodeEmitter; 29 30FunctionPass *createPPCBranchSelectionPass(); 31FunctionPass *createPPCISelDag(PPCTargetMachine &TM); 32FunctionPass *createPPCAsmPrinterPass(std::ostream &OS, 33 PPCTargetMachine &TM); 34FunctionPass *createPPCCodeEmitterPass(PPCTargetMachine &TM, 35 MachineCodeEmitter &MCE); 36} // end namespace llvm; 37 38// Defines symbolic names for PowerPC registers. This defines a mapping from 39// register name to register number. 40// 41#include "PPCGenRegisterNames.inc" 42 43// Defines symbolic names for the PowerPC instructions. 44// 45#include "PPCGenInstrNames.inc" 46 47#endif 48