|
LLVM
4.0.0
|
Special value supplied for machine level alias analysis. More...
#include <PseudoSourceValue.h>
Public Types | |
| enum | PSVKind { Stack, GOT, JumpTable, ConstantPool, FixedStack, GlobalValueCallEntry, ExternalSymbolCallEntry, TargetCustom } |
Public Member Functions | |
| PseudoSourceValue (PSVKind Kind) | |
| virtual | ~PseudoSourceValue () |
| PSVKind | kind () const |
| bool | isStack () const |
| bool | isGOT () const |
| bool | isConstantPool () const |
| bool | isJumpTable () 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 36 of file PseudoSourceValue.h.
| Enumerator | |
|---|---|
| Stack | |
| GOT | |
| JumpTable | |
| ConstantPool | |
| FixedStack | |
| GlobalValueCallEntry | |
| ExternalSymbolCallEntry | |
| TargetCustom | |
Definition at line 38 of file PseudoSourceValue.h.
|
explicit |
Definition at line 27 of file PseudoSourceValue.cpp.
|
virtual |
Definition at line 29 of file PseudoSourceValue.cpp.
|
inline |
Definition at line 71 of file PseudoSourceValue.h.
References Kind, 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 43 of file PseudoSourceValue.cpp.
References isConstantPool(), isGOT(), isJumpTable(), isStack(), and llvm_unreachable.
|
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 35 of file PseudoSourceValue.cpp.
References isConstantPool(), isGOT(), isJumpTable(), isStack(), and llvm_unreachable.
|
inline |
Definition at line 69 of file PseudoSourceValue.h.
References ConstantPool, and Kind.
Referenced by isAliased(), isConstant(), and mayAlias().
|
inline |
Definition at line 68 of file PseudoSourceValue.h.
Referenced by isAliased(), isConstant(), and mayAlias().
|
inline |
Definition at line 70 of file PseudoSourceValue.h.
References JumpTable, and Kind.
Referenced by isAliased(), isConstant(), and mayAlias().
|
inline |
Definition at line 67 of file PseudoSourceValue.h.
Referenced by isAliased(), and isConstant().
|
inline |
Definition at line 65 of file PseudoSourceValue.h.
References Kind.
Referenced by llvm::FixedStackPseudoSourceValue::classof(), llvm::GlobalValuePseudoSourceValue::classof(), and llvm::ExternalSymbolPseudoSourceValue::classof().
|
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 49 of file PseudoSourceValue.cpp.
References isConstantPool(), isGOT(), and isJumpTable().
|
friend |
|
friend |
Definition at line 54 of file PseudoSourceValue.h.
1.8.6