LLVM API Documentation
#include <MachineMemOperand.h>
Public Member Functions | |
MachinePointerInfo (const Value *v=nullptr, int64_t offset=0) | |
MachinePointerInfo (const PseudoSourceValue *v, int64_t offset=0) | |
MachinePointerInfo | getWithOffset (int64_t O) const |
unsigned | getAddrSpace () const |
Static Public Member Functions | |
static MachinePointerInfo | getConstantPool () |
static MachinePointerInfo | getFixedStack (int FI, int64_t offset=0) |
static MachinePointerInfo | getJumpTable () |
static MachinePointerInfo | getGOT () |
static MachinePointerInfo | getStack (int64_t Offset) |
getStack - stack pointer relative access. | |
Public Attributes | |
PointerUnion< const Value *, const PseudoSourceValue * > | V |
int64_t | Offset |
Offset - This is an offset from the base Value*. |
MachinePointerInfo - This class contains a discriminated union of information about pointers in memory operands, relating them back to LLVM IR or to virtual locations (such as frame indices) that are exposed during codegen.
Definition at line 35 of file MachineMemOperand.h.
llvm::MachinePointerInfo::MachinePointerInfo | ( | const Value * | v = nullptr , |
int64_t | offset = 0 |
||
) | [inline, explicit] |
Definition at line 44 of file MachineMemOperand.h.
Referenced by getWithOffset().
llvm::MachinePointerInfo::MachinePointerInfo | ( | const PseudoSourceValue * | v, |
int64_t | offset = 0 |
||
) | [inline, explicit] |
Definition at line 47 of file MachineMemOperand.h.
unsigned MachinePointerInfo::getAddrSpace | ( | ) | const |
getAddrSpace - Return the LLVM IR address space number that this pointer points into.
Definition at line 403 of file MachineInstr.cpp.
Referenced by AddNodeIDCustom(), llvm::X86SelectionDAGInfo::EmitTargetCodeForMemcpy(), llvm::X86SelectionDAGInfo::EmitTargetCodeForMemset(), llvm::MachineMemOperand::getAddrSpace(), llvm::SelectionDAG::getAtomic(), llvm::SelectionDAG::getIndexedStore(), llvm::SelectionDAG::getLoad(), llvm::SelectionDAG::getMemIntrinsicNode(), llvm::SelectionDAG::getStore(), and llvm::SelectionDAG::getTruncStore().
MachinePointerInfo MachinePointerInfo::getConstantPool | ( | ) | [static] |
getConstantPool - Return a MachinePointerInfo record that refers to the constant pool.
Definition at line 410 of file MachineInstr.cpp.
MachinePointerInfo MachinePointerInfo::getFixedStack | ( | int | FI, |
int64_t | offset = 0 |
||
) | [static] |
getFixedStack - Return a MachinePointerInfo record that refers to the the specified FrameIndex.
Definition at line 416 of file MachineInstr.cpp.
Referenced by llvm::addFrameReference(), llvm::TargetLoweringBase::emitPatchPoint(), EmitTailCallStoreFPAndRetAddr(), llvm::TargetInstrInfo::foldMemoryOperand(), getFrameIndexMMO(), llvm::MipsInstrInfo::GetMemOperand(), InferPointerInfo(), llvm::Thumb1InstrInfo::loadRegFromStackSlot(), llvm::Thumb2InstrInfo::loadRegFromStackSlot(), llvm::MSP430InstrInfo::loadRegFromStackSlot(), llvm::XCoreInstrInfo::loadRegFromStackSlot(), llvm::SparcInstrInfo::loadRegFromStackSlot(), llvm::PPCInstrInfo::loadRegFromStackSlot(), llvm::ARMBaseInstrInfo::loadRegFromStackSlot(), llvm::SystemZTargetLowering::LowerCall(), llvm::TargetLowering::LowerCallTo(), llvm::SystemZTargetLowering::LowerFormalArguments(), llvm::SparcTargetLowering::LowerFormalArguments_64(), llvm::Thumb1InstrInfo::storeRegToStackSlot(), llvm::Thumb2InstrInfo::storeRegToStackSlot(), llvm::MSP430InstrInfo::storeRegToStackSlot(), llvm::XCoreInstrInfo::storeRegToStackSlot(), llvm::SparcInstrInfo::storeRegToStackSlot(), llvm::PPCInstrInfo::storeRegToStackSlot(), llvm::ARMBaseInstrInfo::storeRegToStackSlot(), StoreTailCallArgumentsToStackSlot(), and llvm::SelectionDAGBuilder::visitSPDescriptorParent().
MachinePointerInfo MachinePointerInfo::getGOT | ( | ) | [static] |
getGOT - Return a MachinePointerInfo record that refers to a GOT entry.
Definition at line 424 of file MachineInstr.cpp.
Referenced by llvm::ARMBaseInstrInfo::expandLoadStackGuardBase(), llvm::MipsTargetLowering::getAddrLocal(), and llvm::SparcTargetLowering::makeAddress().
MachinePointerInfo MachinePointerInfo::getJumpTable | ( | ) | [static] |
getJumpTable - Return a MachinePointerInfo record that refers to a jump table entry.
Definition at line 420 of file MachineInstr.cpp.
MachinePointerInfo MachinePointerInfo::getStack | ( | int64_t | Offset | ) | [static] |
getStack - stack pointer relative access.
Definition at line 428 of file MachineInstr.cpp.
MachinePointerInfo llvm::MachinePointerInfo::getWithOffset | ( | int64_t | O | ) | const [inline] |
Definition at line 51 of file MachineMemOperand.h.
References llvm::PointerUnion< PT1, PT2 >::get(), llvm::PointerUnion< PT1, PT2 >::is(), llvm::PointerUnion< PT1, PT2 >::isNull(), MachinePointerInfo(), Offset, and V.
Referenced by llvm::X86SelectionDAGInfo::EmitTargetCodeForMemcpy(), llvm::ARMSelectionDAGInfo::EmitTargetCodeForMemcpy(), llvm::SystemZSelectionDAGInfo::EmitTargetCodeForMemset(), llvm::X86SelectionDAGInfo::EmitTargetCodeForMemset(), ExpandUnalignedLoad(), ExpandUnalignedStore(), getMemcpyLoadsAndStores(), getMemmoveLoadsAndStores(), getMemsetStores(), PerformSTORECombine(), ShrinkLoadReplaceStoreWithStore(), and llvm::TargetLowering::SimplifySetCC().
int64_t llvm::MachinePointerInfo::Offset |
Offset - This is an offset from the base Value*.
Definition at line 42 of file MachineMemOperand.h.
Referenced by llvm::MachineMemOperand::getOffset(), getWithOffset(), and llvm::MachineMemOperand::setOffset().
V - This is the IR pointer value for the access, or it is null if unknown. If this is null, then the access is to a pointer in the default address space.
Definition at line 39 of file MachineMemOperand.h.
Referenced by llvm::SelectionDAG::getLoad(), llvm::MachineMemOperand::getOpaqueValue(), llvm::MachineMemOperand::getPseudoValue(), llvm::SelectionDAG::getStore(), llvm::SelectionDAG::getTruncStore(), llvm::MachineMemOperand::getValue(), getWithOffset(), and llvm::MachineMemOperand::setValue().