Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
freebsd
GitHub Repository: freebsd/freebsd-src
Path: blob/main/contrib/llvm-project/llvm/lib/Target/Mips/Mips.h
35266 views
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
17
#include "MCTargetDesc/MipsMCTargetDesc.h"
18
#include "llvm/Target/TargetMachine.h"
19
20
namespace llvm {
21
class FunctionPass;
22
class InstructionSelector;
23
class MipsRegisterBankInfo;
24
class MipsSubtarget;
25
class MipsTargetMachine;
26
class MipsTargetMachine;
27
class ModulePass;
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 *
45
createMipsInstructionSelector(const MipsTargetMachine &, const MipsSubtarget &,
46
const MipsRegisterBankInfo &);
47
48
void initializeMicroMipsSizeReducePass(PassRegistry &);
49
void initializeMipsBranchExpansionPass(PassRegistry &);
50
void initializeMipsDAGToDAGISelLegacyPass(PassRegistry &);
51
void initializeMipsDelaySlotFillerPass(PassRegistry &);
52
void initializeMipsMulMulBugFixPass(PassRegistry &);
53
void initializeMipsPostLegalizerCombinerPass(PassRegistry &);
54
void initializeMipsPreLegalizerCombinerPass(PassRegistry &);
55
} // namespace llvm
56
57
#endif
58
59