Path: blob/main/contrib/llvm-project/llvm/lib/Target/Mips/Mips.h
35266 views
//===-- Mips.h - Top-level interface for Mips representation ----*- C++ -*-===//1//2// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.3// See https://llvm.org/LICENSE.txt for license information.4// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception5//6//===----------------------------------------------------------------------===//7//8// This file contains the entry points for global functions defined in9// the LLVM Mips back-end.10//11//===----------------------------------------------------------------------===//1213#ifndef LLVM_LIB_TARGET_MIPS_MIPS_H14#define LLVM_LIB_TARGET_MIPS_MIPS_H1516#include "MCTargetDesc/MipsMCTargetDesc.h"17#include "llvm/Target/TargetMachine.h"1819namespace llvm {20class FunctionPass;21class InstructionSelector;22class MipsRegisterBankInfo;23class MipsSubtarget;24class MipsTargetMachine;25class MipsTargetMachine;26class ModulePass;27class PassRegistry;2829ModulePass *createMipsOs16Pass();30ModulePass *createMips16HardFloatPass();3132FunctionPass *createMipsModuleISelDagPass();33FunctionPass *createMipsOptimizePICCallPass();34FunctionPass *createMipsDelaySlotFillerPass();35FunctionPass *createMipsBranchExpansion();36FunctionPass *createMipsConstantIslandPass();37FunctionPass *createMicroMipsSizeReducePass();38FunctionPass *createMipsExpandPseudoPass();39FunctionPass *createMipsPreLegalizeCombiner();40FunctionPass *createMipsPostLegalizeCombiner(bool IsOptNone);41FunctionPass *createMipsMulMulBugPass();4243InstructionSelector *44createMipsInstructionSelector(const MipsTargetMachine &, const MipsSubtarget &,45const MipsRegisterBankInfo &);4647void initializeMicroMipsSizeReducePass(PassRegistry &);48void initializeMipsBranchExpansionPass(PassRegistry &);49void initializeMipsDAGToDAGISelLegacyPass(PassRegistry &);50void initializeMipsDelaySlotFillerPass(PassRegistry &);51void initializeMipsMulMulBugFixPass(PassRegistry &);52void initializeMipsPostLegalizerCombinerPass(PassRegistry &);53void initializeMipsPreLegalizerCombinerPass(PassRegistry &);54} // namespace llvm5556#endif575859