36 lines · c
1//===- ARC.h - Top-level interface for ARC representation -------*- C++ -*-===//2//3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.4// See https://llvm.org/LICENSE.txt for license information.5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception6//7//===----------------------------------------------------------------------===//8//9// This file contains the entry points for global functions defined in the LLVM10// ARC back-end.11//12//===----------------------------------------------------------------------===//13 14#ifndef LLVM_LIB_TARGET_ARC_ARC_H15#define LLVM_LIB_TARGET_ARC_ARC_H16 17#include "MCTargetDesc/ARCMCTargetDesc.h"18#include "llvm/Target/TargetMachine.h"19 20namespace llvm {21 22class ARCTargetMachine;23class FunctionPass;24class PassRegistry;25 26FunctionPass *createARCISelDag(ARCTargetMachine &TM, CodeGenOptLevel OptLevel);27FunctionPass *createARCExpandPseudosPass();28FunctionPass *createARCOptAddrMode();29FunctionPass *createARCBranchFinalizePass();30void initializeARCAsmPrinterPass(PassRegistry &);31void initializeARCDAGToDAGISelLegacyPass(PassRegistry &);32 33} // end namespace llvm34 35#endif // LLVM_LIB_TARGET_ARC_ARC_H36