llvm-6502/lib/Target/Alpha/Alpha.h
Bill Wendling 98a366d547 Instead of passing in an unsigned value for the optimization level, use an enum,
which better identifies what the optimization is doing. And is more flexible for
future uses.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70440 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-29 23:29:43 +00:00

50 lines
1.6 KiB
C++

//===-- Alpha.h - Top-level interface for Alpha 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
// Alpha back-end.
//
//===----------------------------------------------------------------------===//
#ifndef TARGET_ALPHA_H
#define TARGET_ALPHA_H
#include "llvm/Target/TargetMachine.h"
namespace llvm {
class AlphaTargetMachine;
class FunctionPass;
class MachineCodeEmitter;
class raw_ostream;
FunctionPass *createAlphaISelDag(AlphaTargetMachine &TM);
FunctionPass *createAlphaCodePrinterPass(raw_ostream &OS,
TargetMachine &TM,
CodeGenOpt::Level OptLevel,
bool Verbose);
FunctionPass *createAlphaPatternInstructionSelector(TargetMachine &TM);
FunctionPass *createAlphaCodeEmitterPass(AlphaTargetMachine &TM,
MachineCodeEmitter &MCE);
FunctionPass *createAlphaLLRPPass(AlphaTargetMachine &tm);
FunctionPass *createAlphaBranchSelectionPass();
} // end namespace llvm;
// Defines symbolic names for Alpha registers. This defines a mapping from
// register name to register number.
//
#include "AlphaGenRegisterNames.inc"
// Defines symbolic names for the Alpha instructions.
//
#include "AlphaGenInstrNames.inc"
#endif