blob: 622814ddfdffdcbb372803ebaaf13b77e30a9c78 [file] [log] [blame]
Tim Northover72062f52013-01-31 12:12:40 +00001//==-- AArch64.h - Top-level interface for AArch64 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 the LLVM
11// AArch64 back-end.
12//
13//===----------------------------------------------------------------------===//
14
15#ifndef LLVM_TARGET_AARCH64_H
16#define LLVM_TARGET_AARCH64_H
17
18#include "MCTargetDesc/AArch64MCTargetDesc.h"
19#include "llvm/Target/TargetMachine.h"
20
21namespace llvm {
22
23class AArch64AsmPrinter;
24class FunctionPass;
25class AArch64TargetMachine;
26class MachineInstr;
27class MCInst;
28
29FunctionPass *createAArch64ISelDAG(AArch64TargetMachine &TM,
30 CodeGenOpt::Level OptLevel);
31
32FunctionPass *createAArch64ConstantIslandPass();
33
34FunctionPass *createAArch64CleanupLocalDynamicTLSPass();
35
36void LowerAArch64MachineInstrToMCInst(const MachineInstr *MI, MCInst &OutMI,
37 AArch64AsmPrinter &AP);
38
39
40}
41
42#endif