LLVM  10.0.0svn
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 
42  InstructionSelector *createMipsInstructionSelector(const MipsTargetMachine &,
43  MipsSubtarget &,
44  MipsRegisterBankInfo &);
45 
46  void initializeMipsDelaySlotFillerPass(PassRegistry &);
47  void initializeMipsBranchExpansionPass(PassRegistry &);
48  void initializeMicroMipsSizeReducePass(PassRegistry &);
49  void initializeMipsPreLegalizerCombinerPass(PassRegistry&);
50 } // end namespace llvm;
51 
52 #endif
void initializeMipsBranchExpansionPass(PassRegistry &)
This class represents lattice values for constants.
Definition: AllocatorList.h:23
FunctionPass * createMipsBranchExpansion()
FunctionPass * createMipsDelaySlotFillerPass()
createMipsDelaySlotFillerPass - Returns a pass that fills in delay slots in Mips MachineFunctions ...
InstructionSelector * createMipsInstructionSelector(const MipsTargetMachine &, MipsSubtarget &, MipsRegisterBankInfo &)
ModulePass * createMipsOs16Pass()
Definition: MipsOs16.cpp:159
FunctionPass * createMipsOptimizePICCallPass()
Return an OptimizeCall object.
FunctionPass * createMipsPreLegalizeCombiner()
FunctionPass * createMipsConstantIslandPass()
Returns a pass that converts branches to long branches.
ModulePass * createMips16HardFloatPass()
FunctionPass * createMipsExpandPseudoPass()
createMipsExpandPseudoPass - returns an instance of the pseudo instruction expansion pass...
void initializeMicroMipsSizeReducePass(PassRegistry &)
FunctionPass * createMicroMipsSizeReducePass()
Returns an instance of the MicroMips size reduction pass.
FunctionPass * createMipsModuleISelDagPass()
void initializeMipsDelaySlotFillerPass(PassRegistry &)
void initializeMipsPreLegalizerCombinerPass(PassRegistry &)