LLVM
10.0.0svn
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 "
llvm/Support/Compiler.h
"
13
14
namespace
llvm
{
15
16
class
AsmPrinter;
17
class
MachineInstr;
18
class
MachineOperand;
19
class
MCContext;
20
class
MCInst;
21
class
MCOperand;
22
class
MCSymbol
;
23
24
/// Lowers `MachineInstr` objects into `MCInst` objects.
25
class
AVRMCInstLower
{
26
public
:
27
AVRMCInstLower
(
MCContext
&Ctx,
AsmPrinter
&Printer)
28
: Ctx(Ctx), Printer(Printer) {}
29
30
/// Lowers a `MachineInstr` into a `MCInst`.
31
void
lowerInstruction
(
const
MachineInstr
&
MI
,
MCInst
&OutMI)
const
;
32
MCOperand
lowerSymbolOperand
(
const
MachineOperand
&MO,
MCSymbol
*Sym)
const
;
33
34
private
:
35
MCContext
&Ctx;
36
AsmPrinter
&Printer;
37
};
38
39
}
// end namespace llvm
40
41
#endif // LLVM_AVR_MCINST_LOWER_H
42
llvm::AVRMCInstLower::lowerSymbolOperand
MCOperand lowerSymbolOperand(const MachineOperand &MO, MCSymbol *Sym) const
Definition:
AVRMCInstLower.cpp:26
llvm
This class represents lattice values for constants.
Definition:
AllocatorList.h:23
llvm::MCSymbol
MCSymbol - Instances of this class represent a symbol name in the MC file, and MCSymbols are created ...
Definition:
MCSymbol.h:41
llvm::AVRMCInstLower::lowerInstruction
void lowerInstruction(const MachineInstr &MI, MCInst &OutMI) const
Lowers a MachineInstr into a MCInst.
Definition:
AVRMCInstLower.cpp:62
llvm::ISD::MCSymbol
Definition:
ISDOpcodes.h:138
llvm::MCContext
Context object for machine code objects.
Definition:
MCContext.h:65
llvm::MCInst
Instances of this class represent a single low-level machine instruction.
Definition:
MCInst.h:158
llvm::AVRMCInstLower
Lowers MachineInstr objects into MCInst objects.
Definition:
AVRMCInstLower.h:25
Compiler.h
llvm::AsmPrinter
This class is intended to be used as a driving class for all asm writers.
Definition:
AsmPrinter.h:78
llvm::MachineOperand
MachineOperand class - Representation of each machine instruction operand.
Definition:
MachineOperand.h:50
llvm::AVRMCInstLower::AVRMCInstLower
AVRMCInstLower(MCContext &Ctx, AsmPrinter &Printer)
Definition:
AVRMCInstLower.h:27
llvm::MachineInstr
Representation of each machine instruction.
Definition:
MachineInstr.h:63
MI
IRTranslator LLVM IR MI
Definition:
IRTranslator.cpp:92
llvm::MCOperand
Instances of this class represent operands of the MCInst class.
Definition:
MCInst.h:34
Generated on Mon Nov 4 2019 00:38:12 for LLVM by
1.8.13