|
LLVM 22.0.0git
|
X86AddressMode - This struct holds a generalized full x86 address mode. More...
#include "Target/X86/X86InstrBuilder.h"
Classes | |
| union | BaseUnion |
Public Types | |
| enum | { RegBase , FrameIndexBase } |
Public Member Functions | |
| void | getFullAddress (SmallVectorImpl< MachineOperand > &MO) |
Public Attributes | |
| enum llvm::X86AddressMode:: { ... } | BaseType = RegBase |
| union llvm::X86AddressMode::BaseUnion | Base |
| unsigned | Scale = 1 |
| Register | IndexReg |
| int | Disp = 0 |
| const GlobalValue * | GV = nullptr |
| unsigned | GVOpFlags = 0 |
| bool | CP = false |
X86AddressMode - This struct holds a generalized full x86 address mode.
The base register can be a frame index, which will eventually be replaced with BP or SP and Disp being offsetted accordingly. The displacement may also include the offset of a global value.
Definition at line 42 of file X86InstrBuilder.h.
| anonymous enum |
| Enumerator | |
|---|---|
| RegBase | |
| FrameIndexBase | |
Definition at line 43 of file X86InstrBuilder.h.
|
inline |
Definition at line 59 of file X86InstrBuilder.h.
References assert(), Base, BaseType, llvm::MachineOperand::CreateFI(), llvm::MachineOperand::CreateGA(), llvm::MachineOperand::CreateImm(), llvm::MachineOperand::CreateReg(), Disp, FrameIndexBase, GV, GVOpFlags, IndexReg, llvm::SmallVectorTemplateBase< T, bool >::push_back(), RegBase, and Scale.
| union llvm::X86AddressMode::BaseUnion llvm::X86AddressMode::Base |
Referenced by llvm::addFullAddress(), llvm::getAddressFromInstr(), getFullAddress(), and X86SelectAddress().
| enum { ... } llvm::X86AddressMode::BaseType |
| bool llvm::X86AddressMode::CP = false |
Definition at line 57 of file X86InstrBuilder.h.
Referenced by X86SelectAddress().
| int llvm::X86AddressMode::Disp = 0 |
Definition at line 54 of file X86InstrBuilder.h.
Referenced by llvm::addFullAddress(), llvm::getAddressFromInstr(), getFullAddress(), and X86SelectAddress().
| const GlobalValue* llvm::X86AddressMode::GV = nullptr |
Definition at line 55 of file X86InstrBuilder.h.
Referenced by llvm::addFullAddress(), llvm::getAddressFromInstr(), getFullAddress(), and X86SelectAddress().
| unsigned llvm::X86AddressMode::GVOpFlags = 0 |
Definition at line 56 of file X86InstrBuilder.h.
Referenced by llvm::addFullAddress(), getFullAddress(), and X86SelectAddress().
| Register llvm::X86AddressMode::IndexReg |
Definition at line 53 of file X86InstrBuilder.h.
Referenced by llvm::addFullAddress(), llvm::X86TargetLowering::EmitInstrWithCustomInserter(), llvm::getAddressFromInstr(), getFullAddress(), and X86SelectAddress().
| unsigned llvm::X86AddressMode::Scale = 1 |
Definition at line 52 of file X86InstrBuilder.h.
Referenced by llvm::addFullAddress(), llvm::getAddressFromInstr(), and getFullAddress().