LLVM  mainline
Namespaces | Classes | Typedefs | Enumerations | Functions | Variables
llvm Namespace Reference

Compute iterated dominance frontiers using a linear time algorithm. More...

Namespaces

namespace  AArch64
namespace  AArch64_AM
 

AArch64_AM - AArch64 Addressing Mode Stuff.


namespace  AArch64AT
namespace  AArch64CC
namespace  AArch64DB
namespace  AArch64DC
namespace  AArch64IC
namespace  AArch64II
namespace  AArch64ISB
namespace  AArch64ISD
namespace  AArch64Layout
namespace  AArch64PRFM
namespace  AArch64PState
namespace  AArch64SE
namespace  AArch64SysReg
namespace  AArch64TLBI
namespace  AMDGPU
namespace  AMDGPUIntrinsic
namespace  AMDGPUISD
namespace  APIntOps
namespace  ARM
 

Define some predicates that are used for node matching.


namespace  ARM_AM
 

ARM_AM - ARM Addressing Mode Stuff.


namespace  ARM_ISB
namespace  ARM_MB
namespace  ARM_MC
namespace  ARM_PROC
namespace  ARMBuildAttrs
namespace  ARMCC
namespace  ARMCP
namespace  ARMII
 

ARMII - This namespace holds all of the target specific flags that instruction info tracks.


namespace  ARMISD
namespace  ARMRI
 

Register allocation hints.


namespace  AttributeFuncs
namespace  bfi_detail
namespace  bitc
namespace  BPFISD
namespace  CallingConv
 

CallingConv Namespace - This namespace contains an enum with a value for the well-known calling conventions.


namespace  cl
 

cl Namespace - This namespace contains all of the command line option processing machinery.


namespace  CodeGenOpt
namespace  CodeModel
namespace  COFF
namespace  COFFYAML
namespace  coverage
namespace  detail
 

Implementation details of the pass manager interfaces.


namespace  DOT
namespace  dwarf
namespace  DWARFFlavour
 

Flavour of dwarf regnumbers.


namespace  ELF
namespace  ELFYAML
namespace  EngineKind
namespace  FloatABI
namespace  FPOpFusion
namespace  GC
namespace  GCOV
namespace  GraphProgram
namespace  hashing
namespace  Hexagon
namespace  HexagonII
 

HexagonII - This namespace holds all of the target specific flags that instruction info tracks.


namespace  HexagonISD
namespace  HexagonMCInstrInfo
namespace  HexStyle
namespace  IndexedInstrProf
namespace  InlineConstants
namespace  IntervalMapImpl
 

IntervalMapImpl - Namespace used for IntervalMap implementation details.


namespace  Intrinsic
 

This namespace contains an enum with a value for every intrinsic/builtin function known by LLVM.


namespace  ISD
 

ISD namespace - This namespace contains an enum which represents all of the SelectionDAG node types and value types.


namespace  JumpTable
namespace  LCOMM
namespace  legacy
namespace  LibFunc
namespace  lltok
namespace  MachineCombinerPattern
 

Enumeration of instruction pattern supported by machine combiner.


namespace  MachO
namespace  MCD
namespace  MCID
namespace  MCOI
namespace  mdconst
 

Transitional API for extracting constants from Metadata.


namespace  Mips
namespace  Mips16HardFloatInfo
namespace  MIPS_MC
namespace  MipsII
 

MipsII - This namespace holds all of the target specific flags that instruction info tracks.


namespace  MipsISD
namespace  MSP430II
 

MSP430II - This namespace holds all of the target specific flags that instruction info tracks.


namespace  MSP430ISD
namespace  N86
 

Native X86 register numbers.


namespace  NVPTX
namespace  NVPTXCC
namespace  NVPTXII
namespace  NVPTXISD
namespace  objcarc
namespace  object
namespace  opt
namespace  orc
namespace  PatternMatch
namespace  PBQP
namespace  PICLevel
namespace  PICStyles
 

The X86 backend supports a number of different styles of PIC.


namespace  PPC
 

Define some predicates that are used for node matching.


namespace  PPCII
 

PPCII - This namespace holds all of the PowerPC target-specific per-instruction flags.


namespace  PPCISD
namespace  RegState
namespace  Reloc
namespace  RTLIB
namespace  sampleprof
namespace  ScaledNumbers
namespace  Sched
namespace  SI
namespace  Sparc
namespace  SPCC
namespace  SPII
 

SPII - This namespace holds all of the target specific flags that instruction info tracks.


namespace  SPISD
namespace  support
namespace  SymbolRewriter
namespace  sys
namespace  SystemZ
namespace  SystemZCP
namespace  SystemZICMP
namespace  SystemZII
namespace  SystemZISD
namespace  SystemZMC
namespace  TargetOpcode
 

Invariant opcodes: All instruction sets have these as their low opcodes.


namespace  tgtok
namespace  ThreadModel
namespace  TLSModel
namespace  types
namespace  Win64EH
namespace  WinEH
namespace  X86
 

Define some predicates that are used for node matching.


namespace  X86_MC
namespace  X86Disassembler
namespace  X86II
 

X86II - This namespace holds all of the target specific flags that instruction info tracks.


namespace  X86ISD
namespace  XCore
namespace  XCoreISD
namespace  yaml
namespace  zlib

Classes

class  APFloat
 A self-contained host- and target-independent arbitrary-precision floating-point software implementation. More...
class  APInt
 Class for arbitrary precision integers. More...
class  APSInt
class  ArrayRef
 ArrayRef - Represent a constant reference to an array (0 or more elements consecutively in memory), i.e. More...
class  MutableArrayRef
 MutableArrayRef - Represent a mutable reference to an array (0 or more elements consecutively in memory), i.e. More...
struct  isPodLike< ArrayRef< T > >
class  BitVector
class  DAGDeltaAlgorithm
 DAGDeltaAlgorithm - Implements a "delta debugging" algorithm for minimizing directed acyclic graphs using a predicate function. More...
class  DeltaAlgorithm
 DeltaAlgorithm - Implements the delta debugging algorithm (A. More...
class  DenseMapBase
class  DenseMap
class  SmallDenseMap
class  DenseMapIterator
struct  DenseMapInfo
struct  DenseMapInfo< T * >
struct  DenseMapInfo< char >
struct  DenseMapInfo< unsigned >
struct  DenseMapInfo< unsigned long >
struct  DenseMapInfo< unsigned long long >
struct  DenseMapInfo< int >
struct  DenseMapInfo< long >
struct  DenseMapInfo< long long >
struct  DenseMapInfo< std::pair< T, U > >
class  DenseSet
 DenseSet - This implements a dense probed hash-table based set. More...
class  df_iterator_storage
class  df_iterator_storage< SetType, true >
class  df_iterator
struct  df_ext_iterator
struct  idf_iterator
struct  idf_ext_iterator
class  DebugEpochBase
class  EquivalenceClasses
 EquivalenceClasses - This represents a collection of equivalence classes and supports three efficient operations: insert an element into a class of its own, union two classes, and find the class for a given element. More...
class  FoldingSetImpl
 FoldingSetImpl - Implements the folding set functionality. More...
struct  DefaultFoldingSetTrait
 DefaultFoldingSetTrait - This class provides default implementations for FoldingSetTrait implementations. More...
struct  FoldingSetTrait
 FoldingSetTrait - This trait class is used to define behavior of how to "profile" (in the FoldingSet parlance) an object of a given type. More...
struct  DefaultContextualFoldingSetTrait
 DefaultContextualFoldingSetTrait - Like DefaultFoldingSetTrait, but for ContextualFoldingSets. More...
struct  ContextualFoldingSetTrait
 ContextualFoldingSetTrait - Like FoldingSetTrait, but for ContextualFoldingSets. More...
class  FoldingSetNodeIDRef
 FoldingSetNodeIDRef - This class describes a reference to an interned FoldingSetNodeID, which can be a useful to store node id data rather than using plain FoldingSetNodeIDs, since the 32-element SmallVector is often much larger than necessary, and the possibility of heap allocation means it requires a non-trivial destructor call. More...
class  FoldingSetNodeID
 FoldingSetNodeID - This class is used to gather all the unique data bits of a node. More...
class  final
 FoldingSet - This template class is used to instantiate a specialized implementation of the folding set to the node class T. More...
class  FoldingSetVector
 FoldingSetVector - This template class combines a FoldingSet and a vector to provide the interface of FoldingSet but with deterministic iteration order based on the insertion order. More...
class  FoldingSetIteratorImpl
 FoldingSetIteratorImpl - This is the common iterator support shared by all folding sets, which knows how to walk the folding set hash table. More...
class  FoldingSetIterator
class  FoldingSetBucketIteratorImpl
 FoldingSetBucketIteratorImpl - This is the common bucket iterator support shared by all folding sets, which knows how to walk a particular bucket of a folding set hash table. More...
class  FoldingSetBucketIterator
class  FoldingSetNodeWrapper
 FoldingSetNodeWrapper - This template class is used to "wrap" arbitrary types in an enclosing object so that they can be inserted into FoldingSets. More...
class  FastFoldingSetNode
 FastFoldingSetNode - This is a subclass of FoldingSetNode which stores a FoldingSetNodeID value rather than requiring the node to recompute it each time it is needed. More...
struct  FoldingSetTrait< T * >
struct  FoldingSetTrait< std::pair< T1, T2 > >
struct  GraphTraits
struct  Inverse
struct  GraphTraits< Inverse< Inverse< T > > >
class  hash_code
 An opaque object representing a hash code. More...
struct  ilist_nextprev_traits
 ilist_nextprev_traits - A fragment for template traits for intrusive list that provides default next/prev implementations for common operations. More...
struct  ilist_sentinel_traits
 ilist_sentinel_traits - A fragment for template traits for intrusive list that provides default sentinel implementations for common operations. More...
struct  ilist_node_traits
 ilist_node_traits - A fragment for template traits for intrusive list that provides default node related operations. More...
struct  ilist_default_traits
 ilist_default_traits - Default template traits for intrusive list. More...
struct  ilist_traits
struct  ilist_traits< const Ty >
class  ilist_iterator
struct  simplify_type< ilist_iterator< NodeTy > >
struct  simplify_type< const ilist_iterator< NodeTy > >
class  iplist
 iplist - The subset of list functionality that can safely be used on nodes of polymorphic types, i.e. More...
struct  ilist
class  ilist_half_node
 ilist_half_node - Base class that provides prev services for sentinels. More...
class  ilist_node
 ilist_node - Base class that provides next/prev services for nodes that use ilist_nextprev_traits or ilist_default_traits. More...
class  ImmutableListImpl
class  ImmutableList
 ImmutableList - This class represents an immutable (functional) list. More...
class  ImmutableListFactory
struct  DenseMapInfo< ImmutableList< T > >
struct  isPodLike< ImmutableList< T > >
struct  ImutKeyValueInfo
 ImutKeyValueInfo -Traits class used by ImmutableMap. More...
class  ImmutableMap
class  ImmutableMapRef
class  ImutAVLTree
class  ImutAVLFactory
class  ImutAVLTreeGenericIterator
class  ImutAVLTreeInOrderIterator
struct  ImutAVLValueIterator
 Generic iterator that wraps a T::TreeTy::iterator and exposes iterator::getValue() on dereference. More...
struct  ImutProfileInfo
 Generic profile template. More...
struct  ImutProfileInteger
 Profile traits for integers. More...
struct  ImutProfileInfo< bool >
 Profile traits for booleans. More...
struct  ImutProfileInfo< T * >
 Generic profile trait for pointer types. More...
struct  ImutContainerInfo
 ImutContainerInfo - Generic definition of comparison operations for elements of immutable containers that defaults to using std::equal_to<> and std::less<> to perform comparison of elements. More...
struct  ImutContainerInfo< T * >
 ImutContainerInfo - Specialization for pointer values to treat pointers as references to unique objects. More...
class  ImmutableSet
class  ImmutableSetRef
class  IndexedMap
class  IntEqClasses
struct  IntervalMapInfo
struct  IntervalMapHalfOpenInfo
class  IntervalMap
class  IntervalMapOverlaps
 IntervalMapOverlaps - Iterate over the overlaps of mapped intervals in two IntervalMaps. More...
class  RefCountedBase
 RefCountedBase - A generic base class for objects that wish to have their lifetimes managed using reference counts. More...
class  RefCountedBaseVPTR
 RefCountedBaseVPTR - A class that has the same function as RefCountedBase, but with a virtual destructor. More...
struct  IntrusiveRefCntPtrInfo
class  ThreadSafeRefCountedBase
 A thread-safe version of llvm::RefCountedBase. More...
class  IntrusiveRefCntPtr
 IntrusiveRefCntPtr - A template class that implements a "smart pointer" that assumes the wrapped object has a reference count associated with it that can be managed via calls to IntrusivePtrAddRef/IntrusivePtrRelease. More...
struct  simplify_type< IntrusiveRefCntPtr< T > >
struct  simplify_type< const IntrusiveRefCntPtr< T > >
class  iterator_facade_base
 CRTP base class which implements the entire standard iterator facade in terms of a minimal subset of the interface. More...
class  iterator_adaptor_base
 CRTP base class for adapting an iterator to a different type. More...
struct  pointee_iterator
 An iterator type that allows iterating over the pointees via some other iterator. More...
class  iterator_range
 A range adaptor for a pair of iterators. More...
class  MapVector
 This class implements a map that also provides access to all stored values in a deterministic order. More...
struct  SmallMapVector
 A MapVector that performs no allocations if smaller than a certain size. More...
class  Optional
struct  isPodLike< Optional< T > >
class  PackedVectorBase< T, BitNum, BitVectorTy, false >
class  PackedVectorBase< T, BitNum, BitVectorTy, true >
class  PackedVector
 Store a vector of values using a specific number of bits for each value. More...
class  PointerIntPair
 PointerIntPair - This class implements a pair of a pointer and small integer. More...
struct  isPodLike< PointerIntPair< PointerTy, IntBits, IntType > >
struct  DenseMapInfo< PointerIntPair< PointerTy, IntBits, IntType > >
class  PointerLikeTypeTraits< PointerIntPair< PointerTy, IntBits, IntType, PtrTraits > >
struct  PointerUnionTypeSelectorReturn
struct  PointerUnionTypeSelector
 Get a type based on whether two types are the same or not. More...
struct  PointerUnionTypeSelector< T, T, RET_EQ, RET_NE >
struct  PointerUnionTypeSelectorReturn< PointerUnionTypeSelector< T1, T2, RET_EQ, RET_NE > >
class  PointerUnionUIntTraits
 Provide PointerLikeTypeTraits for void* that is used by PointerUnion for the two template arguments. More...
class  PointerUnion
 PointerUnion - This implements a discriminated union of two pointer types, and keeps the discriminator bit-mangled into the low bits of the pointer. More...
class  PointerLikeTypeTraits< PointerUnion< PT1, PT2 > >
class  PointerUnion3
 PointerUnion3 - This is a pointer union of three pointer types. More...
class  PointerLikeTypeTraits< PointerUnion3< PT1, PT2, PT3 > >
class  PointerUnion4
 PointerUnion4 - This is a pointer union of four pointer types. More...
class  PointerLikeTypeTraits< PointerUnion4< PT1, PT2, PT3, PT4 > >
struct  DenseMapInfo< PointerUnion< T, U > >
class  po_iterator_storage
 Default po_iterator_storage implementation with an internal set object. More...
class  po_iterator_storage< SetType, true >
 Specialization of po_iterator_storage that references an external set. More...
class  po_iterator
struct  po_ext_iterator
struct  ipo_iterator
struct  ipo_ext_iterator
class  ReversePostOrderTraversal
class  PriorityQueue
 PriorityQueue - This class behaves like std::priority_queue and provides a few additional convenience functions. More...
class  scc_iterator
 Enumerate the SCCs of a directed graph in reverse topological order of the SCC DAG. More...
class  ScopedHashTableVal
class  ScopedHashTableScope
class  ScopedHashTableIterator
class  ScopedHashTable
class  SetVector
 A vector that has set insertion semantics. More...
class  SmallSetVector
 A SetVector that performs no allocations if smaller than a certain size. More...
class  SmallBitVector
 SmallBitVector - This is a 'bitvector' (really, a variable-sized bit array), optimized for the case when the array is small. More...
class  SmallPtrSetImplBase
 SmallPtrSetImplBase - This is the common code shared among all the SmallPtrSet<>'s, which is almost everything. More...
class  SmallPtrSetIteratorImpl
 SmallPtrSetIteratorImpl - This is the common base class shared between all instances of SmallPtrSetIterator. More...
class  SmallPtrSetIterator
 SmallPtrSetIterator - This implements a const_iterator for SmallPtrSet. More...
struct  RoundUpToPowerOfTwoH
 RoundUpToPowerOfTwoH - If N is not a power of two, increase it. More...
struct  RoundUpToPowerOfTwoH< N, false >
struct  RoundUpToPowerOfTwo
class  SmallPtrSetImpl
 A templated base class for SmallPtrSet which provides the typesafe interface that is common across all small sizes. More...
class  SmallPtrSet
 SmallPtrSet - This class implements a set which is optimized for holding SmallSize or less elements. More...
class  SmallSet
 SmallSet - This maintains a set of unique values, optimizing for the case when the set is small (less than N). More...
class  SmallSet< PointeeType *, N >
 If this set is of pointer values, transparently switch over to using SmallPtrSet for performance. More...
class  SmallString
 SmallString - A SmallString is just a SmallVector with methods and accessors that make it work better as a string (e.g. More...
class  SmallVectorBase
 This is all the non-templated stuff common to all SmallVectors. More...
class  SmallVectorTemplateCommon
 This is the part of SmallVectorTemplateBase which does not depend on whether the type T is a POD. More...
class  SmallVectorTemplateBase
 SmallVectorTemplateBase<isPodLike = false> - This is where we put method implementations that are designed to work with non-POD-like T's. More...
class  SmallVectorTemplateBase< T, true >
 SmallVectorTemplateBase<isPodLike = true> - This is where we put method implementations that are designed to work with POD-like T's. More...
class  SmallVectorImpl
 This class consists of common code factored out of the SmallVector class to reduce code duplication based on the SmallVector 'N' template parameter. More...
struct  SmallVectorStorage
 Storage for the SmallVector elements which aren't contained in SmallVectorTemplateCommon. More...
struct  SmallVectorStorage< T, 1 >
struct  SmallVectorStorage< T, 0 >
class  SmallVector
 This is a 'vector' (really, a variable-sized array), optimized for the case when the array is small. More...
struct  SparseBitVectorElement
 SparseBitVector is an implementation of a bitvector that is sparse by only storing the elements that have non-zero bits set. More...
struct  ilist_traits< SparseBitVectorElement< ElementSize > >
class  SparseBitVector
class  SparseMultiSet
 Fast multiset implementation for objects that can be identified by small unsigned keys. More...
struct  SparseSetValTraits
 SparseSetValTraits - Objects in a SparseSet are identified by keys that can be uniquely converted to a small integer less than the set's universe. More...
struct  SparseSetValFunctor
 SparseSetValFunctor - Helper class for selecting SparseSetValTraits. More...
struct  SparseSetValFunctor< KeyT, KeyT, KeyFunctorT >
 SparseSetValFunctor<KeyT, KeyT> - Helper class for the common case of identity key/value sets. More...
class  SparseSet
 SparseSet - Fast set implmentation for objects that can be identified by small unsigned keys. More...
class  Statistic
struct  identity
struct  less_ptr
struct  greater_ptr
class  function_ref< Ret(Params...)>
class  mapped_iterator
struct  less_first
 Function object to check whether the first component of a std::pair compares less than the first component of another std::pair. More...
struct  less_second
 Function object to check whether the second component of a std::pair compares less than the second component of another std::pair. More...
struct  integer_sequence
 Represents a compile-time sequence of integers. More...
struct  index_sequence
 Alias for the common case of a sequence of size_ts. More...
struct  build_index_impl
struct  build_index_impl< 0, I...>
struct  index_sequence_for
 Creates a compile-time integer sequence for a parameter pack. More...
struct  FreeDeleter
struct  pair_hash
struct  less
 A functor like C++14's std::less<void> in its absence. More...
struct  equal
 A functor like C++14's std::equal<void> in its absence. More...
struct  deref
 Binary functor that adapts to any other binary functor after dereferencing operands. More...
class  StringMapEntryBase
 StringMapEntryBase - Shared base class of StringMapEntry instances. More...
class  StringMapImpl
 StringMapImpl - This is the base class of StringMap that is shared among all of its instantiations. More...
class  StringMapEntry
 StringMapEntry - This is used to represent one value that is inserted into a StringMap. More...
class  StringMap
 StringMap - This is an unconventional map that is specialized for handling keys that are "strings", which are basically ranges of bytes. More...
class  StringMapConstIterator
class  StringMapIterator
class  StringRef
 StringRef - Represent a constant reference to a string, i.e. More...
struct  isPodLike< StringRef >
class  StringSet
 StringSet - A wrapper for StringMap that provides set-like functionality. More...
class  StringSwitch
 A switch()-like statement whose cases are string literals. More...
class  TinyPtrVector
 TinyPtrVector - This class is specialized for cases where there are normally 0 or 1 element in a vector, but is general enough to go beyond that when required. More...
class  Triple
 Triple - Helper class for working with autoconf configuration names. More...
class  Twine
 Twine - A lightweight data structure for efficiently representing the concatenation of temporary values as strings. More...
class  UniqueVector
 UniqueVector - This class produces a sequential ID number (base 1) for each unique entry that is added. More...
struct  VariadicFunction
 Class which can simulate a type-safe variadic function. More...
struct  VariadicFunction1
struct  VariadicFunction2
struct  VariadicFunction3
class  AliasAnalysis
struct  DenseMapInfo< AliasAnalysis::Location >
class  AliasSet
class  AliasSetTracker
class  AssumptionCache
 A cache of .assume calls within a function. More...
class  AssumptionAnalysis
 A function analysis which provides an AssumptionCache. More...
class  AssumptionPrinterPass
 Printer pass for the AssumptionAnalysis results. More...
class  AssumptionCacheTracker
 An immutable pass that tracks lazily created AssumptionCache objects. More...
class  BlockFrequencyInfo
 BlockFrequencyInfo pass uses BlockFrequencyInfoImpl implementation to estimate IR basic block frequencies. More...
struct  isPodLike< bfi_detail::BlockMass >
class  BlockFrequencyInfoImplBase
 Base class for BlockFrequencyInfoImpl. More...
class  BlockFrequencyInfoImpl
 Shared implementation for block frequency analysis. More...
class  BranchProbabilityInfo
 Analysis pass providing branch probability information. More...
class  CallGraph
 The basic data container for the call graph of a Module of IR. More...
class  CallGraphNode
 A node in the call graph for a module. More...
class  CallGraphAnalysis
 An analysis pass to compute the CallGraph for a Module. More...
class  CallGraphWrapperPass
 The ModulePass which wraps up a CallGraph and the logic to build it. More...
struct  GraphTraits< CallGraphNode * >
struct  GraphTraits< const CallGraphNode * >
struct  GraphTraits< CallGraph * >
struct  GraphTraits< const CallGraph * >
class  CallGraphSCCPass
class  CallGraphSCC
 CallGraphSCC - This is a single SCC that a CallGraphSCCPass is run on. More...
struct  CaptureTracker
 This callback is used in conjunction with PointerMayBeCaptured. More...
struct  DOTGraphTraits< const Function * >
class  CGSCCAnalysisManagerModuleProxy
 A module analysis which acts as a proxy for a CGSCC analysis manager. More...
class  ModuleAnalysisManagerCGSCCProxy
 A CGSCC analysis which acts as a proxy for a module analysis manager. More...
class  ModuleToPostOrderCGSCCPassAdaptor
 The core module pass which does a post-order walk of the SCCs and runs a CGSCC pass over each one. More...
class  FunctionAnalysisManagerCGSCCProxy
 A CGSCC analysis which acts as a proxy for a function analysis manager. More...
class  CGSCCAnalysisManagerFunctionProxy
 A function analysis which acts as a proxy for a CGSCC analysis manager. More...
class  CGSCCToFunctionPassAdaptor
 Adaptor that maps from a SCC to its functions. More...
struct  CodeMetrics
 Utility to calculate the size and a few similar metrics for a set of basic blocks. More...
class  Dependence
 Dependence - This class represents a dependence between two memory memory references in a function. More...
class  FullDependence
 FullDependence - This class represents a dependence between two memory references in a function. More...
class  DependenceAnalysis
 DependenceAnalysis - This class is the main dependence-analysis driver. More...
class  DominanceFrontierBase
 DominanceFrontierBase - Common base class for computing forward and inverse dominance frontiers for a function. More...
class  ForwardDominanceFrontierBase
 DominanceFrontier Class - Concrete subclass of DominanceFrontierBase that is used to compute a forward dominator frontiers. More...
class  DominanceFrontier
class  DFCalculateWorkObject
struct  DefaultAnalysisGraphTraits
 Default traits class for extracting a graph from an analysis pass. More...
class  DOTGraphTraitsViewer
class  DOTGraphTraitsPrinter
class  DOTGraphTraitsModuleViewer
class  DOTGraphTraitsModulePrinter
class  InlineCost
 Represents the cost of inlining a function. More...
class  InlineCostAnalysis
 Cost analyzer used by inliner. More...
class  Interval
 Interval Class - An Interval is a set of nodes defined such that every node in the interval has all of its predecessors in the interval (except for the header) More...
struct  GraphTraits< Interval * >
struct  GraphTraits< Inverse< Interval * > >
class  IntervalIterator
class  IntervalPartition
class  IDFCalculator
 Determine the iterated dominance frontier, given a set of defining blocks, and optionally, a set of live-in blocks. More...
class  IVStrideUse
 IVStrideUse - Keep track of one use of a strided induction variable. More...
struct  ilist_traits< IVStrideUse >
class  IVUsers
class  JumpInstrTableInfo
 This class stores information about jump-instruction tables created by the JumpInstrTables pass (in lib/CodeGen/JumpInstrTables.cpp). More...
class  LazyCallGraph
 A lazily constructed view of the call graph of a module. More...
struct  GraphTraits< LazyCallGraph::Node * >
struct  GraphTraits< LazyCallGraph * >
class  LazyCallGraphAnalysis
 An analysis pass which computes the call graph for a module. More...
class  LazyCallGraphPrinterPass
 A pass which prints the call graph to a raw_ostream. More...
class  LazyValueInfo
 This pass computes, caches, and vends lazy value constraint information. More...
struct  LibCallAliasAnalysis
 LibCallAliasAnalysis - Alias analysis driven from LibCallInfo. More...
struct  LibCallLocationInfo
 LibCallLocationInfo - This struct describes a set of memory locations that are accessed by libcalls. More...
struct  LibCallFunctionInfo
 LibCallFunctionInfo - Each record in the array of FunctionInfo structs records the behavior of one libcall that is known by the optimizer. More...
class  LibCallInfo
 LibCallInfo - Abstract interface to query about library call information. More...
class  LoopAccessReport
 Optimization analysis message produced during vectorization. More...
struct  VectorizerParams
 Collection of parameters shared beetween the Loop Vectorizer and the Loop Access Analysis. More...
class  MemoryDepChecker
 Checks memory dependences among accesses to the same underlying object to determine whether there vectorization is legal or not (and at which vectorization factor). More...
class  LoopAccessInfo
 Drive the analysis of memory accesses in the loop. More...
class  LoopAccessAnalysis
 This analysis provides dependence information for the memory accesses of a loop. More...
class  LoopBase
 LoopBase class - Instances of this class are used to represent loops that are detected in the flow graph. More...
class  Loop
class  LoopInfoBase
 LoopInfo - This class builds and contains all of the top level loop structures in the specified function. More...
class  LoopInfo
struct  GraphTraits< const Loop * >
struct  GraphTraits< Loop * >
class  LoopAnalysis
 Analysis pass that exposes the LoopInfo for a function. More...
class  LoopPrinterPass
 Printer pass for the LoopAnalysis results. More...
class  LoopInfoWrapperPass
 The legacy pass manager's analysis pass to compute loop information. More...
class  PopulateLoopsDFS
 Populate all loop data in a stable order during a single forward DFS. More...
class  LoopBlocksDFS
 Store the result of a depth first search within basic blocks contained by a single loop. More...
class  po_iterator_storage< LoopBlocksTraversal, true >
 Specialize po_iterator_storage to record postorder numbers. More...
class  LoopBlocksTraversal
 Traverse the blocks in a loop using a depth-first search. More...
class  LoopPass
class  LPPassManager
class  ObjectSizeOffsetVisitor
 Evaluate the size and offset of an object pointed to by a Value* statically. More...
class  ObjectSizeOffsetEvaluator
 Evaluate the size and offset of an object pointed to by a Value*. More...
class  MemDepResult
 MemDepResult - A memory dependence query can return one of three different answers, described below. More...
class  NonLocalDepEntry
 NonLocalDepEntry - This is an entry in the NonLocalDepInfo cache. More...
class  NonLocalDepResult
 NonLocalDepResult - This is a result from a NonLocal dependence query. More...
class  MemoryDependenceAnalysis
 MemoryDependenceAnalysis - This is an analysis that determines, for a given memory operation, what preceding memory operations it depends on. More...
class  PHITransAddr
 PHITransAddr - An address value which tracks and handles phi translation. More...
struct  PostDominatorTree
 PostDominatorTree Class - Concrete subclass of DominatorTree that is used to compute the post-dominator tree. More...
struct  GraphTraits< PostDominatorTree * >
class  PtrUseVisitor
 A base class for visitors over the uses of a pointer value. More...
struct  RegionTraits
struct  RegionTraits< Function >
class  FlatIt
 Marker class to iterate over the elements of a Region in flat mode. More...
class  RegionNodeBase
 A RegionNode represents a subregion or a BasicBlock that is part of a Region. More...
class  RegionBase
 A single entry single exit Region. More...
class  RegionInfoBase
 Analysis that detects all canonical Regions. More...
class  RegionNode
class  Region
class  RegionInfo
class  RegionInfoPass
class  RNSuccIterator
 Hierarchical RegionNode successor iterator. More...
class  RNSuccIterator< FlatIt< NodeType >, BlockT, RegionT >
 Flat RegionNode iterator. More...
struct  GraphTraits< RegionInfo * >
struct  GraphTraits< RegionInfoPass * >
class  RegionPass
 A pass that runs on each Region in a function. More...
class  RGPassManager
 The pass manager to schedule RegionPasses. More...
class  SCEV
 SCEV - This class represents an analyzed expression in the program. More...
struct  FoldingSetTrait< SCEV >
struct  SCEVCouldNotCompute
 SCEVCouldNotCompute - An object of this class is returned by queries that could not be answered. More...
class  ScalarEvolution
 ScalarEvolution - This class is the main scalar evolution driver. More...
class  SCEVExpander
 This class uses information about analyze scalars to rewrite expressions in canonical form. More...
class  SCEVConstant
 SCEVConstant - This class represents a constant integer value. More...
class  SCEVCastExpr
 SCEVCastExpr - This is the base class for unary cast operator classes. More...
class  SCEVTruncateExpr
 SCEVTruncateExpr - This class represents a truncation of an integer value to a smaller integer value. More...
class  SCEVZeroExtendExpr
 SCEVZeroExtendExpr - This class represents a zero extension of a small integer value to a larger integer value. More...
class  SCEVSignExtendExpr
 SCEVSignExtendExpr - This class represents a sign extension of a small integer value to a larger integer value. More...
class  SCEVNAryExpr
 SCEVNAryExpr - This node is a base class providing common functionality for n'ary operators. More...
class  SCEVCommutativeExpr
 SCEVCommutativeExpr - This node is the base class for n'ary commutative operators. More...
class  SCEVAddExpr
 SCEVAddExpr - This node represents an addition of some number of SCEVs. More...
class  SCEVMulExpr
 SCEVMulExpr - This node represents multiplication of some number of SCEVs. More...
class  SCEVUDivExpr
 SCEVUDivExpr - This class represents a binary unsigned division operation. More...
class  SCEVAddRecExpr
 SCEVAddRecExpr - This node represents a polynomial recurrence on the trip count of the specified loop. More...
class  SCEVSMaxExpr
 SCEVSMaxExpr - This class represents a signed maximum selection. More...
class  SCEVUMaxExpr
 SCEVUMaxExpr - This class represents an unsigned maximum selection. More...
class  SCEVUnknown
 SCEVUnknown - This means that we are dealing with an entirely unknown SCEV value, and only represent it as its LLVM Value. More...
struct  SCEVVisitor
 SCEVVisitor - This class defines a simple visitor class that may be used for various SCEV analysis purposes. More...
class  SCEVTraversal
 Visit all nodes in the expression tree using worklist traversal. More...
struct  SCEVParameterRewriter
 The SCEVParameterRewriter takes a scalar evolution expression and updates the SCEVUnknown components following the Map (Value -> Value). More...
struct  SCEVApplyRewriter
 The SCEVApplyRewriter takes a scalar evolution expression and applies the Map (Loop -> SCEV) to all AddRecExprs. More...
class  AbstractLatticeFunction
 AbstractLatticeFunction - This class is implemented by the dataflow instance to specify what the lattice values are and how they handle merges etc. More...
class  SparseSolver
 SparseSolver - This class is a general purpose solver for Sparse Conditional Propagation with a programmable lattice function. More...
class  TargetFolder
 TargetFolder - Create constants with target dependent folding. More...
struct  VecDesc
 VecDesc - Describes a possible vectorization of a function. More...
class  TargetLibraryInfoImpl
 Implementation of the target library information. More...
class  TargetLibraryInfo
 Provides information about what library functions are available for the current target. More...
class  TargetLibraryAnalysis
 Analysis pass providing the TargetLibraryInfo. More...
class  TargetLibraryInfoWrapperPass
struct  MemIntrinsicInfo
 Information about a load/store intrinsic defined by the target. More...
class  TargetTransformInfo
 This pass provides access to the codegen interfaces that are needed for IR-level transformations. More...
class  TargetIRAnalysis
 Analysis pass providing the TargetTransformInfo. More...
class  TargetTransformInfoWrapperPass
 Wrapper pass for TargetTransformInfo. More...
class  TargetTransformInfoImplBase
 Base class for use as a mix-in that aids implementing a TargetTransformInfo-compatible class. More...
class  TargetTransformInfoImplCRTPBase
 CRTP base class for use as a mix-in that aids implementing a TargetTransformInfo-compatible class. More...
class  Trace
class  BitCodeAbbrevOp
 BitCodeAbbrevOp - This describes one or more operands in an abbreviation. More...
struct  isPodLike< BitCodeAbbrevOp >
class  BitCodeAbbrev
 BitCodeAbbrev - This class represents an abbreviation record. More...
class  BitcodeWriterPass
 Pass for writing a module of IR out to a bitcode file. More...
class  BitstreamReader
 This class is used to read from an LLVM bitcode stream, maintaining information that is global to decoding the entire file. More...
struct  BitstreamEntry
 When advancing through a bitstream cursor, each advance can discover a few different kinds of entries: More...
class  BitstreamCursor
 This represents a position within a bitcode file. More...
class  BitstreamWriter
class  BitcodeDiagnosticInfo
class  AsmPrinter
 This class is intended to be used as a driving class for all asm writers. More...
class  BasicTTIImplBase
 Base class which can be used to help build a TTI implementation. More...
class  BasicTTIImpl
 Concrete BasicTTIImpl that can be used if no further customization is needed. More...
class  VirtRegAuxInfo
 Calculate auxiliary information for a virtual register such as its spill weight and allocation hint. More...
class  CCValAssign
 CCValAssign - Represent assignment of one arg/retval to a location. More...
struct  ForwardedRegister
 Describes a register that needs to be forwarded from the prologue to a musttail call. More...
class  CCState
 CCState - This class holds information needed while lowering arguments and return values. More...
class  DFAPacketizer
class  VLIWPacketizerList
class  DIEAbbrevData
 DIEAbbrevData - Dwarf abbreviation data, describes one attribute of a Dwarf abbreviation. More...
class  DIEAbbrev
 DIEAbbrev - Dwarf abbreviation, describes the organization of a debug information object. More...
class  DIEInteger
 DIEInteger - An integer value DIE. More...
class  DIEExpr
 DIEExpr - An expression DIE. More...
class  DIELabel
 DIELabel - A label DIE. More...
class  DIEDelta
 DIEDelta - A simple label difference DIE. More...
class  DIEString
 DIEString - A container for string values. More...
class  DIEEntry
class  DIETypeSignature
 A signature reference to a type unit. More...
class  DIELocList
 DIELocList - Represents a pointer to a location list in the debug_loc section. More...
class  DIEValue
class  DIE
 DIE - A structured debug information entry. More...
class  DIELoc
 DIELoc - Represents an expression location. More...
class  DIEBlock
 DIEBlock - Represents a block of values. More...
struct  DwarfStringPoolEntry
 Data for a string pool entry. More...
struct  DwarfStringPoolEntryRef
 String pool entry reference. More...
class  EdgeBundles
class  FastISel
 This is a fast-path instruction selection class that generates poor code and doesn't support illegal types or non-trivial lowering, but runs quickly. More...
class  FunctionLoweringInfo
 FunctionLoweringInfo - This contains information that is global to a function that is used when lowering a region of the function. More...
struct  GCPoint
 GCPoint - Metadata for a collector-safe point in machine code. More...
struct  GCRoot
 GCRoot - Metadata for a pointer to an object managed by the garbage collector. More...
class  GCFunctionInfo
 Garbage collection metadata for a single function. More...
class  GCModuleInfo
 An analysis pass which caches information about the entire Module. More...
class  GCMetadataPrinter
 GCMetadataPrinter - Emits GC metadata as assembly code. More...
class  GCStrategy
 GCStrategy describes a garbage collector algorithm's code generation requirements, and provides overridable hooks for those needs which cannot be abstractly described. More...
class  IntrinsicLowering
struct  latency_sort
 Sorting functions for the Available queue. More...
class  LatencyPriorityQueue
class  LexicalScope
 LexicalScope - This class is used to track scope information. More...
class  LexicalScopes
 LexicalScopes - This class provides interface to collect and use lexical scoping information from machine instruction. More...
class  VNInfo
 VNInfo - Value Number Information. More...
class  LiveQueryResult
 Result of a LiveRange query. More...
class  LiveRange
 This class represents the liveness of a register, stack slot, etc. More...
class  LiveInterval
 LiveInterval - This class represents the liveness of a register, or stack slot. More...
class  LiveRangeUpdater
 Helper class for performant LiveRange bulk updates. More...
class  ConnectedVNInfoEqClasses
 ConnectedVNInfoEqClasses - Helper class that can divide VNInfos in a LiveInterval into equivalence clases of connected components. More...
class  LiveIntervals
class  LiveIntervalUnion
 Union of live intervals that are strong candidates for coalescing into a single register (either physical or virtual depending on the context). More...
class  LivePhysRegs
 A set of live physical registers with functions to track liveness when walking backward/forward through a basic block. More...
class  LiveRangeEdit
class  LiveRegMatrix
class  LiveStacks
class  LiveVariables
struct  ilist_traits< MachineInstr >
class  MachineBasicBlock
struct  MBB2NumberFunctor
struct  GraphTraits< MachineBasicBlock * >
struct  GraphTraits< const MachineBasicBlock * >
struct  GraphTraits< Inverse< MachineBasicBlock * > >
struct  GraphTraits< Inverse< const MachineBasicBlock * > >
class  MachineInstrSpan
 MachineInstrSpan provides an interface to get an iteration range containing the instruction it was initialized with, along with all those instructions inserted prior to or following that instruction at some point after the MachineInstrSpan is constructed. More...
class  MachineBlockFrequencyInfo
 MachineBlockFrequencyInfo pass uses BlockFrequencyInfoImpl implementation to estimate machine basic block frequencies. More...
class  MachineBranchProbabilityInfo
class  MachineConstantPoolValue
 Abstract base class for all machine specific constantpool value subclasses. More...
class  MachineConstantPoolEntry
 This class is a data container for one entry in a MachineConstantPool. More...
class  MachineConstantPool
 The MachineConstantPool class keeps track of constants referenced by a function which must be spilled to memory. More...
class  MachineDominanceFrontier
class  MachineDominatorTree
 DominatorTree Class - Concrete subclass of DominatorTreeBase that is used to compute a normal dominator tree. More...
struct  GraphTraits< MachineDomTreeNode * >
struct  GraphTraits< MachineDominatorTree * >
class  CalleeSavedInfo
 The CalleeSavedInfo class tracks the information need to locate where a callee saved register is in the current frame. More...
class  MachineFrameInfo
 The MachineFrameInfo class represents an abstract stack frame until prolog/epilog code is inserted. More...
struct  ilist_traits< MachineBasicBlock >
struct  MachineFunctionInfo
 MachineFunctionInfo - This class can be derived from and used by targets to hold private target-specific information for each MachineFunction. More...
class  MachineFunction
struct  GraphTraits< MachineFunction * >
struct  GraphTraits< const MachineFunction * >
struct  GraphTraits< Inverse< MachineFunction * > >
struct  GraphTraits< Inverse< const MachineFunction * > >
struct  MachineFunctionAnalysis
 MachineFunctionAnalysis - This class is a Pass that manages a MachineFunction object. More...
class  MachineFunctionPass
 MachineFunctionPass - This class adapts the FunctionPass interface to allow convenient creation of passes that operate on the MachineFunction representation. More...
class  MachineInstr
 Representation of each machine instruction. More...
struct  MachineInstrExpressionTrait
 Special DenseMapInfo traits to compare MachineInstr* by *value* of the instruction rather than by pointer value. More...
class  MachineInstrBuilder
class  MIBundleBuilder
 Helper class for constructing bundles of MachineInstrs. More...
class  MachineOperandIteratorBase
 MachineOperandIteratorBase - Iterator that can visit all operands on a MachineInstr, or all operands on a bundle of MachineInstrs. More...
class  MIOperands
 MIOperands - Iterate over operands of a single instruction. More...
class  ConstMIOperands
 ConstMIOperands - Iterate over operands of a single const instruction. More...
class  MIBundleOperands
 MIBundleOperands - Iterate over all operands in a bundle of machine instructions. More...
class  ConstMIBundleOperands
 ConstMIBundleOperands - Iterate over all operands in a const bundle of machine instructions. More...
struct  MachineJumpTableEntry
 MachineJumpTableEntry - One jump table in the jump table info. More...
class  MachineJumpTableInfo
class  MachineLoop
class  MachineLoopInfo
struct  GraphTraits< const MachineLoop * >
struct  GraphTraits< MachineLoop * >
struct  MachinePointerInfo
 MachinePointerInfo - This class contains a discriminated union of information about pointers in memory operands, relating them back to LLVM IR or to virtual locations (such as frame indices) that are exposed during codegen. More...
class  MachineMemOperand
 MachineMemOperand - A description of a memory reference used in the backend. More...
struct  SEHHandler
struct  LandingPadInfo
 LandingPadInfo - This structure is used to retain landing pad info for the current function. More...
class  MachineModuleInfoImpl
 MachineModuleInfoImpl - This class can be derived from and used by targets to hold private target-specific information for each Module. More...
class  MachineModuleInfo
 MachineModuleInfo - This class contains meta information specific to a module. More...
class  MachineModuleInfoMachO
 MachineModuleInfoMachO - This is a MachineModuleInfoImpl implementation for MachO targets. More...
class  MachineModuleInfoELF
 MachineModuleInfoELF - This is a MachineModuleInfoImpl implementation for ELF targets. More...
class  MachineOperand
 MachineOperand class - Representation of each machine instruction operand. More...
class  MachinePassRegistryListener
 MachinePassRegistryListener - Listener to adds and removals of nodes in registration list. More...
class  MachinePassRegistryNode
 MachinePassRegistryNode - Machine pass node stored in registration list. More...
class  MachinePassRegistry
 MachinePassRegistry - Track the registration of machine passes. More...
class  RegisterPassParser
 RegisterPassParser class - Handle the addition of new machine passes. More...
struct  MachinePostDominatorTree
 PostDominatorTree Class - Concrete subclass of DominatorTree that is used to compute the post-dominator tree. More...
struct  RegionTraits< MachineFunction >
class  MachineRegionNode
class  MachineRegion
class  MachineRegionInfo
class  MachineRegionInfoPass
struct  GraphTraits< MachineRegionInfo * >
struct  GraphTraits< MachineRegionInfoPass * >
class  MachineRegisterInfo
 MachineRegisterInfo - Keep track of information for virtual and physical registers, including vreg register classes, use/def chains for registers, etc. More...
class  PSetIterator
 Iterate over the pressure sets affected by the given physical or virtual register. More...
struct  MachineSchedContext
 MachineSchedContext provides enough context from the MachineScheduler pass for the target to instantiate a scheduler. More...
class  MachineSchedRegistry
 MachineSchedRegistry provides a selection of available machine instruction schedulers. More...
struct  MachineSchedPolicy
 Define a generic scheduling policy for targets that don't provide their own MachineSchedStrategy. More...
class  MachineSchedStrategy
 MachineSchedStrategy - Interface to the scheduling algorithm used by ScheduleDAGMI. More...
class  ScheduleDAGMutation
 Mutate the DAG as a postpass after normal DAG building. More...
class  ScheduleDAGMI
 ScheduleDAGMI is an implementation of ScheduleDAGInstrs that simply schedules machine instructions according to the given MachineSchedStrategy without much extra book-keeping. More...
class  ScheduleDAGMILive
 ScheduleDAGMILive is an implementation of ScheduleDAGInstrs that schedules machine instructions while updating LiveIntervals and tracking regpressure. More...
class  ReadyQueue
 Helpers for implementing custom MachineSchedStrategy classes. More...
struct  SchedRemainder
 Summarize the unscheduled region. More...
class  SchedBoundary
 Each Scheduling boundary is associated with ready queues. More...
class  GenericSchedulerBase
 Base class for GenericScheduler. More...
class  GenericScheduler
 GenericScheduler shrinks the unscheduled zone using heuristics to balance the schedule. More...
class  PostGenericScheduler
 PostGenericScheduler - Interface to the scheduling algorithm used by ScheduleDAGMI. More...
class  MachineSSAUpdater
 MachineSSAUpdater - This class updates SSA form for a set of virtual registers defined in multiple blocks. More...
class  MachineTraceMetrics
class  MVT
 MVT - Machine Value Type. More...
class  MachORelocation
 MachORelocation - This struct contains information about each relocation that needs to be emitted to the file. More...
class  IdentifyingPassPtr
 Discriminated union of Pass ID types. More...
struct  isPodLike< IdentifyingPassPtr >
class  TargetPassConfig
 Target-Independent Code Generator Pass Configuration Options. More...
class  PBQPRAConstraint
 Abstract base for classes implementing PBQP register allocation constraints (e.g. More...
class  PBQPRAConstraintList
 PBQP register allocation constraint composer. More...
class  PseudoSourceValue
 PseudoSourceValue - Special value supplied for machine level alias analysis. More...
class  FixedStackPseudoSourceValue
 FixedStackPseudoSourceValue - A specialized PseudoSourceValue for holding FixedStack values, which must include a frame index. More...
class  RegisterRegAlloc
 RegisterRegAlloc class - Track the registration of register allocators. More...
class  RegisterClassInfo
struct  RegisterPressure
 Base class for register pressure results. More...
struct  IntervalPressure
 RegisterPressure computed within a region of instructions delimited by TopIdx and BottomIdx. More...
struct  RegionPressure
 RegisterPressure computed within a region of instructions delimited by TopPos and BottomPos. More...
class  PressureChange
 Capture a change in pressure for a single pressure set. More...
struct  isPodLike< PressureChange >
class  PressureDiff
 List of PressureChanges in order of increasing, unique PSetID. More...
class  PressureDiffs
 Array of PressureDiffs. More...
struct  RegPressureDelta
 Store the effects of a change in pressure on things that MI scheduler cares about. More...
struct  LiveRegSet
 A set of live virtual registers and physical register units. More...
class  RegPressureTracker
 Track the current register pressure at some position in the instruction stream, and remember the high water mark within the region traversed. More...
class  RegScavenger
struct  resource_sort
 Sorting functions for the Available queue. More...
class  ResourcePriorityQueue
class  SDep
 SDep - Scheduling dependency. More...
struct  isPodLike< SDep >
class  SUnit
 SUnit - Scheduling unit. This is a node in the scheduling DAG. More...
class  SchedulingPriorityQueue
 SchedulingPriorityQueue - This interface is used to plug different priorities computation algorithms into the list scheduler. More...
class  ScheduleDAG
class  SUnitIterator
struct  GraphTraits< SUnit * >
struct  GraphTraits< ScheduleDAG * >
class  ScheduleDAGTopologicalSort
 ScheduleDAGTopologicalSort is a class that computes a topological ordering for SUnits and provides methods for dynamically updating the ordering as new edges are added. More...
struct  VReg2SUnit
 An individual mapping from virtual register number to SUnit. More...
struct  PhysRegSUOper
 Record a physical register access. More...
class  ScheduleDAGInstrs
 ScheduleDAGInstrs - A ScheduleDAG subclass for scheduling lists of MachineInstrs. More...
struct  ILPValue
 Represent the ILP of the subDAG rooted at a DAG node. More...
class  SchedDFSResult
 Compute the values of each DAG node for various metrics during DFS. More...
class  ScheduleHazardRecognizer
 HazardRecognizer - This determines whether or not an instruction can be issued this cycle, and whether or not a noop needs to be inserted to handle the hazard. More...
class  RegisterScheduler
class  ScoreboardHazardRecognizer
class  SDVTListNode
struct  FoldingSetTrait< SDVTListNode >
 Specialize FoldingSetTrait for SDVTListNode to avoid computing temp FoldingSetNodeID and hash value. More...
struct  ilist_traits< SDNode >
class  SDDbgInfo
 Keeps track of dbg_value information through SDISel. More...
class  SelectionDAG
 This is used to represent a portion of an LLVM function in a low-level Data Dependence DAG representation suitable for instruction selection. More...
struct  GraphTraits< SelectionDAG * >
class  SelectionDAGISel
 SelectionDAGISel - This is the common base class used for SelectionDAG-based pattern-matching instruction selectors. More...
struct  SDVTList
 This represents a list of ValueType's that has been intern'd by a SelectionDAG. More...
class  SDValue
 Unlike LLVM values, Selection DAG nodes may return multiple values as the result of a computation. More...
struct  DenseMapInfo< SDValue >
struct  isPodLike< SDValue >
struct  simplify_type< SDValue >
 Allow casting operators to work directly on SDValues as if they were SDNode*'s. More...
struct  simplify_type< const SDValue >
class  SDUse
 Represents a use of a SDNode. More...
struct  simplify_type< SDUse >
 simplify_type specializations - Allow casting operators to work directly on SDValues as if they were SDNode*'s. More...
class  SDNode
 Represents one node in the SelectionDAG. More...
class  SDLoc
 Wrapper class for IR location info (IR ordering and DebugLoc) to be passed into SDNode creation functions. More...
struct  SDNodeFlags
 These are IR-level optimization flags that may be propagated to SDNodes. More...
class  UnarySDNode
 This class is used for single-operand SDNodes. More...
class  BinarySDNode
 This class is used for two-operand SDNodes. More...
class  BinaryWithFlagsSDNode
 This class is an extension of BinarySDNode used from those opcodes that have associated extra flags. More...
class  TernarySDNode
 This class is used for three-operand SDNodes. More...
class  HandleSDNode
 This class is used to form a handle around another node that is persistent and is updated across invocations of replaceAllUsesWith on its operand. More...
class  AddrSpaceCastSDNode
class  MemSDNode
 This is an abstract virtual class for memory operations. More...
class  AtomicSDNode
 This is an SDNode representing atomic operations. More...
class  MemIntrinsicSDNode
 This SDNode is used for target intrinsics that touch memory and need an associated MachineMemOperand. More...
class  ShuffleVectorSDNode
 This SDNode is used to implement the code generator support for the llvm IR shufflevector instruction. More...
class  ConstantSDNode
class  ConstantFPSDNode
class  GlobalAddressSDNode
class  FrameIndexSDNode
class  JumpTableSDNode
class  ConstantPoolSDNode
class  TargetIndexSDNode
 Completely target-dependent object reference. More...
class  BasicBlockSDNode
class  BuildVectorSDNode
 A "pseudo-class" with methods for operating on BUILD_VECTORs. More...
class  SrcValueSDNode
 An SDNode that holds an arbitrary LLVM IR Value. More...
class  MDNodeSDNode
class  RegisterSDNode
class  RegisterMaskSDNode
class  BlockAddressSDNode
class  EHLabelSDNode
class  ExternalSymbolSDNode
class  CondCodeSDNode
class  CvtRndSatSDNode
 NOTE: avoid using this node as this may disappear in the future and most targets don't support it. More...
class  VTSDNode
 This class is used to represent EVT's, which are used to parameterize some operations. More...
class  LSBaseSDNode
 Base class for LoadSDNode and StoreSDNode. More...
class  LoadSDNode
 This class is used to represent ISD::LOAD nodes. More...
class  StoreSDNode
 This class is used to represent ISD::STORE nodes. More...
class  MaskedLoadStoreSDNode
 This base class is used to represent MLOAD and MSTORE nodes. More...
class  MaskedLoadSDNode
 This class is used to represent an MLOAD node. More...
class  MaskedStoreSDNode
 This class is used to represent an MSTORE node. More...
class  MaskedGatherScatterSDNode
 This is a base class used to represent MGATHER and MSCATTER nodes. More...
class  MaskedGatherSDNode
 This class is used to represent an MGATHER node. More...
class  MaskedScatterSDNode
 This class is used to represent an MSCATTER node. More...
class  MachineSDNode
 An SDNode that represents everything that will be needed to construct a MachineInstr. More...
class  SDNodeIterator
struct  GraphTraits< SDNode * >
class  IndexListEntry
 This class represents an entry in the slot index list held in the SlotIndexes pass. More...
struct  ilist_traits< IndexListEntry >
class  SlotIndex
 SlotIndex - An opaque wrapper around machine indexes. More...
struct  isPodLike< SlotIndex >
struct  Idx2MBBCompare
class  SlotIndexes
 SlotIndexes pass. More...
struct  IntervalMapInfo< SlotIndex >
class  PatchPointOpers
 MI-level patchpoint operands. More...
class  StatepointOpers
 MI-level Statepoint operands. More...
class  StackMaps
class  StackProtector
class  TargetLoweringObjectFileELF
class  TargetLoweringObjectFileMachO
class  TargetLoweringObjectFileCOFF
class  TargetSchedModel
 Provide an instruction scheduling machine model to CodeGen passes. More...
struct  EVT
 EVT - Extended Value Type. More...
class  VirtRegMap
class  ActionHandler
class  CatchHandler
class  CleanupHandler
struct  WinEHUnwindMapEntry
struct  WinEHHandlerType
struct  WinEHTryBlockMapEntry
struct  WinEHFuncInfo
struct  DILineInfo
 DILineInfo - a format-neutral container for source line information. More...
class  DIInliningInfo
 DIInliningInfo - a format-neutral container for inlined code description. More...
struct  DILineInfoSpecifier
 DILineInfoSpecifier - controls which fields of DILineInfo container should be filled with data. More...
class  DIContext
class  LoadedObjectInfo
 An inferface for inquiring the load address of a loaded object file to be used by the DIContext implementations when applying relocations on the fly. More...
class  DWARFAbbreviationDeclaration
class  DWARFAcceleratorTable
class  DWARFCompileUnit
class  DWARFContext
 DWARFContext This data structure is the top level entity that deals with dwarf debug information parsing. More...
class  DWARFContextInMemory
 DWARFContextInMemory is the simplest possible implementation of a DWARFContext. More...
class  DWARFAbbreviationDeclarationSet
class  DWARFDebugAbbrev
class  DWARFDebugAranges
class  DWARFDebugArangeSet
class  DWARFDebugFrame
 A parsed .debug_frame section. More...
class  DWARFDebugInfoEntryMinimal
 DWARFDebugInfoEntryMinimal - A DIE with only the minimum required data. More...
struct  DWARFDebugInfoEntryInlinedChain
 DWARFDebugInfoEntryInlinedChain - represents a chain of inlined_subroutine DIEs, (possibly ending with subprogram DIE), all of which are contained in some concrete inlined instance tree. More...
class  DWARFDebugLine
class  DWARFDebugLoc
class  DWARFDebugLocDWO
class  DWARFDebugRangeList
class  DWARFFormValue
struct  DWARFSection
class  DWARFTypeUnit
class  DWARFUnitSectionBase
 Base class for all DWARFUnitSection classes. More...
class  DWARFUnit
class  ConcreteSymbolEnumerator
class  DIADataStream
class  DIAEnumDebugStreams
class  DIAEnumLineNumbers
class  DIAEnumSourceFiles
class  DIAEnumSymbols
class  DIALineNumber
class  DIARawSymbol
class  DIASession
class  DIASourceFile
class  IPDBDataStream
 IPDBDataStream defines an interface used to represent a stream consisting of a name and a series of records whose formats depend on the particular stream type. More...
class  IPDBEnumChildren
class  IPDBLineNumber
class  IPDBRawSymbol
 IPDBRawSymbol defines an interface used to represent an arbitrary symbol. More...
class  IPDBSession
 IPDBSession defines an interface used to provide a context for querying debug information from a debug data source (for example, a PDB). More...
class  IPDBSourceFile
 IPDBSourceFile defines an interface used to represent source files whose information are stored in the PDB. More...
class  PDBContext
 PDBContext This data structure is the top level entity that deals with PDB debug information parsing. More...
class  PDBSymbol
 PDBSymbol defines the base of the inheritance hierarchy for concrete symbol types (e.g. More...
class  PDBSymbolAnnotation
class  PDBSymbolBlock
class  PDBSymbolCompiland
class  PDBSymbolCompilandDetails
class  PDBSymbolCompilandEnv
class  PDBSymbolCustom
 PDBSymbolCustom represents symbols that are compiler-specific and do not fit anywhere else in the lexical hierarchy. More...
class  PDBSymbolData
class  PDBSymbolExe
class  PDBSymbolFunc
class  PDBSymbolFuncDebugEnd
class  PDBSymbolFuncDebugStart
class  PDBSymbolLabel
class  PDBSymbolPublicSymbol
class  PDBSymbolThunk
class  PDBSymbolTypeArray
class  PDBSymbolTypeBaseClass
class  PDBSymbolTypeBuiltin
class  PDBSymbolTypeCustom
class  PDBSymbolTypeDimension
class  PDBSymbolTypeEnum
class  PDBSymbolTypeFriend
class  PDBSymbolTypeFunctionArg
class  PDBSymbolTypeFunctionSig
class  PDBSymbolTypeManaged
class  PDBSymbolTypePointer
class  PDBSymbolTypeTypedef
class  PDBSymbolTypeUDT
class  PDBSymbolTypeVTable
class  PDBSymbolTypeVTableShape
class  PDBSymbolUnknown
class  PDBSymbolUsingNamespace
class  PDBSymDumper
struct  PDB_UniqueId
 Defines a 128-bit unique identifier. More...
struct  VersionInfo
struct  Variant
class  ExecutionEngineState
 Helper class for helping synchronize access to the global address map table. More...
class  ExecutionEngine
 Abstract interface for implementation execution of LLVM modules, designed to support both interpreter and just-in-time (JIT) compiler implementations. More...
class  EngineBuilder
 Builder class for ExecutionEngines. More...
struct  GenericValue
struct  JITEvent_EmittedFunctionDetails
 JITEvent_EmittedFunctionDetails - Helper struct for containing information about a generated machine code function. More...
class  JITEventListener
 JITEventListener - Abstract interface for use by the JIT to notify clients about significant events during compilation. More...
class  JITSymbolBase
 Base class for symbols in the JIT. More...
class  ObjectCache
 This is the base ObjectCache type which can be provided to an ExecutionEngine for the purpose of avoiding compilation for Modules that have already been compiled and an object file is available. More...
class  ObjectMemoryBuffer
 SmallVector-backed MemoryBuffer instance. More...
class  OProfileWrapper
class  MCJITMemoryManager
class  RTDyldMemoryManager
class  RuntimeDyld
class  RuntimeDyldChecker
 RuntimeDyld invariant checker for verifying that RuntimeDyld has correctly applied relocations. More...
class  SectionMemoryManager
 This is a simple memory manager which implements the methods called by the RuntimeDyld class to allocate memory for section-based loading of objects, usually those generated by the MCJIT execution engine. More...
class  Argument
 LLVM Argument representation. More...
class  AssemblyAnnotationWriter
class  Attribute
class  AttributeSet
struct  DenseMapInfo< AttributeSet >
class  AttrBuilder
struct  ilist_traits< BasicBlock >
class  BasicBlock
 LLVM Basic Block Representation. More...
class  CallSiteBase
class  CallSite
class  ImmutableCallSite
 ImmutableCallSite - establish a view to a call site for examination. More...
class  PredIterator
class  SuccIterator
struct  isPodLike< SuccIterator< T, U > >
struct  GraphTraits< BasicBlock * >
struct  GraphTraits< const BasicBlock * >
struct  GraphTraits< Inverse< BasicBlock * > >
struct  GraphTraits< Inverse< const BasicBlock * > >
struct  GraphTraits< Function * >
struct  GraphTraits< const Function * >
struct  GraphTraits< Inverse< Function * > >
struct  GraphTraits< Inverse< const Function * > >
class  Comdat
class  Constant
 This is an important base class in LLVM. More...
class  ConstantFolder
 ConstantFolder - Create constants with minimum, target independent, folding. More...
class  ConstantRange
 This class represents a range of values. More...
class  ConstantInt
 This is the shared class of boolean and integer constants. More...
class  ConstantFP
 ConstantFP - Floating Point Values [float, double]. More...
class  ConstantAggregateZero
 ConstantAggregateZero - All zero aggregate value. More...
class  ConstantArray
 ConstantArray - Constant Array Declarations. More...
struct  OperandTraits< ConstantArray >
class  ConstantStruct
struct  OperandTraits< ConstantStruct >
class  ConstantVector
 ConstantVector - Constant Vector Declarations. More...
struct  OperandTraits< ConstantVector >
class  ConstantPointerNull
 ConstantPointerNull - a constant pointer value that points to null. More...
class  ConstantDataSequential
 ConstantDataSequential - A vector or array constant whose element type is a simple 1/2/4/8-byte integer or float/double, and whose elements are just simple data values (i.e. More...
class  ConstantDataArray
 ConstantDataArray - An array constant whose element type is a simple 1/2/4/8-byte integer or float/double, and whose elements are just simple data values (i.e. More...
class  ConstantDataVector
 ConstantDataVector - A vector constant whose element type is a simple 1/2/4/8-byte integer or float/double, and whose elements are just simple data values (i.e. More...
class  BlockAddress
 BlockAddress - The address of a basic block. More...
struct  OperandTraits< BlockAddress >
class  ConstantExpr
 ConstantExpr - a constant value that is initialized with an expression using other constant values. More...
struct  OperandTraits< ConstantExpr >
class  UndefValue
 UndefValue - 'undef' values are things that do not have specified contents. More...
struct  LayoutAlignElem
 Layout alignment element. More...
struct  PointerAlignElem
 Layout pointer alignment element. More...
class  DataLayout
 A parsed version of the target data layout string in and methods for querying it. More...
class  StructLayout
 Used to lazily calculate structure layout information for a target machine, based on the DataLayout structure. More...
class  DebugInfoFinder
 Utility to find all debug info in a module. More...
class  TypedDINodeRef
 Pointer union between a subclass of DINode and MDString. More...
class  DITypeRefArray
class  DINode
 Tagged DWARF-like metadata node. More...
struct  simplify_type< const TypedDINodeRef< T > >
struct  simplify_type< TypedDINodeRef< T > >
class  GenericDINode
 Generic tagged DWARF-like metadata node. More...
class  DISubrange
 Array subrange. More...
class  DIEnumerator
 Enumeration value. More...
class  DIScope
 Base class for scope-like contexts. More...
class  DIFile
 File. More...
class  DIType
 Base class for types. More...
class  DIBasicType
 Basic type, like 'int' or 'float'. More...
class  DIDerivedTypeBase
 Base class for DIDerivedType and DICompositeType. More...
class  DIDerivedType
 Derived types. More...
class  DICompositeTypeBase
 Base class for DICompositeType and DISubroutineType. More...
class  DICompositeType
 Composite types. More...
class  DISubroutineType
 Type array for a subprogram. More...
class  DICompileUnit
 Compile unit. More...
class  DILocalScope
 A scope for locals. More...
class  DILocation
 Debug location. More...
class  DISubprogram
 Subprogram description. More...
class  DILexicalBlockBase
class  DILexicalBlock
class  DILexicalBlockFile
class  DINamespace
class  DITemplateParameter
 Base class for template parameters. More...
class  DITemplateTypeParameter
class  DITemplateValueParameter
class  DIVariable
 Base class for variables. More...
class  DIGlobalVariable
 Global variables. More...
class  DILocalVariable
 Local variable. More...
class  DIExpression
 DWARF expression. More...
class  DIObjCProperty
class  DIImportedEntity
 An imported module (C++ using directive or similar). More...
class  DebugLoc
 A debug info location. More...
class  IntegerType
 Class to represent integer types. More...
class  FunctionType
 FunctionType - Class to represent function types. More...
class  CompositeType
 CompositeType - Common super class of ArrayType, StructType, PointerType and VectorType. More...
class  StructType
 StructType - Class to represent struct types. More...
class  SequentialType
 SequentialType - This is the superclass of the array, pointer and vector type classes. More...
class  ArrayType
 ArrayType - Class to represent array types. More...
class  VectorType
 VectorType - Class to represent vector types. More...
class  PointerType
 PointerType - Class to represent pointers. More...
class  DiagnosticInfo
 This is the base abstract class for diagnostic reporting in the backend. More...
class  DiagnosticInfoInlineAsm
 Diagnostic information for inline asm reporting. More...
class  DiagnosticInfoStackSize
 Diagnostic information for stack size reporting. More...
class  DiagnosticInfoDebugMetadataVersion
 Diagnostic information for debug metadata version reporting. More...
class  DiagnosticInfoSampleProfile
 Diagnostic information for the sample profiler. More...
class  DiagnosticInfoOptimizationBase
 Common features for diagnostics dealing with optimization remarks. More...
class  DiagnosticInfoOptimizationRemark
 Diagnostic information for applied optimization remarks. More...
class  DiagnosticInfoOptimizationRemarkMissed
 Diagnostic information for missed-optimization remarks. More...
class  DiagnosticInfoOptimizationRemarkAnalysis
 Diagnostic information for optimization analysis remarks. More...
class  DiagnosticInfoOptimizationFailure
 Diagnostic information for optimization failures. More...
class  DiagnosticPrinter
 Interface for custom diagnostic printing. More...
class  DiagnosticPrinterRawOStream
 Basic diagnostic printer that uses an underlying raw_ostream. More...
class  DIBuilder
class  BasicBlockEdge
class  DominatorTree
 Concrete subclass of DominatorTreeBase that is used to compute a normal dominator tree. More...
struct  GraphTraits< DomTreeNode * >
struct  GraphTraits< DominatorTree * >
class  DominatorTreeAnalysis
 Analysis pass which computes a DominatorTree. More...
class  DominatorTreePrinterPass
 Printer pass for the DominatorTree. More...
struct  DominatorTreeVerifierPass
 Verifier pass for the DominatorTree. More...
class  DominatorTreeWrapperPass
 Legacy analysis pass which computes a DominatorTree. More...
struct  ilist_traits< Argument >
class  Function
class  generic_gep_type_iterator
class  GlobalAlias
struct  OperandTraits< GlobalAlias >
class  GlobalObject
class  GlobalValue
class  GlobalVariable
struct  OperandTraits< GlobalVariable >
class  GVMaterializer
class  InlineAsm
class  InstIterator
class  TerminatorInst
 Subclasses of this class are all able to terminate a basic block. More...
class  UnaryInstruction
struct  OperandTraits< UnaryInstruction >
class  BinaryOperator
struct  OperandTraits< BinaryOperator >
class  CastInst
 This is the base class for all instructions that perform data casts. More...
class  CmpInst
 This class is the base class for the comparison instructions. More...
struct  OperandTraits< CmpInst >
struct  ilist_traits< Instruction >
class  Instruction
class  PointerLikeTypeTraits< Instruction * >
class  AllocaInst
 AllocaInst - an instruction to allocate memory on the stack. More...
class  LoadInst
 LoadInst - an instruction for reading from memory. More...
class  StoreInst
 StoreInst - an instruction for storing to memory. More...
struct  OperandTraits< StoreInst >
class  FenceInst
 FenceInst - an instruction for ordering other memory operations. More...
class  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  OperandTraits< AtomicCmpXchgInst >
class  AtomicRMWInst
 AtomicRMWInst - an instruction that atomically reads a memory location, combines it with another value, and then stores the result back. More...
struct  OperandTraits< AtomicRMWInst >
class  GetElementPtrInst
 GetElementPtrInst - an instruction for type-safe pointer arithmetic to access elements of arrays and structs. More...
struct  OperandTraits< GetElementPtrInst >
class  ICmpInst
 This instruction compares its operands according to the predicate given to the constructor. More...
class  FCmpInst
 This instruction compares its operands according to the predicate given to the constructor. More...
class  CallInst
 CallInst - This class represents a function call, abstracting a target machine's calling convention. More...
struct  OperandTraits< CallInst >
class  SelectInst
 SelectInst - This class represents the LLVM 'select' instruction. More...
struct  OperandTraits< SelectInst >
class  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  ExtractElementInst
 ExtractElementInst - This instruction extracts a single (scalar) element from a VectorType value. More...
struct  OperandTraits< ExtractElementInst >
class  InsertElementInst
 InsertElementInst - This instruction inserts a single (scalar) element into a VectorType value. More...
struct  OperandTraits< InsertElementInst >
class  ShuffleVectorInst
 ShuffleVectorInst - This instruction constructs a fixed permutation of two input vectors. More...
struct  OperandTraits< ShuffleVectorInst >
class  ExtractValueInst
 ExtractValueInst - This instruction extracts a struct member or array element value from an aggregate value. More...
class  InsertValueInst
 InsertValueInst - This instruction inserts a struct field of array element value into an aggregate value. More...
struct  OperandTraits< InsertValueInst >
class  PHINode
struct  OperandTraits< PHINode >
class  LandingPadInst
 LandingPadInst - The landingpad instruction holds all of the information necessary to generate correct exception handling. More...
struct  OperandTraits< LandingPadInst >
class  ReturnInst
 ReturnInst - Return a value (possibly void), from a function. More...
struct  OperandTraits< ReturnInst >
class  BranchInst
 BranchInst - Conditional or Unconditional Branch instruction. More...
struct  OperandTraits< BranchInst >
class  SwitchInst
 SwitchInst - Multiway switch. More...
struct  OperandTraits< SwitchInst >
class  IndirectBrInst
 IndirectBrInst - Indirect Branch Instruction. More...
struct  OperandTraits< IndirectBrInst >
class  InvokeInst
 InvokeInst - Invoke instruction. More...
struct  OperandTraits< InvokeInst >
class  ResumeInst
 ResumeInst - Resume the propagation of an exception. More...
struct  OperandTraits< ResumeInst >
class  UnreachableInst
 UnreachableInst - This function has undefined behavior. More...
class  TruncInst
 This class represents a truncation of integer types. More...
class  ZExtInst
 This class represents zero extension of integer types. More...
class  SExtInst
 This class represents a sign extension of integer types. More...
class  FPTruncInst
 This class represents a truncation of floating point types. More...
class  FPExtInst
 This class represents an extension of floating point types. More...
class  UIToFPInst
 This class represents a cast unsigned integer to floating point. More...
class  SIToFPInst
 This class represents a cast from signed integer to floating point. More...
class  FPToUIInst
 This class represents a cast from floating point to unsigned integer. More...
class  FPToSIInst
 This class represents a cast from floating point to signed integer. More...
class  IntToPtrInst
 This class represents a cast from an integer to a pointer. More...
class  PtrToIntInst
 This class represents a cast from a pointer to an integer. More...
class  BitCastInst
 This class represents a no-op cast from one type to another. More...
class  AddrSpaceCastInst
 This class represents a conversion between pointers from one address space to another. More...
class  InstVisitor
 Base class for instruction visitors. More...
class  IntrinsicInst
 IntrinsicInst - A useful wrapper class for inspecting calls to intrinsic functions. More...
class  DbgInfoIntrinsic
 DbgInfoIntrinsic - This is the common base class for debug info intrinsics. More...
class  DbgDeclareInst
 DbgDeclareInst - This represents the llvm.dbg.declare instruction. More...
class  DbgValueInst
 DbgValueInst - This represents the llvm.dbg.value instruction. More...
class  MemIntrinsic
 MemIntrinsic - This is the common base class for memset/memcpy/memmove. More...
class  MemSetInst
 MemSetInst - This class wraps the llvm.memset intrinsic. More...
class  MemTransferInst
 MemTransferInst - This class wraps the llvm.memcpy/memmove intrinsics. More...
class  MemCpyInst
 MemCpyInst - This class wraps the llvm.memcpy intrinsic. More...
class  MemMoveInst
 MemMoveInst - This class wraps the llvm.memmove intrinsic. More...
class  VAStartInst
 VAStartInst - This represents the llvm.va_start intrinsic. More...
class  VAEndInst
 VAEndInst - This represents the llvm.va_end intrinsic. More...
class  VACopyInst
 VACopyInst - This represents the llvm.va_copy intrinsic. More...
class  InstrProfIncrementInst
 This represents the llvm.instrprof_increment intrinsic. More...
class  IRBuilderDefaultInserter
 This provides the default implementation of the IRBuilder 'InsertHelper' method that is called whenever an instruction is created by IRBuilder and needs to be inserted. More...
class  IRBuilderBase
 Common base class shared among various IRBuilders. More...
class  IRBuilder
 This provides a uniform API for creating instructions and inserting them into a basic block: either at the end of a BasicBlock, or at a specific iterator location in a block. More...
class  PrintModulePass
 Pass for printing a Module as LLVM's text IR assembly. More...
class  PrintFunctionPass
 Pass for printing a Function as LLVM's text IR assembly. More...
class  PassManagerPrettyStackEntry
 PassManagerPrettyStackEntry - This is used to print informative information about what pass is running when/if a stack trace is generated. More...
class  PMStack
 PMStack - This class implements a stack data structure of PMDataManager pointers. More...
class  PMTopLevelManager
 PMTopLevelManager manages LastUser info and collects common APIs used by top level pass managers. More...
class  PMDataManager
 PMDataManager provides the common place to manage the analysis data used by pass managers. More...
class  FPPassManager
 FPPassManager manages BBPassManagers and FunctionPasses. More...
class  PassNameParser
class  FilteredPassNameParser
 ===----------------------------------------------------------------------===// FilteredPassNameParser class - Make use of the pass registration mechanism to automatically add a command line argument to opt for each pass that satisfies a filter criteria. More...
class  PassArgFilter
 ===----------------------------------------------------------------------===// PassArgFilter - A filter for use with PassNameFilterParser that only accepts a Pass whose Arg matches certain strings. More...
class  LLVMContext
 This is an important class for using LLVM in a threaded context. More...
class  Mangler
class  MDBuilder
class  Metadata
 Root of the metadata hierarchy. More...
class  MetadataAsValue
 Metadata wrapper in the Value hierarchy. More...
class  ReplaceableMetadataImpl
 Shared implementation of use-lists for replaceable metadata. More...
class  ValueAsMetadata
 Value wrapper in the Metadata hierarchy. More...
class  ConstantAsMetadata
class  LocalAsMetadata
class  MDString
 A single uniqued string. More...
struct  AAMDNodes
 A collection of metadata nodes that might be associated with a memory access used by the alias-analysis infrastructure. More...
struct  DenseMapInfo< AAMDNodes >
class  MDOperand
 Tracking metadata reference owned by Metadata. More...
struct  simplify_type< MDOperand >
struct  simplify_type< const MDOperand >
class  ContextAndReplaceableUses
 Pointer to the context, with optional RAUW support. More...
struct  TempMDNodeDeleter
class  MDNode
 Metadata node. More...
class  MDTuple
 Tuple of metadata. More...
class  TypedMDOperandIterator
 Typed iterator through MDNode operands. More...
class  MDTupleTypedArrayWrapper
 Typed, array-like tuple of metadata. More...
class  NamedMDNode
 A tuple of MDNodes. More...
class  MetadataTracking
 API for tracking metadata references through RAUW and deletion. More...
struct  ilist_traits< Function >
struct  ilist_traits< GlobalVariable >
struct  ilist_traits< GlobalAlias >
struct  ilist_traits< NamedMDNode >
class  Module
 A Module instance is used to store all the information related to an LLVM module. More...
class  NoFolder
 NoFolder - Create "constants" (actually, instructions) with no folding. More...
struct  FixedNumOperandTraits
 FixedNumOperandTraits - determine the allocation regime of the Use array when it is a prefix to the User object, and the number of Use objects is known at compile time. More...
struct  OptionalOperandTraits
 OptionalOperandTraits - when the number of operands may change at runtime. More...
struct  VariadicOperandTraits
 VariadicOperandTraits - determine the allocation regime of the Use array when it is a prefix to the User object, and the number of Use objects is only known at allocation time. More...
struct  HungoffOperandTraits
 HungoffOperandTraits - determine the allocation regime of the Use array when it is not a prefix to the User object, but allocated at an unrelated heap address. More...
class  Operator
 This is a utility class that provides an abstraction for the common functionality between Instructions and ConstantExprs. More...
class  OverflowingBinaryOperator
 Utility class for integer arithmetic operators which may exhibit overflow - Add, Sub, and Mul. More...
class  PossiblyExactOperator
 A udiv or sdiv instruction, which can be marked as "exact", indicating that no bits are destroyed. More...
class  FastMathFlags
 Convenience struct for specifying and reasoning about fast-math flags. More...
class  FPMathOperator
 Utility class for floating point operations which can have information about relaxed accuracy requirements attached to them. More...
class  ConcreteOperator
 A helper template for defining operators for individual opcodes. More...
class  AddOperator
class  SubOperator
class  MulOperator
class  ShlOperator
class  SDivOperator
class  UDivOperator
class  AShrOperator
class  LShrOperator
class  ZExtOperator
class  GEPOperator
class  PtrToIntOperator
class  BitCastOperator
class  PreservedAnalyses
 An abstract set of preserved analyses following a transformation pass run. More...
class  PassManager
 Manages a sequence of passes over units of IR. More...
class  AnalysisManager
 A generic analysis pass manager with lazy running and caching of results. More...
class  FunctionAnalysisManagerModuleProxy
 A module analysis which acts as a proxy for a function analysis manager. More...
class  ModuleAnalysisManagerFunctionProxy
 A function analysis which acts as a proxy for a module analysis manager. More...
class  ModuleToFunctionPassAdaptor
 Trivial adaptor that maps from a module to its functions. More...
struct  RequireAnalysisPass
 A template utility pass to force an analysis result to be available. More...
struct  InvalidateAnalysisPass
 A template utility pass to force an analysis result to be invalidated. More...
struct  InvalidateAllAnalysesPass
 A utility pass that does nothing but preserves no analyses. More...
class  PredIteratorCache
 PredIteratorCache - This class is an extremely trivial cache for predecessor iterator queries. More...
class  StatepointBase
 Analogous to CallSiteBase, this provides most of the actual functionality for Statepoint and ImmutableStatepoint. More...
class  ImmutableStatepoint
 A specialization of it's base class for read only access to a gc.statepoint. More...
class  Statepoint
 A specialization of it's base class for read-write access to a gc.statepoint. More...
class  GCRelocateOperands
 Wraps a call to a gc.relocate and provides access to it's operands. More...
class  SymbolTableListTraits
class  TrackingMDRef
 Tracking metadata reference. More...
class  TypedTrackingMDRef
 Typed tracking ref. More...
struct  simplify_type< TrackingMDRef >
struct  simplify_type< const TrackingMDRef >
struct  simplify_type< TypedTrackingMDRef< T > >
struct  simplify_type< const TypedTrackingMDRef< T > >
class  Type
 The instances of the Type class are immutable: once they are created, they are never changed. More...
struct  isa_impl< PointerType, Type >
struct  GraphTraits< Type * >
struct  GraphTraits< const Type * >
class  TypeBuilder
 TypeBuilder - This provides a uniform API for looking up types known at compile time. More...
class  TypeBuilder< const T, cross >
class  TypeBuilder< volatile T, cross >
class  TypeBuilder< const volatile T, cross >
class  TypeBuilder< T *, cross >
class  TypeBuilder< T &, cross >
 There is no support for references. More...
class  TypeBuilder< T[N], cross >
class  TypeBuilder< T[], cross >
 LLVM uses an array of length 0 to represent an unknown-length array. More...
class  TypeBuilder< types::i< num_bits >, cross >
class  TypeBuilder< float, false >
class  TypeBuilder< float, true >
class  TypeBuilder< double, false >
class  TypeBuilder< double, true >
class  TypeBuilder< types::ieee_float, cross >
class  TypeBuilder< types::ieee_double, cross >
class  TypeBuilder< types::x86_fp80, cross >
class  TypeBuilder< types::fp128, cross >
class  TypeBuilder< types::ppc_fp128, cross >
class  TypeBuilder< types::x86_mmx, cross >
class  TypeBuilder< void, cross >
class  TypeBuilder< void *, false >
 void* is disallowed in LLVM types, but it occurs often enough in C code that we special case it. More...
class  TypeBuilder< const void *, false >
class  TypeBuilder< volatile void *, false >
class  TypeBuilder< const volatile void *, false >
class  TypeBuilder< R(), cross >
class  TypeBuilder< R(A1), cross >
class  TypeBuilder< R(A1, A2), cross >
class  TypeBuilder< R(A1, A2, A3), cross >
class  TypeBuilder< R(A1, A2, A3, A4), cross >
class  TypeBuilder< R(A1, A2, A3, A4, A5), cross >
class  TypeBuilder< R(...), cross >
class  TypeBuilder< R(A1,...), cross >
class  TypeBuilder< R(A1, A2,...), cross >
class  TypeBuilder< R(A1, A2, A3,...), cross >
class  TypeBuilder< R(A1, A2, A3, A4,...), cross >
class  TypeBuilder< R(A1, A2, A3, A4, A5,...), cross >
class  TypeFinder
 TypeFinder - Walk over a module, identifying all of the types that are used by the module. More...
class  PointerLikeTypeTraits< Use ** >
class  Use
 A Use represents the edge between a Value definition and its users. More...
struct  simplify_type< Use >
 Allow clients to treat uses just like values when using casting operators. More...
struct  simplify_type< const Use >
struct  UseListOrder
 Structure to hold a use-list order. More...
class  User
struct  simplify_type< User::op_iterator >
struct  simplify_type< User::const_op_iterator >
class  Value
 LLVM Value Representation. More...
struct  isa_impl< Constant, Value >
struct  isa_impl< Argument, Value >
struct  isa_impl< InlineAsm, Value >
struct  isa_impl< Instruction, Value >
struct  isa_impl< BasicBlock, Value >
struct  isa_impl< Function, Value >
struct  isa_impl< GlobalVariable, Value >
struct  isa_impl< GlobalAlias, Value >
struct  isa_impl< GlobalValue, Value >
struct  isa_impl< GlobalObject, Value >
class  PointerLikeTypeTraits< Value * >
class  PointerLikeTypeTraits< ValueHandleBase ** >
class  ValueHandleBase
 This is the common base class of value handles. More...
class  WeakVH
 Value handle that is nullable, but tries to track the Value. More...
struct  simplify_type< WeakVH >
class  AssertingVH
 Value handle that asserts if the Value is deleted. More...
struct  DenseMapInfo< AssertingVH< T > >
struct  isPodLike< AssertingVH< T > >
class  TrackingVH
 Value handle that tracks a Value across RAUW. More...
class  CallbackVH
 Value handle with callbacks on RAUW and destruction. More...
struct  ValueMapConfig
 This class defines the default behavior for configurable aspects of ValueMap<>. More...
class  ValueMap
 See the file comment. More...
class  ValueMapCallbackVH
struct  DenseMapInfo< ValueMapCallbackVH< KeyT, ValueT, Config > >
class  ValueMapIterator
class  ValueMapConstIterator
class  ValueSymbolTable
 This class provides a symbol table of name/value pairs. More...
class  VerifierPass
class  LineEditor
class  Linker
 This class provides the core functionality of linking in LLVM. More...
struct  LTOCodeGenerator
 C++ class which implements the opaque lto_code_gen_t type. More...
struct  LTOModule
 C++ class which implements the opaque lto_module_t type. More...
struct  ConstantPoolEntry
class  ConstantPool
class  AssemblerConstantPools
class  MachineLocation
class  MCAsmBackend
 Generic interface to target specific assembler backends. More...
class  MCAsmInfo
 This class is intended to be used as a base class for asm properties and features specific to the target. More...
class  MCAsmInfoCOFF
class  MCAsmInfoMicrosoft
class  MCAsmInfoGNUCOFF
class  MCAsmInfoDarwin
class  MCAsmInfoELF
class  MCAsmLayout
 Encapsulates the layout of an assembly file at a particular point in time. More...
class  MCFragment
class  MCEncodedFragment
 Interface implemented by fragments that contain encoded instructions and/or data. More...
class  MCEncodedFragmentWithFixups
 Interface implemented by fragments that contain encoded instructions and/or data and also have fixups registered. More...
class  MCDataFragment
 Fragment for data and encoded instructions. More...
class  MCCompactEncodedInstFragment
 This is a compact (memory-size-wise) fragment for holding an encoded instruction (non-relaxable) that has no fixups registered. More...
class  MCRelaxableFragment
 A relaxable fragment holds on to its MCInst, since it may need to be relaxed during the assembler layout and relaxation stage. More...
class  MCAlignFragment
class  MCFillFragment
class  MCOrgFragment
class  MCLEBFragment
class  MCDwarfLineAddrFragment
class  MCDwarfCallFrameFragment
struct  IndirectSymbolData
struct  DataRegionData
class  MCAssembler
class  MCCodeEmitter
 MCCodeEmitter - Generic instruction encoding interface. More...
class  MCCodeGenInfo
class  MCContext
 Context object for machine code objects. More...
class  MCDisassembler
 Superclass for all disassemblers. More...
struct  MCDwarfFile
 Instances of this class represent the name of the dwarf .file directive and its associated dwarf file number in the MC file, and MCDwarfFile's are created and uniqued by the MCContext class where the file number for each is its index into the vector of DwarfFiles (note index 0 is not used and not a valid dwarf file number). More...
class  MCDwarfLoc
 Instances of this class represent the information from a dwarf .loc directive. More...
class  MCLineEntry
 Instances of this class represent the line information for the dwarf line table entries. More...
class  MCLineSection
 Instances of this class represent the line information for a compile unit where machine instructions have been assembled after seeing .loc directives. More...
struct  MCDwarfLineTableHeader
class  MCDwarfDwoLineTable
class  MCDwarfLineTable
class  MCDwarfLineAddr
class  MCGenDwarfInfo
class  MCGenDwarfLabelEntry
class  MCCFIInstruction
struct  MCDwarfFrameInfo
class  MCDwarfFrameEmitter
class  MCELF
struct  ELFRelocationEntry
class  MCELFObjectTargetWriter
class  MCELFStreamer
class  MCExpr
 Base class for the full range of assembler expressions which are needed for parsing. More...
class  MCConstantExpr
class  MCSymbolRefExpr
 Represent a reference to a symbol from inside an expression. More...
class  MCUnaryExpr
 Unary assembler expressions. More...
class  MCBinaryExpr
 Binary assembler expressions. More...
class  MCTargetExpr
 This is an extension point for target-specific MCExpr subclasses to implement. More...
class  MCExternalSymbolizer
 Symbolize using user-provided, C API, callbacks. More...
class  MCFixup
 Encode information on a single operation to perform on a byte sequence (e.g., an encoded instruction) which requires assemble- or run- time patching. More...
struct  MCFixupKindInfo
 Target independent information on a fixup kind. More...
class  MCOperand
 Instances of this class represent operands of the MCInst class. More...
struct  isPodLike< MCOperand >
class  MCInst
 Instances of this class represent a single low-level machine instruction. More...
class  MCInstBuilder
class  MCInstPrinter
 This is an instance of a target assembly language printer that converts an MCInst to valid target assembly syntax. More...
class  MCInstrAnalysis
class  MCOperandInfo
 This holds information about one operand of a machine instruction, indicating the register class for register operands, etc. More...
class  MCInstrDesc
 Describe properties that are true of each instruction in the target description file. More...
class  MCInstrInfo
 Interface to description of machine instruction set. More...
struct  InstrStage
 These values represent a non-pipelined step in the execution of an instruction. More...
struct  InstrItinerary
 An itinerary represents the scheduling information for an instruction. More...
class  InstrItineraryData
 Itinerary data supplied by a subtarget to be used by a target. More...
class  MCLabel
 Instances of this class represent a label name in the MC file, and MCLabel are created and uniqued by the MCContext class. More...
class  MCLOHDirective
 Store Linker Optimization Hint information (LOH). More...
class  MCLOHContainer
class  MCMachObjectTargetWriter
class  MachObjectWriter
class  MCObjectFileInfo
class  MCObjectStreamer
 Streaming object file generation interface. More...
class  MCObjectWriter
 MCObjectWriter - Defines the object file and target independent interfaces used by the assembler backend to write native file format object files. More...
class  AsmCond
 AsmCond - Class to support conditional assembly. More...
class  AsmLexer
 AsmLexer - Lexer class for assembly files. More...
class  AsmToken
 Target independent representation for an assembler token. More...
class  MCAsmLexer
 Generic assembler lexer interface, for use by target specific assembly lexers. More...
class  InlineAsmIdentifierInfo
class  MCAsmParserSemaCallback
 Generic Sema callback for assembly parser. More...
class  MCAsmParser
 Generic assembler parser interface, for use by target specific assembly parsers. More...
class  MCAsmParserExtension
 Generic interface for extending the MCAsmParser, which is implemented by target and object file assembly parser implementations. More...
class  MCParsedAsmOperand
 MCParsedAsmOperand - This abstract class represents a source-level assembly instruction operand. More...
class  MCRegisterClass
 MCRegisterClass - Base class of TargetRegisterClass. More...
struct  MCRegisterDesc
 MCRegisterDesc - This record contains information about a particular register. More...
class  MCRegisterInfo
 MCRegisterInfo base class - We assume that the target defines a static array of MCRegisterDesc objects that represent all of the machine registers that the target has. More...
class  MCSubRegIterator
 MCSubRegIterator enumerates all sub-registers of Reg. More...
class  MCSubRegIndexIterator
 Iterator that enumerates the sub-registers of a Reg and the associated sub-register indices. More...
class  MCSuperRegIterator
 MCSuperRegIterator enumerates all super-registers of Reg. More...
class  MCRegUnitIterator
class  MCRegUnitMaskIterator
 MCRegUnitIterator enumerates a list of register units and their associated lane masks for Reg. More...
class  MCRegUnitRootIterator
 MCRegUnitRootIterator enumerates the root registers of a register unit. More...
class  MCRegAliasIterator
 MCRegAliasIterator enumerates all registers aliasing Reg. More...
class  MCRelocationInfo
 Create MCExprs from relocations found in an object file. More...
struct  MCProcResourceDesc
 Define a kind of processor resource that will be modeled by the scheduler. More...
struct  MCWriteProcResEntry
 Identify one of the processor resource kinds consumed by a particular scheduling class for the specified number of cycles. More...
struct  MCWriteLatencyEntry
 Specify the latency in cpu cycles for a particular scheduling class and def index. More...
struct  MCReadAdvanceEntry
 Specify the number of cycles allowed after instruction issue before a particular use operand reads its registers. More...
struct  MCSchedClassDesc
 Summarize the scheduling resources required for an instruction of a particular scheduling class. More...
struct  MCSchedModel
 Machine model for scheduling, bundling, and heuristics. More...
class  MCSection
 Instances of this class represent a uniqued identifier for a section in the current translation unit. More...
class  MCSectionCOFF
 MCSectionCOFF - This represents a section on Windows. More...
class  MCSectionELF
 MCSectionELF - This represents a section on linux, lots of unix variants and some bare metal systems. More...
class  MCSectionMachO
 MCSectionMachO - This represents a section on a Mach-O system (used by Mac OS X). More...
class  MCTargetStreamer
 Target specific streamer interface. More...
class  ARMTargetStreamer
class  MCStreamer
 Streaming machine code generation interface. More...
class  MCSubtargetInfo
 MCSubtargetInfo - Generic base class for all target subtargets. More...
class  MCSymbolData
class  MCSymbol
 MCSymbol - Instances of this class represent a symbol name in the MC file, and MCSymbols are created and uniqued by the MCContext class. More...
class  MCSymbolizer
 Symbolize and annotate disassembled instructions. More...
struct  AsmRewrite
struct  ParseInstructionInfo
class  MCTargetAsmParser
 MCTargetAsmParser - Generic interface to target specific assembly parsers. More...
class  MCTargetOptions
class  MCValue
 This represents an "assembler immediate". More...
class  MCWinCOFFObjectTargetWriter
class  MCWinCOFFStreamer
class  SectionKind
 SectionKind - This is a simple POD value that classifies the properties of a section. More...
class  StringTableBuilder
 Utility for building string tables with deduplicated suffixes. More...
class  FeatureBitset
struct  SubtargetFeatureKV
 SubtargetFeatureKV - Used to provide key value pairs for feature and CPU bit flags. More...
struct  SubtargetInfoKV
 SubtargetInfoKV - Used to provide key value pairs for CPU and arbitrary pointers. More...
class  SubtargetFeatures
 SubtargetFeatures - Manages the enabling and disabling of subtarget specific features. More...
class  Pass
 Pass interface - Implemented by all 'passes'. More...
class  ModulePass
 ModulePass class - This class is used to implement unstructured interprocedural optimizations and analyses. More...
class  ImmutablePass
 ImmutablePass class - This class is used to provide information that does not need to be run. More...
class  FunctionPass
 FunctionPass class - This class is used to implement most global optimizations. More...
class  BasicBlockPass
 BasicBlockPass class - This class is used to implement most local optimizations. More...
class  AnalysisUsage
class  AnalysisResolver
class  PassBuilder
 This class provides access to building LLVM's passes. More...
class  PassInfo
 PassInfo class - An instance of this class exists for every pass known by the system, and can be obtained from a live Pass by calling its getPassInfo() method. More...
class  PassRegistry
 PassRegistry - This class manages the registration and intitialization of the pass subsystem as application startup, and assists the PassManager in resolving pass dependencies. More...
struct  RegisterPass
 RegisterPass<t> template - This template class is used to notify the system that a Pass is available for use, and registers it into the internal database maintained by the PassManager. More...
class  RegisterAGBase
 RegisterAnalysisGroup - Register a Pass as a member of an analysis _group_. More...
struct  RegisterAnalysisGroup
struct  PassRegistrationListener
 PassRegistrationListener class - This class is meant to be derived from by clients that are interested in which passes get registered and unregistered at runtime (which can be because of the RegisterPass constructors being run as the program starts up, or may be because a shared object just got loaded). More...
struct  DenseMapInfo< coverage::CounterExpression >
 Provide DenseMapInfo for CounterExpression. More...
struct  InstrProfRecord
 Profiling information for a single function. More...
class  InstrProfIterator
 A file format agnostic iterator over profiling data. More...
class  InstrProfReader
 Base class and interface for reading profiling data of any known instrprof format. More...
class  TextInstrProfReader
 Reader for the simple text based instrprof format. More...
class  RawInstrProfReader
 Reader for the raw instrprof binary format from runtime. More...
class  InstrProfLookupTrait
 Trait for lookups into the on-disk hash table for the binary instrprof format. More...
class  IndexedInstrProfReader
 Reader for the indexed binary instrprof format. More...
class  InstrProfWriter
 Writer for instrumentation based profile data. More...
struct  DenseMapInfo< sampleprof::LineLocation >
struct  AlignmentCalcImpl
struct  AlignOf
 AlignOf - A templated class that contains an enum value representing the alignment of the template argument. More...
struct  AlignedCharArrayUnion
 This union template exposes a suitably aligned and sized character array member which can hold elements of any of up to ten types. More...
class  AllocatorBase
 CRTP base class providing obvious overloads for the core Allocate() methods of LLVM-style allocators. More...
class  MallocAllocator
class  BumpPtrAllocatorImpl
 Allocate memory in an ever growing pool, as if by bump-pointer. More...
class  SpecificBumpPtrAllocator
 A BumpPtrAllocator that allows only elements of a specific type to be allocated. More...
class  ArrayRecycler
 Recycle small arrays allocated from a BumpPtrAllocator. More...
class  BlockFrequency
class  BranchProbability
struct  simplify_type
struct  simplify_type< const From >
struct  isa_impl
struct  isa_impl< To, From, typename std::enable_if< std::is_base_of< To, From >::value >::type >
 Always allow upcasts, and perform no dynamic check for them. More...
struct  isa_impl_cl
struct  isa_impl_cl< To, const From >
struct  isa_impl_cl< To, From * >
struct  isa_impl_cl< To, From *const >
struct  isa_impl_cl< To, const From * >
struct  isa_impl_cl< To, const From *const >
struct  isa_impl_wrap
struct  isa_impl_wrap< To, FromTy, FromTy >
struct  cast_retty_impl
struct  cast_retty_impl< To, const From >
struct  cast_retty_impl< To, From * >
struct  cast_retty_impl< To, const From * >
struct  cast_retty_impl< To, const From *const >
struct  cast_retty_wrap
struct  cast_retty_wrap< To, FromTy, FromTy >
struct  cast_retty
struct  cast_convert_val
struct  cast_convert_val< To, FromTy, FromTy >
struct  is_simple_type
class  circular_raw_ostream
 circular_raw_ostream - A raw_ostream which *can* save its data to a circular buffer, or can pass it through directly to an underlying stream if specified with a buffer of zero. More...
class  CrashRecoveryContext
 Crash recovery helper object. More...
class  CrashRecoveryContextCleanup
class  CrashRecoveryContextCleanupBase
class  CrashRecoveryContextDestructorCleanup
class  CrashRecoveryContextDeleteCleanup
class  CrashRecoveryContextReleaseRefCleanup
class  CrashRecoveryContextCleanupRegistrar
class  DataExtractor
class  DataStreamer
struct  DefaultDOTGraphTraits
 DefaultDOTGraphTraits - This class provides the default implementations of all of the DOTGraphTraits methods. More...
struct  DOTGraphTraits
 DOTGraphTraits - Template class that can be specialized to customize how graphs are converted to 'dot' graphs. More...
struct  ScopedFatalErrorHandler
 ScopedFatalErrorHandler - This is a simple helper class which just calls install_fatal_error_handler in its constructor and remove_fatal_error_handler in its destructor. More...
class  ReferenceStorage
 Stores a reference that can be changed. More...
class  ErrorOr
 Represents either an error or a value T. More...
class  FileOutputBuffer
 FileOutputBuffer - This interface provides simple way to create an in-memory buffer which will be written to a file. More...
class  FileRemover
 FileRemover - This class is a simple object meant to be stack allocated. More...
class  format_object_base
 This is a helper class used for handling formatted output. More...
class  FormattedString
 This is a helper class used for left_justify() and right_justify(). More...
class  FormattedNumber
 This is a helper class used for format_hex() and format_decimal(). More...
class  formatted_raw_ostream
 formatted_raw_ostream - A raw_ostream that wraps another one and keeps track of line and column position, allowing padding out to specific column boundaries and querying the number of lines written to the stream. More...
struct  GCOVOptions
 GCOVOptions - A struct for passing gcov options between functions. More...
class  GCOVBuffer
 GCOVBuffer - A wrapper around MemoryBuffer to provide GCOV specific read operations. More...
class  GCOVFile
 GCOVFile - Collects coverage information for one pair of coverage file (.gcno and .gcda). More...
struct  GCOVEdge
 GCOVEdge - Collects edge information. More...
class  GCOVFunction
 GCOVFunction - Collects function information. More...
class  GCOVBlock
 GCOVBlock - Collects block information. More...
class  FileInfo
class  DominatorBase
 Base class that other, more interesting dominator analyses inherit from. More...
class  DomTreeNodeBase
 Base class for the actual dominator tree node. More...
class  DominatorTreeBase
 Core dominator tree base class. More...
class  GraphWriter
class  line_iterator
 A forward iterator which reads text lines from a buffer. More...
class  LockFileManager
 Class that manages the creation of a lock file to aid implicit coordination between different processes. More...
struct  object_deleter
 object_deleter - Helper method for ManagedStatic. More...
struct  object_deleter< T[N]>
class  ManagedStaticBase
 ManagedStaticBase - Common base class for ManagedStatic instances. More...
class  ManagedStatic
 ManagedStatic - This transparently changes the behavior of global statics to be lazily constructed on demand (good for reducing startup times of dynamic libraries that link in LLVM components) and for making destruction be explicit through the llvm_shutdown() function call. More...
struct  llvm_shutdown_obj
 llvm_shutdown_obj - This is a simple helper class that calls llvm_shutdown() when it is destroyed. More...
class  MD5
class  MemoryBuffer
 This interface provides simple read-only access to a block of memory, and provides simple methods for reading files and standard input into a memory buffer. More...
class  MemoryBufferRef
class  MemoryObject
 Interface to data which might be streamed. More...
class  MutexGuard
 Instances of this class acquire a given Mutex Lock when constructed and hold that lock until destruction. More...
class  OnDiskChainedHashTableGenerator
 Generates an on disk hash table. More...
class  OnDiskChainedHashTable
 Provides lookup on an on disk hash table. More...
class  OnDiskIterableChainedHashTable
 Provides lookup and iteration over an on disk hash table. More...
class  OptionRegistry
 Singleton class used to register debug options. More...
class  OutputBuffer
struct  PluginLoader
class  PointerLikeTypeTraits
 PointerLikeTypeTraits - This is a traits object that is used to handle pointer types and things that are just wrappers for pointers as a uniform entity. More...
class  PointerLikeTypeTraits< T * >
class  PointerLikeTypeTraits< const T * >
class  PointerLikeTypeTraits< uintptr_t >
class  PrettyStackTraceEntry
 PrettyStackTraceEntry - This class is used to represent a frame of the "pretty" stack trace that is dumped when a program crashes. More...
class  PrettyStackTraceString
 PrettyStackTraceString - This object prints a specified string (which should not contain newlines) to the stream as the stack trace when a crash occurs. More...
class  PrettyStackTraceProgram
 PrettyStackTraceProgram - This object prints a specified program arguments to the stream as the stack trace when a crash occurs. More...
class  RandomNumberGenerator
 A random number generator. More...
class  raw_os_ostream
 raw_os_ostream - A raw_ostream that writes to an std::ostream. More...
class  raw_ostream
 This class implements an extremely fast bulk output stream that can *only* output to a stream. More...
class  raw_pwrite_stream
 An abstract base class for streams implementations that also support a pwrite operation. More...
class  raw_fd_ostream
 A raw_ostream that writes to a file descriptor. More...
class  raw_string_ostream
 A raw_ostream that writes to an std::string. More...
class  raw_svector_ostream
 A raw_ostream that writes to an SmallVector or SmallString. More...
class  raw_null_ostream
 A raw_ostream that discards all output. More...
class  buffer_ostream
struct  RecyclerStruct
 RecyclerStruct - Implementation detail for Recycler. More...
struct  ilist_traits< RecyclerStruct >
class  Recycler
 Recycler - This class manages a linked-list of deallocated nodes and facilitates reusing deallocated memory in place of allocating new memory. More...
class  RecyclingAllocator
 RecyclingAllocator - This class wraps an Allocator, adding the functionality of recycling deleted objects. More...
class  Regex
class  SimpleRegistryEntry
 A simple registry entry which provides only a name, description, and no-argument constructor. More...
class  RegistryTraits
 Traits for registry entries. More...
class  Registry
 A global registry used in conjunction with static constructors to make pluggable components (like targets or garbage collectors) "just work" when linked with an executable. More...
class  RegistryParser
 A command-line parser for a registry. More...
struct  SaveAndRestore
 A utility class that uses RAII to save and restore the value of a variable. More...
struct  SaveOr
 Similar to SaveAndRestore. More...
class  ScaledNumberBase
class  ScaledNumber
 Simple representation of a scaled number. More...
struct  isPodLike< ScaledNumber< T > >
class  SMLoc
 Represents a location in source code. More...
class  SMRange
 Represents a range in source code. More...
class  SourceMgr
 This owns the files read by a parser, handles include stacks, and handles diagnostic wrangling. More...
class  SMFixIt
 Represents a single fixit, a replacement of one range of text with another. More...
class  SMDiagnostic
 Instances of this class encapsulate one diagnostic report, allowing printing to a raw_ostream as a caret diagnostic. More...
class  SpecialCaseList
class  StreamingMemoryObject
 Interface to data which is actually streamed from a DataStreamer. More...
class  StringPool
 StringPool - An interned string pool. More...
class  PooledStringPtr
 PooledStringPtr - A pointer to an interned string. More...
class  ARMTargetParser
class  Target
 Target - Wrapper for Target specific information. More...
struct  TargetRegistry
 TargetRegistry - Generic interface to target specific features. More...
struct  RegisterTarget
 RegisterTarget - Helper template for registering a target, for use in the target's initialization function. More...
struct  RegisterMCAsmInfo
 RegisterMCAsmInfo - Helper template for registering a target assembly info implementation. More...
struct  RegisterMCAsmInfoFn
 RegisterMCAsmInfoFn - Helper template for registering a target assembly info implementation. More...
struct  RegisterMCCodeGenInfo
 RegisterMCCodeGenInfo - Helper template for registering a target codegen info implementation. More...
struct  RegisterMCCodeGenInfoFn
 RegisterMCCodeGenInfoFn - Helper template for registering a target codegen info implementation. More...
struct  RegisterMCInstrInfo
 RegisterMCInstrInfo - Helper template for registering a target instruction info implementation. More...
struct  RegisterMCInstrInfoFn
 RegisterMCInstrInfoFn - Helper template for registering a target instruction info implementation. More...
struct  RegisterMCInstrAnalysis
 RegisterMCInstrAnalysis - Helper template for registering a target instruction analyzer implementation. More...
struct  RegisterMCInstrAnalysisFn
 RegisterMCInstrAnalysisFn - Helper template for registering a target instruction analyzer implementation. More...
struct  RegisterMCRegInfo
 RegisterMCRegInfo - Helper template for registering a target register info implementation. More...
struct  RegisterMCRegInfoFn
 RegisterMCRegInfoFn - Helper template for registering a target register info implementation. More...
struct  RegisterMCSubtargetInfo
 RegisterMCSubtargetInfo - Helper template for registering a target subtarget info implementation. More...
struct  RegisterMCSubtargetInfoFn
 RegisterMCSubtargetInfoFn - Helper template for registering a target subtarget info implementation. More...
struct  RegisterTargetMachine
 RegisterTargetMachine - Helper template for registering a target machine implementation, for use in the target machine initialization function. More...
struct  RegisterMCAsmBackend
 RegisterMCAsmBackend - Helper template for registering a target specific assembler backend. More...
struct  RegisterMCAsmParser
 RegisterMCAsmParser - Helper template for registering a target specific assembly parser, for use in the target machine initialization function. More...
struct  RegisterAsmPrinter
 RegisterAsmPrinter - Helper template for registering a target specific assembly printer, for use in the target machine initialization function. More...
struct  RegisterMCCodeEmitter
 RegisterMCCodeEmitter - Helper template for registering a target specific machine code emitter, for use in the target initialization function. More...
class  TimeRecord
class  Timer
 Timer - This class is used to track the amount of time spent between invocations of its startTimer()/stopTimer() methods. More...
class  TimeRegion
 The TimeRegion class is used as a helper class to call the startTimer() and stopTimer() methods of the Timer class. More...
struct  NamedRegionTimer
 NamedRegionTimer - This class is basically a combination of TimeRegion and Timer. More...
class  TimerGroup
 The TimerGroup class is used to group together related timers into a single report that is printed when the TimerGroup is destroyed. More...
class  tool_output_file
 This class contains a raw_fd_ostream and adds a few extra features commonly needed for compiler-like tool output files: More...
struct  isPodLike
 isPodLike - This is a type trait that is used to determine whether a given type can be copied around with memcpy instead of running ctors etc. More...
struct  isPodLike< std::pair< T, U > >
class  is_integral_or_enum
 Metafunction that determines whether the given type is either an integral type or an enumeration type. More...
struct  add_lvalue_reference_if_not_pointer
 If T is a pointer, just return it. If it is not, return T&. More...
struct  add_lvalue_reference_if_not_pointer< T, typename std::enable_if< std::is_pointer< T >::value >::type >
struct  add_const_past_pointer
 If T is a pointer to X, return a pointer to const X. More...
struct  add_const_past_pointer< T, typename std::enable_if< std::is_pointer< T >::value >::type >
class  unique_lock
 A pared-down imitation of std::unique_lock from C++11. More...
class  RecTy
class  BitRecTy
 BitRecTy - 'bit' - Represent a single bit. More...
class  BitsRecTy
 BitsRecTy - 'bits<n>' - Represent a fixed number of bits. More...
class  IntRecTy
 IntRecTy - 'int' - Represent an integer value of no particular size. More...
class  StringRecTy
 StringRecTy - 'string' - Represent an string value. More...
class  ListRecTy
 ListRecTy - 'list<Ty>' - Represent a list of values, all of which must be of the specified type. More...
class  DagRecTy
 DagRecTy - 'dag' - Represent a dag fragment. More...
class  RecordRecTy
 RecordRecTy - '[classname]' - Represent an instance of a class, such as: (R32 X = EAX). More...
class  Init
class  TypedInit
 TypedInit - This is the common super-class of types that have a specific, explicit, type. More...
class  UnsetInit
 UnsetInit - ? - Represents an uninitialized value. More...
class  BitInit
 BitInit - true/false - Represent a concrete initializer for a bit. More...
class  BitsInit
 BitsInit - { a, b, c } - Represents an initializer for a BitsRecTy value. More...
class  IntInit
 IntInit - 7 - Represent an initialization by a literal integer value. More...
class  StringInit
 StringInit - "foo" - Represent an initialization by a string value. More...
class  ListInit
 ListInit - [AL, AH, CL] - Represent a list of defs. More...
class  OpInit
 OpInit - Base class for operators. More...
class  UnOpInit
 UnOpInit - !op (X) - Transform an init. More...
class  BinOpInit
 BinOpInit - !op (X, Y) - Combine two inits. More...
class  TernOpInit
 TernOpInit - !op (X, Y, Z) - Combine two inits. More...
class  VarInit
 VarInit - 'Opcode' - Represent a reference to an entire variable object. More...
class  VarBitInit
 VarBitInit - Opcode{0} - Represent access to one bit of a variable or field. More...
class  VarListElementInit
 VarListElementInit - List[4] - Represent access to one element of a var or field. More...
class  DefInit
 DefInit - AL - Represent a reference to a 'def' in the description. More...
class  FieldInit
 FieldInit - X.Y - Represent a reference to a subfield of a variable. More...
class  DagInit
 DagInit - (v a, b) - Represent a DAG tree value. More...
class  RecordVal
class  Record
struct  MultiClass
class  RecordKeeper
struct  LessRecord
 LessRecord - Sorting predicate to sort record pointers by name. More...
struct  LessRecordByID
 LessRecordByID - Sorting predicate to sort record pointers by their unique ID. More...
struct  LessRecordFieldName
 LessRecordFieldName - Sorting predicate to sort record pointers by their name field. More...
struct  LessRecordRegister
class  SetTheory
class  StringMatcher
 StringMatcher - Given a list of strings and code to execute when they match, output a simple switch tree to classify the input string. More...
class  StringToOffsetTable
 StringToOffsetTable - This class uniques a bunch of nul-terminated strings and keeps track of their offset in a massive contiguous string allocation. More...
struct  CostTblEntry
 Cost Table Entry. More...
struct  TypeConversionCostTblEntry
 Type Conversion Cost Table. More...
class  TargetFrameLowering
 Information about stack frame layout on the target. More...
class  TargetInstrInfo
 TargetInstrInfo - Interface to description of machine instruction set. More...
class  TargetIntrinsicInfo
 TargetIntrinsicInfo - Interface to description of machine instruction set. More...
class  TargetLoweringBase
 This base class for TargetLowering contains the SelectionDAG-independent parts that can be used from the rest of CodeGen. More...
class  TargetLowering
 This class defines information used to lower LLVM code to legal SelectionDAG operators that the target instruction selector can accept natively. More...
class  TargetLoweringObjectFile
class  TargetMachine
 Primary interface to the complete machine description for the target machine. More...
class  LLVMTargetMachine
 This class describes a target machine that is implemented with the LLVM target-independent code generator. More...
class  TargetOptions
class  TargetRegisterClass
struct  TargetRegisterInfoDesc
 TargetRegisterInfoDesc - Extra information, not in MCRegisterDesc, about registers. More...
struct  RegClassWeight
 Each TargetRegisterClass has a per register weight, and weight limit which must be less than the limits of its pressure sets. More...
class  TargetRegisterInfo
 TargetRegisterInfo base class - We assume that the target defines a static array of TargetRegisterDesc objects that represent all of the machine registers that the target has. More...
class  SuperRegClassIterator
struct  VirtReg2IndexFunctor
class  PrintReg
 PrintReg - Helper class for printing registers on a raw_ostream. More...
class  PrintRegUnit
 PrintRegUnit - Helper class for printing register units on a raw_ostream. More...
class  PrintVRegOrUnit
 PrintVRegOrUnit - It is often convenient to track virtual registers and physical register units in the same list. More...
class  TargetSelectionDAGInfo
 TargetSelectionDAGInfo - Targets can subclass this to parameterize the SelectionDAG lowering and instruction selection process. More...
class  TargetSubtargetInfo
 TargetSubtargetInfo - Generic base class for all target subtargets. More...
class  InstCombinePass
class  InstCombineWorklist
 InstCombineWorklist - This is the worklist management logic for InstCombine. More...
struct  InstrProfOptions
 Options for the frontend instrumentation based profiling pass. More...
struct  SanitizerCoverageOptions
struct  Inliner
 Inliner - This class contains all of the helper code which is used to perform the inlining operations that do not depend on the policy. More...
struct  BitSetInfo
struct  BitSetBuilder
struct  GlobalLayoutBuilder
 This class implements a layout algorithm for globals referenced by bit sets that tries to keep members of small bit sets together. More...
struct  ByteArrayBuilder
 This class is used to build a byte array containing overlapping bit sets. More...
class  PassManagerBuilder
 PassManagerBuilder - This class is used to set up a standard optimization sequence for languages like C and C++, allowing some APIs to customize the pass sequence in various ways. More...
struct  RegisterStandardPasses
 Registers a function for adding a standard set of passes. More...
class  EarlyCSEPass
 A simple and fast domtree-based CSE pass. More...
class  LowerExpectIntrinsicPass
class  SimplifyCFGPass
 A pass to simplify and canonicalize the CFG of a function. More...
struct  ASanStackVariableDescription
struct  ASanStackFrameLayout
struct  CriticalEdgeSplittingOptions
 Option class for critical edge splitting. More...
struct  ClonedCodeInfo
 ClonedCodeInfo - This struct can be used to capture information about code being cloned, while it is being cloned. More...
class  CloningDirector
 A helper class used with CloneAndPruneIntoFromInst to change the default behavior while instructions are being cloned. More...
class  InlineFunctionInfo
 InlineFunctionInfo - This class captures the data input to the InlineFunction call, and records the auxiliary results produced by it. More...
class  CodeExtractor
 Utility class for extracting code into a new function. More...
struct  GlobalStatus
 As we analyze each global, keep track of some information about it. More...
struct  LICMSafetyInfo
 Captures loop safety information. More...
class  ReductionInstDesc
 This POD struct holds information about a potential reduction operation. More...
class  ReductionDescriptor
 This struct holds information about reduction variables. More...
class  IVVisitor
 Interface for visiting interesting IV users that are recognized but not simplified by this utility. More...
class  FortifiedLibCallSimplifier
 This class implements simplifications for calls to fortified library functions (__st*cpy_chk, __memcpy_chk, __memmove_chk, __memset_chk), to, when possible, replace them with their non-checking counterparts. More...
class  LibCallSimplifier
 LibCallSimplifier - This class implements a collection of optimizations that replace well formed calls to library functions with a more optimal form. More...
class  SSAUpdater
 Helper class for SSA formation on a set of values defined in multiple blocks. More...
class  LoadAndStorePromoter
 Helper class for promoting a collection of loads and stores into SSA Form using the SSAUpdater. More...
class  SSAUpdaterImpl
struct  ilist_traits< SymbolRewriter::RewriteDescriptor >
struct  UnifyFunctionExitNodes
class  ValueMapTypeRemapper
 ValueMapTypeRemapper - This is a class that can be implemented by clients to remap types when cloning constants and instructions. More...
class  ValueMaterializer
 ValueMaterializer - This is a class that can be implemented by clients to materialize Values on demand. More...
struct  VectorizeConfig
 Vectorize configuration. More...
struct  GraphTraits< BlockFrequencyInfo * >
struct  DOTGraphTraits< BlockFrequencyInfo * >
struct  GraphTraits< IrreducibleGraph >
struct  DOTGraphTraits< DomTreeNode * >
struct  DOTGraphTraits< DominatorTree * >
struct  DOTGraphTraits< PostDominatorTree * >
struct  DOTGraphTraits< CallGraph * >
struct  AnalysisCallGraphWrapperPassTraits
struct  DOTGraphTraits< RegionNode * >
struct  DOTGraphTraits< RegionInfoPass * >
struct  StratifiedInfo
struct  StratifiedLink
class  StratifiedSets
class  StratifiedSetsBuilder
class  LLLexer
struct  ValID
 ValID - Represents a reference of a definition of some sort with no type. More...
class  LLParser
struct  OperandTraits< ConstantPlaceHolder >
class  ValueEnumerator
class  AggressiveAntiDepState
 Contains all the state necessary for anti-dep breaking. More...
class  AggressiveAntiDepBreaker
class  AllocationOrder
class  AntiDepBreaker
 This class works in conjunction with the post-RA scheduler to rename registers to break register anti-dependencies (WAR hazards). More...
class  AddressPool
class  AsmPrinterHandler
 Collects and handles AsmPrinter objects required to build debug or EH information. More...
class  ByteStreamer
class  APByteStreamer
class  HashingByteStreamer
class  BufferByteStreamer
class  DbgValueHistoryMap
class  DebugLocEntry
 This struct describes location entries emitted in the .debug_loc section. More...
class  DebugLocStream
 Byte stream of .debug_loc entries. More...
class  DIEHash
 An object containing the capability of hashing and adding hash attributes onto a DIE. More...
class  DwarfAccelTable
class  DwarfCompileUnit
class  SrcLineInfo
 This class is used to record source line correspondence. More...
class  DbgVariable
 This class is used to track local variable information. More...
struct  SymbolCU
 Helper used to pair up a symbol and its DWARF compile unit. More...
class  DwarfDebug
 Collects and handles dwarf debug information. More...
class  DwarfCFIExceptionBase
class  DwarfCFIException
class  ARMException
class  DwarfExpression
 Base class containing the logic for constructing DWARF expressions independently of whether they are emitted into a DIE or into a .debug_loc entry. More...
class  DebugLocDwarfExpression
 DwarfExpression implementation for .debug_loc entries. More...
class  DIEDwarfExpression
 DwarfExpression implementation for singular DW_AT_location. More...
class  DwarfFile
class  DwarfStringPool
class  RangeSpan
class  RangeSpanList
class  DwarfUnit
 This dwarf writer support class manages information associated with a source file. More...
class  DwarfTypeUnit
class  EHStreamer
 Emits exception handling directives. More...
class  Win64Exception
class  WinCodeViewLineTables
 Collects and handles line tables information in a CodeView format. More...
class  BranchFolder
class  CriticalAntiDepBreaker
class  DefaultVLIWScheduler
class  InterferenceCache
class  LiveDebugVariables
class  LiveRangeCalc
struct  GraphTraits< MachineBlockFrequencyInfo * >
struct  DOTGraphTraits< MachineBlockFrequencyInfo * >
struct  DOTGraphTraits< const MachineFunction * >
class  MMIAddrLabelMapCallbackPtr
class  MMIAddrLabelMap
struct  GraphTraits< ScheduleDAGMI * >
struct  DOTGraphTraits< ScheduleDAGMI * >
class  SSAUpdaterTraits< MachineSSAUpdater >
class  po_iterator_storage< LoopBounds, true >
class  PassConfigImpl
class  RegAllocBase
 RegAllocBase provides the register allocation driver and interface that can be extended to add interesting heuristics. More...
class  CoalescerPair
 A helper class for register coalescers. More...
class  SchedDFSImpl
 Internal state used to compute SchedDFSResult. More...
struct  DOTGraphTraits< ScheduleDAG * >
class  InstrEmitter
class  DAGTypeLegalizer
 DAGTypeLegalizer - This takes an arbitrary SelectionDAG as input and hacks on it until only value types the target machine can handle are left. More...
class  ScheduleDAGSDNodes
 ScheduleDAGSDNodes - A ScheduleDAG for scheduling SDNode-based DAGs. More...
class  SDDbgValue
 SDDbgValue - Holds the information from a dbg_value node through SDISel. More...
class  SelectionDAGBuilder
 SelectionDAGBuilder - This is the common target-independent lowering implementation that is parameterized by a TargetLowering object. More...
struct  RegsForValue
 RegsForValue - This struct represents the registers (physical or virtual) that a particular set of values is assigned, and the type information about the value. More...
class  OptLevelChanger
 This class is used by SelectionDAGISel to temporarily override the optimization level on a per-function basis. More...
struct  DOTGraphTraits< SelectionDAG * >
class  StatepointLoweringState
 This class tracks both per-statepoint and per-selectiondag information. More...
class  Spiller
 Spiller interface. More...
class  SpillPlacement
class  SplitAnalysis
 SplitAnalysis - Analyze a LiveInterval, looking for live range splitting opportunities. More...
class  SplitEditor
 SplitEditor - Edit machine code and LiveIntervals for live range splitting. More...
class  FrameEntry
 Abstract frame entry defining the common interface concrete entries implement. More...
class  IntelJITEventsWrapper
class  AllocaHolder
struct  ExecutionContext
class  Interpreter
class  LinkingSymbolResolver
class  MCJIT
class  RuntimeDyldCheckerExprEval
class  RuntimeDyldCheckerImpl
class  RuntimeDyldCOFF
class  RuntimeDyldELF
class  SectionEntry
 SectionEntry - represents a section emitted into memory by the dynamic linker. More...
class  RelocationEntry
 RelocationEntry - used to represent relocations internally in the dynamic linker. More...
class  RelocationValueRef
class  SymbolTableEntry
 Symbol info for RuntimeDyld. More...
class  RuntimeDyldImpl
class  RuntimeDyldMachO
class  RuntimeDyldMachOCRTPBase
 RuntimeDyldMachOTarget - Templated base class for generic MachO linker algorithms and data structures. More...
class  RuntimeDyldCOFFX86_64
class  RuntimeDyldMachOAArch64
class  RuntimeDyldMachOARM
class  RuntimeDyldMachOI386
class  RuntimeDyldMachOX86_64
class  AttributeImpl
class  EnumAttributeImpl
class  IntAttributeImpl
class  StringAttributeImpl
class  AttributeSetNode
class  AttributeSetImpl
class  UnaryConstantExpr
 UnaryConstantExpr - This class is private to Constants.cpp, and is used behind the scenes to implement unary constant exprs. More...
class  BinaryConstantExpr
 BinaryConstantExpr - This class is private to Constants.cpp, and is used behind the scenes to implement binary constant exprs. More...
class  SelectConstantExpr
 SelectConstantExpr - This class is private to Constants.cpp, and is used behind the scenes to implement select constant exprs. More...
class  ExtractElementConstantExpr
 ExtractElementConstantExpr - This class is private to Constants.cpp, and is used behind the scenes to implement extractelement constant exprs. More...
class  InsertElementConstantExpr
 InsertElementConstantExpr - This class is private to Constants.cpp, and is used behind the scenes to implement insertelement constant exprs. More...
class  ShuffleVectorConstantExpr
 ShuffleVectorConstantExpr - This class is private to Constants.cpp, and is used behind the scenes to implement shufflevector constant exprs. More...
class  ExtractValueConstantExpr
 ExtractValueConstantExpr - This class is private to Constants.cpp, and is used behind the scenes to implement extractvalue constant exprs. More...
class  InsertValueConstantExpr
 InsertValueConstantExpr - This class is private to Constants.cpp, and is used behind the scenes to implement insertvalue constant exprs. More...
class  GetElementPtrConstantExpr
 GetElementPtrConstantExpr - This class is private to Constants.cpp, and is used behind the scenes to implement getelementpr constant exprs. More...
class  CompareConstantExpr
struct  OperandTraits< UnaryConstantExpr >
struct  OperandTraits< BinaryConstantExpr >
struct  OperandTraits< SelectConstantExpr >
struct  OperandTraits< ExtractElementConstantExpr >
struct  OperandTraits< InsertElementConstantExpr >
struct  OperandTraits< ShuffleVectorConstantExpr >
struct  OperandTraits< ExtractValueConstantExpr >
struct  OperandTraits< InsertValueConstantExpr >
struct  OperandTraits< GetElementPtrConstantExpr >
struct  OperandTraits< CompareConstantExpr >
struct  ConstantInfo< ConstantExpr >
struct  ConstantInfo< InlineAsm >
struct  ConstantInfo< ConstantArray >
struct  ConstantInfo< ConstantStruct >
struct  ConstantInfo< ConstantVector >
struct  ConstantAggrKeyType
struct  InlineAsmKeyType
struct  ConstantExprKeyType
class  ConstantUniqueMap
struct  DenseMapAPIntKeyInfo
struct  DenseMapAPFloatKeyInfo
struct  AnonStructTypeKeyInfo
struct  FunctionTypeKeyInfo
class  MDNodeOpsKey
 Structure for hashing arbitrary MDNode operands. More...
struct  MDNodeKeyImpl< MDTuple >
 DenseMapInfo for MDTuple. More...
struct  MDNodeKeyImpl< DILocation >
 DenseMapInfo for DILocation. More...
struct  MDNodeKeyImpl< GenericDINode >
 DenseMapInfo for GenericDINode. More...
struct  MDNodeKeyImpl< DISubrange >
struct  MDNodeKeyImpl< DIEnumerator >
struct  MDNodeKeyImpl< DIBasicType >
struct  MDNodeKeyImpl< DIDerivedType >
struct  MDNodeKeyImpl< DICompositeType >
struct  MDNodeKeyImpl< DISubroutineType >
struct  MDNodeKeyImpl< DIFile >
struct  MDNodeKeyImpl< DICompileUnit >
struct  MDNodeKeyImpl< DISubprogram >
struct  MDNodeKeyImpl< DILexicalBlock >
struct  MDNodeKeyImpl< DILexicalBlockFile >
struct  MDNodeKeyImpl< DINamespace >
struct  MDNodeKeyImpl< DITemplateTypeParameter >
struct  MDNodeKeyImpl< DITemplateValueParameter >
struct  MDNodeKeyImpl< DIGlobalVariable >
struct  MDNodeKeyImpl< DILocalVariable >
struct  MDNodeKeyImpl< DIExpression >
struct  MDNodeKeyImpl< DIObjCProperty >
struct  MDNodeKeyImpl< DIImportedEntity >
struct  MDNodeInfo
 DenseMapInfo for MDNode subclasses. More...
class  MDAttachmentMap
 Map-like storage for metadata attachments. More...
class  LLVMContextImpl
class  LLVMDisasmContext
struct  DenseMapInfo< CIEKey >
class  RecordStreamer
struct  fltSemantics
struct  ilist_sentinel_traits< Token >
struct  ilist_node_traits< Token >
class  TableGenStringKey
 TableGenStringKey - This is a wrapper for std::string suitable for using as a key to a DenseMap. More...
struct  DenseMapInfo< TableGenStringKey >
 Specialize DenseMapInfo for TableGenStringKey. More...
class  TGLexer
 TGLexer - TableGen Lexer class. More...
struct  SubClassReference
struct  SubMultiClassReference
struct  LetRecord
struct  ForeachLoop
 ForeachLoop - Record the iteration state associated with a for loop. More...
class  TGParser
class  AArch64FrameLowering
class  AArch64InstrInfo
class  AArch64TargetLowering
class  AArch64FunctionInfo
 AArch64FunctionInfo - This class is derived from MachineFunctionInfo and contains private AArch64-specific information for each MachineFunction. More...
class  AArch64MCInstLower
 AArch64MCInstLower - This class is used to lower an MachineInstr into an MCInst. More...
class  A57ChainingConstraint
 Add the accumulator chaining constraint to a PBQP graph. More...
struct  AArch64RegisterInfo
class  AArch64SelectionDAGInfo
class  AArch64Subtarget
class  AArch64TargetMachine
class  AArch64leTargetMachine
class  AArch64beTargetMachine
class  AArch64_ELFTargetObjectFile
 This implementation is used for AArch64 ELF targets (Linux in particular). More...
class  AArch64_MachoTargetObjectFile
 AArch64_MachoTargetObjectFile - This TLOF implementation is used for Darwin. More...
class  AArch64TTIImpl
class  AArch64Disassembler
class  AArch64ExternalSymbolizer
class  AArch64InstPrinter
class  AArch64AppleInstPrinter
struct  AArch64MCAsmInfoDarwin
struct  AArch64MCAsmInfoELF
class  AArch64MCExpr
class  AArch64TargetStreamer
struct  AArch64NamedImmMapper
 Instances of this class can perform bidirectional mapping from random identifier strings to operand encodings. More...
class  ARMAsmPrinter
class  ARMBaseInstrInfo
class  ARMBaseRegisterInfo
class  ARMConstantPoolValue
 ARMConstantPoolValue - ARM specific constantpool value. More...
class  ARMConstantPoolConstant
 ARMConstantPoolConstant - ARM-specific constant pool values for Constants, Functions, and BlockAddresses. More...
class  ARMConstantPoolSymbol
 ARMConstantPoolSymbol - ARM-specific constantpool values for external symbols. More...
class  ARMConstantPoolMBB
 ARMConstantPoolMBB - ARM-specific constantpool value of a machine basic block. More...
class  ARMFrameLowering
class  ARMHazardRecognizer
 ARMHazardRecognizer handles special constraints that are not expressed in the scheduling itinerary. More...
class  ARMInstrInfo
class  ARMTargetLowering
class  ARMFunctionInfo
 ARMFunctionInfo - This class is derived from MachineFunctionInfo and contains private ARM-specific information for each MachineFunction. More...
struct  ARMRegisterInfo
class  ARMSelectionDAGInfo
class  ARMSubtarget
class  ARMBaseTargetMachine
class  ARMTargetMachine
 ARMTargetMachine - ARM target machine. More...
class  ARMLETargetMachine
 ARMLETargetMachine - ARM little endian target machine. More...
class  ARMBETargetMachine
 ARMBETargetMachine - ARM big endian target machine. More...
class  ThumbTargetMachine
 ThumbTargetMachine - Thumb target machine. More...
class  ThumbLETargetMachine
 ThumbLETargetMachine - Thumb little endian target machine. More...
class  ThumbBETargetMachine
 ThumbBETargetMachine - Thumb big endian target machine. More...
class  ARMElfTargetObjectFile
class  ARMTTIImpl
class  ARMInstPrinter
class  ARMMCAsmInfoDarwin
class  ARMELFMCAsmInfo
class  ARMCOFFMCAsmInfoMicrosoft
class  ARMCOFFMCAsmInfoGNU
class  ARMMCExpr
class  UnwindOpcodeAssembler
class  Thumb1FrameLowering
class  Thumb1InstrInfo
class  Thumb2InstrInfo
struct  ThumbRegisterInfo
class  BPFFrameLowering
class  BPFInstrInfo
class  BPFTargetLowering
class  BPFMCInstLower
struct  BPFRegisterInfo
class  BPFSubtarget
class  BPFTargetMachine
class  BPFInstPrinter
class  BPFMCAsmInfo
struct  CPPTargetMachine
class  HexagonAsmPrinter
class  HexagonFrameLowering
class  HexagonInstrInfo
class  HexagonTargetLowering
class  HexagonMachineFunctionInfo
 Hexagon target-specific information for each MachineFunction. More...
class  VLIWResourceModel
class  VLIWMachineScheduler
 Extend the standard ScheduleDAGMI to provide more context and override the top-level schedule() driver. More...
class  ConvergingVLIWScheduler
 ConvergingVLIWScheduler shrinks the unscheduled zone using heuristics to balance the schedule. More...
class  HexagonRegisterInfo
class  HexagonSelectionDAGInfo
class  HexagonSubtarget
class  HexagonTargetMachine
class  HexagonTargetObjectFile
class  HexagonInstPrinter
class  HexagonMCAsmInfo
class  HexagonMCCodeEmitter
class  MipsInstPrinter
struct  MipsABIFlagsSection
class  MipsABIInfo
class  MipsAsmBackend
class  MipsELFStreamer
class  MipsMCAsmInfo
class  MipsMCCodeEmitter
class  MipsMCExpr
class  Mips16FrameLowering
class  Mips16InstrInfo
class  Mips16DAGToDAGISel
class  Mips16TargetLowering
class  Mips16RegisterInfo
class  MipsAnalyzeImmediate
class  MipsAsmPrinter
class  MipsCCState
class  MipsFrameLowering
class  MipsInstrInfo
class  MipsDAGToDAGISel
class  MipsTargetLowering
class  MipsCallEntry
 A class derived from PseudoSourceValue that represents a GOT entry resolved by lazy-binding. More...
class  MipsFunctionInfo
 MipsFunctionInfo - This class is derived from MachineFunction private Mips target-specific information for each MachineFunction. More...
class  MipsMCInstLower
 MipsMCInstLower - This class is used to lower an MachineInstr into an. More...
class  MipsOptionRecord
class  MipsRegInfoRecord
class  MipsRegisterInfo
class  MipsSEFrameLowering
class  MipsSEInstrInfo
class  MipsSEDAGToDAGISel
class  MipsSETargetLowering
class  MipsSelectionDAGInfo
class  MipsSERegisterInfo
class  MipsSubtarget
class  MipsTargetMachine
class  MipsebTargetMachine
 MipsebTargetMachine - Mips32/64 big endian target machine. More...
class  MipselTargetMachine
 MipselTargetMachine - Mips32/64 little endian target machine. More...
class  MipsTargetObjectFile
class  MipsTargetStreamer
class  MipsTargetAsmStreamer
class  MipsTargetELFStreamer
class  MSP430InstPrinter
class  MSP430MCAsmInfo
class  MSP430FrameLowering
class  MSP430InstrInfo
class  MSP430TargetLowering
class  MSP430MachineFunctionInfo
 MSP430MachineFunctionInfo - This class is derived from MachineFunction and contains private MSP430 target-specific information for each MachineFunction. More...
class  MSP430MCInstLower
 MSP430MCInstLower - This class is used to lower an MachineInstr into an MCInst. More...
struct  MSP430RegisterInfo
class  MSP430SelectionDAGInfo
class  MSP430Subtarget
class  MSP430TargetMachine
 MSP430TargetMachine. More...
class  NVPTXInstPrinter
class  ManagedStringPool
 ManagedStringPool - The strings allocated from a managed string pool are owned by the string pool and will be deleted together with the managed string pool. More...
class  NVPTXMCAsmInfo
class  LineReader
class  NVPTXAsmPrinter
class  NVPTXFrameLowering
class  NVPTXInstrInfo
class  NVPTXTargetLowering
class  NVPTXMachineFunctionInfo
class  NVPTXFloatMCExpr
class  NVPTXGenericMCSymbolRefExpr
 A wrapper for MCSymbolRefExpr that tells the assembly printer that the symbol should be enclosed by generic(). More...
class  NVPTXRegisterInfo
class  NVPTXSection
 NVPTXSection - Represents a section in PTX PTX does not have sections. More...
class  NVPTXSubtarget
class  NVPTXTargetMachine
 NVPTXTargetMachine. More...
class  NVPTXTargetMachine32
class  NVPTXTargetMachine64
class  NVPTXTargetObjectFile
class  NVPTXTTIImpl
class  PPCInstPrinter
class  PPCMCAsmInfoDarwin
class  PPCELFMCAsmInfo
class  PPCMCExpr
class  PPCFrameLowering
class  PPCDispatchGroupSBHazardRecognizer
 PPCDispatchGroupSBHazardRecognizer - This class implements a scoreboard-based hazard recognizer for PPC ooo processors with dispatch-group hazards. More...
class  PPCHazardRecognizer970
 PPCHazardRecognizer970 - This class defines a finite state automata that models the dispatch logic on the PowerPC 970 (aka G5) processor. More...
class  PPCInstrInfo
class  PPCTargetLowering
class  PPCFunctionInfo
 PPCFunctionInfo - This class is derived from MachineFunction private PowerPC target-specific information for each MachineFunction. More...
class  PPCRegisterInfo
class  PPCSelectionDAGInfo
class  PPCSubtarget
class  PPCTargetMachine
 PPCTargetMachine - Common code between 32-bit and 64-bit PowerPC targets. More...
class  PPC32TargetMachine
 PPC32TargetMachine - PowerPC 32-bit target machine. More...
class  PPC64TargetMachine
 PPC64TargetMachine - PowerPC 64-bit target machine. More...
class  PPC64LinuxTargetObjectFile
 PPC64LinuxTargetObjectFile - This implementation is used for 64-bit PowerPC Linux. More...
class  PPCTargetStreamer
class  PPCTTIImpl
class  AMDGPUAsmPrinter
class  AMDGPUFrameLowering
 Information about the stack frame layout on the AMDGPU targets. More...
class  AMDGPUInstrInfo
class  AMDGPUIntrinsicInfo
class  AMDGPUTargetLowering
class  AMDGPUMachineFunction
class  AMDGPUMCInstLower
struct  AMDGPURegisterInfo
class  AMDGPUSubtarget
class  AMDGPUTargetMachine
class  R600TargetMachine
class  GCNTargetMachine
class  AMDGPUTTIImpl
class  AMDGPUInstPrinter
class  AMDGPUMCAsmInfo
class  AMDGPUMCCodeEmitter
class  R600InstrInfo
class  R600TargetLowering
class  R600MachineFunctionInfo
class  R600SchedStrategy
struct  R600RegisterInfo
class  SIInstrInfo
class  SITargetLowering
class  SIMachineFunctionInfo
 This class keeps track of the SPI_SP_INPUT_ADDR config register, which tells the hardware which interpolation parameters to load. More...
struct  SIRegisterInfo
class  SparcInstPrinter
class  SparcELFMCAsmInfo
class  SparcMCExpr
class  SparcFrameLowering
class  SparcInstrInfo
class  SparcTargetLowering
class  SparcMachineFunctionInfo
struct  SparcRegisterInfo
class  SparcSelectionDAGInfo
class  SparcSubtarget
class  SparcTargetMachine
class  SparcV8TargetMachine
 SparcV8TargetMachine - Sparc 32-bit target machine. More...
class  SparcV9TargetMachine
 SparcV9TargetMachine - Sparc 64-bit target machine. More...
class  SparcelTargetMachine
class  SparcELFTargetObjectFile
class  SparcTargetStreamer
class  SparcTargetAsmStreamer
class  SparcTargetELFStreamer
class  SystemZInstPrinter
class  SystemZMCAsmInfo
class  SystemZAsmPrinter
class  SystemZCCState
class  SystemZConstantPoolValue
 A SystemZ-specific constant pool value. More...
class  SystemZFrameLowering
class  SystemZInstrInfo
class  SystemZTargetLowering
class  SystemZMachineFunctionInfo
class  SystemZMCInstLower
struct  SystemZRegisterInfo
class  SystemZSelectionDAGInfo
class  SystemZSubtarget
class  SystemZTargetMachine
class  SystemZTTIImpl
class  X86AsmInstrumentation
struct  X86Operand
 X86Operand - Instances of this class represent a parsed X86 machine instruction. More...
class  X86MCAsmInfoDarwin
struct  X86_64MCAsmInfoDarwin
class  X86ELFMCAsmInfo
class  X86MCAsmInfoMicrosoft
class  X86MCAsmInfoGNUCOFF
class  X86AsmPrinter
class  X86FrameLowering
struct  X86AddressMode
 X86AddressMode - This struct holds a generalized full x86 address mode. More...
struct  IntrinsicData
class  X86MachineFunctionInfo
 X86MachineFunctionInfo - This class is derived from MachineFunction and contains private X86 target-specific information for each MachineFunction. More...
class  X86SelectionDAGInfo
class  X86_64MachoTargetObjectFile
 X86_64MachoTargetObjectFile - This TLOF implementation is used for Darwin x86-64. More...
class  X86ELFTargetObjectFile
 This implemenatation is used for X86 ELF targets that don't have a further specialization. More...
class  X86LinuxNaClTargetObjectFile
 X86LinuxNaClTargetObjectFile - This implementation is used for linux and Native Client on x86 and x86-64. More...
class  X86WindowsTargetObjectFile
 This implementation is used for Windows targets on x86 and x86-64. More...
class  X86TTIImpl
class  XCoreInstPrinter
class  XCoreMCAsmInfo
class  XCoreFrameLowering
class  XCoreInstrInfo
class  XCoreTargetLowering
class  XCoreFunctionInfo
 XCoreFunctionInfo - This class is derived from MachineFunction private XCore target-specific information for each MachineFunction. More...
class  XCoreMCInstLower
 This class is used to lower an MachineInstr into an MCInst. More...
struct  XCoreRegisterInfo
class  XCoreSelectionDAGInfo
class  XCoreSubtarget
class  XCoreTargetMachine
class  XCoreTargetObjectFile
class  XCoreTargetStreamer
class  XCoreTTIImpl
class  InstCombineIRInserter
 An IRBuilder inserter that adds new instructions to the instcombine worklist. More...
class  InstCombiner
 The core instruction combiner logic. More...
struct  DenseMapInfo< LoweredPHIRecord >
class  MaximumSpanningTree
 MaximumSpanningTree - A MST implementation. More...
struct  GraphTraits< ArgumentGraphNode * >
struct  GraphTraits< ArgumentGraph * >
class  BlotMapVector
 An associative container with fast insertion-order (deterministic) iteration over its elements. More...
struct  DenseMapInfo< SimpleValue >
struct  DenseMapInfo< CallValue >
struct  DenseMapInfo< Expression >
struct  isPodLike< Slice >
struct  DenseMapInfo< DivOpInfo >
class  SSAUpdaterTraits< SSAUpdater >

Typedefs

typedef uint64_t integerPart
typedef FoldingSetImpl::Node FoldingSetNode
typedef PassManager
< LazyCallGraph::SCC
CGSCCPassManager
 The CGSCC pass manager.
typedef AnalysisManager
< LazyCallGraph::SCC
CGSCCAnalysisManager
 The CGSCC analysis manager.
typedef IntervalIterator
< BasicBlock, Function
function_interval_iterator
typedef IntervalIterator
< Interval, IntervalPartition
interval_part_interval_iterator
typedef DomTreeNodeBase
< BasicBlock
DomTreeNode
typedef std::pair< APInt, APIntSizeOffsetType
typedef std::pair< Value
*, Value * > 
SizeOffsetEvalType
typedef DenseMap< const Value
*, Value * > 
ValueToValueMap
typedef DenseMap< const Loop
*, const SCEV * > 
LoopToScevMapT
typedef SmallPtrSet< const
Loop *, 2 > 
PostIncLoopSet
 PostIncLoopSet - A set of loops.
typedef bool CCAssignFn (unsigned ValNo, MVT ValVT, MVT LocVT, CCValAssign::LocInfo LocInfo, ISD::ArgFlagsTy ArgFlags, CCState &State)
 CCAssignFn - This function assigns a location for Val, updating State to reflect the change.
typedef bool CCCustomFn (unsigned &ValNo, MVT &ValVT, MVT &LocVT, CCValAssign::LocInfo &LocInfo, ISD::ArgFlagsTy &ArgFlags, CCState &State)
 CCCustomFn - This function assigns a location for Val, possibly updating all args to reflect changes and indicates if it handled it.
typedef Registry
< GCMetadataPrinter
GCMetadataPrinterRegistry
 GCMetadataPrinterRegistry - The GC assembly printer registry uses all the defaults from Registry.
typedef Registry< GCStrategyGCRegistry
 Subclasses of GCStrategy are made available for use during compilation by adding them to the global GCRegistry.
typedef std::pair< const
MachineInstr *, const
MachineInstr * > 
InsnRange
 InsnRange - This is used to track range of instructions with identical lexical scope.
typedef SparseBitVector< 128 > LiveVirtRegBitSet
typedef DomTreeNodeBase
< MachineBasicBlock
MachineDomTreeNode
typedef void *(* MachinePassCtor )()
typedef PBQP::RegAlloc::PBQPRAGraph PBQPRAGraph
typedef SparseMultiSet
< PhysRegSUOper,
llvm::identity< unsigned >
, uint16_t > 
Reg2SUnitsMap
 Use a SparseMultiSet to track physical registers.
typedef SparseSet< VReg2SUnit,
VirtReg2IndexFunctor
VReg2SUnitMap
 Use SparseSet as a SparseMap by relying on the fact that it never compares ValueT's, only unsigned keys.
typedef SparseMultiSet
< VReg2SUnit,
VirtReg2IndexFunctor
VReg2UseMap
 Track local uses of virtual registers.
typedef MaskedGatherScatterSDNode LargestSDNode
 The largest SDNode class.
typedef GlobalAddressSDNode MostAlignedSDNode
 The SDNode class with the greatest alignment requirement.
typedef std::pair< SlotIndex,
MachineBasicBlock * > 
IdxMBBPair
typedef SmallVector< std::pair
< uint64_t, DILineInfo >, 16 > 
DILineInfoTable
typedef DenseMap< uint64_t,
std::pair< uint8_t, int64_t > > 
RelocAddrMap
typedef std::vector< std::pair
< uint64_t, uint64_t > > 
DWARFAddressRangesVector
 DWARFAddressRangesVector - represents a set of absolute address ranges.
typedef std::unordered_map
< PDB_SymType, int
TagStats
typedef IPDBEnumChildren
< PDBSymbol
IPDBEnumSymbols
typedef IPDBEnumChildren
< IPDBSourceFile
IPDBEnumSourceFiles
typedef IPDBEnumChildren
< IPDBDataStream
IPDBEnumDataStreams
typedef IPDBEnumChildren
< IPDBLineNumber
IPDBEnumLineNumbers
typedef void * PointerTy
typedef PredIterator
< BasicBlock,
Value::user_iterator
pred_iterator
typedef PredIterator< const
BasicBlock,
Value::const_user_iterator
const_pred_iterator
typedef llvm::iterator_range
< pred_iterator
pred_range
typedef llvm::iterator_range
< const_pred_iterator
pred_const_range
typedef SuccIterator
< TerminatorInst *, BasicBlock
succ_iterator
typedef SuccIterator< const
TerminatorInst *, const
BasicBlock
succ_const_iterator
typedef llvm::iterator_range
< succ_iterator
succ_range
typedef llvm::iterator_range
< succ_const_iterator
succ_const_range
typedef DenseMap< const
MDString *, DIType * > 
DITypeIdentifierMap
 Maps from type identifier to the actual MDNode.
typedef TypedDINodeRef< DINodeDINodeRef
typedef TypedDINodeRef< DIScopeDIScopeRef
typedef TypedDINodeRef< DITypeDITypeRef
typedef std::function< void(const
DiagnosticInfo &)> 
DiagnosticHandlerFunction
typedef generic_gep_type_iterator gep_type_iterator
typedef InstIterator< iplist
< BasicBlock >
, Function::iterator,
BasicBlock::iterator,
Instruction
inst_iterator
typedef InstIterator< const
iplist< BasicBlock >
, Function::const_iterator,
BasicBlock::const_iterator,
const Instruction
const_inst_iterator
typedef PassManager< ModuleModulePassManager
 Convenience typedef for a pass manager over modules.
typedef PassManager< FunctionFunctionPassManager
 Convenience typedef for a pass manager over functions.
typedef AnalysisManager< ModuleModuleAnalysisManager
 Convenience typedef for the Module analysis manager.
typedef AnalysisManager< FunctionFunctionAnalysisManager
 Convenience typedef for the Function analysis manager.
typedef TypedTrackingMDRef
< MDNode
TrackingMDNodeRef
typedef TypedTrackingMDRef
< ValueAsMetadata
TrackingValueAsMetadataRef
typedef std::vector< UseListOrderUseListOrderStack
typedef StringMapEntry< Value * > ValueName
typedef DenseMap< const
MCSection *, uint64_t > 
SectionAddrMap
typedef MCLOHDirective::LOHArgs MCLOHArgs
typedef
MCLOHContainer::LOHDirectives 
MCLOHDirectives
typedef uint16_t MCPhysReg
 An unsigned integer type large enough to represent all physical registers, but not necessarily virtual registers.
typedef std::pair< MCSection
*, const MCExpr * > 
MCSectionSubPair
typedef SmallVectorImpl
< std::unique_ptr
< MCParsedAsmOperand > > 
OperandVector
typedef const void * AnalysisID
typedef RawInstrProfReader
< uint32_t > 
RawInstrProfReader32
typedef RawInstrProfReader
< uint64_t > 
RawInstrProfReader64
typedef
OnDiskIterableChainedHashTable
< InstrProfLookupTrait
InstrProfReaderIndex
typedef BumpPtrAllocatorImpl BumpPtrAllocator
 The standard BumpPtrAllocator which just uses the default template paramaters.
typedef void(* fatal_error_handler_t )(void *user_data, const std::string &reason, bool gen_crash_diag)
 An error handler callback.
typedef bool TableGenMainFn (raw_ostream &OS, RecordKeeper &Records)
 Perform the action using Records, and write output to OS.
typedef ValueMap< const Value
*, WeakVH
ValueToValueMapTy
typedef unsigned StratifiedIndex
typedef std::bitset
< NumStratifiedAttrs
StratifiedAttrs
typedef std::vector< GenericValueValuePlaneTy
typedef StringMap
< SymbolTableEntry
RTDyldSymbolTable
typedef DenseMap< DivOpInfo,
DivPhiNodes > 
DivCacheTy

Enumerations

enum  lostFraction { lfExactlyZero, lfLessThanHalf, lfExactlyHalf, lfMoreThanHalf }
 Enum that represents what fraction of the LSB truncated bits of an fp number represent. More...
enum  NoneType
 A simple null object to allow implicit construction of Optional<T> and similar types without having to spell out the specialization's name. More...
enum  EHPersonality {
  Unknown = 0x0, GNU_Ada, GNU_C, GNU_CXX,
  GNU_ObjC, MSVC_X86SEH, MSVC_Win64SEH, MSVC_CXX
}
enum  SCEVTypes {
  scConstant, scTruncate, scZeroExtend, scSignExtend,
  scAddExpr, scMulExpr, scUDivExpr, scAddRecExpr,
  scUMaxExpr, scSMaxExpr, scUnknown, scCouldNotCompute
}
enum  TransformKind { Normalize, NormalizeAutodetect, Denormalize }
 TransformKind - Different types of transformations that TransformForPostIncUse can do. More...
enum  OverflowResult { AlwaysOverflows, MayOverflow, NeverOverflows }
enum  SelectPatternFlavor {
  SPF_UNKNOWN = 0, SPF_SMIN, SPF_UMIN, SPF_SMAX,
  SPF_UMAX, SPF_ABS, SPF_NABS
}
 Specific patterns of select instructions we can match. More...
enum  BitcodeError { InvalidBitcodeSignature, CorruptedBitcode }
enum  ParmContext { Unknown = 0x0, Prologue, Call }
 ParmContext - This enum tracks whether calling convention lowering is in the context of prologue or call generation. More...
enum  CombineLevel { BeforeLegalizeTypes, AfterLegalizeTypes, AfterLegalizeVectorOps, AfterLegalizeDAG }
enum  ActionType { Catch, Cleanup }
enum  DINameKind { ShortName, LinkageName }
 A DINameKind is passed to name search methods to specify a preference regarding the type of name resolution the caller wants. More...
enum  DIDumpType {
  DIDT_Null, DIDT_All, DIDT_Abbrev, DIDT_AbbrevDwo,
  DIDT_Aranges, DIDT_Frames, DIDT_Info, DIDT_InfoDwo,
  DIDT_Types, DIDT_TypesDwo, DIDT_Line, DIDT_LineDwo,
  DIDT_Loc, DIDT_LocDwo, DIDT_Ranges, DIDT_Pubnames,
  DIDT_Pubtypes, DIDT_GnuPubnames, DIDT_GnuPubtypes, DIDT_Str,
  DIDT_StrDwo, DIDT_StrOffsetsDwo, DIDT_AppleNames, DIDT_AppleTypes,
  DIDT_AppleNamespaces, DIDT_AppleObjC
}
 Selects which debug sections get dumped. More...
enum  PDB_ReaderType { DIA = 0 }
 Specifies which PDB reader implementation is to be used. More...
enum  PDB_TableType {
  Symbols, SourceFiles, LineNumbers, SectionContribs,
  Segments, InjectedSources, FrameData
}
 An enumeration indicating the type of data contained in this table. More...
enum  PDB_NameSearchFlags {
  NS_Default = 0x0, NS_CaseSensitive = 0x1, NS_CaseInsensitive = 0x2, NS_FileNameExtMatch = 0x4,
  NS_Regex = 0x8, NS_UndecoratedName = 0x10
}
 Defines flags used for enumerating child symbols. More...
enum  PDB_Checksum { MD5 = 1, SHA1 = 2 }
 Specifies the hash algorithm that a source file from a PDB was hashed with. More...
enum  PDB_Cpu {
  Intel8080 = 0x0, Intel8086 = 0x1, Intel80286 = 0x2, Intel80386 = 0x3,
  Intel80486 = 0x4, Pentium = 0x5, PentiumPro = 0x6, Pentium3 = 0x7,
  MIPS = 0x10, MIPS16 = 0x11, MIPS32 = 0x12, MIPS64 = 0x13,
  MIPSI = 0x14, MIPSII = 0x15, MIPSIII = 0x16, MIPSIV = 0x17,
  MIPSV = 0x18, M68000 = 0x20, M68010 = 0x21, M68020 = 0x22,
  M68030 = 0x23, M68040 = 0x24, Alpha = 0x30, Alpha21164 = 0x31,
  Alpha21164A = 0x32, Alpha21264 = 0x33, Alpha21364 = 0x34, PPC601 = 0x40,
  PPC603 = 0x41, PPC604 = 0x42, PPC620 = 0x43, PPCFP = 0x44,
  PPCBE = 0x45, SH3 = 0x50, SH3E = 0x51, SH3DSP = 0x52,
  SH4 = 0x53, SHMedia = 0x54, ARM3 = 0x60, ARM4 = 0x61,
  ARM4T = 0x62, ARM5 = 0x63, ARM5T = 0x64, ARM6 = 0x65,
  ARM_XMAC = 0x66, ARM_WMMX = 0x67, ARM7 = 0x68, Omni = 0x70,
  Ia64 = 0x80, Ia64_2 = 0x81, CEE = 0x90, AM33 = 0xa0,
  M32R = 0xb0, TriCore = 0xc0, X64 = 0xd0, EBC = 0xe0,
  Thumb = 0xf0, ARMNT = 0xf4, D3D11_Shader = 0x100
}
 These values correspond to the CV_CPU_TYPE_e enumeration, and are documented here: https://msdn.microsoft.com/en-us/library/b2fc64ek.aspx. More...
enum  PDB_Machine {
  Invalid = 0xffff, Unknown = 0x0, Am33 = 0x13, Amd64 = 0x8664,
  Arm = 0x1C0, ArmNT = 0x1C4, Ebc = 0xEBC, x86 = 0x14C,
  Ia64 = 0x80, M32R = 0xb0, Mips16 = 0x266, MipsFpu = 0x366,
  MipsFpu16 = 0x466, PowerPC = 0x1F0, PowerPCFP = 0x1F1, R4000 = 0x166,
  SH3 = 0x50, SH3DSP = 0x52, SH4 = 0x53, SH5 = 0x1A8,
  Thumb = 0xf0, WceMipsV2 = 0x169
}
enum  PDB_CallingConv {
  NearCdecl = 0x00, FarCdecl = 0x01, NearPascal = 0x02, FarPascal = 0x03,
  NearFastcall = 0x04, FarFastcall = 0x05, Skipped = 0x06, NearStdcall = 0x07,
  FarStdcall = 0x08, NearSyscall = 0x09, FarSyscall = 0x0a, Thiscall = 0x0b,
  MipsCall = 0x0c, Generic = 0x0d, Alphacall = 0x0e, Ppccall = 0x0f,
  SuperHCall = 0x10, Armcall = 0x11, AM33call = 0x12, Tricall = 0x13,
  Sh5call = 0x14, M32R = 0xb0, Clrcall = 0x16, Inline = 0x17,
  NearVectorcall = 0x18, Reserved = 0x19
}
 These values correspond to the CV_call_e enumeration, and are documented at the following locations: https://msdn.microsoft.com/en-us/library/b2fc64ek.aspx https://msdn.microsoft.com/en-us/library/windows/desktop/ms680207(v=vs.85).aspx. More...
enum  PDB_Lang {
  C = 0x00, Cpp = 0x01, Fortran = 0x02, Masm = 0x03,
  Pascal = 0x04, Basic = 0x05, Cobol = 0x06, Link = 0x07,
  Cvtres = 0x08, Cvtpgd = 0x09, CSharp = 0x0a, VB = 0x0b,
  ILAsm = 0x0c, Java = 0x0d, JScript = 0x0e, MSIL = 0x0f,
  HLSL = 0x10
}
 These values correspond to the CV_CFL_LANG enumeration, and are documented here: https://msdn.microsoft.com/en-us/library/bw3aekw6.aspx. More...
enum  PDB_DataKind {
  Unknown = 0x0, Local, StaticLocal, Param,
  ObjectPtr, FileStatic, Global, Member,
  StaticMember, Constant
}
 These values correspond to the DataKind enumeration, and are documented here: https://msdn.microsoft.com/en-us/library/b2x2t313.aspx. More...
enum  PDB_SymType {
  Exe, Compiland, CompilandDetails, CompilandEnv,
  Function, Block, Data, Annotation,
  Label, PublicSymbol, UDT, Enum,
  FunctionSig, PointerType, ArrayType, BuiltinType,
  Typedef, BaseClass, Friend, FunctionArg,
  FuncDebugStart, FuncDebugEnd, UsingNamespace, VTableShape,
  VTable, Custom, Thunk, CustomType,
  ManagedType, Dimension, Max
}
 These values correspond to the SymTagEnum enumeration, and are documented here: https://msdn.microsoft.com/en-us/library/bkedss5f.aspx. More...
enum  PDB_LocType {
  Null, Static, TLS, RegRel,
  ThisRel, Enregistered, BitField, Slot,
  IlRel, MetaData, Constant, Max
}
 These values correspond to the LocationType enumeration, and are documented here: https://msdn.microsoft.com/en-us/library/f57kaez3.aspx. More...
enum  PDB_ThunkOrdinal {
  Standard, ThisAdjustor, Vcall, Pcode,
  UnknownLoad, TrampIncremental, BranchIsland
}
 These values correspond to the THUNK_ORDINAL enumeration, and are documented here: https://msdn.microsoft.com/en-us/library/dh0k8hft.aspx. More...
enum  PDB_UdtType { Struct, Class, Union, Interface }
 These values correspond to the UdtKind enumeration, and are documented here: https://msdn.microsoft.com/en-us/library/wcstk66t.aspx. More...
enum  PDB_StackFrameType {
  FPO, KernelTrap, KernelTSS, EBP = 22,
  FrameData
}
 These values correspond to the StackFrameTypeEnum enumeration, and are documented here: https://msdn.microsoft.com/en-us/library/bc5207xw.aspx. More...
enum  PDB_MemoryType { Code, Data, Stack, HeapCode }
 These values correspond to the StackFrameTypeEnum enumeration, and are documented here: https://msdn.microsoft.com/en-us/library/bc5207xw.aspx. More...
enum  PDB_BuiltinType {
  Void = 1, Char = 2, WCharT = 3, Int = 6,
  UInt = 7, Float = 8, BCD = 9, Bool = 10,
  Long = 13, ULong = 14, Currency = 25, Date = 26,
  Variant = 27, Complex = 28, Bitfield = 29, BSTR = 30,
  HResult = 31
}
 These values correspond to the Basictype enumeration, and are documented here: https://msdn.microsoft.com/en-us/library/4szdtzc3.aspx. More...
enum  PDB_RegisterId {
  Unknown = 0x0, VFrame = 30006, AL = 1, CL = 2,
  DL = 3, BL = 4, AH = 5, CH = 6,
  DH = 7, BH = 8, AX = 9, CX = 10,
  DX = 11, BX = 12, SP = 13, BP = 14,
  SI = 15, DI = 16, EAX = 17, ECX = 18,
  EDX = 19, EBX = 20, ESP = 21, EBP = 22,
  ESI = 23, EDI = 24, ES = 25, CS = 26,
  SS = 27, DS = 28, FS = 29, GS = 30,
  IP = 31, RAX = 328, RBX = 329, RCX = 330,
  RDX = 331, RSI = 332, RDI = 333, RBP = 334,
  RSP = 335, R8 = 336, R9 = 337, R10 = 338,
  R11 = 339, R12 = 340, R13 = 341, R14 = 342,
  R15 = 343
}
enum  PDB_MemberAccess { Private = 1, Protected = 2, Public = 3 }
enum  PDB_ErrorCode {
  Success, NoPdbImpl, InvalidPath, InvalidFileFormat,
  InvalidParameter, AlreadyLoaded, UnknownError, NoMemory,
  DebugInfoMismatch
}
enum  PDB_VariantType {
  Empty, Unknown = 0x0, Int8, Int16,
  Int32, Int64, Single, Double,
  UInt8, UInt16, UInt32, UInt64,
  Bool = 10
}
enum  JITSymbolFlags { Weak = 1U << 0, Exported = 1U << 1 }
 Flags for symbols in the JIT. More...
enum  AlignTypeEnum {
  INVALID_ALIGN = 0, INTEGER_ALIGN = 'i', VECTOR_ALIGN = 'v', FLOAT_ALIGN = 'f',
  AGGREGATE_ALIGN = 'a'
}
 Enum used to categorize the alignment types stored by LayoutAlignElem. More...
enum  DiagnosticSeverity { DS_Error, DS_Warning, DS_Remark, DS_Note }
 Defines the different supported severity of a diagnostic. More...
enum  DiagnosticKind {
  DK_Bitcode, DK_InlineAsm, DK_StackSize, DK_Linker,
  DK_DebugMetadataVersion, DK_SampleProfile, DK_OptimizationRemark, DK_OptimizationRemarkMissed,
  DK_OptimizationRemarkAnalysis, DK_OptimizationFailure, DK_FirstPluginKind
}
 Defines the different supported kind of a diagnostic. More...
enum  AtomicOrdering {
  NotAtomic = 0, Unordered = 1, Monotonic = 2, Acquire = 4,
  Release = 5, AcquireRelease = 6, SequentiallyConsistent = 7
}
enum  SynchronizationScope { SingleThread = 0, CrossThread = 1 }
enum  PassDebuggingString {
  EXECUTION_MSG, MODIFICATION_MSG, FREEING_MSG, ON_BASICBLOCK_MSG,
  ON_FUNCTION_MSG, ON_MODULE_MSG, ON_REGION_MSG, ON_LOOP_MSG,
  ON_CG_MSG
}
enum  LLVMConstants { DEBUG_METADATA_VERSION = 3 }
enum  StatepointFlags { GCTransition = 1, MaskAll = GCTransition }
 The statepoint intrinsic accepts a set of flags as its third argument. More...
enum  ExceptionHandling { DwarfCFI, SjLj, ARM, WinEH }
enum  MCSymbolAttr {
  MCSA_Invalid = 0, MCSA_ELF_TypeFunction, MCSA_ELF_TypeIndFunction, MCSA_ELF_TypeObject,
  MCSA_ELF_TypeTLS, MCSA_ELF_TypeCommon, MCSA_ELF_TypeNoType, MCSA_ELF_TypeGnuUniqueObject,
  MCSA_Global, MCSA_Hidden, MCSA_IndirectSymbol, MCSA_Internal,
  MCSA_LazyReference, MCSA_Local, MCSA_NoDeadStrip, MCSA_SymbolResolver,
  MCSA_PrivateExtern, MCSA_Protected, MCSA_Reference, MCSA_Weak,
  MCSA_WeakDefinition, MCSA_WeakReference, MCSA_WeakDefAutoPrivate
}
enum  MCAssemblerFlag {
  MCAF_SyntaxUnified, MCAF_SubsectionsViaSymbols, MCAF_Code16, MCAF_Code32,
  MCAF_Code64
}
enum  MCDataRegionType {
  MCDR_DataRegion, MCDR_DataRegionJT8, MCDR_DataRegionJT16, MCDR_DataRegionJT32,
  MCDR_DataRegionEnd
}
enum  MCVersionMinType { MCVM_IOSVersionMin, MCVM_OSXVersionMin }
enum  { ELF_STT_Shift = 0, ELF_STB_Shift = 4, ELF_STV_Shift = 8, ELF_STO_Shift = 10 }
enum  ELFSymbolFlags {
  ELF_STB_Local = (ELF::STB_LOCAL << ELF_STB_Shift), ELF_STB_Global = (ELF::STB_GLOBAL << ELF_STB_Shift), ELF_STB_Weak = (ELF::STB_WEAK << ELF_STB_Shift), ELF_STB_Loproc = (ELF::STB_LOPROC << ELF_STB_Shift),
  ELF_STB_Hiproc = (ELF::STB_HIPROC << ELF_STB_Shift), ELF_STT_Notype = (ELF::STT_NOTYPE << ELF_STT_Shift), ELF_STT_Object = (ELF::STT_OBJECT << ELF_STT_Shift), ELF_STT_Func = (ELF::STT_FUNC << ELF_STT_Shift),
  ELF_STT_Section = (ELF::STT_SECTION << ELF_STT_Shift), ELF_STT_File = (ELF::STT_FILE << ELF_STT_Shift), ELF_STT_Common = (ELF::STT_COMMON << ELF_STT_Shift), ELF_STT_Tls = (ELF::STT_TLS << ELF_STT_Shift),
  ELF_STT_GnuIFunc = (ELF::STT_GNU_IFUNC << ELF_STT_Shift), ELF_STT_Loproc = (ELF::STT_LOPROC << ELF_STT_Shift), ELF_STT_Hiproc = (ELF::STT_HIPROC << ELF_STT_Shift), ELF_STV_Default = (ELF::STV_DEFAULT << ELF_STV_Shift),
  ELF_STV_Internal = (ELF::STV_INTERNAL << ELF_STV_Shift), ELF_STV_Hidden = (ELF::STV_HIDDEN << ELF_STV_Shift), ELF_STV_Protected = (ELF::STV_PROTECTED << ELF_STV_Shift)
}
enum  MCFixupKind {
  FK_Data_1 = 0, FK_Data_2, FK_Data_4, FK_Data_8,
  FK_PCRel_1, FK_PCRel_2, FK_PCRel_4, FK_PCRel_8,
  FK_GPRel_1, FK_GPRel_2, FK_GPRel_4, FK_GPRel_8,
  FK_SecRel_1, FK_SecRel_2, FK_SecRel_4, FK_SecRel_8,
  FirstTargetFixupKind = 128, MaxTargetFixupKind = (1 << 8)
}
 Extensible enumeration to represent the type of a fixup. More...
enum  MCLOHType {
  MCLOH_AdrpAdrp = 0x1u, MCLOH_AdrpLdr = 0x2u, MCLOH_AdrpAddLdr = 0x3u, MCLOH_AdrpLdrGotLdr = 0x4u,
  MCLOH_AdrpAddStr = 0x5u, MCLOH_AdrpLdrGotStr = 0x6u, MCLOH_AdrpAdd = 0x7u, MCLOH_AdrpLdrGot = 0x8u
}
 Linker Optimization Hint Type. More...
enum  MachOSymbolFlags {
  SF_DescFlagsMask = 0xFFFF, SF_ReferenceTypeMask = 0x0007, SF_ReferenceTypeUndefinedNonLazy = 0x0000, SF_ReferenceTypeUndefinedLazy = 0x0001,
  SF_ReferenceTypeDefined = 0x0002, SF_ReferenceTypePrivateDefined = 0x0003, SF_ReferenceTypePrivateUndefinedNonLazy = 0x0004, SF_ReferenceTypePrivateUndefinedLazy = 0x0005,
  SF_ThumbFunc = 0x0008, SF_NoDeadStrip = 0x0020, SF_WeakReference = 0x0040, SF_WeakDefinition = 0x0080,
  SF_SymbolResolver = 0x0100
}
 MachOSymbolFlags - We store the value for the 'desc' symbol field in the lowest 16 bits of the implementation defined flags. More...
enum  AsmRewriteKind {
  AOK_Delete = 0, AOK_Align, AOK_DotOperator, AOK_Emit,
  AOK_Imm, AOK_ImmPrefix, AOK_Input, AOK_Output,
  AOK_SizeDirective, AOK_Label, AOK_Skip
}
enum  PassManagerType {
  PMT_Unknown = 0, PMT_ModulePassManager = 1, PMT_CallGraphPassManager, PMT_FunctionPassManager,
  PMT_LoopPassManager, PMT_RegionPassManager, PMT_BasicBlockPassManager, PMT_Last
}
 Different types of internal pass managers. More...
enum  PassKind {
  PT_BasicBlock, PT_Region, PT_Loop, PT_Function,
  PT_CallGraphSCC, PT_Module, PT_PassManager
}
enum  coveragemap_error {
  success = 0, eof, no_data_found, unsupported_version,
  truncated, malformed
}
enum  instrprof_error {
  success = 0, eof, bad_magic, bad_header,
  unsupported_version, unsupported_hash_type, too_large, truncated,
  malformed, unknown_function, hash_mismatch, count_mismatch,
  counter_overflow
}
enum  sampleprof_error {
  success = 0, bad_magic, unsupported_version, too_large,
  truncated, malformed, unrecognized_format
}
enum  errc {
  argument_list_too_long = int(std::errc::argument_list_too_long), argument_out_of_domain = int(std::errc::argument_out_of_domain), bad_address = int(std::errc::bad_address), bad_file_descriptor = int(std::errc::bad_file_descriptor),
  broken_pipe = int(std::errc::broken_pipe), device_or_resource_busy = int(std::errc::device_or_resource_busy), directory_not_empty = int(std::errc::directory_not_empty), executable_format_error = int(std::errc::executable_format_error),
  file_exists = int(std::errc::file_exists), file_too_large = int(std::errc::file_too_large), filename_too_long = int(std::errc::filename_too_long), function_not_supported = int(std::errc::function_not_supported),
  illegal_byte_sequence = int(std::errc::illegal_byte_sequence), inappropriate_io_control_operation, interrupted = int(std::errc::interrupted), invalid_argument = int(std::errc::invalid_argument),
  invalid_seek = int(std::errc::invalid_seek), io_error = int(std::errc::io_error), is_a_directory = int(std::errc::is_a_directory), no_child_process = int(std::errc::no_child_process),
  no_lock_available = int(std::errc::no_lock_available), no_space_on_device = int(std::errc::no_space_on_device), no_such_device_or_address = int(std::errc::no_such_device_or_address), no_such_device = int(std::errc::no_such_device),
  no_such_file_or_directory = int(std::errc::no_such_file_or_directory), no_such_process = int(std::errc::no_such_process), not_a_directory = int(std::errc::not_a_directory), not_enough_memory = int(std::errc::not_enough_memory),
  operation_not_permitted = int(std::errc::operation_not_permitted), permission_denied = int(std::errc::permission_denied), read_only_file_system = int(std::errc::read_only_file_system), resource_deadlock_would_occur = int(std::errc::resource_deadlock_would_occur),
  resource_unavailable_try_again, result_out_of_range = int(std::errc::result_out_of_range), too_many_files_open_in_system = int(std::errc::too_many_files_open_in_system), too_many_files_open = int(std::errc::too_many_files_open),
  too_many_links = int(std::errc::too_many_links)
}
enum  ZeroBehavior { ZB_Undefined, ZB_Max, ZB_Width }
 The behavior an operation has on an input of 0. More...
enum  RemapFlags { RF_None = 0, RF_NoModuleLevelChanges = 1, RF_IgnoreMissingEntries = 2 }
 RemapFlags - These are flags that the value mapping APIs allow. More...
enum  AArch64FrameOffsetStatus { AArch64FrameOffsetCannotUpdate = 0x0, AArch64FrameOffsetIsLegal = 0x1, AArch64FrameOffsetCanUpdate = 0x2 }
 Use to report the frame offset status in isAArch64FrameOffsetLegal. More...
enum  NEONModImmType { VMOVModImm, VMVNModImm, OtherModImm }
enum  AddressSpace {
  ADDRESS_SPACE_GENERIC = 0, ADDRESS_SPACE_GLOBAL = 1, ADDRESS_SPACE_SHARED = 3, ADDRESS_SPACE_CONST = 4,
  ADDRESS_SPACE_LOCAL = 5, ADDRESS_SPACE_PARAM = 101
}
enum  PropertyAnnotation {
  PROPERTY_MAXNTID_X = 0, PROPERTY_MAXNTID_Y, PROPERTY_MAXNTID_Z, PROPERTY_REQNTID_X,
  PROPERTY_REQNTID_Y, PROPERTY_REQNTID_Z, PROPERTY_MINNCTAPERSM, PROPERTY_ISTEXTURE,
  PROPERTY_ISSURFACE, PROPERTY_ISSAMPLER, PROPERTY_ISREADONLY_IMAGE_PARAM, PROPERTY_ISWRITEONLY_IMAGE_PARAM,
  PROPERTY_ISREADWRITE_IMAGE_PARAM, PROPERTY_ISKERNEL_FUNCTION, PROPERTY_ALIGN, PROPERTY_MANAGED,
  PROPERTY_LAST
}
enum  { SM_SentinelUndef = -1, SM_SentinelZero = -2 }
enum  IntrinsicType {
  INTR_NO_TYPE, GATHER, SCATTER, PREFETCH,
  RDSEED, RDRAND, RDPMC, RDTSC,
  XTEST, ADX, INTR_TYPE_1OP, INTR_TYPE_2OP,
  INTR_TYPE_3OP, CMP_MASK, CMP_MASK_CC, VSHIFT,
  VSHIFT_MASK, COMI, INTR_TYPE_1OP_MASK_RM, INTR_TYPE_2OP_MASK,
  FMA_OP_MASK, INTR_TYPE_SCALAR_MASK_RM, COMPRESS_EXPAND_IN_REG, COMPRESS_TO_MEM,
  EXPAND_FROM_MEM, BLEND
}
enum  OverflowCheckFlavor {
  OCF_UNSIGNED_ADD, OCF_SIGNED_ADD, OCF_UNSIGNED_SUB, OCF_SIGNED_SUB,
  OCF_UNSIGNED_MUL, OCF_SIGNED_MUL, OCF_INVALID
}
 Specific patterns of overflow check idioms that we match. More...

Functions

hash_code hash_value (const APFloat &Arg)
 See friend declarations above.
APFloat scalbn (APFloat X, int Exp)
APFloat abs (APFloat X)
 Returns the absolute value of the argument.
LLVM_READONLY APFloat minnum (const APFloat &A, const APFloat &B)
 Implements IEEE minNum semantics.
LLVM_READONLY APFloat maxnum (const APFloat &A, const APFloat &B)
 Implements IEEE maxNum semantics.
bool operator== (uint64_t V1, const APInt &V2)
bool operator!= (uint64_t V1, const APInt &V2)
raw_ostreamoperator<< (raw_ostream &OS, const APInt &I)
hash_code hash_value (const APInt &Arg)
bool operator== (int64_t V1, const APSInt &V2)
bool operator!= (int64_t V1, const APSInt &V2)
bool operator<= (int64_t V1, const APSInt &V2)
bool operator>= (int64_t V1, const APSInt &V2)
bool operator< (int64_t V1, const APSInt &V2)
bool operator> (int64_t V1, const APSInt &V2)
raw_ostreamoperator<< (raw_ostream &OS, const APSInt &I)
template<typename T >
bool operator== (ArrayRef< T > LHS, ArrayRef< T > RHS)
template<typename T >
bool operator!= (ArrayRef< T > LHS, ArrayRef< T > RHS)
template<typename KeyT , typename ValueT , typename KeyInfoT >
static size_t capacity_in_bytes (const DenseMap< KeyT, ValueT, KeyInfoT > &X)
template<class T >
df_iterator< Tdf_begin (const T &G)
template<class T >
df_iterator< Tdf_end (const T &G)
template<class T >
iterator_range< df_iterator< T > > depth_first (const T &G)
template<class T , class SetTy >
df_ext_iterator< T, SetTydf_ext_begin (const T &G, SetTy &S)
template<class T , class SetTy >
df_ext_iterator< T, SetTydf_ext_end (const T &G, SetTy &S)
template<class T , class SetTy >
iterator_range
< df_ext_iterator< T, SetTy > > 
depth_first_ext (const T &G, SetTy &S)
template<class T >
idf_iterator< Tidf_begin (const T &G)
template<class T >
idf_iterator< Tidf_end (const T &G)
template<class T >
iterator_range< idf_iterator< T > > inverse_depth_first (const T &G)
template<class T , class SetTy >
idf_ext_iterator< T, SetTyidf_ext_begin (const T &G, SetTy &S)
template<class T , class SetTy >
idf_ext_iterator< T, SetTyidf_ext_end (const T &G, SetTy &S)
template<class T , class SetTy >
iterator_range
< idf_ext_iterator< T, SetTy > > 
inverse_depth_first_ext (const T &G, SetTy &S)
template<typename T >
unsigned ComputeEditDistance (ArrayRef< T > FromArray, ArrayRef< T > ToArray, bool AllowReplacements=true, unsigned MaxEditDistance=0)
 Determine the edit distance between two sequences.
template<typename T >
std::enable_if
< is_integral_or_enum< T >
::value, hash_code >::type 
hash_value (T value)
 Compute a hash_code for any integer value.
template<typename T >
hash_code hash_value (const T *ptr)
 Compute a hash_code for a pointer's address.
template<typename T , typename U >
hash_code hash_value (const std::pair< T, U > &arg)
 Compute a hash_code for a pair of objects.
template<typename T >
hash_code hash_value (const std::basic_string< T > &arg)
 Compute a hash_code for a standard string.
void set_fixed_execution_hash_seed (size_t fixed_value)
 Override the execution seed with a fixed value.
template<typename InputIteratorT >
hash_code hash_combine_range (InputIteratorT first, InputIteratorT last)
 Compute a hash_code for a sequence of values.
template<typename... Ts>
hash_code hash_combine (const Ts &...args)
 Combine values into a single hash_code.
template<typename T >
void operator- (int, ilist_iterator< T >)
template<typename T >
void operator- (ilist_iterator< T >, int)
template<typename T >
void operator+ (int, ilist_iterator< T >)
template<typename T >
void operator+ (ilist_iterator< T >, int)
template<typename T >
bool operator!= (const T *LHS, const ilist_iterator< const T > &RHS)
template<typename T >
bool operator== (const T *LHS, const ilist_iterator< const T > &RHS)
template<typename T >
bool operator!= (T *LHS, const ilist_iterator< T > &RHS)
template<typename T >
bool operator== (T *LHS, const ilist_iterator< T > &RHS)
template<class T , class U >
bool operator== (const IntrusiveRefCntPtr< T > &A, const IntrusiveRefCntPtr< U > &B)
template<class T , class U >
bool operator!= (const IntrusiveRefCntPtr< T > &A, const IntrusiveRefCntPtr< U > &B)
template<class T , class U >
bool operator== (const IntrusiveRefCntPtr< T > &A, U *B)
template<class T , class U >
bool operator!= (const IntrusiveRefCntPtr< T > &A, U *B)
template<class T , class U >
bool operator== (T *A, const IntrusiveRefCntPtr< U > &B)
template<class T , class U >
bool operator!= (T *A, const IntrusiveRefCntPtr< U > &B)
template<class T >
bool operator== (std::nullptr_t A, const IntrusiveRefCntPtr< T > &B)
template<class T >
bool operator== (const IntrusiveRefCntPtr< T > &A, std::nullptr_t B)
template<class T >
bool operator!= (std::nullptr_t A, const IntrusiveRefCntPtr< T > &B)
template<class T >
bool operator!= (const IntrusiveRefCntPtr< T > &A, std::nullptr_t B)
template<class T >
iterator_range< Tmake_range (T x, T y)
 Convenience function for iterating over sub-ranges.
template<typename T >
iterator_range< Tmake_range (std::pair< T, T > p)
template<typename T , typename U >
void operator== (const Optional< T > &X, const Optional< U > &Y)
 Poison comparison between two Optional objects.
template<typename T , typename U >
void operator!= (const Optional< T > &X, const Optional< U > &Y)
 Poison comparison between two Optional objects.
template<typename T , typename U >
void operator< (const Optional< T > &X, const Optional< U > &Y)
 Poison comparison between two Optional objects.
template<typename T , typename U >
void operator<= (const Optional< T > &X, const Optional< U > &Y)
 Poison comparison between two Optional objects.
template<typename T , typename U >
void operator>= (const Optional< T > &X, const Optional< U > &Y)
 Poison comparison between two Optional objects.
template<typename T , typename U >
void operator> (const Optional< T > &X, const Optional< U > &Y)
 Poison comparison between two Optional objects.
template<typename PT1 , typename PT2 >
static bool operator== (PointerUnion< PT1, PT2 > lhs, PointerUnion< PT1, PT2 > rhs)
template<typename PT1 , typename PT2 >
static bool operator!= (PointerUnion< PT1, PT2 > lhs, PointerUnion< PT1, PT2 > rhs)
template<typename PT1 , typename PT2 >
static bool operator< (PointerUnion< PT1, PT2 > lhs, PointerUnion< PT1, PT2 > rhs)
template<class T >
po_iterator< Tpo_begin (const T &G)
template<class T >
po_iterator< Tpo_end (const T &G)
template<class T >
iterator_range< po_iterator< T > > post_order (const T &G)
template<class T , class SetType >
po_ext_iterator< T, SetType > po_ext_begin (T G, SetType &S)
template<class T , class SetType >
po_ext_iterator< T, SetType > po_ext_end (T G, SetType &S)
template<class T , class SetType >
iterator_range
< po_ext_iterator< T, SetType > > 
post_order_ext (const T &G, SetType &S)
template<class T >
ipo_iterator< Tipo_begin (const T &G, bool Reverse=false)
template<class T >
ipo_iterator< Tipo_end (const T &G)
template<class T >
iterator_range< ipo_iterator< T > > inverse_post_order (const T &G, bool Reverse=false)
template<class T , class SetType >
ipo_ext_iterator< T, SetType > ipo_ext_begin (const T &G, SetType &S)
template<class T , class SetType >
ipo_ext_iterator< T, SetType > ipo_ext_end (const T &G, SetType &S)
template<class T , class SetType >
iterator_range
< ipo_ext_iterator< T, SetType > > 
inverse_post_order_ext (const T &G, SetType &S)
template<class T >
scc_iterator< Tscc_begin (const T &G)
 Construct the begin iterator for a deduced graph type T.
template<class T >
scc_iterator< Tscc_end (const T &G)
 Construct the end iterator for a deduced graph type T.
template<class T >
scc_iterator< Inverse< T > > scc_begin (const Inverse< T > &G)
 Construct the begin iterator for a deduced graph type T's Inverse<T>.
template<class T >
scc_iterator< Inverse< T > > scc_end (const Inverse< T > &G)
 Construct the end iterator for a deduced graph type T's Inverse<T>.
template<class S1Ty , class S2Ty >
bool set_union (S1Ty &S1, const S2Ty &S2)
 set_union(A, B) - Compute A := A u B, return whether A changed.
template<class S1Ty , class S2Ty >
void set_intersect (S1Ty &S1, const S2Ty &S2)
 set_intersect(A, B) - Compute A := A ^ B Identical to set_intersection, except that it works on set<>'s and is nicer to use.
template<class S1Ty , class S2Ty >
S1Ty set_difference (const S1Ty &S1, const S2Ty &S2)
 set_difference(A, B) - Return A - B
template<class S1Ty , class S2Ty >
void set_subtract (S1Ty &S1, const S2Ty &S2)
 set_subtract(A, B) - Compute A := A - B
SmallBitVector operator& (const SmallBitVector &LHS, const SmallBitVector &RHS)
SmallBitVector operator| (const SmallBitVector &LHS, const SmallBitVector &RHS)
SmallBitVector operator^ (const SmallBitVector &LHS, const SmallBitVector &RHS)
template<typename T , unsigned N>
static size_t capacity_in_bytes (const SmallVector< T, N > &X)
template<unsigned ElementSize>
bool operator|= (SparseBitVector< ElementSize > &LHS, const SparseBitVector< ElementSize > *RHS)
template<unsigned ElementSize>
bool operator|= (SparseBitVector< ElementSize > *LHS, const SparseBitVector< ElementSize > &RHS)
template<unsigned ElementSize>
bool operator&= (SparseBitVector< ElementSize > *LHS, const SparseBitVector< ElementSize > &RHS)
template<unsigned ElementSize>
bool operator&= (SparseBitVector< ElementSize > &LHS, const SparseBitVector< ElementSize > *RHS)
template<unsigned ElementSize>
SparseBitVector< ElementSize > operator| (const SparseBitVector< ElementSize > &LHS, const SparseBitVector< ElementSize > &RHS)
template<unsigned ElementSize>
SparseBitVector< ElementSize > operator& (const SparseBitVector< ElementSize > &LHS, const SparseBitVector< ElementSize > &RHS)
template<unsigned ElementSize>
SparseBitVector< ElementSize > operator- (const SparseBitVector< ElementSize > &LHS, const SparseBitVector< ElementSize > &RHS)
template<unsigned ElementSize>
void dump (const SparseBitVector< ElementSize > &LHS, raw_ostream &out)
void EnableStatistics ()
 Enable the collection and printing of statistics.
bool AreStatisticsEnabled ()
 Check if statistics are enabled.
void PrintStatistics ()
 Print statistics to the file returned by CreateInfoOutputFile().
void PrintStatistics (raw_ostream &OS)
 Print statistics to the given output stream.
template<class T >
void deleter (T *Ptr)
template<class Iterator , class Func >
mapped_iterator< Iterator, Func > operator+ (typename mapped_iterator< Iterator, Func >::difference_type N, const mapped_iterator< Iterator, Func > &X)
template<class ItTy , class FuncTy >
mapped_iterator< ItTy, FuncTy > map_iterator (const ItTy &I, FuncTy F)
template<class T , std::size_t N>
LLVM_CONSTEXPR size_t array_lengthof (T(&)[N])
 Find the length of an array.
template<typename T >
int array_pod_sort_comparator (const void *P1, const void *P2)
 Adapt std::less<T> for array_pod_sort.
template<class IteratorTy >
void array_pod_sort (IteratorTy Start, IteratorTy End)
 array_pod_sort - This sorts an array with the specified start and end extent.
template<class IteratorTy >
void array_pod_sort (IteratorTy Start, IteratorTy End, int(*Compare)(const typename std::iterator_traits< IteratorTy >::value_type *, const typename std::iterator_traits< IteratorTy >::value_type *))
template<typename Container >
void DeleteContainerPointers (Container &C)
 For a container of pointers, deletes the pointers and then clears the container.
template<typename Container >
void DeleteContainerSeconds (Container &C)
 In a container of pairs (usually a map) whose second element is a pointer, deletes the second elements and then clears the container.
template<typename R , class UnaryPredicate >
bool all_of (R &&Range, UnaryPredicate &&P)
 Provide wrappers to std::all_of which take ranges instead of having to pass being/end explicitly.
template<class T , class... Args>
std::enable_if<!std::is_array
< T >::value, std::unique_ptr
< T > >::type 
make_unique (Args &&...args)
 Constructs a `new T()` with the given args and returns a `unique_ptr<T>` which owns the object.
template<class T >
std::enable_if< std::is_array
< T >::value &&std::extent< T >
::value==0, std::unique_ptr< T >
>::type 
make_unique (size_t n)
 Constructs a `new T[n]` with the given args and returns a `unique_ptr<T[]>` which owns the object.
template<class T , class... Args>
std::enable_if< std::extent< T >
::value!=0 >::type 
make_unique (Args &&...)
 This function isn't used and is only here to provide better compile errors.
static char hexdigit (unsigned X, bool LowerCase=false)
 hexdigit - Return the hexadecimal character for the given number X (which should be less than 16).
static StringRef toStringRef (bool B)
 Construct a string ref from a boolean.
static unsigned hexDigitValue (char C)
 Interpret the given character C as a hexadecimal digit and return its value.
template<typename IntTy >
static char * utohex_buffer (IntTy X, char *BufferEnd, bool LowerCase=false)
 utohex_buffer - Emit the specified number into the buffer specified by BufferEnd, returning a pointer to the start of the string.
static std::string utohexstr (uint64_t X, bool LowerCase=false)
static std::string utostr_32 (uint32_t X, bool isNeg=false)
static std::string utostr (uint64_t X, bool isNeg=false)
static std::string itostr (int64_t X)
StringRef::size_type StrInStrNoCase (StringRef s1, StringRef s2)
 StrInStrNoCase - Portable version of strcasestr.
std::pair< StringRef, StringRefgetToken (StringRef Source, StringRef Delimiters=" \t\n\v\f\r")
 getToken - This function extracts one token from source, ignoring any leading characters that appear in the Delimiters string, and ending the token at any of the characters that appear in the Delimiters string.
void SplitString (StringRef Source, SmallVectorImpl< StringRef > &OutFragments, StringRef Delimiters=" \t\n\v\f\r")
 SplitString - Split up the specified string according to the specified delimiters, appending the result fragments to the output list.
static unsigned HashString (StringRef Str, unsigned Result=0)
 HashString - Hash function for strings.
static StringRef getOrdinalSuffix (unsigned Val)
 Returns the English suffix for an ordinal integer (-st, -nd, -rd, -th).
template<typename IteratorT >
std::string join_impl (IteratorT Begin, IteratorT End, StringRef Separator, std::input_iterator_tag)
template<typename IteratorT >
std::string join_impl (IteratorT Begin, IteratorT End, StringRef Separator, std::forward_iterator_tag)
template<typename IteratorT >
std::string join (IteratorT Begin, IteratorT End, StringRef Separator)
 Joins the strings in the range [Begin, End), adding Separator between the elements.
bool getAsUnsignedInteger (StringRef Str, unsigned Radix, unsigned long long &Result)
 Helper functions for StringRef::getAsInteger.
bool getAsSignedInteger (StringRef Str, unsigned Radix, long long &Result)
hash_code hash_value (StringRef S)
 Compute a hash_code for a StringRef.
bool isNoAliasCall (const Value *V)
 isNoAliasCall - Return true if this pointer is returned by a noalias function.
bool isNoAliasArgument (const Value *V)
 isNoAliasArgument - Return true if this is an argument with the noalias attribute.
bool isIdentifiedObject (const Value *V)
 isIdentifiedObject - Return true if this pointer refers to a distinct and identifiable object.
bool isIdentifiedFunctionLocal (const Value *V)
 isIdentifiedFunctionLocal - Return true if V is umabigously identified at the function-level.
raw_ostreamoperator<< (raw_ostream &OS, const AliasSet &AS)
raw_ostreamoperator<< (raw_ostream &OS, const AliasSetTracker &AST)
ModulePasscreateCallGraphViewerPass ()
ModulePasscreateCallGraphPrinterPass ()
bool PointerMayBeCaptured (const Value *V, bool ReturnCaptures, bool StoreCaptures)
 PointerMayBeCaptured - Return true if this pointer value may be captured by the enclosing function (which is required to exist).
bool PointerMayBeCapturedBefore (const Value *V, bool ReturnCaptures, bool StoreCaptures, const Instruction *I, DominatorTree *DT, bool IncludeI=false)
 PointerMayBeCapturedBefore - Return true if this pointer value may be captured by the enclosing function (which is required to exist).
void PointerMayBeCaptured (const Value *V, CaptureTracker *Tracker)
 PointerMayBeCaptured - Visit the value and the values derived from it and find values which appear to be capturing the pointer value.
void FindFunctionBackedges (const Function &F, SmallVectorImpl< std::pair< const BasicBlock *, const BasicBlock * > > &Result)
 Analyze the specified function to find all of the loop backedges in the function and return them.
unsigned GetSuccessorNumber (BasicBlock *BB, BasicBlock *Succ)
 Search for the specified successor of basic block BB and return its position in the terminator instruction's list of successors.
bool isCriticalEdge (const TerminatorInst *TI, unsigned SuccNum, bool AllowIdenticalEdges=false)
 Return true if the specified edge is a critical edge.
bool isPotentiallyReachable (const Instruction *From, const Instruction *To, const DominatorTree *DT=nullptr, const LoopInfo *LI=nullptr)
 Determine whether instruction 'To' is reachable from 'From', returning true if uncertain.
bool isPotentiallyReachable (const BasicBlock *From, const BasicBlock *To, const DominatorTree *DT=nullptr, const LoopInfo *LI=nullptr)
 Determine whether block 'To' is reachable from 'From', returning true if uncertain.
FunctionPasscreateCFGPrinterPass ()
FunctionPasscreateCFGOnlyPrinterPass ()
template<typename CGSCCPassT >
ModuleToPostOrderCGSCCPassAdaptor
< CGSCCPassT > 
createModuleToPostOrderCGSCCPassAdaptor (CGSCCPassT Pass)
 A function to deduce a function pass type and wrap it in the templated adaptor.
template<typename FunctionPassT >
CGSCCToFunctionPassAdaptor
< FunctionPassT > 
createCGSCCToFunctionPassAdaptor (FunctionPassT Pass)
 A function to deduce a function pass type and wrap it in the templated adaptor.
bool callIsSmall (ImmutableCallSite CS)
 Check whether a call will lower to something small.
ConstantConstantFoldInstruction (Instruction *I, const DataLayout &DL, const TargetLibraryInfo *TLI=nullptr)
 ConstantFoldInstruction - Try to constant fold the specified instruction.
ConstantConstantFoldConstantExpression (const ConstantExpr *CE, const DataLayout &DL, const TargetLibraryInfo *TLI=nullptr)
 ConstantFoldConstantExpression - Attempt to fold the constant expression using the specified DataLayout.
ConstantConstantFoldInstOperands (unsigned Opcode, Type *DestTy,