LLVM API Documentation

Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

llvm::LoadInst Class Reference

#include <Instructions.h>

Inheritance diagram for llvm::LoadInst:

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

Collaboration graph
[legend]
List of all members.

Public Member Functions

 LoadInst (Value *Ptr, const std::string &NameStr, Instruction *InsertBefore)
 LoadInst (Value *Ptr, const std::string &NameStr, BasicBlock *InsertAtEnd)
 LoadInst (Value *Ptr, const std::string &NameStr, bool isVolatile=false, Instruction *InsertBefore=0)
 LoadInst (Value *Ptr, const std::string &NameStr, bool isVolatile, unsigned Align, Instruction *InsertBefore=0)
 LoadInst (Value *Ptr, const std::string &NameStr, bool isVolatile, BasicBlock *InsertAtEnd)
 LoadInst (Value *Ptr, const std::string &NameStr, bool isVolatile, unsigned Align, BasicBlock *InsertAtEnd)
 LoadInst (Value *Ptr, const char *NameStr, Instruction *InsertBefore)
 LoadInst (Value *Ptr, const char *NameStr, BasicBlock *InsertAtEnd)
 LoadInst (Value *Ptr, const char *NameStr=0, bool isVolatile=false, Instruction *InsertBefore=0)
 LoadInst (Value *Ptr, const char *NameStr, bool isVolatile, BasicBlock *InsertAtEnd)
bool isVolatile () const
void setVolatile (bool V)
virtual LoadInstclone () const
unsigned getAlignment () const
void setAlignment (unsigned Align)
ValuegetPointerOperand ()
const ValuegetPointerOperand () const

Static Public Member Functions

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

Detailed Description

LoadInst - an instruction for reading from memory. This uses the SubclassData field in Value to store whether or not the load is volatile.

Definition at line 218 of file Instructions.h.


Constructor & Destructor Documentation

LoadInst::LoadInst Value Ptr,
const std::string &  NameStr,
Instruction InsertBefore
 

Definition at line 769 of file Instructions.cpp.

References llvm::cast(), llvm::Load, setAlignment(), llvm::Value::setName(), and setVolatile().

Referenced by clone().

LoadInst::LoadInst Value Ptr,
const std::string &  NameStr,
BasicBlock InsertAtEnd
 

Definition at line 778 of file Instructions.cpp.

References llvm::cast(), llvm::Load, setAlignment(), llvm::Value::setName(), and setVolatile().

LoadInst::LoadInst Value Ptr,
const std::string &  NameStr,
bool  isVolatile = false,
Instruction InsertBefore = 0
 

Definition at line 787 of file Instructions.cpp.

References llvm::cast(), llvm::Load, setAlignment(), llvm::Value::setName(), and setVolatile().

LoadInst::LoadInst Value Ptr,
const std::string &  NameStr,
bool  isVolatile,
unsigned  Align,
Instruction InsertBefore = 0
 

Definition at line 797 of file Instructions.cpp.

References llvm::cast(), llvm::Load, setAlignment(), llvm::Value::setName(), and setVolatile().

LoadInst::LoadInst Value Ptr,
const std::string &  NameStr,
bool  isVolatile,
BasicBlock InsertAtEnd
 

Definition at line 817 of file Instructions.cpp.

References llvm::cast(), llvm::Load, setAlignment(), llvm::Value::setName(), and setVolatile().

LoadInst::LoadInst Value Ptr,
const std::string &  NameStr,
bool  isVolatile,
unsigned  Align,
BasicBlock InsertAtEnd
 

Definition at line 807 of file Instructions.cpp.

References llvm::cast(), llvm::Load, setAlignment(), llvm::Value::setName(), and setVolatile().

LoadInst::LoadInst Value Ptr,
const char *  NameStr,
Instruction InsertBefore
 

Definition at line 829 of file Instructions.cpp.

References llvm::cast(), llvm::Load, setAlignment(), llvm::Value::setName(), and setVolatile().

LoadInst::LoadInst Value Ptr,
const char *  NameStr,
BasicBlock InsertAtEnd
 

Definition at line 838 of file Instructions.cpp.

References llvm::cast(), llvm::Load, setAlignment(), llvm::Value::setName(), and setVolatile().

LoadInst::LoadInst Value Ptr,
const char *  NameStr = 0,
bool  isVolatile = false,
Instruction InsertBefore = 0
[explicit]
 

Definition at line 847 of file Instructions.cpp.

References llvm::cast(), llvm::Load, setAlignment(), llvm::Value::setName(), and setVolatile().

LoadInst::LoadInst Value Ptr,
const char *  NameStr,
bool  isVolatile,
BasicBlock InsertAtEnd
 

Definition at line 857 of file Instructions.cpp.

References llvm::cast(), llvm::Load, setAlignment(), llvm::Value::setName(), and setVolatile().


Member Function Documentation

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

Reimplemented from llvm::UnaryInstruction.

Definition at line 279 of file Instructions.h.

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

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

Reimplemented from llvm::UnaryInstruction.

Definition at line 276 of file Instructions.h.

References llvm::Instruction::getOpcode().

bool llvm::LoadInst::classof const LoadInst  )  [inline, static]
 

Definition at line 275 of file Instructions.h.

LoadInst * LoadInst::clone  )  const [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.

Definition at line 2873 of file Instructions.cpp.

References LoadInst().

unsigned llvm::LoadInst::getAlignment  )  const [inline]
 

getAlignment - Return the alignment of the access that is being performed

Definition at line 264 of file Instructions.h.

Referenced by llvm::SelectionDAGLowering::visitLoad(), and InstCombiner::visitLoadInst().

const Value* llvm::LoadInst::getPointerOperand  )  const [inline]
 

Definition at line 271 of file Instructions.h.

Value* llvm::LoadInst::getPointerOperand  )  [inline]
 

Definition at line 270 of file Instructions.h.

Referenced by llvm::MemoryDependenceAnalysis::getDependency(), DSE::handleEndBlock(), DSE::runOnBasicBlock(), and llvm::Interpreter::visitLoadInst().

unsigned llvm::LoadInst::getPointerOperandIndex  )  [inline, static]
 

Definition at line 272 of file Instructions.h.

bool llvm::LoadInst::isVolatile  )  const [inline]
 

isVolatile - Return true if this is a load from a volatile memory location.

Definition at line 252 of file Instructions.h.

Referenced by llvm::AliasSetTracker::add(), AddressIsTaken(), AnalyzeGlobal(), PruningFunctionCloner::ConstantFoldMappedInstruction(), EvaluateFunction(), llvm::MemoryDependenceAnalysis::getDependency(), DSE::handleEndBlock(), InstCombineLoadCast(), llvm::isAllocaPromotable(), llvm::Instruction::isIdenticalTo(), LoopDeletion::IsLoopDead(), llvm::Instruction::isSameOperationAs(), llvm::SelectionDAGLowering::visitLoad(), InstCombiner::visitLoadInst(), and llvm::Interpreter::visitLoadInst().

void LoadInst::setAlignment unsigned  Align  ) 
 

Definition at line 867 of file Instructions.cpp.

References llvm::Log2_32().

Referenced by MemCmpOpt::CallOptimizer(), LoadInst(), and InstCombiner::visitLoadInst().

void llvm::LoadInst::setVolatile bool  V  )  [inline]
 

setVolatile - Specify whether this is a volatile load or not.

Definition at line 256 of file Instructions.h.

Referenced by LoadInst().


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


This web site is hosted by the Computer Science Department at the University of Illinois at Urbana-Champaign.