LLVM  mainline
Classes | Namespaces | Enumerations | Functions
Instructions.h File Reference
#include "llvm/ADT/ArrayRef.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/ADT/iterator_range.h"
#include "llvm/IR/Attributes.h"
#include "llvm/IR/CallingConv.h"
#include "llvm/IR/DerivedTypes.h"
#include "llvm/IR/InstrTypes.h"
#include "llvm/Support/ErrorHandling.h"
#include <iterator>
Include dependency graph for Instructions.h:

Go to the source code of this file.

Classes

class  llvm::AllocaInst
 AllocaInst - an instruction to allocate memory on the stack. More...
class  llvm::LoadInst
 LoadInst - an instruction for reading from memory. More...
class  llvm::StoreInst
 StoreInst - an instruction for storing to memory. More...
struct  llvm::OperandTraits< StoreInst >
class  llvm::FenceInst
 FenceInst - an instruction for ordering other memory operations. More...
class  llvm::AtomicCmpXchgInst
 AtomicCmpXchgInst - an instruction that atomically checks whether a specified value is in a memory location, and, if it is, stores a new value there. More...
struct  llvm::OperandTraits< AtomicCmpXchgInst >
class  llvm::AtomicRMWInst
 AtomicRMWInst - an instruction that atomically reads a memory location, combines it with another value, and then stores the result back. More...
struct  llvm::OperandTraits< AtomicRMWInst >
class  llvm::GetElementPtrInst
 GetElementPtrInst - an instruction for type-safe pointer arithmetic to access elements of arrays and structs. More...
struct  llvm::OperandTraits< GetElementPtrInst >
class  llvm::ICmpInst
 This instruction compares its operands according to the predicate given to the constructor. More...
class  llvm::FCmpInst
 This instruction compares its operands according to the predicate given to the constructor. More...
class  llvm::CallInst
 CallInst - This class represents a function call, abstracting a target machine's calling convention. More...
struct  llvm::OperandTraits< CallInst >
class  llvm::SelectInst
 SelectInst - This class represents the LLVM 'select' instruction. More...
struct  llvm::OperandTraits< SelectInst >
class  llvm::VAArgInst
 VAArgInst - This class represents the va_arg llvm instruction, which returns an argument of the specified type given a va_list and increments that list. More...
class  llvm::ExtractElementInst
 ExtractElementInst - This instruction extracts a single (scalar) element from a VectorType value. More...
struct  llvm::OperandTraits< ExtractElementInst >
class  llvm::InsertElementInst
 InsertElementInst - This instruction inserts a single (scalar) element into a VectorType value. More...
struct  llvm::OperandTraits< InsertElementInst >
class  llvm::ShuffleVectorInst
 ShuffleVectorInst - This instruction constructs a fixed permutation of two input vectors. More...
struct  llvm::OperandTraits< ShuffleVectorInst >
class  llvm::ExtractValueInst
 ExtractValueInst - This instruction extracts a struct member or array element value from an aggregate value. More...
class  llvm::InsertValueInst
 InsertValueInst - This instruction inserts a struct field of array element value into an aggregate value. More...
struct  llvm::OperandTraits< InsertValueInst >
class  llvm::PHINode
struct  llvm::OperandTraits< PHINode >
class  llvm::LandingPadInst
 LandingPadInst - The landingpad instruction holds all of the information necessary to generate correct exception handling. More...
struct  llvm::OperandTraits< LandingPadInst >
class  llvm::ReturnInst
 ReturnInst - Return a value (possibly void), from a function. More...
struct  llvm::OperandTraits< ReturnInst >
class  llvm::BranchInst
 BranchInst - Conditional or Unconditional Branch instruction. More...
struct  llvm::OperandTraits< BranchInst >
class  llvm::SwitchInst
 SwitchInst - Multiway switch. More...
class  llvm::SwitchInst::CaseIteratorT< SwitchInstTy, ConstantIntTy, BasicBlockTy >
class  llvm::SwitchInst::CaseIt
struct  llvm::OperandTraits< SwitchInst >
class  llvm::IndirectBrInst
 IndirectBrInst - Indirect Branch Instruction. More...
struct  llvm::OperandTraits< IndirectBrInst >
class  llvm::InvokeInst
 InvokeInst - Invoke instruction. More...
struct  llvm::OperandTraits< InvokeInst >
class  llvm::ResumeInst
 ResumeInst - Resume the propagation of an exception. More...
struct  llvm::OperandTraits< ResumeInst >
class  llvm::UnreachableInst
 UnreachableInst - This function has undefined behavior. More...
class  llvm::TruncInst
 This class represents a truncation of integer types. More...
class  llvm::ZExtInst
 This class represents zero extension of integer types. More...
class  llvm::SExtInst
 This class represents a sign extension of integer types. More...
class  llvm::FPTruncInst
 This class represents a truncation of floating point types. More...
class  llvm::FPExtInst
 This class represents an extension of floating point types. More...
class  llvm::UIToFPInst
 This class represents a cast unsigned integer to floating point. More...
class  llvm::SIToFPInst
 This class represents a cast from signed integer to floating point. More...
class  llvm::FPToUIInst
 This class represents a cast from floating point to unsigned integer. More...
class  llvm::FPToSIInst
 This class represents a cast from floating point to signed integer. More...
class  llvm::IntToPtrInst
 This class represents a cast from an integer to a pointer. More...
class  llvm::PtrToIntInst
 This class represents a cast from a pointer to an integer. More...
class  llvm::BitCastInst
 This class represents a no-op cast from one type to another. More...
class  llvm::AddrSpaceCastInst
 This class represents a conversion between pointers from one address space to another. More...

Namespaces

namespace  llvm
 

Compute iterated dominance frontiers using a linear time algorithm.


Enumerations

enum  llvm::AtomicOrdering {
  llvm::NotAtomic = 0, llvm::Unordered = 1, llvm::Monotonic = 2, llvm::Acquire = 4,
  llvm::Release = 5, llvm::AcquireRelease = 6, llvm::SequentiallyConsistent = 7
}
enum  llvm::SynchronizationScope { llvm::SingleThread = 0, llvm::CrossThread = 1 }

Functions

bool llvm::isAtLeastAcquire (AtomicOrdering Ord)
 Returns true if the ordering is at least as strong as acquire (i.e.
bool llvm::isAtLeastRelease (AtomicOrdering Ord)
 Returns true if the ordering is at least as strong as release (i.e.
Typellvm::checkGEPType (Type *Ty)