LLVM
8.0.1
|
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 43 of file X86InstrBuilder.h.
anonymous enum |
Enumerator | |
---|---|
RegBase | |
FrameIndexBase |
Definition at line 44 of file X86InstrBuilder.h.
|
inline |
Definition at line 60 of file X86InstrBuilder.h.
|
inline |
Definition at line 66 of file X86InstrBuilder.h.
References assert(), llvm::MachineOperand::CreateFI(), llvm::MachineOperand::CreateGA(), llvm::MachineOperand::CreateImm(), llvm::MachineOperand::CreateReg(), FrameIndexBase, llvm::SmallVectorTemplateBase< T >::push_back(), and RegBase.
Referenced by computeBytesPoppedByCalleeForSRet().
union { ... } llvm::X86AddressMode::Base |
enum { ... } llvm::X86AddressMode::BaseType |
int llvm::X86AddressMode::Disp |
Definition at line 56 of file X86InstrBuilder.h.
Referenced by llvm::addFullAddress(), computeBytesPoppedByCalleeForSRet(), llvm::getAddressFromInstr(), X86ChooseCmpImmediateOpcode(), and X86SelectAddress().
int llvm::X86AddressMode::FrameIndex |
Definition at line 51 of file X86InstrBuilder.h.
Referenced by llvm::addFullAddress(), llvm::getAddressFromInstr(), and X86SelectAddress().
const GlobalValue* llvm::X86AddressMode::GV |
Definition at line 57 of file X86InstrBuilder.h.
Referenced by llvm::addFullAddress(), computeBytesPoppedByCalleeForSRet(), llvm::getAddressFromInstr(), and getLeaOP().
unsigned llvm::X86AddressMode::GVOpFlags |
Definition at line 58 of file X86InstrBuilder.h.
Referenced by llvm::addFullAddress(), and getLeaOP().
unsigned llvm::X86AddressMode::IndexReg |
Definition at line 55 of file X86InstrBuilder.h.
Referenced by llvm::addFullAddress(), computeBytesPoppedByCalleeForSRet(), llvm::X86TargetLowering::EmitInstrWithCustomInserter(), llvm::getAddressFromInstr(), getLeaOP(), and getX86SSEConditionCode().
unsigned llvm::X86AddressMode::Reg |
Definition at line 50 of file X86InstrBuilder.h.
Referenced by llvm::addFullAddress(), computeBytesPoppedByCalleeForSRet(), llvm::getAddressFromInstr(), getLeaOP(), and X86SelectAddress().
unsigned llvm::X86AddressMode::Scale |
Definition at line 54 of file X86InstrBuilder.h.
Referenced by llvm::addFullAddress(), and llvm::getAddressFromInstr().