Go to the documentation of this file.
15 #ifndef LLVM_IR_GLOBALINDIRECTSYMBOL_H
16 #define LLVM_IR_GLOBALINDIRECTSYMBOL_H
38 void *
operator new(
size_t s) {
39 return User::operator
new(
s, 1);
68 return dyn_cast<GlobalObject>(
80 return V->
getValueID() == Value::GlobalAliasVal ||
94 #endif // LLVM_IR_GLOBALINDIRECTSYMBOL_H
A parsed version of the target data layout string in and methods for querying it.
void setIndirectSymbol(Constant *Symbol)
These methods set and retrieve indirect symbol.
The instances of the Type class are immutable: once they are created, they are never changed.
#define DEFINE_TRANSPARENT_OPERAND_ACCESSORS(CLASS, VALUECLASS)
Macro for generating out-of-class operand accessor definitions.
void copyAttributesFrom(const GlobalValue *Src)
LinkageTypes
An enumeration for the kinds of linkage for global values.
const GlobalObject * getBaseObject(const DataLayout &DL, APInt &Offset) const
Compile-time customization of User operands.
void copyAttributesFrom(const GlobalValue *Src)
Copy all additional attributes (those not needed to create a GlobalValue) from the GlobalValue Src to...
GlobalIndirectSymbol(Type *Ty, ValueTy VTy, unsigned AddressSpace, LinkageTypes Linkage, const Twine &Name, Constant *Symbol)
unsigned getValueID() const
Return an ID for the concrete type of this object.
const GlobalObject * getBaseObject() const
This is an important base class in LLVM.
Constant * getIndirectSymbol()
multiplies can be turned into SHL s
GlobalObject * getBaseObject()
DECLARE_TRANSPARENT_OPERAND_ACCESSORS(Constant)
Provide fast operand accessors.
Class for arbitrary precision integers.
void setOperand(unsigned i, Value *Val)
ValueTy
Concrete subclass of this.
MachineBasicBlock MachineBasicBlock::iterator DebugLoc DL
const Constant * getIndirectSymbol() const
const Value * stripAndAccumulateInBoundsConstantOffsets(const DataLayout &DL, APInt &Offset) const
This is a wrapper around stripAndAccumulateConstantOffsets with the in-bounds requirement set to fals...
Twine - A lightweight data structure for efficiently representing the concatenation of temporary valu...
GlobalObject * getBaseObject(const DataLayout &DL, APInt &Offset)
GlobalIndirectSymbol & operator=(const GlobalIndirectSymbol &)=delete
static bool classof(const Value *V)
FixedNumOperandTraits - determine the allocation regime of the Use array when it is a prefix to the U...
Value * getOperand(unsigned i) const
LLVM Value Representation.