LLVM
20.0.0git
lib
Target
AVR
AVRMCInstLower.h
Go to the documentation of this file.
1
//===-- AVRMCInstLower.h - Lower MachineInstr to MCInst ---------*- 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
#ifndef LLVM_AVR_MCINST_LOWER_H
10
#define LLVM_AVR_MCINST_LOWER_H
11
12
#include "
AVRSubtarget.h
"
13
#include "
llvm/Support/Compiler.h
"
14
15
namespace
llvm
{
16
17
class
AsmPrinter;
18
class
MachineInstr;
19
class
MachineOperand;
20
class
MCContext;
21
class
MCInst;
22
class
MCOperand;
23
class
MCSymbol
;
24
25
/// Lowers `MachineInstr` objects into `MCInst` objects.
26
class
AVRMCInstLower
{
27
public
:
28
AVRMCInstLower
(
MCContext
&Ctx,
AsmPrinter
&Printer)
29
: Ctx(Ctx),
Printer
(
Printer
) {}
30
31
/// Lowers a `MachineInstr` into a `MCInst`.
32
void
lowerInstruction
(
const
MachineInstr
&
MI
,
MCInst
&OutMI)
const
;
33
MCOperand
lowerSymbolOperand
(
const
MachineOperand
&MO,
MCSymbol
*
Sym
,
34
const
AVRSubtarget
&Subtarget)
const
;
35
36
private
:
37
MCContext
&Ctx;
38
AsmPrinter
&Printer;
39
};
40
41
}
// end namespace llvm
42
43
#endif
// LLVM_AVR_MCINST_LOWER_H
AVRSubtarget.h
Compiler.h
Printer
dxil pretty DXIL Metadata Pretty Printer
Definition:
DXILPrettyPrinter.cpp:305
Sym
Symbol * Sym
Definition:
ELF_riscv.cpp:479
MI
IRTranslator LLVM IR MI
Definition:
IRTranslator.cpp:112
llvm::AVRMCInstLower
Lowers MachineInstr objects into MCInst objects.
Definition:
AVRMCInstLower.h:26
llvm::AVRMCInstLower::AVRMCInstLower
AVRMCInstLower(MCContext &Ctx, AsmPrinter &Printer)
Definition:
AVRMCInstLower.h:28
llvm::AVRMCInstLower::lowerInstruction
void lowerInstruction(const MachineInstr &MI, MCInst &OutMI) const
Lowers a MachineInstr into a MCInst.
Definition:
AVRMCInstLower.cpp:68
llvm::AVRMCInstLower::lowerSymbolOperand
MCOperand lowerSymbolOperand(const MachineOperand &MO, MCSymbol *Sym, const AVRSubtarget &Subtarget) const
Definition:
AVRMCInstLower.cpp:26
llvm::AVRSubtarget
A specific AVR target MCU.
Definition:
AVRSubtarget.h:32
llvm::AsmPrinter
This class is intended to be used as a driving class for all asm writers.
Definition:
AsmPrinter.h:86
llvm::MCContext
Context object for machine code objects.
Definition:
MCContext.h:83
llvm::MCInst
Instances of this class represent a single low-level machine instruction.
Definition:
MCInst.h:185
llvm::MCOperand
Instances of this class represent operands of the MCInst class.
Definition:
MCInst.h:37
llvm::MCSymbol
MCSymbol - Instances of this class represent a symbol name in the MC file, and MCSymbols are created ...
Definition:
MCSymbol.h:41
llvm::MachineInstr
Representation of each machine instruction.
Definition:
MachineInstr.h:69
llvm::MachineOperand
MachineOperand class - Representation of each machine instruction operand.
Definition:
MachineOperand.h:48
llvm::ISD::MCSymbol
@ MCSymbol
Definition:
ISDOpcodes.h:178
llvm
This is an optimization pass for GlobalISel generic memory operations.
Definition:
AddressRanges.h:18
Generated on Sat Dec 21 2024 03:39:11 for LLVM by
1.9.6