LLVM
22.0.0git
lib
Target
LoongArch
MCTargetDesc
LoongArchMCTargetDesc.h
Go to the documentation of this file.
1
//===- LoongArchMCTargetDesc.h - LoongArch Target Descriptions --*- 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 provides LoongArch specific target descriptions.
10
//
11
//===----------------------------------------------------------------------===//
12
13
#ifndef LLVM_LIB_TARGET_LOONGARCH_MCTARGETDESC_LOONGARCHMCTARGETDESC_H
14
#define LLVM_LIB_TARGET_LOONGARCH_MCTARGETDESC_LOONGARCHMCTARGETDESC_H
15
16
#include "
llvm/MC/MCTargetOptions.h
"
17
#include "
llvm/Support/DataTypes.h
"
18
#include <memory>
19
20
namespace
llvm
{
21
class
MCAsmBackend
;
22
class
MCCodeEmitter
;
23
class
MCContext
;
24
class
MCInstrInfo
;
25
class
MCObjectTargetWriter
;
26
class
MCRegisterInfo
;
27
class
MCSubtargetInfo
;
28
class
Target
;
29
30
MCCodeEmitter
*
createLoongArchMCCodeEmitter
(
const
MCInstrInfo
&MCII,
31
MCContext
&Ctx);
32
33
MCAsmBackend
*
createLoongArchAsmBackend
(
const
Target
&
T
,
34
const
MCSubtargetInfo
&STI,
35
const
MCRegisterInfo
&
MRI
,
36
const
MCTargetOptions
&
Options
);
37
38
std::unique_ptr<MCObjectTargetWriter>
39
createLoongArchELFObjectWriter
(uint8_t OSABI,
bool
Is64Bit);
40
41
}
// end namespace llvm
42
43
// Defines symbolic names for LoongArch registers.
44
#define GET_REGINFO_ENUM
45
#include "LoongArchGenRegisterInfo.inc"
46
47
// Defines symbolic names for LoongArch instructions.
48
#define GET_INSTRINFO_ENUM
49
#define GET_INSTRINFO_MC_HELPER_DECLS
50
#include "LoongArchGenInstrInfo.inc"
51
52
#define GET_SUBTARGETINFO_ENUM
53
#include "LoongArchGenSubtargetInfo.inc"
54
55
#endif
// LLVM_LIB_TARGET_LOONGARCH_MCTARGETDESC_LOONGARCHMCTARGETDESC_H
MRI
unsigned const MachineRegisterInfo * MRI
Definition
AArch64AdvSIMDScalarPass.cpp:103
Options
static LVOptions Options
Definition
LVOptions.cpp:25
MCTargetOptions.h
T
#define T
Definition
Mips16ISelLowering.cpp:353
llvm::MCAsmBackend
Generic interface to target specific assembler backends.
Definition
MCAsmBackend.h:55
llvm::MCCodeEmitter
MCCodeEmitter - Generic instruction encoding interface.
Definition
MCCodeEmitter.h:22
llvm::MCContext
Context object for machine code objects.
Definition
MCContext.h:83
llvm::MCInstrInfo
Interface to description of machine instruction set.
Definition
MCInstrInfo.h:27
llvm::MCObjectTargetWriter
Base class for classes that define behaviour that is specific to both the target and the object forma...
Definition
MCObjectWriter.h:136
llvm::MCRegisterInfo
MCRegisterInfo base class - We assume that the target defines a static array of MCRegisterDesc object...
Definition
MCRegisterInfo.h:150
llvm::MCSubtargetInfo
Generic base class for all target subtargets.
Definition
MCSubtargetInfo.h:77
llvm::MCTargetOptions
Definition
MCTargetOptions.h:29
llvm::Target
Target - Wrapper for Target specific information.
Definition
TargetRegistry.h:146
DataTypes.h
llvm
This is an optimization pass for GlobalISel generic memory operations.
Definition
AddressRanges.h:18
llvm::createLoongArchELFObjectWriter
std::unique_ptr< MCObjectTargetWriter > createLoongArchELFObjectWriter(uint8_t OSABI, bool Is64Bit)
Definition
LoongArchELFObjectWriter.cpp:103
llvm::createLoongArchMCCodeEmitter
MCCodeEmitter * createLoongArchMCCodeEmitter(const MCInstrInfo &MCII, MCContext &Ctx)
Definition
LoongArchMCCodeEmitter.cpp:313
llvm::createLoongArchAsmBackend
MCAsmBackend * createLoongArchAsmBackend(const Target &T, const MCSubtargetInfo &STI, const MCRegisterInfo &MRI, const MCTargetOptions &Options)
Definition
LoongArchAsmBackend.cpp:492
Generated on
for LLVM by
1.14.0