LLVM API Documentation

llvm::AllocationInst Class Reference

#include <Instructions.h>

Inheritance diagram for llvm::AllocationInst:

Inheritance graph
[legend]
Collaboration diagram for llvm::AllocationInst:

Collaboration graph
[legend]
List of all members.

Public Member Functions

bool isArrayAllocation () const
const ValuegetArraySize () const
ValuegetArraySize ()
const PointerTypegetType () const
const TypegetAllocatedType () const
unsigned getAlignment () const
void setAlignment (unsigned Align)
virtual Instructionclone () const =0

Static Public Member Functions

static bool classof (const AllocationInst *)
static bool classof (const Instruction *I)
 Methods for support type inquiry through isa, cast, and dyn_cast:.
static bool classof (const Value *V)

Protected Member Functions

 AllocationInst (const Type *Ty, Value *ArraySize, unsigned iTy, unsigned Align, const std::string &Name="", Instruction *InsertBefore=0)
 AllocationInst (const Type *Ty, Value *ArraySize, unsigned iTy, unsigned Align, const std::string &Name, BasicBlock *InsertAtEnd)

Detailed Description

AllocationInst - This class is the common base class of MallocInst and AllocaInst.

Definition at line 35 of file Instructions.h.


Constructor & Destructor Documentation

AllocationInst::AllocationInst ( const Type Ty,
Value ArraySize,
unsigned  iTy,
unsigned  Align,
const std::string &  Name = "",
Instruction InsertBefore = 0 
) [protected]

Definition at line 496 of file Instructions.cpp.

References llvm::Type::VoidTy.

AllocationInst::AllocationInst ( const Type Ty,
Value ArraySize,
unsigned  iTy,
unsigned  Align,
const std::string &  Name,
BasicBlock InsertAtEnd 
) [protected]

Definition at line 505 of file Instructions.cpp.

References llvm::Type::VoidTy.


Member Function Documentation

static bool llvm::AllocationInst::classof ( const Value V  )  [inline, static]

Reimplemented from llvm::Instruction.

Reimplemented in llvm::MallocInst, and llvm::AllocaInst.

Definition at line 84 of file Instructions.h.

References classof(), and V.

static bool llvm::AllocationInst::classof ( const Instruction I  )  [inline, static]

Methods for support type inquiry through isa, cast, and dyn_cast:.

Reimplemented from llvm::Instruction.

Reimplemented in llvm::MallocInst, and llvm::AllocaInst.

Definition at line 80 of file Instructions.h.

References llvm::Instruction::Alloca, llvm::Instruction::getOpcode(), and llvm::Instruction::Malloc.

static bool llvm::AllocationInst::classof ( const AllocationInst  )  [inline, static]

Definition at line 79 of file Instructions.h.

Referenced by classof().

virtual Instruction* llvm::AllocationInst::clone (  )  const [pure virtual]

clone() - Create a copy of 'this' instruction that is identical in all ways except the following: The instruction has no parent The instruction has no name

Implements llvm::Instruction.

Implemented in llvm::MallocInst, and llvm::AllocaInst.

unsigned llvm::AllocationInst::getAlignment (  )  const [inline]

getAlignment - Return the alignment of the memory that is being allocated by the instruction.

Definition at line 70 of file Instructions.h.

Referenced by llvm::SelectionDAGLowering::visitAlloca().

const Type * AllocationInst::getAllocatedType (  )  const

getAllocatedType - Return the type that is being allocated by the instruction.

Definition at line 520 of file Instructions.cpp.

References llvm::SequentialType::getElementType(), and getType().

Referenced by llvm::SelectionDAGLowering::visitAlloca().

Value* llvm::AllocationInst::getArraySize (  )  [inline]

Definition at line 54 of file Instructions.h.

References llvm::UnaryInstruction::getOperand().

const Value* llvm::AllocationInst::getArraySize (  )  const [inline]

getArraySize - Get the number of element allocated, for a simple allocation of a single element, this will return a constant 1 value.

Definition at line 53 of file Instructions.h.

References llvm::UnaryInstruction::getOperand().

Referenced by CheckForEscapingAllocas(), llvm::CloneBasicBlock(), llvm::InlineFunction(), and llvm::SelectionDAGLowering::visitAlloca().

const PointerType* llvm::AllocationInst::getType (  )  const [inline]

getType - Overload to return most specific pointer type

Reimplemented from llvm::Value.

Definition at line 58 of file Instructions.h.

References llvm::Value::getType().

Referenced by llvm::DSGraph::AssertGraphOK(), EvaluateFunction(), getAllocatedType(), llvm::DSGraph::getFunctionArgumentsForCall(), llvm::Interpreter::visitAllocationInst(), and llvm::SelectionDAGLowering::visitMalloc().

bool AllocationInst::isArrayAllocation (  )  const

isArrayAllocation - Return true if there is an allocation size parameter to the allocation instruction that is not 1.

Definition at line 514 of file Instructions.cpp.

References llvm::UnaryInstruction::getOperand().

Referenced by EvaluateFunction().

void llvm::AllocationInst::setAlignment ( unsigned  Align  )  [inline]

Definition at line 71 of file Instructions.h.


The documentation for this class was generated from the following files: