Home | History | Annotate | Download | only in AArch64
      1 //==-- 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 
     21 namespace llvm {
     22 
     23 class AArch64AsmPrinter;
     24 class FunctionPass;
     25 class AArch64TargetMachine;
     26 class MachineInstr;
     27 class MCInst;
     28 
     29 FunctionPass *createAArch64ISelDAG(AArch64TargetMachine &TM,
     30                                    CodeGenOpt::Level OptLevel);
     31 
     32 FunctionPass *createAArch64CleanupLocalDynamicTLSPass();
     33 
     34 FunctionPass *createAArch64BranchFixupPass();
     35 
     36 void LowerAArch64MachineInstrToMCInst(const MachineInstr *MI, MCInst &OutMI,
     37                                       AArch64AsmPrinter &AP);
     38 
     39 
     40 }
     41 
     42 #endif
     43