LLVM  16.0.0git
Mips.h
Go to the documentation of this file.
1 //===-- Mips.h - Top-level interface for Mips 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-exception
6 //
7 //===----------------------------------------------------------------------===//
8 //
9 // This file contains the entry points for global functions defined in
10 // the LLVM Mips back-end.
11 //
12 //===----------------------------------------------------------------------===//
13 
14 #ifndef LLVM_LIB_TARGET_MIPS_MIPS_H
15 #define LLVM_LIB_TARGET_MIPS_MIPS_H
16 
19 
20 namespace llvm {
21  class MipsTargetMachine;
22  class ModulePass;
23  class FunctionPass;
24  class MipsRegisterBankInfo;
25  class MipsSubtarget;
26  class MipsTargetMachine;
27  class InstructionSelector;
28  class PassRegistry;
29 
30  ModulePass *createMipsOs16Pass();
31  ModulePass *createMips16HardFloatPass();
32 
33  FunctionPass *createMipsModuleISelDagPass();
34  FunctionPass *createMipsOptimizePICCallPass();
35  FunctionPass *createMipsDelaySlotFillerPass();
36  FunctionPass *createMipsBranchExpansion();
37  FunctionPass *createMipsConstantIslandPass();
38  FunctionPass *createMicroMipsSizeReducePass();
39  FunctionPass *createMipsExpandPseudoPass();
40  FunctionPass *createMipsPreLegalizeCombiner();
41  FunctionPass *createMipsPostLegalizeCombiner(bool IsOptNone);
42  FunctionPass *createMipsMulMulBugPass();
43 
44  InstructionSelector *createMipsInstructionSelector(const MipsTargetMachine &,
45  MipsSubtarget &,
46  MipsRegisterBankInfo &);
47 
48  void initializeMipsDelaySlotFillerPass(PassRegistry &);
49  void initializeMipsBranchExpansionPass(PassRegistry &);
50  void initializeMicroMipsSizeReducePass(PassRegistry &);
51  void initializeMipsPreLegalizerCombinerPass(PassRegistry&);
52  void initializeMipsPostLegalizerCombinerPass(PassRegistry &);
53  void initializeMipsMulMulBugFixPass(PassRegistry&);
54 } // end namespace llvm;
55 
56 #endif
llvm::createMipsExpandPseudoPass
FunctionPass * createMipsExpandPseudoPass()
createMipsExpandPseudoPass - returns an instance of the pseudo instruction expansion pass.
Definition: MipsExpandPseudo.cpp:910
llvm
This is an optimization pass for GlobalISel generic memory operations.
Definition: AddressRanges.h:18
llvm::initializeMipsDelaySlotFillerPass
void initializeMipsDelaySlotFillerPass(PassRegistry &)
llvm::createMipsOs16Pass
ModulePass * createMipsOs16Pass()
Definition: MipsOs16.cpp:160
llvm::createMips16HardFloatPass
ModulePass * createMips16HardFloatPass()
Definition: Mips16HardFloat.cpp:531
llvm::createMipsPostLegalizeCombiner
FunctionPass * createMipsPostLegalizeCombiner(bool IsOptNone)
Definition: MipsPostLegalizerCombiner.cpp:145
TargetMachine.h
llvm::initializeMipsMulMulBugFixPass
void initializeMipsMulMulBugFixPass(PassRegistry &)
llvm::createMipsOptimizePICCallPass
FunctionPass * createMipsOptimizePICCallPass()
Return an OptimizeCall object.
Definition: MipsOptimizePICCall.cpp:318
llvm::createMipsPreLegalizeCombiner
FunctionPass * createMipsPreLegalizeCombiner()
Definition: MipsPreLegalizerCombiner.cpp:116
llvm::createMipsModuleISelDagPass
FunctionPass * createMipsModuleISelDagPass()
Definition: MipsModuleISelDAGToDAG.cpp:55
llvm::initializeMicroMipsSizeReducePass
void initializeMicroMipsSizeReducePass(PassRegistry &)
llvm::createMipsBranchExpansion
FunctionPass * createMipsBranchExpansion()
MipsMCTargetDesc.h
llvm::createMicroMipsSizeReducePass
FunctionPass * createMicroMipsSizeReducePass()
Returns an instance of the MicroMips size reduction pass.
Definition: MicroMipsSizeReduction.cpp:795
llvm::createMipsInstructionSelector
InstructionSelector * createMipsInstructionSelector(const MipsTargetMachine &, MipsSubtarget &, MipsRegisterBankInfo &)
Definition: MipsInstructionSelector.cpp:935
llvm::initializeMipsPreLegalizerCombinerPass
void initializeMipsPreLegalizerCombinerPass(PassRegistry &)
llvm::createMipsDelaySlotFillerPass
FunctionPass * createMipsDelaySlotFillerPass()
createMipsDelaySlotFillerPass - Returns a pass that fills in delay slots in Mips MachineFunctions
Definition: MipsDelaySlotFiller.cpp:966
llvm::initializeMipsBranchExpansionPass
void initializeMipsBranchExpansionPass(PassRegistry &)
llvm::createMipsConstantIslandPass
FunctionPass * createMipsConstantIslandPass()
Returns a pass that converts branches to long branches.
Definition: MipsConstantIslandPass.cpp:1671
llvm::createMipsMulMulBugPass
FunctionPass * createMipsMulMulBugPass()
Definition: MipsMulMulBugPass.cpp:136
llvm::initializeMipsPostLegalizerCombinerPass
void initializeMipsPostLegalizerCombinerPass(PassRegistry &)