LLVM 20.0.0git
LoongArch.h
Go to the documentation of this file.
1//===-- LoongArch.h - Top-level interface for LoongArch ---------*- 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 the LLVM
10// LoongArch back-end.
11//
12//===----------------------------------------------------------------------===//
13
14#ifndef LLVM_LIB_TARGET_LOONGARCH_LOONGARCH_H
15#define LLVM_LIB_TARGET_LOONGARCH_LOONGARCH_H
16
19
20namespace llvm {
21class AsmPrinter;
22class FunctionPass;
23class LoongArchTargetMachine;
24class MCInst;
25class MCOperand;
26class MachineInstr;
27class MachineOperand;
28class PassRegistry;
29
30bool lowerLoongArchMachineInstrToMCInst(const MachineInstr *MI, MCInst &OutMI,
31 AsmPrinter &AP);
32bool lowerLoongArchMachineOperandToMCOperand(const MachineOperand &MO,
33 MCOperand &MCOp,
34 const AsmPrinter &AP);
35
50} // end namespace llvm
51
52#endif // LLVM_LIB_TARGET_LOONGARCH_LOONGARCH_H
IRTranslator LLVM IR MI
FunctionPass class - This class is used to implement most global optimizations.
Definition: Pass.h:310
PassRegistry - This class manages the registration and intitialization of the pass subsystem as appli...
Definition: PassRegistry.h:37
This is an optimization pass for GlobalISel generic memory operations.
Definition: AddressRanges.h:18
FunctionPass * createLoongArchExpandAtomicPseudoPass()
FunctionPass * createLoongArchDeadRegisterDefinitionsPass()
void initializeLoongArchDAGToDAGISelLegacyPass(PassRegistry &)
bool lowerLoongArchMachineInstrToMCInst(const MachineInstr *MI, MCInst &OutMI, AsmPrinter &AP)
bool lowerLoongArchMachineOperandToMCOperand(const MachineOperand &MO, MCOperand &MCOp, const AsmPrinter &AP)
void initializeLoongArchPreRAExpandPseudoPass(PassRegistry &)
FunctionPass * createLoongArchISelDag(LoongArchTargetMachine &TM)
void initializeLoongArchMergeBaseOffsetOptPass(PassRegistry &)
void initializeLoongArchExpandAtomicPseudoPass(PassRegistry &)
void initializeLoongArchExpandPseudoPass(PassRegistry &)
FunctionPass * createLoongArchOptWInstrsPass()
FunctionPass * createLoongArchPreRAExpandPseudoPass()
void initializeLoongArchOptWInstrsPass(PassRegistry &)
FunctionPass * createLoongArchExpandPseudoPass()
void initializeLoongArchDeadRegisterDefinitionsPass(PassRegistry &)
FunctionPass * createLoongArchMergeBaseOffsetOptPass()
Returns an instance of the Merge Base Offset Optimization pass.