|
LLVM
8.0.1
|
Special value supplied for machine level alias analysis. More...
#include "llvm/CodeGen/PseudoSourceValue.h"

Public Types | |
| enum | PSVKind : unsigned { Stack, GOT, JumpTable, ConstantPool, FixedStack, GlobalValueCallEntry, ExternalSymbolCallEntry, TargetCustom } |
Public Member Functions | |
| PseudoSourceValue (unsigned Kind, const TargetInstrInfo &TII) | |
| virtual | ~PseudoSourceValue () |
| unsigned | kind () const |
| bool | isStack () const |
| bool | isGOT () const |
| bool | isConstantPool () const |
| bool | isJumpTable () const |
| unsigned | getAddressSpace () const |
| unsigned | getTargetCustom () const |
| virtual bool | isConstant (const MachineFrameInfo *) const |
| Test whether the memory pointed to by this PseudoSourceValue has a constant value. More... | |
| virtual bool | isAliased (const MachineFrameInfo *) const |
| Test whether the memory pointed to by this PseudoSourceValue may also be pointed to by an LLVM IR Value. More... | |
| virtual bool | mayAlias (const MachineFrameInfo *) const |
| Return true if the memory pointed to by this PseudoSourceValue can ever alias an LLVM IR Value. More... | |
Friends | |
| class | MachineMemOperand |
| raw_ostream & | llvm::operator<< (raw_ostream &OS, const PseudoSourceValue *PSV) |
Special value supplied for machine level alias analysis.
It indicates that a memory access references the functions stack frame (e.g., a spill slot), below the stack frame (e.g., argument space), or constant pool.
Definition at line 37 of file PseudoSourceValue.h.
| Enumerator | |
|---|---|
| Stack | |
| GOT | |
| JumpTable | |
| ConstantPool | |
| FixedStack | |
| GlobalValueCallEntry | |
| ExternalSymbolCallEntry | |
| TargetCustom | |
Definition at line 39 of file PseudoSourceValue.h.
|
explicit |
Definition at line 28 of file PseudoSourceValue.cpp.
References llvm::TargetInstrInfo::getAddressSpaceForPseudoSourceKind().
|
virtual |
Definition at line 34 of file PseudoSourceValue.cpp.
References llvm::RISCVFenceField::O, and TargetCustom.
|
inline |
Definition at line 74 of file PseudoSourceValue.h.
Referenced by llvm::MachinePointerInfo::MachinePointerInfo().
|
inline |
Definition at line 76 of file PseudoSourceValue.h.
References isAliased(), isConstant(), mayAlias(), and TargetCustom.
|
virtual |
Test whether the memory pointed to by this PseudoSourceValue may also be pointed to by an LLVM IR Value.
Reimplemented in llvm::CallEntryPseudoSourceValue, llvm::FixedStackPseudoSourceValue, llvm::AMDGPUBufferPseudoSourceValue, and llvm::AMDGPUImagePseudoSourceValue.
Definition at line 51 of file PseudoSourceValue.cpp.
References isConstantPool(), isGOT(), isJumpTable(), isStack(), and llvm_unreachable.
Referenced by llvm::FixedStackPseudoSourceValue::classof(), and getTargetCustom().
|
virtual |
Test whether the memory pointed to by this PseudoSourceValue has a constant value.
Reimplemented in llvm::CallEntryPseudoSourceValue, llvm::FixedStackPseudoSourceValue, llvm::AMDGPUBufferPseudoSourceValue, and llvm::AMDGPUImagePseudoSourceValue.
Definition at line 43 of file PseudoSourceValue.cpp.
References isConstantPool(), isGOT(), isJumpTable(), isStack(), and llvm_unreachable.
Referenced by llvm::FixedStackPseudoSourceValue::classof(), and getTargetCustom().
|
inline |
Definition at line 71 of file PseudoSourceValue.h.
References ConstantPool.
Referenced by isAliased(), isConstant(), and mayAlias().
|
inline |
Definition at line 70 of file PseudoSourceValue.h.
References GOT.
Referenced by isAliased(), isConstant(), and mayAlias().
|
inline |
Definition at line 72 of file PseudoSourceValue.h.
References JumpTable.
Referenced by isAliased(), isConstant(), and mayAlias().
|
inline |
Definition at line 69 of file PseudoSourceValue.h.
References Stack.
Referenced by isAliased(), isConstant(), and isStackPtrRelative().
|
inline |
Definition at line 67 of file PseudoSourceValue.h.
References Kind.
Referenced by llvm::FixedStackPseudoSourceValue::classof(), llvm::GlobalValuePseudoSourceValue::classof(), llvm::ExternalSymbolPseudoSourceValue::classof(), and INITIALIZE_PASS().
|
virtual |
Return true if the memory pointed to by this PseudoSourceValue can ever alias an LLVM IR Value.
Reimplemented in llvm::CallEntryPseudoSourceValue, llvm::FixedStackPseudoSourceValue, llvm::AMDGPUBufferPseudoSourceValue, and llvm::AMDGPUImagePseudoSourceValue.
Definition at line 57 of file PseudoSourceValue.cpp.
References isConstantPool(), isGOT(), and isJumpTable().
Referenced by llvm::FixedStackPseudoSourceValue::classof(), getTargetCustom(), and llvm::MachineInstr::mayAlias().
|
friend |
|
friend |
Definition at line 56 of file PseudoSourceValue.h.
1.8.13