LLVM 20.0.0git
|
X86AddressMode - This struct holds a generalized full x86 address mode. More...
#include "Target/X86/X86InstrBuilder.h"
Public Types | |
enum | { RegBase , FrameIndexBase } |
Public Member Functions | |
X86AddressMode () | |
void | getFullAddress (SmallVectorImpl< MachineOperand > &MO) |
Public Attributes | |
enum llvm::X86AddressMode:: { ... } | BaseType |
union { | |
unsigned Reg | |
int FrameIndex | |
} | Base |
unsigned | Scale |
unsigned | IndexReg |
int | Disp |
const GlobalValue * | GV |
unsigned | GVOpFlags |
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 Base.
|
inline |
Definition at line 65 of file X86InstrBuilder.h.
References assert(), Base, 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::Base |
Referenced by llvm::addFullAddress(), llvm::getAddressFromInstr(), getFullAddress(), X86AddressMode(), and X86SelectAddress().
enum { ... } llvm::X86AddressMode::BaseType |
Referenced by llvm::addFullAddress(), llvm::getAddressFromInstr(), and X86SelectAddress().
int llvm::X86AddressMode::Disp |
Definition at line 55 of file X86InstrBuilder.h.
Referenced by llvm::addFullAddress(), llvm::getAddressFromInstr(), getFullAddress(), and X86SelectAddress().
int llvm::X86AddressMode::FrameIndex |
Definition at line 50 of file X86InstrBuilder.h.
Referenced by llvm::addFullAddress(), llvm::getAddressFromInstr(), and X86SelectAddress().
const GlobalValue* llvm::X86AddressMode::GV |
Definition at line 56 of file X86InstrBuilder.h.
Referenced by llvm::addFullAddress(), llvm::getAddressFromInstr(), and getFullAddress().
unsigned llvm::X86AddressMode::GVOpFlags |
Definition at line 57 of file X86InstrBuilder.h.
Referenced by llvm::addFullAddress(), and getFullAddress().
unsigned llvm::X86AddressMode::IndexReg |
Definition at line 54 of file X86InstrBuilder.h.
Referenced by llvm::addFullAddress(), llvm::X86TargetLowering::EmitInstrWithCustomInserter(), llvm::getAddressFromInstr(), and getFullAddress().
unsigned llvm::X86AddressMode::Reg |
Definition at line 49 of file X86InstrBuilder.h.
Referenced by llvm::addFullAddress(), llvm::getAddressFromInstr(), and X86SelectAddress().
unsigned llvm::X86AddressMode::Scale |
Definition at line 53 of file X86InstrBuilder.h.
Referenced by llvm::addFullAddress(), llvm::getAddressFromInstr(), and getFullAddress().