LLVM API Documentation

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

List of target independent CodeGen pass IDs. More...

Namespaces

namespace  A64AT
namespace  A64CC
namespace  A64DB
namespace  A64DC
namespace  A64IC
namespace  A64Imms
namespace  A64ISB
namespace  A64PRFM
namespace  A64PState
namespace  A64SE
namespace  A64SysReg
namespace  A64TLBI
namespace  AArch64
namespace  AArch64_MC
namespace  AArch64II
namespace  AArch64ISD
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  ARMCC
namespace  ARMCP
namespace  ARMII
namespace  ARMISD
namespace  ARMRI
 

Register allocation hints.


namespace  AttributeFuncs
namespace  bitc
namespace  CallingConv
namespace  cl
namespace  CodeGenOpt
namespace  CodeModel
namespace  COFF
namespace  COFFYAML
namespace  CU
namespace  detail
namespace  dont_use
namespace  DOT
namespace  dwarf
namespace  DWARFFlavour
namespace  ELF
namespace  ELFYAML
namespace  EngineKind
namespace  ExceptionHandling
namespace  FloatABI
namespace  FPOpFusion
namespace  GC
namespace  GCOV
namespace  GraphProgram
namespace  hashing
namespace  Hexagon
namespace  HexagonII
namespace  HexagonISD
namespace  InlineConstants
namespace  IntervalMapImpl
namespace  Intrinsic
namespace  ISD
namespace  jitprofiling
namespace  LCOMM
namespace  LibFunc
namespace  lltok
namespace  MachO
namespace  MBlaze
namespace  MBlazeCC
namespace  MBlazeII
namespace  MBlazeISD
namespace  MCD
namespace  MCID
namespace  MCOI
namespace  Mips
namespace  MipsII
namespace  MipsISD
namespace  MSP430II
namespace  MSP430ISD
namespace  N86
namespace  NVPTX
namespace  NVPTXCC
namespace  NVPTXISD
namespace  objcarc
namespace  object
namespace  opt
namespace  PatternMatch
namespace  PICStyles
namespace  PPC
 

Define some predicates that are used for node matching.


namespace  PPCII
namespace  PPCISD
namespace  RegState
namespace  Reloc
namespace  RTLIB
namespace  Sched
namespace  SPCC
namespace  SPII
 

SPII - This namespace holds target specific flags for instruction info.


namespace  SPISD
namespace  support
namespace  sys
namespace  SystemZ
namespace  SystemZCP
namespace  SystemZII
namespace  SystemZISD
namespace  SystemZMC
namespace  TargetOpcode
namespace  tgtok
namespace  TLSModel
namespace  types
namespace  Win64EH
namespace  X86
 

Define some predicates that are used for node matching.


namespace  X86_MC
namespace  X86Disassembler
namespace  X86II
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
class  MutableArrayRef
struct  isPodLike< ArrayRef< T > >
class  BitVector
class  DAGDeltaAlgorithm
class  DeltaAlgorithm
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
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  EquivalenceClasses
class  FoldingSetImpl
struct  DefaultFoldingSetTrait
struct  FoldingSetTrait
struct  DefaultContextualFoldingSetTrait
struct  ContextualFoldingSetTrait
class  FoldingSetNodeIDRef
class  FoldingSetNodeID
class  FoldingSet
class  ContextualFoldingSet
class  FoldingSetVectorIterator
class  FoldingSetVector
class  FoldingSetIteratorImpl
class  FoldingSetIterator
class  FoldingSetBucketIteratorImpl
class  FoldingSetBucketIterator
class  FoldingSetNodeWrapper
class  FastFoldingSetNode
struct  FoldingSetTrait< T * >
struct  GraphTraits
struct  Inverse
struct  GraphTraits< Inverse< Inverse< T > > >
class  hash_code
 An opaque object representing a hash code. More...
struct  ilist_nextprev_traits
struct  ilist_sentinel_traits
struct  ilist_node_traits
struct  ilist_default_traits
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
struct  ilist
class  ilist_half_node
class  ilist_node
class  Interval
struct  ImutIntervalInfo
class  ImutIntervalAVLFactory
class  ImmutableIntervalMap
class  ImmutableListImpl
class  ImmutableList
class  ImmutableListFactory
struct  DenseMapInfo< ImmutableList< T > >
struct  isPodLike< ImmutableList< T > >
struct  ImutKeyValueInfo
class  ImmutableMap
class  ImmutableMapRef
class  ImutAVLTree
class  ImutAVLFactory
class  ImutAVLTreeGenericIterator
class  ImutAVLTreeInOrderIterator
struct  ImutProfileInfo
struct  ImutProfileInteger
 Profile traits for integers. More...
struct  ImutProfileInfo< T * >
struct  ImutContainerInfo
struct  ImutContainerInfo< T * >
class  ImmutableSet
class  ImmutableSetRef
class  IndexedMap
class  IntEqClasses
struct  IntervalMapInfo
struct  IntervalMapHalfOpenInfo
class  IntervalMap
class  IntervalMapOverlaps
class  RefCountedBase
class  RefCountedBaseVPTR
struct  IntrusiveRefCntPtrInfo
class  IntrusiveRefCntPtr
struct  simplify_type< IntrusiveRefCntPtr< T > >
struct  simplify_type< const IntrusiveRefCntPtr< T > >
class  MapVector
class  NullablePtr
class  Optional
struct  isPodLike< Optional< T > >
class  OwningPtr
class  OwningArrayPtr
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. Both signed and unsigned types can be used, e.g. More...
class  PointerIntPair
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. For: More...
struct  PointerUnionTypeSelector< T, T, RET_EQ, RET_NE >
struct  PointerUnionTypeSelectorReturn< PointerUnionTypeSelector< T1, T2, RET_EQ, RET_NE > >
class  PointerUnionUIntTraits
class  PointerUnion
class  PointerLikeTypeTraits< PointerUnion< PT1, PT2 > >
class  PointerUnion3
class  PointerLikeTypeTraits< PointerUnion3< PT1, PT2, PT3 > >
class  PointerUnion4
class  PointerLikeTypeTraits< PointerUnion4< PT1, PT2, PT3, PT4 > >
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
class  scc_iterator
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
class  SmallPtrSetImpl
class  SmallPtrSetIteratorImpl
class  SmallPtrSetIterator
 SmallPtrSetIterator - This implements a const_iterator for SmallPtrSet. More...
struct  RoundUpToPowerOfTwoH
struct  RoundUpToPowerOfTwoH< N, false >
struct  RoundUpToPowerOfTwo
class  SmallPtrSet
class  SmallSet
class  SmallSet< PointeeType *, N >
class  SmallString
class  SmallVectorBase
class  SmallVectorTemplateCommon
class  SmallVectorTemplateBase
class  SmallVectorTemplateBase< T, true >
class  SmallVectorImpl
struct  SmallVectorStorage
struct  SmallVectorStorage< T, 1 >
struct  SmallVectorStorage< T, 0 >
class  SmallVector
struct  SparseBitVectorElement
struct  ilist_traits< SparseBitVectorElement< ElementSize > >
class  SparseBitVector
class  SparseMultiSet
struct  SparseSetValTraits
struct  SparseSetValFunctor
struct  SparseSetValFunctor< KeyT, KeyT, KeyFunctorT >
class  SparseSet
class  Statistic
struct  identity
struct  less_ptr
struct  greater_ptr
class  mapped_iterator
struct  tier
class  StringMapEntryInitializer
class  StringMapEntryBase
 StringMapEntryBase - Shared base class of StringMapEntry instances. More...
class  StringMapImpl
class  StringMapEntry
class  StringMap
class  StringMapConstIterator
class  StringMapIterator
class  StringRef
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
class  Triple
class  Twine
class  UniqueVector
struct  ValueMapConfig
class  ValueMap
 See the file comment. More...
class  ValueMapCallbackVH
struct  DenseMapInfo< ValueMapCallbackVH< KeyT, ValueT, Config > >
class  ValueMapIterator
class  ValueMapConstIterator
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  BlockFrequencyImpl
class  BlockFrequencyInfo
class  BranchProbabilityInfo
 Analysis pass providing branch probability information. More...
class  CallGraph
class  CallGraphNode
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
struct  DOTGraphTraits< const Function * >
struct  CodeMetrics
 Utility to calculate the size and a few similar metrics for a set of basic blocks. More...
class  constant_iterator
class  Dependence
class  FullDependence
class  DependenceAnalysis
class  DominanceFrontierBase
class  DominanceFrontier
class  DominatorBase
class  DomTreeNodeBase
class  DominatorTreeBase
class  BasicBlockEdge
class  DominatorTree
struct  GraphTraits< DomTreeNode * >
struct  GraphTraits< DominatorTree * >
class  DOTGraphTraitsViewer
class  DOTGraphTraitsPrinter
class  DOTGraphTraitsModuleViewer
class  DOTGraphTraitsModulePrinter
class  FindUsedTypes
class  InlineCost
 Represents the cost of inlining a function. More...
class  InlineCostAnalysis
 Cost analyzer used by inliner. More...
struct  GraphTraits< Interval * >
struct  GraphTraits< Inverse< Interval * > >
class  IntervalIterator
class  IntervalPartition
class  IVStrideUse
struct  ilist_traits< IVStrideUse >
class  IVUsers
class  LazyValueInfo
struct  LibCallAliasAnalysis
 LibCallAliasAnalysis - Alias analysis driven from LibCallInfo. More...
struct  LibCallLocationInfo
struct  LibCallFunctionInfo
class  LibCallInfo
class  LoopBase
class  Loop
class  LoopInfoBase
class  LoopInfo
struct  GraphTraits< const Loop * >
struct  GraphTraits< Loop * >
class  LoopBlocksDFS
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 ponted by a Value* statically. Fails if size or offset are not known at compile time. More...
class  ObjectSizeOffsetEvaluator
 Evaluate the size and offset of an object ponted by a Value*. May create code to compute the result at run-time. More...
class  MemDepResult
class  NonLocalDepEntry
class  NonLocalDepResult
class  MemoryDependenceAnalysis
class  BallLarusNode
class  BallLarusEdge
class  BallLarusDag
class  ProfilePathEdge
class  ProfilePath
class  PathProfileInfo
class  PHITransAddr
struct  PostDominatorTree
struct  GraphTraits< PostDominatorTree * >
class  ProfileDataT
 The ProfileDataT<FType, BType> class is used to store the mapping of profiling data to control flow edges. More...
class  ProfileDataLoader
class  ProfileInfoT
class  ProfileInfoLoader
class  PtrUseVisitor
 A base class for visitors over the uses of a pointer value. More...
class  FlatIt
 Marker class to iterate over the elements of a Region in flat mode. More...
class  RegionNode
 A RegionNode represents a subregion or a BasicBlock that is part of a Region. More...
class  Region
 A single entry single exit Region. More...
class  RegionInfo
 Analysis that detects all canonical Regions. More...
class  RNSuccIterator
 Hierarchical RegionNode successor iterator. More...
class  RNSuccIterator< FlatIt< NodeType > >
 Flat RegionNode iterator. More...
struct  GraphTraits< RegionInfo * >
class  RegionPass
 A pass that runs on each Region in a function. More...
class  RGPassManager
 The pass manager to schedule RegionPasses. More...
class  SCEV
struct  FoldingSetTrait< SCEV >
struct  SCEVCouldNotCompute
class  ScalarEvolution
class  SCEVExpander
class  SCEVConstant
class  SCEVCastExpr
class  SCEVTruncateExpr
class  SCEVZeroExtendExpr
class  SCEVSignExtendExpr
class  SCEVNAryExpr
class  SCEVCommutativeExpr
class  SCEVAddExpr
class  SCEVMulExpr
class  SCEVUDivExpr
class  SCEVAddRecExpr
class  SCEVSMaxExpr
class  SCEVUMaxExpr
class  SCEVUnknown
struct  SCEVVisitor
class  SCEVTraversal
struct  SCEVRewriter
struct  SCEVParameterRewriter
struct  SCEVApplyRewriter
class  AbstractLatticeFunction
class  SparseSolver
class  TargetTransformInfo
class  Trace
class  AssemblyAnnotationWriter
class  BitCodeAbbrevOp
struct  isPodLike< BitCodeAbbrevOp >
class  BitCodeAbbrev
class  BitstreamReader
struct  BitstreamEntry
class  BitstreamCursor
class  BitstreamWriter
class  AsmPrinter
class  VirtRegAuxInfo
class  CalculateSpillWeights
class  CCValAssign
 CCValAssign - Represent assignment of one arg/retval to a location. More...
class  CCState
class  DFAPacketizer
class  VLIWPacketizerList
class  EdgeBundles
class  FastISel
class  FunctionLoweringInfo
struct  GCPoint
struct  GCRoot
class  GCFunctionInfo
class  GCModuleInfo
class  GCMetadataPrinter
class  GCStrategy
class  IntrinsicLowering
class  JITCodeEmitter
struct  latency_sort
 Sorting functions for the Available queue. More...
class  LatencyPriorityQueue
class  LexicalScopes
class  LexicalScope
class  VNInfo
struct  LiveRange
struct  isPodLike< LiveRange >
class  LiveInterval
class  LiveRangeUpdater
class  LiveRangeQuery
class  ConnectedVNInfoEqClasses
class  LiveIntervals
class  LiveIntervalUnion
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  MachineBlockFrequencyInfo
class  MachineBranchProbabilityInfo
class  MachineCodeEmitter
class  MachineCodeInfo
class  MachineConstantPoolValue
class  MachineConstantPoolEntry
 An entry in a MachineConstantPool. More...
class  MachineConstantPool
 The machine constant pool. More...
class  MachineDominatorTree
struct  GraphTraits< MachineDomTreeNode * >
struct  GraphTraits< MachineDominatorTree * >
class  CalleeSavedInfo
class  MachineFrameInfo
 Abstract Stack Frame Information. More...
struct  ilist_traits< MachineBasicBlock >
struct  MachineFunctionInfo
class  MachineFunction
struct  GraphTraits< MachineFunction * >
struct  GraphTraits< const MachineFunction * >
struct  GraphTraits< Inverse< MachineFunction * > >
struct  GraphTraits< Inverse< const MachineFunction * > >
struct  MachineFunctionAnalysis
class  MachineFunctionPass
class  MachineInstr
struct  MachineInstrExpressionTrait
class  MachineInstrBuilder
class  MIBundleBuilder
class  MachineOperandIteratorBase
class  MIOperands
class  ConstMIOperands
class  MIBundleOperands
class  ConstMIBundleOperands
struct  MachineJumpTableEntry
class  MachineJumpTableInfo
class  MachineLoop
class  MachineLoopInfo
struct  GraphTraits< const MachineLoop * >
struct  GraphTraits< MachineLoop * >
struct  MachinePointerInfo
class  MachineMemOperand
struct  LandingPadInfo
class  MachineModuleInfoImpl
class  MachineModuleInfo
class  MachineModuleInfoMachO
class  MachineModuleInfoELF
class  MachineOperand
class  MachinePassRegistryListener
class  MachinePassRegistryNode
class  MachinePassRegistry
class  RegisterPassParser
struct  MachinePostDominatorTree
class  MachineRegisterInfo
class  MachineRelocation
struct  MachineSchedContext
class  MachineSchedRegistry
class  MachineSchedStrategy
class  ReadyQueue
class  ScheduleDAGMutation
 Mutate the DAG as a postpass after normal DAG building. More...
class  ScheduleDAGMI
class  MachineSSAUpdater
class  MachineTraceMetrics
class  MachORelocation
class  IdentifyingPassPtr
struct  isPodLike< IdentifyingPassPtr >
class  TargetPassConfig
class  PseudoSourceValue
class  FixedStackPseudoSourceValue
class  PBQPRAProblem
class  PBQPBuilder
class  PBQPBuilderWithCoalescing
 Extended builder which adds coalescing constraints to a problem. More...
class  RegisterRegAlloc
class  RegisterClassInfo
struct  RegisterPressure
 Base class for register pressure results. More...
struct  IntervalPressure
struct  RegionPressure
struct  PressureElement
struct  RegPressureDelta
struct  LiveRegSet
 A set of live virtual registers and physical register units. More...
class  RegPressureTracker
class  RegScavenger
struct  resource_sort
 Sorting functions for the Available queue. More...
class  ResourcePriorityQueue
class  SDep
struct  isPodLike< SDep >
class  SUnit
 SUnit - Scheduling unit. This is a node in the scheduling DAG. More...
class  SchedulingPriorityQueue
class  ScheduleDAG
class  SUnitIterator
struct  GraphTraits< SUnit * >
struct  GraphTraits< ScheduleDAG * >
class  ScheduleDAGTopologicalSort
struct  VReg2SUnit
 An individual mapping from virtual register number to SUnit. More...
struct  PhysRegSUOper
class  ScheduleDAGInstrs
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
class  RegisterScheduler
class  ScoreboardHazardRecognizer
struct  ilist_traits< SDNode >
class  SDDbgInfo
class  SelectionDAG
struct  GraphTraits< SelectionDAG * >
class  SelectionDAGISel
struct  SDVTList
class  SDValue
struct  DenseMapInfo< SDValue >
struct  isPodLike< SDValue >
struct  simplify_type< SDValue >
struct  simplify_type< const SDValue >
class  SDUse
struct  simplify_type< SDUse >
class  SDNode
class  SDLoc
class  UnarySDNode
class  BinarySDNode
class  TernarySDNode
class  HandleSDNode
class  MemSDNode
 Abstact virtual class for operations for memory operations. More...
class  AtomicSDNode
class  MemIntrinsicSDNode
class  ShuffleVectorSDNode
class  ConstantSDNode
class  ConstantFPSDNode
class  GlobalAddressSDNode
class  FrameIndexSDNode
class  JumpTableSDNode
class  ConstantPoolSDNode
class  TargetIndexSDNode
 Completely target-dependent object reference. More...
class  BasicBlockSDNode
class  BuildVectorSDNode
class  SrcValueSDNode
class  MDNodeSDNode
class  RegisterSDNode
class  RegisterMaskSDNode
class  BlockAddressSDNode
class  EHLabelSDNode
class  ExternalSymbolSDNode
class  CondCodeSDNode
class  CvtRndSatSDNode
class  VTSDNode
class  LSBaseSDNode
class  LoadSDNode
class  StoreSDNode
class  MachineSDNode
class  SDNodeIterator
struct  GraphTraits< SDNode * >
class  IndexListEntry
struct  ilist_traits< IndexListEntry >
class  SlotIndex
 SlotIndex - An opaque wrapper around machine indexes. More...
struct  isPodLike< SlotIndex >
struct  Idx2MBBCompare
class  SlotIndexes
struct  IntervalMapInfo< SlotIndex >
class  TargetLoweringObjectFileELF
class  TargetLoweringObjectFileMachO
class  TargetLoweringObjectFileCOFF
class  TargetSchedModel
 Provide an instruction scheduling machine model to CodeGen passes. More...
class  MVT
struct  EVT
class  VirtRegMap
class  DILineInfo
 DILineInfo - a format-neutral container for source line information. More...
class  DIInliningInfo
 DIInliningInfo - a format-neutral container for inlined code description. More...
class  DILineInfoSpecifier
class  DIContext
class  DWARFFormValue
class  DIDescriptor
class  DISubrange
 DISubrange - This is used to represent ranges, for array bounds. More...
class  DIArray
 DIArray - This descriptor holds an array of descriptors. More...
class  DIScope
 DIScope - A base class for various scopes. More...
class  DIFile
 DIFile - This is a wrapper for a file. More...
class  DICompileUnit
 DICompileUnit - A wrapper for a compile unit. More...
class  DIEnumerator
class  DIType
class  DIBasicType
 DIBasicType - A basic type, like 'int' or 'float'. More...
class  DIDerivedType
class  DICompositeType
class  DITemplateTypeParameter
 DITemplateTypeParameter - This is a wrapper for template type parameter. More...
class  DITemplateValueParameter
 DITemplateValueParameter - This is a wrapper for template value parameter. More...
class  DISubprogram
 DISubprogram - This is a wrapper for a subprogram (e.g. a function). More...
class  DIGlobalVariable
 DIGlobalVariable - This is a wrapper for a global variable. More...
class  DIVariable
class  DILexicalBlock
 DILexicalBlock - This is a wrapper for a lexical block. More...
class  DILexicalBlockFile
class  DINameSpace
 DINameSpace - A wrapper for a C++ style name space. More...
class  DILocation
class  DIObjCProperty
class  DIImportedEntity
 An imported module (C++ using directive or similar). More...
class  DebugInfoFinder
class  DIBuilder
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
struct  GenericValue
struct  JITEvent_EmittedFunctionDetails
class  JITEventListener
class  JITMemoryManager
class  ObjectBuffer
class  ObjectBufferStream
class  ObjectCache
class  ObjectImage
class  OProfileWrapper
class  RTDyldMemoryManager
class  RuntimeDyld
class  SectionMemoryManager
class  GVMaterializer
class  Argument
 LLVM Argument representation. More...
class  Attribute
class  AttributeSet
struct  DenseMapInfo< AttributeSet >
class  AttrBuilder
struct  ilist_traits< Instruction >
class  BasicBlock
 LLVM Basic Block Representation. More...
class  Constant
 LLVM Constant Representation. More...
class  ConstantInt
 Class for constant integers. More...
class  ConstantFP
class  ConstantAggregateZero
class  ConstantArray
struct  OperandTraits< ConstantArray >
class  ConstantStruct
struct  OperandTraits< ConstantStruct >
class  ConstantVector
struct  OperandTraits< ConstantVector >
class  ConstantPointerNull
class  ConstantDataSequential
class  ConstantDataArray
class  ConstantDataVector
class  BlockAddress
struct  OperandTraits< BlockAddress >
class  ConstantExpr
struct  OperandTraits< ConstantExpr >
class  UndefValue
struct  LayoutAlignElem
struct  PointerAlignElem
class  DataLayout
class  StructLayout
class  IntegerType
 Integer representation type. More...
class  FunctionType
class  CompositeType
class  StructType
class  SequentialType
class  ArrayType
class  VectorType
class  PointerType
struct  ilist_traits< BasicBlock >
struct  ilist_traits< Argument >
class  Function
class  GlobalAlias
struct  OperandTraits< GlobalAlias >
class  GlobalValue
class  GlobalVariable
struct  OperandTraits< GlobalVariable >
class  InlineAsm
class  TerminatorInst
class  UnaryInstruction
struct  OperandTraits< UnaryInstruction >
class  BinaryOperator
struct  OperandTraits< BinaryOperator >
class  CastInst
 Base class of casting instructions. More...
class  CmpInst
 Abstract base class of comparison instructions. More...
struct  OperandTraits< CmpInst >
class  Instruction
class  PointerLikeTypeTraits< Instruction * >
class  AllocaInst
class  LoadInst
class  StoreInst
struct  OperandTraits< StoreInst >
class  FenceInst
class  AtomicCmpXchgInst
struct  OperandTraits< AtomicCmpXchgInst >
class  AtomicRMWInst
struct  OperandTraits< AtomicRMWInst >
class  GetElementPtrInst
struct  OperandTraits< GetElementPtrInst >
class  ICmpInst
 Represent an integer comparison operator. More...
class  FCmpInst
 Represents a floating point comparison operator. More...
class  CallInst
struct  OperandTraits< CallInst >
class  SelectInst
struct  OperandTraits< SelectInst >
class  VAArgInst
class  ExtractElementInst
struct  OperandTraits< ExtractElementInst >
class  InsertElementInst
struct  OperandTraits< InsertElementInst >
class  ShuffleVectorInst
struct  OperandTraits< ShuffleVectorInst >
class  ExtractValueInst
class  InsertValueInst
struct  OperandTraits< InsertValueInst >
class  PHINode
struct  OperandTraits< PHINode >
class  LandingPadInst
struct  OperandTraits< LandingPadInst >
class  ReturnInst
struct  OperandTraits< ReturnInst >
class  BranchInst
struct  OperandTraits< BranchInst >
class  SwitchInst
struct  OperandTraits< SwitchInst >
class  IndirectBrInst
struct  OperandTraits< IndirectBrInst >
class  InvokeInst
struct  OperandTraits< InvokeInst >
class  ResumeInst
struct  OperandTraits< ResumeInst >
class  UnreachableInst
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  IntrinsicInst
class  DbgInfoIntrinsic
class  DbgDeclareInst
class  DbgValueInst
class  MemIntrinsic
class  MemSetInst
class  MemTransferInst
class  MemCpyInst
class  MemMoveInst
class  VAStartInst
class  VAEndInst
class  VACopyInst
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  LLVMContext
class  MDBuilder
class  MDString
class  MDNode
 MDNode - a tuple of other values. More...
class  NamedMDNode
struct  ilist_traits< Function >
struct  ilist_traits< GlobalVariable >
struct  ilist_traits< GlobalAlias >
struct  ilist_traits< NamedMDNode >
class  Module
 The main container class for the LLVM Intermediate Representation. More...
struct  FixedNumOperandTraits
struct  OptionalOperandTraits
struct  VariadicOperandTraits
struct  HungoffOperandTraits
class  Operator
class  OverflowingBinaryOperator
class  PossiblyExactOperator
class  FastMathFlags
 Convenience struct for specifying and reasoning about fast-math flags. More...
class  FPMathOperator
class  ConcreteOperator
class  AddOperator
class  SubOperator
class  MulOperator
class  ShlOperator
class  SDivOperator
class  UDivOperator
class  AShrOperator
class  LShrOperator
class  GEPOperator
class  SymbolTableListTraits
class  Type
struct  isa_impl< PointerType, Type >
struct  GraphTraits< Type * >
struct  GraphTraits< const Type * >
class  TypeBuilder
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 >
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
class  PointerLikeTypeTraits< Use ** >
class  Use
struct  simplify_type< Use >
struct  simplify_type< const Use >
class  value_use_iterator
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< MDNode, Value >
class  PointerLikeTypeTraits< Value * >
class  ValueSymbolTable
class  Linker
class  MachineLocation
class  MCAsmBackend
 MCAsmBackend - Generic interface to target specific assembler backends. More...
class  MCAsmInfo
class  MCAsmInfoCOFF
class  MCAsmInfoMicrosoft
class  MCAsmInfoGNUCOFF
class  MCAsmInfoDarwin
class  MCAsmLayout
class  MCFragment
class  MCEncodedFragment
class  MCEncodedFragmentWithFixups
class  MCDataFragment
class  MCCompactEncodedInstFragment
class  MCRelaxableFragment
class  MCAlignFragment
class  MCFillFragment
class  MCOrgFragment
class  MCLEBFragment
class  MCDwarfLineAddrFragment
class  MCDwarfCallFrameFragment
class  MCSectionData
class  MCSymbolData
struct  IndirectSymbolData
struct  DataRegionData
class  MCAssembler
class  MCAtom
class  MCDecodedInst
 An entry in an MCTextAtom: a disassembled instruction. NOTE: Both the Address and Size field are actually redundant when taken in the context of the text atom, and may better be exposed in an iterator instead of stored in the atom, which would replace this class. More...
class  MCTextAtom
 An atom consisting of disassembled instructions. More...
class  MCDataAtom
 An atom consising of a sequence of bytes. More...
class  MCCodeEmitter
 MCCodeEmitter - Generic instruction encoding interface. More...
class  MCCodeGenInfo
class  MCContext
class  MCDisassembler
class  MCDwarfFile
class  MCDwarfLoc
class  MCLineEntry
class  MCLineSection
class  MCDwarfFileTable
class  MCDwarfLineAddr
class  MCGenDwarfInfo
class  MCGenDwarfLabelEntry
class  MCCFIInstruction
struct  MCDwarfFrameInfo
class  MCDwarfFrameEmitter
class  MCELF
struct  ELFRelocationEntry
class  MCELFObjectTargetWriter
class  MCELFStreamer
class  MCExpr
class  MCConstantExpr
class  MCSymbolRefExpr
class  MCUnaryExpr
 MCUnaryExpr - Unary assembler expressions. More...
class  MCBinaryExpr
 MCBinaryExpr - Binary assembler expressions. More...
class  MCTargetExpr
class  MCExternalSymbolizer
 Symbolize using user-provided, C API, callbacks. More...
class  MCFixup
struct  MCFixupKindInfo
 MCFixupKindInfo - Target independent information on a fixup kind. More...
class  MCBasicBlock
 Basic block containing a sequence of disassembled instructions. The basic block is backed by an MCTextAtom, which holds the instructions, and the address range it covers. Create a basic block using MCFunction::createBlock. More...
class  MCFunction
 Represents a function in machine code, containing MCBasicBlocks. MCFunctions are created using MCModule::createFunction. More...
class  MCOperand
struct  isPodLike< MCOperand >
class  MCInst
class  MCInstBuilder
class  MCInstPrinter
class  MCInstrAnalysis
class  MCOperandInfo
class  MCInstrDesc
class  MCInstrInfo
struct  InstrStage
struct  InstrItinerary
class  InstrItineraryData
class  MCLabel
class  MCMachObjectTargetWriter
class  MachObjectWriter
class  MCModule
 A completely disassembled object file or executable. It comprises a list of MCAtom's, each representing a contiguous range of either instructions or data. An MCModule is created using MCObjectDisassembler::buildModule. More...
class  MCObjectDisassembler
 Disassemble an ObjectFile to an MCModule and MCFunctions. This class builds on MCDisassembler to disassemble whole sections, creating MCAtom (MCTextAtom for disassembled sections and MCDataAtom for raw data). It can also be used to create a control flow graph consisting of MCFunctions and MCBasicBlocks. More...
class  MCObjectFileInfo
class  MCObjectStreamer
 Streaming object file generation interface. More...
class  MCObjectSymbolizer
 An ObjectFile-backed symbolizer. More...
class  MCObjectWriter
class  AsmCond
class  AsmLexer
 AsmLexer - Lexer class for assembly files. More...
class  AsmToken
 AsmToken - Target independent representation for an assembler token. More...
class  MCAsmLexer
class  MCAsmParserSemaCallback
 MCAsmParserSemaCallback - Generic Sema callback for assembly parser. More...
class  MCAsmParser
class  MCAsmParserExtension
 Generic interface for extending the MCAsmParser, which is implemented by target and object file assembly parser implementations. More...
class  MCParsedAsmOperand
class  MCRegisterClass
 MCRegisterClass - Base class of TargetRegisterClass. More...
struct  MCRegisterDesc
class  MCRegisterInfo
class  MCSubRegIterator
class  MCSuperRegIterator
class  MCRegUnitIterator
class  MCRegUnitRootIterator
 MCRegUnitRootIterator enumerates the root registers of a register unit. More...
class  MCRegAliasIterator
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
struct  MCWriteLatencyEntry
struct  MCReadAdvanceEntry
struct  MCSchedClassDesc
class  MCSchedModel
class  MCSection
class  MCSectionCOFF
 MCSectionCOFF - This represents a section on Windows. More...
class  MCSectionELF
class  MCSectionMachO
class  MCStreamer
class  MCSubtargetInfo
class  MCSymbol
class  MCSymbolizer
 Symbolize and annotate disassembled instructions. More...
struct  AsmRewrite
struct  ParseInstructionInfo
class  MCTargetAsmParser
 MCTargetAsmParser - Generic interface to target specific assembly parsers. More...
class  MCValue
class  MCWin64EHInstruction
struct  MCWin64EHUnwindInfo
class  MCWin64EHUnwindEmitter
class  MCWinCOFFObjectTargetWriter
class  SectionKind
struct  SubtargetFeatureKV
struct  SubtargetInfoKV
class  SubtargetFeatures
struct  is_error_code_enum< object::object_error >
struct  is_error_code_enum< object::object_error::Impl >
class  Pass
class  ModulePass
class  ImmutablePass
class  FunctionPass
class  BasicBlockPass
class  AnalysisUsage
class  AnalysisResolver
class  PassManagerBase
class  PassManager
 PassManager manages ModulePassManagers. More...
class  FunctionPassManager
 FunctionPassManager manages FunctionPasses and BasicBlockPassManagers. More...
class  PassManagerPrettyStackEntry
class  PMStack
class  PMTopLevelManager
class  PMDataManager
class  FPPassManager
class  PassRegistry
class  PassInfo
struct  RegisterPass
class  RegisterAGBase
struct  RegisterAnalysisGroup
struct  PassRegistrationListener
struct  AlignmentCalcImpl
struct  AlignOf
struct  AlignedCharArrayUnion
 This union template exposes a suitably aligned and sized character array member which can hold elements of any of up to four types. More...
struct  ReferenceAdder
struct  ReferenceAdder< T & >
class  MallocAllocator
class  MemSlab
class  SlabAllocator
class  MallocSlabAllocator
class  BumpPtrAllocator
class  SpecificBumpPtrAllocator
class  ArrayRecycler
class  BlockFrequency
class  BranchProbability
class  CallSiteBase
class  CallSite
class  ImmutableCallSite
 ImmutableCallSite - establish a view to a call site for examination. More...
struct  simplify_type
struct  simplify_type< const From >
struct  isa_impl
struct  isa_impl< To, From, typename enable_if< llvm::is_base_of< To, From > >::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 >
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  circular_raw_ostream
class  ConstantFolder
 ConstantFolder - Create constants with minimum, target independent, folding. More...
class  ConstantRange
class  CrashRecoveryContext
 Crash recovery helper object. More...
class  CrashRecoveryContextCleanup
class  CrashRecoveryContextCleanupBase
class  CrashRecoveryContextDestructorCleanup
class  CrashRecoveryContextDeleteCleanup
class  CrashRecoveryContextReleaseRefCleanup
class  CrashRecoveryContextCleanupRegistrar
class  DataExtractor
struct  GraphTraits< const Value * >
struct  GraphTraits< Value * >
struct  GraphTraits< Inverse< const User * > >
struct  GraphTraits< Inverse< User * > >
class  DataStreamer
class  DebugLoc
struct  DenseMapInfo< DebugLoc >
struct  DefaultDOTGraphTraits
struct  DOTGraphTraits
struct  ScopedFatalErrorHandler
struct  ErrorHolderBase
struct  ErrorHolder
struct  ErrorOrUserDataTraits
class  ReferenceStorage
 Stores a reference that can be changed. More...
class  ErrorOr
 Represents either an error or a value T. More...
class  ErrorOr< void >
class  FileOutputBuffer
class  FileRemover
class  format_object_base
class  format_object1
class  format_object2
class  format_object3
class  format_object4
class  format_object5
class  formatted_raw_ostream
class  GCOVBuffer
class  GCOVFile
class  GCOVFunction
 GCOVFunction - Collects function information. More...
class  GCOVBlock
 GCOVBlock - Collects block information. More...
class  GCOVLines
 GCOVLines - A wrapper around a vector of int to keep track of line nos. More...
class  FileInfo
class  generic_gep_type_iterator
class  GraphWriter
struct  IncludeFile
 Class to ensure linking of corresponding object file. More...
class  InstIterator
class  IntItem
class  IntRange
class  IntegersSubsetGeneric
class  IntegersSubset
class  IntegersSubsetMapping
struct  LeakDetector
class  LockFileManager
 Class that manages the creation of a lock file to aid implicit coordination between different processes. More...
struct  object_deleter
struct  object_deleter< T[N]>
class  ManagedStaticBase
 ManagedStaticBase - Common base class for ManagedStatic instances. More...
class  ManagedStatic
struct  llvm_shutdown_obj
class  MD5
class  MemoryBuffer
class  MemoryObject
class  MutexGuard
 Guard a section of code with a Mutex. More...
class  NoFolder
 NoFolder - Create "constants" (actually, instructions) with no folding. More...
class  OutputBuffer
class  PassNameParser
class  FilteredPassNameParser
class  PassArgFilter
struct  PluginLoader
class  PointerLikeTypeTraits
class  PointerLikeTypeTraits< T * >
class  PointerLikeTypeTraits< const T * >
class  PointerLikeTypeTraits< uintptr_t >
class  PredIteratorCache
class  PrettyStackTraceEntry
class  PrettyStackTraceString
class  PrettyStackTraceProgram
class  raw_os_ostream
class  raw_ostream
class  raw_fd_ostream
class  raw_string_ostream
class  raw_svector_ostream
class  raw_null_ostream
 raw_null_ostream - A raw_ostream that discards all output. More...
struct  RecyclerStruct
struct  ilist_traits< RecyclerStruct >
class  Recycler
class  RecyclingAllocator
class  Regex
class  SimpleRegistryEntry
class  RegistryTraits
class  Registry
class  RegistryParser
struct  SaveAndRestore
struct  SaveOr
class  SMLoc
 Represents a location in source code. More...
class  SMRange
class  SourceMgr
class  SMFixIt
 Represents a single fixit, a replacement of one range of text with another. More...
class  SMDiagnostic
class  StreamableMemoryObject
class  StreamingMemoryObject
class  StringPool
class  PooledStringPtr
class  StringRefMemoryObject
 StringRefMemoryObject - Simple StringRef-backed MemoryObject. More...
struct  is_error_code_enum
struct  is_error_condition_enum
struct  errc
struct  is_error_condition_enum< errc >
struct  is_error_condition_enum< errc::_ >
class  error_category
class  _do_message
class  error_condition
class  error_code
struct  windows_error
struct  is_error_code_enum< windows_error >
struct  is_error_code_enum< windows_error::_ >
class  TargetFolder
 TargetFolder - Create constants with target dependent folding. More...
class  Target
struct  TargetRegistry
 TargetRegistry - Generic interface to target specific features. More...
struct  RegisterTarget
struct  RegisterMCAsmInfo
struct  RegisterMCAsmInfoFn
struct  RegisterMCCodeGenInfo
struct  RegisterMCCodeGenInfoFn
struct  RegisterMCInstrInfo
struct  RegisterMCInstrInfoFn
struct  RegisterMCInstrAnalysis
struct  RegisterMCInstrAnalysisFn
struct  RegisterMCRegInfo
struct  RegisterMCRegInfoFn
struct  RegisterMCSubtargetInfo
struct  RegisterMCSubtargetInfoFn
struct  RegisterTargetMachine
struct  RegisterMCAsmBackend
struct  RegisterMCAsmParser
struct  RegisterAsmPrinter
struct  RegisterMCCodeEmitter
class  TimeRecord
class  Timer
class  TimeRegion
struct  NamedRegionTimer
class  TimerGroup
class  tool_output_file
struct  is_class
struct  isPodLike
struct  isPodLike< std::pair< T, U > >
struct  integral_constant
struct  is_same
 Metafunction that determines whether the two given types are equivalent. More...
struct  is_same< T, T >
struct  remove_const
 Metafunction that removes const qualification from a type. More...
struct  remove_const< const T >
struct  remove_volatile
 Metafunction that removes volatile qualification from a type. More...
struct  remove_volatile< volatile T >
struct  remove_cv
 Metafunction that removes both const and volatile qualification from a type. More...
struct  is_integral_impl
 Helper to implement is_integral metafunction. More...
struct  is_integral_impl< bool >
struct  is_integral_impl< char >
struct  is_integral_impl< signed char >
struct  is_integral_impl< unsigned char >
struct  is_integral_impl< wchar_t >
struct  is_integral_impl< short >
struct  is_integral_impl< unsigned short >
struct  is_integral_impl< int >
struct  is_integral_impl< unsigned int >
struct  is_integral_impl< long >
struct  is_integral_impl< unsigned long >
struct  is_integral_impl< long long >
struct  is_integral_impl< unsigned long long >
struct  is_integral
 Metafunction that determines whether the given type is an integral type. More...
struct  remove_reference
 Metafunction to remove reference from a type. More...
struct  remove_reference< T & >
struct  is_pointer
 Metafunction that determines whether the given type is a pointer type. More...
struct  is_pointer< T * >
struct  is_pointer< T *const >
struct  is_pointer< T *volatile >
struct  is_pointer< T *const volatile >
struct  is_reference
 Metafunction that determines wheather the given type is a reference. More...
struct  is_reference< T & >
class  is_integral_or_enum
 Metafunction that determines whether the given type is either an integral type or an enumeration type. More...
struct  enable_if_c
struct  enable_if_c< false, T >
struct  enable_if
struct  is_base_of
struct  remove_pointer
struct  remove_pointer< T * >
struct  remove_pointer< T *const >
struct  remove_pointer< T *volatile >
struct  remove_pointer< T *const volatile >
struct  add_lvalue_reference_if_not_pointer
struct  add_lvalue_reference_if_not_pointer< T, typename enable_if< is_pointer< T > >::type >
struct  add_const_past_pointer
struct  add_const_past_pointer< T, typename enable_if< is_pointer< T > >::type >
struct  conditional
struct  conditional< false, T, F >
class  PointerLikeTypeTraits< ValueHandleBase ** >
class  ValueHandleBase
class  WeakVH
struct  simplify_type< WeakVH >
class  AssertingVH
struct  DenseMapInfo< AssertingVH< T > >
struct  isPodLike< AssertingVH< T > >
class  TrackingVH
class  CallbackVH
class  RecTy
class  BitRecTy
class  BitsRecTy
class  IntRecTy
class  StringRecTy
class  ListRecTy
class  DagRecTy
class  RecordRecTy
class  Init
class  TypedInit
class  UnsetInit
class  BitInit
class  BitsInit
class  IntInit
class  StringInit
class  ListInit
class  OpInit
class  UnOpInit
class  BinOpInit
class  TernOpInit
class  VarInit
class  VarBitInit
class  VarListElementInit
class  DefInit
class  FieldInit
class  DagInit
class  RecordVal
class  Record
struct  MultiClass
class  RecordKeeper
struct  LessRecord
struct  LessRecordByID
struct  LessRecordFieldName
class  StringMatcher
struct  CostTblEntry
 Cost Table Entry. More...
struct  TypeConversionCostTblEntry
 Type Conversion Cost Table. More...
class  Mangler
class  TargetFrameLowering
class  TargetInstrInfo
class  TargetIntrinsicInfo
class  TargetJITInfo
class  TargetLibraryInfo
class  TargetLoweringBase
class  TargetLowering
class  TargetLoweringObjectFile
class  TargetMachine
class  LLVMTargetMachine
class  TargetOptions
class  TargetRegisterClass
struct  TargetRegisterInfoDesc
struct  RegClassWeight
class  TargetRegisterInfo
class  SuperRegClassIterator
struct  VirtReg2IndexFunctor
class  PrintReg
class  PrintRegUnit
class  TargetSelectionDAGInfo
class  TargetSubtargetInfo
struct  GCOVOptions
struct  Inliner
class  PassManagerBuilder
struct  RegisterStandardPasses
class  BlackList
class  SimplifyFortifiedLibCalls
struct  ClonedCodeInfo
class  InlineFunctionInfo
class  CodeExtractor
 Utility class for extracting code into a new function. More...
class  IVVisitor
class  LibCallSimplifier
class  SSAUpdater
class  LoadAndStorePromoter
class  SSAUpdaterImpl
struct  UnifyFunctionExitNodes
class  ValueMapTypeRemapper
class  ValueMaterializer
struct  VectorizeConfig
 Vectorize configuration. More...
struct  DOTGraphTraits< DomTreeNode * >
struct  DOTGraphTraits< DominatorTree * >
struct  DOTGraphTraits< PostDominatorTree * >
struct  DOTGraphTraits< CallGraph * >
struct  DOTGraphTraits< RegionNode * >
struct  DOTGraphTraits< RegionInfo * >
class  LLLexer
struct  ValID
class  LLParser
struct  OperandTraits< ConstantPlaceHolder >
class  BitcodeReaderValueList
class  BitcodeReaderMDValueList
class  BitcodeReader
class  ValueEnumerator
class  AggressiveAntiDepState
class  AggressiveAntiDepBreaker
 Class AggressiveAntiDepBreaker. More...
class  AllocationOrder
class  AntiDepBreaker
class  DIEAbbrevData
class  DIEAbbrev
class  DIE
class  DIEValue
class  DIEInteger
class  DIELabel
 DIELabel - A label expression DIE. More...
class  DIEDelta
class  DIEEntry
class  DIEBlock
 DIEBlock - A block of values. Primarily used for location expressions. More...
class  DwarfAccelTable
class  CompileUnit
class  SrcLineInfo
 This class is used to record source line correspondence. More...
struct  DotDebugLocEntry
 This struct describes location entries emitted in the .debug_loc section. More...
class  DbgVariable
 This class is used to track local variable information. More...
class  DwarfUnits
 Collects and handles information specific to a particular collection of units. More...
class  DwarfDebug
 Collects and handles dwarf debug information. More...
class  DwarfException
class  DwarfCFIException
class  ARMException
class  Win64Exception
class  BranchFolder
class  CriticalAntiDepBreaker
class  DefaultVLIWScheduler
class  InterferenceCache
class  LiveDebugVariables
class  LiveRangeCalc
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  PEI
class  RegAllocBase
class  CoalescerPair
class  SchedDFSImpl
 Internal state used to compute SchedDFSResult. More...
struct  DOTGraphTraits< ScheduleDAG * >
class  InstrEmitter
class  DAGTypeLegalizer
class  ScheduleDAGSDNodes
class  SDDbgValue
class  SelectionDAGBuilder
struct  DOTGraphTraits< SelectionDAG * >
class  Spiller
class  SpillPlacement
class  SplitAnalysis
class  SplitEditor
class  DWARFAbbreviationDeclaration
class  DWARFAttribute
class  DWARFCompileUnit
class  DWARFContext
class  DWARFContextInMemory
class  DWARFAbbreviationDeclarationSet
class  DWARFDebugAbbrev
class  DWARFDebugAranges
class  DWARFDebugArangeSet
class  FrameEntry
 Abstract frame entry defining the common interface concrete entries implement. More...
class  DWARFDebugFrame
 A parsed .debug_frame section. More...
class  DWARFDebugInfoEntryMinimal
 DWARFDebugInfoEntryMinimal - A DIE with only the minimum required data. More...
class  DWARFDebugLine
class  DWARFDebugLoc
class  DWARFDebugRangeList
class  IntelJITEventsWrapper
class  AllocaHolder
class  AllocaHolderHandle
struct  ExecutionContext
class  Interpreter
class  JITState
class  JIT
class  MCJIT
class  JITRegistrar
 Global access point for the JIT debugging interface. More...
class  ObjectImageCommon
class  RuntimeDyldELF
class  SectionEntry
class  RelocationEntry
class  RelocationValueRef
class  RuntimeDyldImpl
class  RuntimeDyldMachO
class  SlotTracker
class  TypePrinting
class  AssemblyWriter
class  AttributeEntry
class  EnumAttributeEntry
class  AlignAttributeEntry
class  StringAttributeEntry
class  AttributeImpl
class  AttributeSetNode
class  AttributeSetImpl
class  UnaryConstantExpr
class  BinaryConstantExpr
class  SelectConstantExpr
class  ExtractElementConstantExpr
class  InsertElementConstantExpr
class  ShuffleVectorConstantExpr
class  ExtractValueConstantExpr
class  InsertValueConstantExpr
class  GetElementPtrConstantExpr
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  ExprMapKeyType
struct  InlineAsmKeyType
struct  ConstantTraits< std::vector< T, Alloc > >
struct  ConstantTraits< Constant * >
struct  ConstantCreator
struct  ConstantArrayCreator
struct  ConstantKeyData
struct  ConstantCreator< ConstantExpr, Type, ExprMapKeyType >
struct  ConstantKeyData< ConstantExpr >
struct  ConstantCreator< InlineAsm, PointerType, InlineAsmKeyType >
struct  ConstantKeyData< InlineAsm >
class  ConstantUniqueMap
class  ConstantAggrUniqueMap
struct  PrinterTrait
struct  PrinterTrait< Value >
struct  LeakDetectorImpl
struct  DenseMapAPIntKeyInfo
struct  DenseMapAPFloatKeyInfo
struct  AnonStructTypeKeyInfo
struct  FunctionTypeKeyInfo
struct  FoldingSetTrait< MDNode >
class  DebugRecVH
class  LLVMContextImpl
class  MDNodeOperand
class  FunctionPassManagerImpl
 FunctionPassManagerImpl manages FPPassManagers. More...
class  MPPassManager
class  PassManagerImpl
 PassManagerImpl manages MPPassManagers. More...
class  LLVMDisasmContext
struct  DenseMapInfo< CIEKey >
struct  fltSemantics
class  _generic_error_category
class  _system_error_category
struct  ilist_sentinel_traits< Token >
struct  ilist_node_traits< Token >
class  TableGenStringKey
struct  DenseMapInfo< TableGenStringKey >
 Specialize DenseMapInfo for TableGenStringKey. More...
class  TGLexer
 TGLexer - TableGen Lexer class. More...
struct  SubClassReference
struct  SubMultiClassReference
struct  LetRecord
struct  ForeachLoop
class  TGParser
class  AArch64AsmPrinter
class  AArch64FrameLowering
class  AArch64InstrInfo
class  AArch64TargetLowering
class  AArch64MachineFunctionInfo
struct  AArch64RegisterInfo
class  AArch64SelectionDAGInfo
class  AArch64Subtarget
class  AArch64TargetMachine
class  AArch64LinuxTargetObjectFile
class  AArch64InstPrinter
struct  AArch64ELFMCAsmInfo
class  AArch64MCExpr
struct  NamedImmMapper
class  ARMAsmPrinter
class  ARMBaseInstrInfo
class  ARMBaseRegisterInfo
class  ARMConstantPoolValue
class  ARMConstantPoolConstant
class  ARMConstantPoolSymbol
class  ARMConstantPoolMBB
class  ARMFrameLowering
class  ARMHazardRecognizer
class  ARMInstrInfo
class  ARMTargetLowering
class  ARMJITInfo
class  ARMFunctionInfo
struct  ARMRegisterInfo
class  ARMSelectionDAGInfo
class  ARMSubtarget
class  ARMBaseTargetMachine
class  ARMTargetMachine
class  ThumbTargetMachine
class  ARMElfTargetObjectFile
class  ARMInstPrinter
class  ARMMCAsmInfoDarwin
class  ARMELFMCAsmInfo
class  ARMMCExpr
class  UnwindOpcodeAssembler
class  Thumb1FrameLowering
class  Thumb1InstrInfo
struct  Thumb1RegisterInfo
class  Thumb2InstrInfo
struct  Thumb2RegisterInfo
struct  CPPTargetMachine
class  HexagonAsmPrinter
class  Hexagon_CCState
class  HexagonFrameLowering
class  HexagonInstrInfo
class  HexagonTargetLowering
class  HexagonMachineFunctionInfo
 Hexagon target-specific information for each MachineFunction. More...
class  VLIWResourceModel
class  VLIWMachineScheduler
class  ConvergingVLIWScheduler
struct  HexagonRegisterInfo
class  HexagonSelectionDAGInfo
class  HexagonSubtarget
class  HexagonTargetMachine
class  HexagonTargetObjectFile
class  HexagonInstPrinter
class  HexagonMCAsmInfo
class  HexagonMCInst
class  MBlazeDisassembler
 MBlazeDisassembler - Disassembler for all MBlaze platforms. More...
class  MBlazeInstPrinter
class  MBlazeFrameLowering
class  MBlazeInstrInfo
class  MBlazeIntrinsicInfo
class  MBlazeTargetLowering
class  MBlazeFunctionInfo
class  MBlazeMCInstLower
struct  MBlazeRegisterInfo
class  MBlazeSelectionDAGInfo
class  MBlazeSubtarget
class  MBlazeTargetMachine
class  MBlazeTargetObjectFile
class  MBlazeMCAsmInfo
class  MipsInstPrinter
class  MipsELFStreamer
class  MipsMCAsmInfo
class  MipsReginfo
class  Mips16FrameLowering
class  Mips16HardFloat
class  Mips16InstrInfo
class  Mips16DAGToDAGISel
class  Mips16TargetLowering
class  Mips16RegisterInfo
class  MipsAnalyzeImmediate
class  MipsAsmPrinter
class  MipsFrameLowering
class  MipsInstrInfo
class  MipsDAGToDAGISel
class  MipsTargetLowering
class  MipsJITInfo
class  MipsFunctionInfo
class  MipsMCInstLower
 MipsMCInstLower - This class is used to lower an MachineInstr into an. More...
class  MipsModuleDAGToDAGISel
class  MipsOs16
class  MipsRegisterInfo
class  MipsSEFrameLowering
class  MipsSEInstrInfo
class  MipsSEDAGToDAGISel
class  MipsSETargetLowering
class  MipsSelectionDAGInfo
class  MipsSERegisterInfo
class  MipsSubtarget
class  MipsTargetMachine
class  MipsebTargetMachine
class  MipselTargetMachine
class  MipsTargetObjectFile
class  MSP430InstPrinter
class  MSP430MCAsmInfo
class  MSP430FrameLowering
class  MSP430InstrInfo
class  MSP430TargetLowering
class  MSP430MachineFunctionInfo
class  MSP430MCInstLower
struct  MSP430RegisterInfo
class  MSP430SelectionDAGInfo
class  MSP430Subtarget
class  MSP430TargetMachine
class  ManagedStringPool
class  NVPTXMCAsmInfo
class  NVPTXAllocaHoisting
class  LineReader
class  NVPTXAsmPrinter
class  NVPTXFrameLowering
class  NVPTXInstrInfo
class  NVPTXTargetLowering
struct  NVPTXLowerAggrCopies
class  NVPTXRegisterInfo
class  NVPTXSection
struct  NVPTXSplitBBatBar
class  NVPTXSubtarget
class  NVPTXTargetMachine
class  NVPTXTargetMachine32
class  NVPTXTargetMachine64
class  NVPTXTargetObjectFile
class  PPCInstPrinter
class  PPCMCAsmInfoDarwin
class  PPCLinuxMCAsmInfo
class  PPCMCExpr
class  PPCFrameLowering
class  PPCScoreboardHazardRecognizer
class  PPCHazardRecognizer970
class  PPCInstrInfo
class  PPCTargetLowering
class  PPCJITInfo
class  PPCFunctionInfo
class  PPCRegisterInfo
class  PPCSelectionDAGInfo
class  PPCSubtarget
class  PPCTargetMachine
class  PPC32TargetMachine
class  PPC64TargetMachine
class  PPC64LinuxTargetObjectFile
class  AMDGPUAsmPrinter
class  AMDGPUFrameLowering
 Information about the stack frame layout on the AMDGPU targets. More...
class  AMDGPUInstrInfo
class  AMDGPUTargetLowering
class  AMDGPUMachineFunction
class  AMDGPUMCInstLower
struct  AMDGPURegisterInfo
class  AMDGPUSubtarget
class  AMDGPUTargetMachine
class  AMDGPUIntrinsicInfo
class  AMDGPUInstPrinter
class  AMDGPUMCAsmInfo
class  AMDGPUMCCodeEmitter
class  R600InstrInfo
class  R600TargetLowering
class  R600MachineFunctionInfo
class  R600SchedStrategy
struct  R600RegisterInfo
class  SIInstrInfo
class  SITargetLowering
class  SIMachineFunctionInfo
struct  SIRegisterInfo
class  SparcELFMCAsmInfo
class  SparcFrameLowering
class  SparcInstrInfo
class  SparcTargetLowering
class  SparcMachineFunctionInfo
struct  SparcRegisterInfo
class  SparcSelectionDAGInfo
class  SparcSubtarget
class  SparcTargetMachine
class  SparcV8TargetMachine
class  SparcV9TargetMachine
class  SystemZInstPrinter
class  SystemZMCAsmInfo
class  SystemZAsmPrinter
class  SystemZConstantPoolValue
class  SystemZFrameLowering
class  SystemZInstrInfo
class  SystemZTargetLowering
class  SystemZMachineFunctionInfo
class  SystemZMCInstLower
struct  SystemZRegisterInfo
class  SystemZSubtarget
class  SystemZTargetMachine
class  X86ATTInstPrinter
class  X86IntelInstPrinter
class  X86MCAsmInfoDarwin
struct  X86_64MCAsmInfoDarwin
class  X86ELFMCAsmInfo
class  X86MCAsmInfoMicrosoft
class  X86MCAsmInfoGNUCOFF
class  X86AsmPrinter
class  X86COFFMachineModuleInfo
class  X86FrameLowering
struct  X86AddressMode
class  X86InstrInfo
class  X86TargetLowering
class  X86JITInfo
class  X86MachineFunctionInfo
class  X86RegisterInfo
class  X86SelectionDAGInfo
class  X86Subtarget
class  X86TargetMachine
class  X86_32TargetMachine
class  X86_64TargetMachine
class  X86_64MachoTargetObjectFile
class  X86LinuxTargetObjectFile
class  XCoreInstPrinter
class  XCoreMCAsmInfo
class  XCoreFrameLowering
class  XCoreInstrInfo
class  XCoreTargetLowering
class  XCoreFunctionInfo
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  InstCombineIRInserter
class  InstCombiner
 InstCombiner - The -instcombine pass. More...
struct  DenseMapInfo< LoweredPHIRecord >
struct  isPodLike< LoweredPHIRecord >
class  InstCombineWorklist
class  MaximumSpanningTree
class  PathProfilingFunctionTable
class  TypeBuilder< PathProfilingFunctionTable, xcompile >
struct  GraphTraits< ArgumentGraphNode * >
struct  GraphTraits< ArgumentGraph * >
struct  DenseMapInfo< ComparableFunction >
struct  isPodLike< SimpleValue >
struct  DenseMapInfo< SimpleValue >
struct  isPodLike< CallValue >
struct  DenseMapInfo< CallValue >
struct  DenseMapInfo< Expression >
struct  isPodLike< Partition >
struct  isPodLike< PartitionUse >
struct  DenseMapInfo< DivOpInfo >
struct  DenseMapInfo< std::pair< BasicBlock *, unsigned > >
class  LibCallSimplifierImpl
class  SSAUpdaterTraits< SSAUpdater >
struct  BoUpSLP
 Bottom Up SLP vectorization utility class. More...

Typedefs

typedef signed short exponent_t
 A signed type to represent a floating point numbers unbiased exponent.
typedef uint64_t integerPart
typedef FoldingSetImpl::Node FoldingSetNode
typedef DomTreeNodeBase
< BasicBlock
DomTreeNode
typedef IntervalIterator
< BasicBlock, Function
function_interval_iterator
typedef IntervalIterator
< Interval, IntervalPartition
interval_part_interval_iterator
typedef std::pair< APInt, APIntSizeOffsetType
typedef std::pair< Value
*, Value * > 
SizeOffsetEvalType
typedef std::vector
< BallLarusNode * > 
BLNodeVector
typedef std::vector
< BallLarusNode * >::iterator 
BLNodeIterator
typedef std::vector
< BallLarusEdge * > 
BLEdgeVector
typedef std::vector
< BallLarusEdge * >::iterator 
BLEdgeIterator
typedef std::map< BasicBlock
*, BallLarusNode * > 
BLBlockNodeMap
typedef std::stack
< BallLarusNode * > 
BLNodeStack
typedef std::vector
< ProfilePathEdge
ProfilePathEdgeVector
typedef std::vector
< ProfilePathEdge >::iterator 
ProfilePathEdgeIterator
typedef std::vector< BasicBlock * > ProfilePathBlockVector
typedef std::vector
< BasicBlock * >::iterator 
ProfilePathBlockIterator
typedef std::map< unsigned int,
ProfilePath * > 
ProfilePathMap
typedef std::map< unsigned int,
ProfilePath * >::iterator 
ProfilePathIterator
typedef std::map< Function
*, unsigned int > 
FunctionPathCountMap
typedef std::map< Function
*, ProfilePathMap
FunctionPathMap
typedef std::map< Function
*, ProfilePathMap >::iterator 
FunctionPathIterator
typedef ProfileDataT< Function,
BasicBlock
ProfileData
typedef ProfileInfoT< Function,
BasicBlock
ProfileInfo
typedef ProfileInfoT
< MachineFunction,
MachineBasicBlock
MachineProfileInfo
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)
typedef bool CCCustomFn (unsigned &ValNo, MVT &ValVT, MVT &LocVT, CCValAssign::LocInfo &LocInfo, ISD::ArgFlagsTy &ArgFlags, CCState &State)
typedef Registry
< GCMetadataPrinter
GCMetadataPrinterRegistry
typedef Registry< GCStrategyGCRegistry
typedef std::pair< const
MachineInstr *, const
MachineInstr * > 
InsnRange
typedef SparseBitVector< 128 > LiveVirtRegBitSet
typedef DomTreeNodeBase
< MachineBasicBlock
MachineDomTreeNode
typedef void *(* MachinePassCtor )()
typedef SparseMultiSet
< PhysRegSUOper,
llvm::identity< unsigned >
, uint16_t > 
Reg2SUnitsMap
typedef SparseSet< VReg2SUnit,
VirtReg2IndexFunctor
VReg2SUnitMap
typedef LoadSDNode LargestSDNode
typedef GlobalAddressSDNode MostAlignedSDNode
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 void * PointerTy
typedef StringMapEntry< Value * > ValueName
typedef DenseMap< const
MCSectionData *, uint64_t > 
SectionAddrMap
typedef
MCAsmParserSemaCallback::InlineAsmIdentifierInfo 
InlineAsmIdentifierInfo
typedef uint16_t MCPhysReg
typedef std::pair< const
MCSection *, const MCExpr * > 
MCSectionSubPair
typedef const void * AnalysisID
typedef PredIterator
< BasicBlock,
Value::use_iterator
pred_iterator
typedef PredIterator< const
BasicBlock,
Value::const_use_iterator
const_pred_iterator
typedef SuccIterator
< TerminatorInst *, BasicBlock
succ_iterator
typedef SuccIterator< const
TerminatorInst *, const
BasicBlock
succ_const_iterator
typedef void(* fatal_error_handler_t )(void *user_data, const std::string &reason, bool gen_crash_diag)
 An error handler callback.
typedef SmallVector< uint32_t, 16 > LineCounts
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 IntegersSubsetMapping
< BasicBlock
IntegersSubsetToBB
typedef integral_constant
< bool, true
true_type
typedef integral_constant
< bool, false
false_type
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 struct
llvm::DotDebugLocEntry 
DotDebugLocEntry
 This struct describes location entries emitted in the .debug_loc section.
typedef StringMap< std::pair
< MCSymbol *, unsigned >
, BumpPtrAllocator & > 
StrPool
typedef DenseMap< MCSymbol
*, std::pair< MCSymbol
*, unsigned > > 
AddrPool
typedef std::vector
< DWARFAbbreviationDeclaration
DWARFAbbreviationDeclarationColl
typedef
DWARFAbbreviationDeclarationColl::iterator 
DWARFAbbreviationDeclarationCollIter
typedef
DWARFAbbreviationDeclarationColl::const_iterator 
DWARFAbbreviationDeclarationCollConstIter
typedef std::vector< GenericValueValuePlaneTy
typedef llvm::cl::list< const
llvm::PassInfo *, bool,
PassNameParser
PassOptionList
typedef bool Hexagon_CCAssignFn (unsigned ValNo, EVT ValVT, EVT LocVT, CCValAssign::LocInfo LocInfo, ISD::ArgFlagsTy ArgFlags, Hexagon_CCState &State, int NonVarArgsParams, int CurrentParam, bool ForceMem)
typedef TypeBuilder
< PathProfilingFunctionTable,
true
ftEntryTypeBuilder
typedef DenseMap< DivOpInfo,
DivPhiNodes > 
DivCacheTy
Data atom
typedef uint8_t MCData
 An entry in an MCDataAtom.

Enumerations

enum  lostFraction { lfExactlyZero, lfLessThanHalf, lfExactlyHalf, lfMoreThanHalf }
enum  NoneType { None }
 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  SCEVTypes {
  scConstant, scTruncate, scZeroExtend, scSignExtend,
  scAddExpr, scMulExpr, scUDivExpr, scAddRecExpr,
  scUMaxExpr, scSMaxExpr, scUnknown, scCouldNotCompute
}
enum  TransformKind { Normalize, NormalizeAutodetect, Denormalize }
enum  VerifierFailureAction { AbortProcessAction, PrintMessageAction, ReturnStatusAction }
 An enumeration to specify the action to be taken if errors found. More...
enum  ParmContext { Unknown, Prologue, Call }
enum  CombineLevel { BeforeLegalizeTypes, AfterLegalizeTypes, AfterLegalizeVectorOps, AfterLegalizeDAG }
enum  DIDumpType {
  DIDT_Null, DIDT_All, DIDT_Abbrev, DIDT_AbbrevDwo,
  DIDT_Aranges, DIDT_Frames, DIDT_Info, DIDT_InfoDwo,
  DIDT_Line, DIDT_Loc, DIDT_Ranges, DIDT_Pubnames,
  DIDT_Str, DIDT_StrDwo, DIDT_StrOffsetsDwo
}
 Selects which debug sections get dumped. More...
enum  AlignTypeEnum {
  INVALID_ALIGN = 0, INTEGER_ALIGN = 'i', VECTOR_ALIGN = 'v', FLOAT_ALIGN = 'f',
  AGGREGATE_ALIGN = 'a', STACK_ALIGN = 's'
}
 Enum used to categorize the alignment types stored by LayoutAlignElem. More...
enum  AtomicOrdering {
  NotAtomic = 0, Unordered = 1, Monotonic = 2, Acquire = 4,
  Release = 5, AcquireRelease = 6, SequentiallyConsistent = 7
}
enum  SynchronizationScope { SingleThread = 0, CrossThread = 1 }
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  { ELF_STT_Shift = 0, ELF_STB_Shift = 4, ELF_STV_Shift = 8, ELF_Other_Shift = 10 }
enum  SymbolFlags {
  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_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), ELF_Other_Weakref = (1 << ELF_Other_Shift), ELF_Other_ThumbFunc = (2 << ELF_Other_Shift),
  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
}
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)
}
 MCFixupKind - Extensible enumeration to represent the type of a fixup. More...
enum  SymbolFlags {
  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_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), ELF_Other_Weakref = (1 << ELF_Other_Shift), ELF_Other_ThumbFunc = (2 << ELF_Other_Shift),
  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
}
enum  AsmRewriteKind {
  AOK_Delete = 0, AOK_Align, AOK_DotOperator, AOK_Emit,
  AOK_Imm, AOK_ImmPrefix, AOK_Input, AOK_Output,
  AOK_SizeDirective, AOK_Skip
}
enum  PassManagerType {
  PMT_Unknown = 0, PMT_ModulePassManager = 1, PMT_CallGraphPassManager, PMT_FunctionPassManager,
  PMT_LoopPassManager, PMT_RegionPassManager, PMT_BasicBlockPassManager, PMT_Last
}
enum  PassKind {
  PT_BasicBlock, PT_Region, PT_Loop, PT_Function,
  PT_CallGraphSCC, PT_Module, PT_PassManager
}
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  {
  LLVMDebugVersion = (12 << 16), LLVMDebugVersion11 = (11 << 16), LLVMDebugVersion10 = (10 << 16), LLVMDebugVersion9 = (9 << 16),
  LLVMDebugVersion8 = (8 << 16), LLVMDebugVersion7 = (7 << 16), LLVMDebugVersion6 = (6 << 16), LLVMDebugVersion5 = (5 << 16),
  LLVMDebugVersion4 = (4 << 16), LLVMDebugVersionMask = 0xffff0000
}
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  PassDebugLevel {
  Disabled, Arguments, Structure, Executions,
  Details
}
enum  NEONModImmType { VMOVModImm, VMVNModImm, OtherModImm }
enum  ARMEHTEntryKind { EHT_GENERIC = 0x00, EHT_COMPACT = 0x80 }
 ARM exception handling table entry kinds. More...
enum  { EXIDX_CANTUNWIND = 0x1 }
enum  ARMUnwindOpcodes {
  UNWIND_OPCODE_INC_VSP = 0x00, UNWIND_OPCODE_DEC_VSP = 0x40, UNWIND_OPCODE_REFUSE = 0x8000, UNWIND_OPCODE_POP_REG_MASK_R4 = 0x8000,
  UNWIND_OPCODE_SET_VSP = 0x90, UNWIND_OPCODE_POP_REG_RANGE_R4 = 0xa0, UNWIND_OPCODE_POP_REG_RANGE_R4_R14 = 0xa8, UNWIND_OPCODE_FINISH = 0xb0,
  UNWIND_OPCODE_POP_REG_MASK = 0xb100, UNWIND_OPCODE_INC_VSP_ULEB128 = 0xb2, UNWIND_OPCODE_POP_VFP_REG_RANGE_FSTMFDX = 0xb300, UNWIND_OPCODE_POP_VFP_REG_RANGE_FSTMFDX_D8 = 0xb8,
  UNWIND_OPCODE_POP_WIRELESS_MMX_REG_RANGE_WR10 = 0xc0, UNWIND_OPCODE_POP_WIRELESS_MMX_REG_RANGE = 0xc600, UNWIND_OPCODE_POP_WIRELESS_MMX_REG_MASK = 0xc700, UNWIND_OPCODE_POP_VFP_REG_RANGE_FSTMFDD_D16 = 0xc800,
  UNWIND_OPCODE_POP_VFP_REG_RANGE_FSTMFDD = 0xc900, UNWIND_OPCODE_POP_VFP_REG_RANGE_FSTMFDD_D8 = 0xd0
}
 ARM-defined frame unwinding opcodes. More...
enum  ARMPersonalityRoutineIndex { AEABI_UNWIND_CPP_PR0 = 0, AEABI_UNWIND_CPP_PR1 = 1, AEABI_UNWIND_CPP_PR2 = 2, NUM_PERSONALITY_INDEX }
 ARM-defined Personality Routine Index. More...
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_ISKERNEL_FUNCTION, PROPERTY_ALIGN, PROPERTY_LAST
}
enum  { SM_SentinelZero = -1 }
enum  SelectPatternFlavor {
  SPF_UNKNOWN = 0, SPF_SMIN, SPF_UMIN, SPF_SMAX,
  SPF_UMAX
}

Functions

hash_code hash_value (const APFloat &Arg)
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)
raw_ostreamoperator<< (raw_ostream &OS, const APSInt &I)
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 , 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 >
idf_iterator< Tidf_begin (const T &G)
template<class T >
idf_iterator< Tidf_end (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<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 >
enable_if< is_integral_or_enum
< T >, 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 T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 >
hash_code hash_combine (const T1 &arg1, const T2 &arg2, const T3 &arg3, const T4 &arg4, const T5 &arg5, const T6 &arg6)
template<typename T1 , typename T2 , typename T3 , typename T4 , typename T5 >
hash_code hash_combine (const T1 &arg1, const T2 &arg2, const T3 &arg3, const T4 &arg4, const T5 &arg5)
template<typename T1 , typename T2 , typename T3 , typename T4 >
hash_code hash_combine (const T1 &arg1, const T2 &arg2, const T3 &arg3, const T4 &arg4)
template<typename T1 , typename T2 , typename T3 >
hash_code hash_combine (const T1 &arg1, const T2 &arg2, const T3 &arg3)
template<typename T1 , typename T2 >
hash_code hash_combine (const T1 &arg1, const T2 &arg2)
template<typename T1 >
hash_code hash_combine (const T1 &arg1)
template<typename T >
void operator- (int, ilist_iterator< T >) LLVM_DELETED_FUNCTION
template<typename T >
void operator- (ilist_iterator< T >, int) LLVM_DELETED_FUNCTION
template<typename T >
void operator+ (int, ilist_iterator< T >) LLVM_DELETED_FUNCTION
template<typename T >
void operator+ (ilist_iterator< T >, int) LLVM_DELETED_FUNCTION
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<typename T , typename U >
void operator== (const Optional< T > &X, const Optional< U > &Y)
 Poison comparison between two Optional objects. Clients needs to explicitly compare the underlying values and account for empty Optional objects.
template<typename T , typename U >
void operator!= (const Optional< T > &X, const Optional< U > &Y)
 Poison comparison between two Optional objects. Clients needs to explicitly compare the underlying values and account for empty Optional objects.
template<typename T , typename U >
void operator< (const Optional< T > &X, const Optional< U > &Y)
 Poison comparison between two Optional objects. Clients needs to explicitly compare the underlying values and account for empty Optional objects.
template<typename T , typename U >
void operator<= (const Optional< T > &X, const Optional< U > &Y)
 Poison comparison between two Optional objects. Clients needs to explicitly compare the underlying values and account for empty Optional objects.
template<typename T , typename U >
void operator>= (const Optional< T > &X, const Optional< U > &Y)
 Poison comparison between two Optional objects. Clients needs to explicitly compare the underlying values and account for empty Optional objects.
template<typename T , typename U >
void operator> (const Optional< T > &X, const Optional< U > &Y)
 Poison comparison between two Optional objects. Clients needs to explicitly compare the underlying values and account for empty Optional objects.
template<class T >
void swap (OwningPtr< T > &a, OwningPtr< T > &b)
template<class T >
void swap (OwningArrayPtr< T > &a, OwningArrayPtr< T > &b)
template<typename PT1 , typename PT2 >
bool operator== (PointerUnion< PT1, PT2 > lhs, PointerUnion< PT1, PT2 > rhs)
template<class T >
po_iterator< Tpo_begin (T G)
template<class T >
po_iterator< Tpo_end (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 >
ipo_iterator< Tipo_begin (T G, bool Reverse=false)
template<class T >
ipo_iterator< Tipo_end (T G)
template<class T , class SetType >
ipo_ext_iterator< T, SetType > ipo_ext_begin (T G, SetType &S)
template<class T , class SetType >
ipo_ext_iterator< T, SetType > ipo_ext_end (T G, SetType &S)
template<class T >
scc_iterator< Tscc_begin (const T &G)
template<class T >
scc_iterator< Tscc_end (const T &G)
template<class T >
scc_iterator< Inverse< T > > scc_begin (const Inverse< T > &G)
template<class T >
scc_iterator< Inverse< T > > scc_end (const Inverse< T > &G)
template<class S1Ty , class S2Ty >
bool set_union (S1Ty &S1, const S2Ty &S2)
template<class S1Ty , class S2Ty >
void set_intersect (S1Ty &S1, const S2Ty &S2)
template<class S1Ty , class S2Ty >
S1Ty set_difference (const S1Ty &S1, const S2Ty &S2)
template<class S1Ty , class S2Ty >
void set_subtract (S1Ty &S1, const S2Ty &S2)
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<typename ItTy , typename Dist >
ItTy next (ItTy it, Dist n)
template<typename ItTy >
ItTy next (ItTy it)
template<typename ItTy , typename Dist >
ItTy prior (ItTy it, Dist n)
template<typename ItTy >
ItTy prior (ItTy it)
template<typename T1 , typename T2 >
tier< T1, T2 > tie (T1 &f, T2 &s)
template<class T , std::size_t N>
Tarray_endof (T(&x)[N])
template<class T , std::size_t N>
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)
template<class IteratorTy >
void array_pod_sort (IteratorTy Start, IteratorTy End)
template<class IteratorTy >
void array_pod_sort (IteratorTy Start, IteratorTy End, int(*Compare)(const void *, const void *))
template<typename Container >
void DeleteContainerPointers (Container &C)
template<typename Container >
void DeleteContainerSeconds (Container &C)
static char hexdigit (unsigned X, bool LowerCase=false)
static unsigned hexDigitValue (char C)
template<typename IntTy >
static char * utohex_buffer (IntTy X, char *BufferEnd)
static std::string utohexstr (uint64_t X)
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)
std::pair< StringRef, StringRefgetToken (StringRef Source, StringRef Delimiters=" \t\n\v\f\r")
void SplitString (StringRef Source, SmallVectorImpl< StringRef > &OutFragments, StringRef Delimiters=" \t\n\v\f\r")
static unsigned HashString (StringRef Str, unsigned Result=0)
static StringRef getOrdinalSuffix (unsigned Val)
 Returns the English suffix for an ordinal integer (-st, -nd, -rd, -th).
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)
bool isNoAliasArgument (const Value *V)
bool isIdentifiedObject (const Value *V)
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)
void PointerMayBeCaptured (const Value *V, CaptureTracker *Tracker)
FunctionPasscreateCFGPrinterPass ()
FunctionPasscreateCFGOnlyPrinterPass ()
bool callIsSmall (ImmutableCallSite CS)
 Check whether a call will lower to something small.
ConstantConstantFoldInstruction (Instruction *I, const DataLayout *TD=0, const TargetLibraryInfo *TLI=0)
ConstantConstantFoldConstantExpression (const ConstantExpr *CE, const DataLayout *TD=0, const TargetLibraryInfo *TLI=0)
ConstantConstantFoldInstOperands (unsigned Opcode, Type *DestTy, ArrayRef< Constant * > Ops, const DataLayout *TD=0, const TargetLibraryInfo *TLI=0)
ConstantConstantFoldCompareInstOperands (unsigned Predicate, Constant *LHS, Constant *RHS, const DataLayout *TD=0, const TargetLibraryInfo *TLI=0)
ConstantConstantFoldInsertValueInstruction (Constant *Agg, Constant *Val, ArrayRef< unsigned > Idxs)
ConstantConstantFoldLoadFromConstPtr (Constant *C, const DataLayout *TD=0)
ConstantConstantFoldLoadThroughGEPConstantExpr (Constant *C, ConstantExpr *CE)
ConstantConstantFoldLoadThroughGEPIndices (Constant *C, ArrayRef< Constant * > Indices)
bool canConstantFoldCallTo (const Function *F)
ConstantConstantFoldCall (Function *F, ArrayRef< Constant * > Operands, const TargetLibraryInfo *TLI=0)
constant_iterator constant_begin (const Function *F)
constant_iterator constant_end (const Function *F)
FunctionPasscreateDependenceAnalysisPass ()
template<class GraphT >
unsigned DFSPass (DominatorTreeBase< typename GraphT::NodeType > &DT, typename GraphT::NodeType *V, unsigned N)
template<class GraphT >
GraphT::NodeType * Eval (DominatorTreeBase< typename GraphT::NodeType > &DT, typename GraphT::NodeType *VIn, unsigned LastLinked)
template<class FuncT , class NodeT >
void Calculate (DominatorTreeBase< typename GraphTraits< NodeT >::NodeType > &DT, FuncT &F)
 EXTERN_TEMPLATE_INSTANTIATION (class DomTreeNodeBase< BasicBlock >)
 EXTERN_TEMPLATE_INSTANTIATION (class DomTreeNodeBase< MachineBasicBlock >)
template<class NodeT >
raw_ostreamoperator<< (raw_ostream &o, const DomTreeNodeBase< NodeT > *Node)
template<class NodeT >
void PrintDomTree (const DomTreeNodeBase< NodeT > *N, raw_ostream &o, unsigned Lev)
template<class FuncT , class N >
void Calculate (DominatorTreeBase< typename GraphTraits< N >::NodeType > &DT, FuncT &F)
 EXTERN_TEMPLATE_INSTANTIATION (class DominatorTreeBase< BasicBlock >)
FunctionPasscreateDomPrinterPass ()
FunctionPasscreateDomOnlyPrinterPass ()
FunctionPasscreateDomViewerPass ()
FunctionPasscreateDomOnlyViewerPass ()
FunctionPasscreatePostDomPrinterPass ()
FunctionPasscreatePostDomOnlyPrinterPass ()
FunctionPasscreatePostDomViewerPass ()
FunctionPasscreatePostDomOnlyViewerPass ()
ValueSimplifyAddInst (Value *LHS, Value *RHS, bool isNSW, bool isNUW, const DataLayout *TD=0, const TargetLibraryInfo *TLI=0, const DominatorTree *DT=0)
ValueSimplifySubInst (Value *LHS, Value *RHS, bool isNSW, bool isNUW, const DataLayout *TD=0, const TargetLibraryInfo *TLI=0, const DominatorTree *DT=0)
ValueSimplifyFAddInst (Value *LHS, Value *RHS, FastMathFlags FMF, const DataLayout *TD=0, const TargetLibraryInfo *TLI=0, const DominatorTree *DT=0)
ValueSimplifyFSubInst (Value *LHS, Value *RHS, FastMathFlags FMF, const DataLayout *TD=0, const TargetLibraryInfo *TLI=0, const DominatorTree *DT=0)
ValueSimplifyFMulInst (Value *LHS, Value *RHS, FastMathFlags FMF, const DataLayout *TD=0, const TargetLibraryInfo *TLI=0, const DominatorTree *DT=0)
ValueSimplifyMulInst (Value *LHS, Value *RHS, const DataLayout *TD=0, const TargetLibraryInfo *TLI=0, const DominatorTree *DT=0)
ValueSimplifySDivInst (Value *LHS, Value *RHS, const DataLayout *TD=0, const TargetLibraryInfo *TLI=0, const DominatorTree *DT=0)
ValueSimplifyUDivInst (Value *LHS, Value *RHS, const DataLayout *TD=0, const TargetLibraryInfo *TLI=0, const DominatorTree *DT=0)
ValueSimplifyFDivInst (Value *LHS, Value *RHS, const DataLayout *TD=0, const TargetLibraryInfo *TLI=0, const DominatorTree *DT=0)
ValueSimplifySRemInst (Value *LHS, Value *RHS, const DataLayout *TD=0, const TargetLibraryInfo *TLI=0, const DominatorTree *DT=0)
ValueSimplifyURemInst (Value *LHS, Value *RHS, const DataLayout *TD=0, const TargetLibraryInfo *TLI=0, const DominatorTree *DT=0)
ValueSimplifyFRemInst (Value *LHS, Value *RHS, const DataLayout *TD=0, const TargetLibraryInfo *TLI=0, const DominatorTree *DT=0)
ValueSimplifyShlInst (Value *Op0, Value *Op1, bool isNSW, bool isNUW, const DataLayout *TD=0, const TargetLibraryInfo *TLI=0, const DominatorTree *DT=0)
ValueSimplifyLShrInst (Value *Op0, Value *Op1, bool isExact, const DataLayout *TD=0, const TargetLibraryInfo *TLI=0, const DominatorTree *DT=0)
ValueSimplifyAShrInst (Value *Op0, Value *Op1, bool isExact, const DataLayout *TD=0, const TargetLibraryInfo *TLI=0, const DominatorTree *DT=0)
ValueSimplifyAndInst (Value *LHS, Value *RHS, const DataLayout *TD=0, const TargetLibraryInfo *TLI=0, const DominatorTree *DT=0)
ValueSimplifyOrInst (Value *LHS, Value *RHS, const DataLayout *TD=0, const TargetLibraryInfo *TLI=0, const DominatorTree *DT=0)
ValueSimplifyXorInst (Value *LHS, Value *RHS, const DataLayout *TD=0, const TargetLibraryInfo *TLI=0, const DominatorTree *DT=0)
ValueSimplifyICmpInst (unsigned Predicate, Value *LHS, Value *RHS, const DataLayout *TD=0, const TargetLibraryInfo *TLI=0, const DominatorTree *DT=0)
ValueSimplifyFCmpInst (unsigned Predicate, Value *LHS, Value *RHS, const DataLayout *TD=0, const TargetLibraryInfo *TLI=0, const DominatorTree *DT=0)
ValueSimplifySelectInst (Value *Cond, Value *TrueVal, Value *FalseVal, const DataLayout *TD=0, const TargetLibraryInfo *TLI=0, const DominatorTree *DT=0)
ValueSimplifyGEPInst (ArrayRef< Value * > Ops, const DataLayout *TD=0, const TargetLibraryInfo *TLI=0, const DominatorTree *DT=0)
ValueSimplifyInsertValueInst (Value *Agg, Value *Val, ArrayRef< unsigned > Idxs, const DataLayout *TD=0, const TargetLibraryInfo *TLI=0, const DominatorTree *DT=0)
ValueSimplifyTruncInst (Value *Op, Type *Ty, const DataLayout *TD=0, const TargetLibraryInfo *TLI=0, const DominatorTree *DT=0)
ValueSimplifyCmpInst (unsigned Predicate, Value *LHS, Value *RHS, const DataLayout *TD=0, const TargetLibraryInfo *TLI=0, const DominatorTree *DT=0)
ValueSimplifyBinOp (unsigned Opcode, Value *LHS, Value *RHS, const DataLayout *TD=0, const TargetLibraryInfo *TLI=0, const DominatorTree *DT=0)
ValueSimplifyCall (Value *V, User::op_iterator ArgBegin, User::op_iterator ArgEnd, const DataLayout *TD=0, const TargetLibraryInfo *TLI=0, const DominatorTree *DT=0)
 Given a function and iterators over arguments, see if we can fold the result.
ValueSimplifyCall (Value *V, ArrayRef< Value * > Args, const DataLayout *TD=0, const TargetLibraryInfo *TLI=0, const DominatorTree *DT=0)
 Given a function and set of arguments, see if we can fold the result.
ValueSimplifyInstruction (Instruction *I, const DataLayout *TD=0, const TargetLibraryInfo *TLI=0, const DominatorTree *DT=0)
bool replaceAndRecursivelySimplify (Instruction *I, Value *SimpleV, const DataLayout *TD=0, const TargetLibraryInfo *TLI=0, const DominatorTree *DT=0)
 Replace all uses of 'I' with 'SimpleV' and simplify the uses recursively.
bool recursivelySimplifyInstruction (Instruction *I, const DataLayout *TD=0, const TargetLibraryInfo *TLI=0, const DominatorTree *DT=0)
 Recursively attempt to simplify an instruction.
Interval::succ_iterator succ_begin (Interval *I)
Interval::succ_iterator succ_end (Interval *I)
Interval::pred_iterator pred_begin (Interval *I)
Interval::pred_iterator pred_end (Interval *I)
BasicBlockgetNodeHeader (BasicBlock *BB)
BasicBlockgetNodeHeader (Interval *I)
BasicBlockgetSourceGraphNode (Function *, BasicBlock *BB)
IntervalgetSourceGraphNode (IntervalPartition *IP, BasicBlock *BB)
void addNodeToInterval (Interval *Int, BasicBlock *BB)
void addNodeToInterval (Interval *Int, Interval *I)
function_interval_iterator intervals_begin (Function *F, bool DeleteInts=true)
function_interval_iterator intervals_end (Function *)
interval_part_interval_iterator intervals_begin (IntervalPartition &IP, bool DeleteIntervals=true)
interval_part_interval_iterator intervals_end (IntervalPartition &IP)
PasscreateIVUsersPass ()
FunctionPasscreateLintPass ()
 Create a lint pass.
void lintModule (const Module &M)
 Check a module.
void lintFunction (const Function &F)
bool isSafeToLoadUnconditionally (Value *V, Instruction *ScanFrom, unsigned Align, const DataLayout *TD=0)
ValueFindAvailableLoadedValue (Value *Ptr, BasicBlock *ScanBB, BasicBlock::iterator &ScanFrom, unsigned MaxInstsToScan=6, AliasAnalysis *AA=0, MDNode **TBAATag=0)
template<typename T >
void RemoveFromVector (std::vector< T * > &V, T *N)
template<class BlockT , class LoopT >
raw_ostreamoperator<< (raw_ostream &OS, const LoopBase< BlockT, LoopT > &Loop)
template<class BlockT , class LoopT >
static void discoverAndMapSubloop (LoopT *L, ArrayRef< BlockT * > Backedges, LoopInfoBase< BlockT, LoopT > *LI, DominatorTreeBase< BlockT > &DomTree)
bool isAllocationFn (const Value *V, const TargetLibraryInfo *TLI, bool LookThroughBitCast=false)
 Tests if a value is a call or invoke to a library function that allocates or reallocates memory (either malloc, calloc, realloc, or strdup like).
bool isNoAliasFn (const Value *V, const TargetLibraryInfo *TLI, bool LookThroughBitCast=false)
 Tests if a value is a call or invoke to a function that returns a NoAlias pointer (including malloc/calloc/realloc/strdup-like functions).
bool isMallocLikeFn (const Value *V, const TargetLibraryInfo *TLI, bool LookThroughBitCast=false)
 Tests if a value is a call or invoke to a library function that allocates uninitialized memory (such as malloc).
bool isCallocLikeFn (const Value *V, const TargetLibraryInfo *TLI, bool LookThroughBitCast=false)
 Tests if a value is a call or invoke to a library function that allocates zero-filled memory (such as calloc).
bool isAllocLikeFn (const Value *V, const TargetLibraryInfo *TLI, bool LookThroughBitCast=false)
 Tests if a value is a call or invoke to a library function that allocates memory (either malloc, calloc, or strdup like).
bool isReallocLikeFn (const Value *V, const TargetLibraryInfo *TLI, bool LookThroughBitCast=false)
 Tests if a value is a call or invoke to a library function that reallocates memory (such as realloc).
const CallInstextractMallocCall (const Value *I, const TargetLibraryInfo *TLI)
static CallInstextractMallocCall (Value *I, const TargetLibraryInfo *TLI)
const CallInstisArrayMalloc (const Value *I, const DataLayout *TD, const TargetLibraryInfo *TLI)
PointerTypegetMallocType (const CallInst *CI, const TargetLibraryInfo *TLI)
TypegetMallocAllocatedType (const CallInst *CI, const TargetLibraryInfo *TLI)
ValuegetMallocArraySize (CallInst *CI, const DataLayout *TD, const TargetLibraryInfo *TLI, bool LookThroughSExt=false)
const CallInstextractCallocCall (const Value *I, const TargetLibraryInfo *TLI)
static CallInstextractCallocCall (Value *I, const TargetLibraryInfo *TLI)
const CallInstisFreeCall (const Value *I, const TargetLibraryInfo *TLI)
 isFreeCall - Returns non-null if the value is a call to the builtin free()
static CallInstisFreeCall (Value *I, const TargetLibraryInfo *TLI)
bool getObjectSize (const Value *Ptr, uint64_t &Size, const DataLayout *TD, const TargetLibraryInfo *TLI, bool RoundToAlign=false)
 Compute the size of the object pointed by Ptr. Returns true and the object size in Size if successful, and false otherwise. In this context, by object we mean the region of memory starting at Ptr to the end of the underlying object pointed to by Ptr. If RoundToAlign is true, then Size is rounded up to the aligment of allocas, byval arguments, and global variables.
PasscreateGlobalsModRefPass ()
PasscreateAliasDebugger ()
ModulePasscreateAliasAnalysisCounterPass ()
FunctionPasscreateAAEvalPass ()
ImmutablePasscreateNoAAPass ()
ImmutablePasscreateBasicAliasAnalysisPass ()
FunctionPasscreateLibCallAliasAnalysisPass (LibCallInfo *LCI)
FunctionPasscreateScalarEvolutionAliasAnalysisPass ()
ImmutablePasscreateTypeBasedAliasAnalysisPass ()
ImmutablePasscreateObjCARCAliasAnalysisPass ()
ModulePasscreateProfileLoaderPass ()
ModulePasscreateProfileMetadataLoaderPass ()
ImmutablePasscreateNoProfileInfoPass ()
FunctionPasscreateProfileEstimatorPass ()
FunctionPasscreateProfileVerifierPass ()
ModulePasscreatePathProfileLoaderPass ()
ImmutablePasscreateNoPathProfileInfoPass ()
ModulePasscreatePathProfileVerifierPass ()
ModulePasscreateDSAAPass ()
ModulePasscreateDSOptPass ()
ModulePasscreateSteensgaardPass ()
FunctionPasscreateLazyValueInfoPass ()
FunctionPasscreateCostModelAnalysisPass ()
FunctionPasscreateInstCountPass ()
FunctionPasscreateRegionInfoPass ()
ModulePasscreateModuleDebugInfoPrinterPass ()
FunctionPasscreateMemDepPrinter ()
FunctionPasscreatePostDomTree ()
raw_ostreamoperator<< (raw_ostream &O, std::pair< const BasicBlock *, const BasicBlock * > E)
ModulePasscreateProfileMetadataLoaderPass (const std::string &Filename)
raw_ostreamoperator<< (raw_ostream &O, std::pair< const MachineBasicBlock *, const MachineBasicBlock * > E)
raw_ostreamoperator<< (raw_ostream &O, const BasicBlock *BB)
raw_ostreamoperator<< (raw_ostream &O, const MachineBasicBlock *MBB)
raw_ostreamoperator<< (raw_ostream &O, const Function *F)
raw_ostreamoperator<< (raw_ostream &O, const MachineFunction *MF)
PasscreateProfileLoaderPass (const std::string &Filename)
raw_ostreamoperator<< (raw_ostream &OS, const RegionNode &Node)
 Print a RegionNode.
template<class NodeType >
RNSuccIterator< NodeType > succ_begin (NodeType *Node)
template<class NodeType >
RNSuccIterator< NodeType > succ_end (NodeType *Node)
 RegionNodeGraphTraits (RegionNode)
 RegionGraphTraits (Region, RegionNode)
FunctionPasscreateRegionViewerPass ()
FunctionPasscreateRegionOnlyViewerPass ()
FunctionPasscreateRegionPrinterPass ()
FunctionPasscreateRegionOnlyPrinterPass ()
raw_ostreamoperator<< (raw_ostream &OS, const SCEV &S)
bool isSafeToExpand (const SCEV *S)
template<typename SV >
void visitAll (const SCEV *Root, SV &Visitor)
 Use SCEVTraversal to visit all nodes in the givien expression tree.
static const SCEVapply (const SCEV *Scev, LoopToScevMapT &Map, ScalarEvolution &SE)
 Applies the Map (Loop -> SCEV) to the given Scev.
const SCEVTransformForPostIncUse (TransformKind Kind, const SCEV *S, Instruction *User, Value *OperandValToReplace, PostIncLoopSet &Loops, ScalarEvolution &SE, DominatorTree &DT)
ImmutablePasscreateNoTargetTransformInfoPass ()
 Create the base case instance of a pass in the TTI analysis group.
void ComputeMaskedBits (Value *V, APInt &KnownZero, APInt &KnownOne, const DataLayout *TD=0, unsigned Depth=0)
void computeMaskedBitsLoad (const MDNode &Ranges, APInt &KnownZero)
void ComputeSignBit (Value *V, bool &KnownZero, bool &KnownOne, const DataLayout *TD=0, unsigned Depth=0)
bool isKnownToBeAPowerOfTwo (Value *V, bool OrZero=false, unsigned Depth=0)
bool isKnownNonZero (Value *V, const DataLayout *TD=0, unsigned Depth=0)
bool MaskedValueIsZero (Value *V, const APInt &Mask, const DataLayout *TD=0, unsigned Depth=0)
unsigned ComputeNumSignBits (Value *Op, const DataLayout *TD=0, unsigned Depth=0)
bool ComputeMultiple (Value *V, unsigned Base, Value *&Multiple, bool LookThroughSExt=false, unsigned Depth=0)
bool CannotBeNegativeZero (const Value *V, unsigned Depth=0)
ValueisBytewiseValue (Value *V)
ValueFindInsertedValue (Value *V, ArrayRef< unsigned > idx_range, Instruction *InsertBefore=0)
ValueGetPointerBaseWithConstantOffset (Value *Ptr, int64_t &Offset, const DataLayout *TD)
static const ValueGetPointerBaseWithConstantOffset (const Value *Ptr, int64_t &Offset, const DataLayout *TD)
bool getConstantStringInfo (const Value *V, StringRef &Str, uint64_t Offset=0, bool TrimAtNul=true)
uint64_t GetStringLength (Value *V)
ValueGetUnderlyingObject (Value *V, const DataLayout *TD=0, unsigned MaxLookup=6)
static const ValueGetUnderlyingObject (const Value *V, const DataLayout *TD=0, unsigned MaxLookup=6)
void GetUnderlyingObjects (Value *V, SmallVectorImpl< Value * > &Objects, const DataLayout *TD=0, unsigned MaxLookup=6)
bool onlyUsedByLifetimeMarkers (const Value *V)
bool isSafeToSpeculativelyExecute (const Value *V, const DataLayout *TD=0)
bool isKnownNonNull (const Value *V)
FunctionPasscreateVerifierPass (VerifierFailureAction action=AbortProcessAction)
 Create a verifier pass.
bool verifyModule (const Module &M, VerifierFailureAction action=AbortProcessAction, std::string *ErrorInfo=0)
 Check a module for errors.
bool verifyFunction (const Function &F, VerifierFailureAction action=AbortProcessAction)
ModuleParseAssemblyFile (const std::string &Filename, SMDiagnostic &Error, LLVMContext &Context)
 Parse LLVM Assembly from a file.
ModuleParseAssemblyString (const char *AsmString, Module *M, SMDiagnostic &Error, LLVMContext &Context)
 Parse LLVM Assembly from a string.
ModuleParseAssembly (MemoryBuffer *F, Module *M, SMDiagnostic &Err, LLVMContext &Context)
 Parse LLVM Assembly from a MemoryBuffer. This function *always* takes ownership of the MemoryBuffer.
ModulePasscreatePrintModulePass (raw_ostream *OS, bool DeleteStream=false, const std::string &Banner="")
FunctionPasscreatePrintFunctionPass (const std::string &Banner, raw_ostream *OS, bool DeleteStream=false)
BasicBlockPasscreatePrintBasicBlockPass (raw_ostream *OS, bool DeleteStream=false, const std::string &Banner="")
void WriteAsOperand (raw_ostream &, const Value *, bool PrintTy=true, const Module *Context=0)
bool UpgradeIntrinsicFunction (Function *F, Function *&NewFn)
void UpgradeIntrinsicCall (CallInst *CI, Function *NewFn)
void UpgradeCallsToIntrinsic (Function *F)
bool UpgradeGlobalVariable (GlobalVariable *GV)
ModulegetLazyBitcodeModule (MemoryBuffer *Buffer, LLVMContext &Context, std::string *ErrMsg=0)
ModulegetStreamedBitcodeModule (const std::string &name, DataStreamer *streamer, LLVMContext &Context, std::string *ErrMsg=0)
std::string getBitcodeTargetTriple (MemoryBuffer *Buffer, LLVMContext &Context, std::string *ErrMsg=0)
ModuleParseBitcodeFile (MemoryBuffer *Buffer, LLVMContext &Context, std::string *ErrMsg=0)
void WriteBitcodeToFile (const Module *M, raw_ostream &Out)
ModulePasscreateBitcodeWriterPass (raw_ostream &Str)
bool isBitcodeWrapper (const unsigned char *BufPtr, const unsigned char *BufEnd)
bool isRawBitcode (const unsigned char *BufPtr, const unsigned char *BufEnd)
bool isBitcode (const unsigned char *BufPtr, const unsigned char *BufEnd)
bool SkipBitcodeWrapperHeader (const unsigned char *&BufPtr, const unsigned char *&BufEnd, bool VerifyBufferSize)
unsigned ComputeLinearIndex (Type *Ty, const unsigned *Indices, const unsigned *IndicesEnd, unsigned CurIndex=0)
unsigned ComputeLinearIndex (Type *Ty, ArrayRef< unsigned > Indices, unsigned CurIndex=0)
void ComputeValueVTs (const TargetLowering &TLI, Type *Ty, SmallVectorImpl< EVT > &ValueVTs, SmallVectorImpl< uint64_t > *Offsets=0, uint64_t StartingOffset=0)
GlobalVariableExtractTypeInfo (Value *V)
 ExtractTypeInfo - Returns the type info, possibly bitcast, encoded in V.
bool hasInlineAsmMemConstraint (InlineAsm::ConstraintInfoVector &CInfos, const TargetLowering &TLI)
ISD::CondCode getFCmpCondCode (FCmpInst::Predicate Pred)
ISD::CondCode getFCmpCodeWithoutNaN (ISD::CondCode CC)
ISD::CondCode getICmpCondCode (ICmpInst::Predicate Pred)
bool isInTailCallPosition (ImmutableCallSite CS, const TargetLowering &TLI)
static float normalizeSpillWeight (float UseDefFreq, unsigned Size)
raw_ostreamWriteGraph (raw_ostream &O, const EdgeBundles &G, bool ShortNames=false, const Twine &Title="")
 Specialize WriteGraph, the standard implementation won't work.
void ComputeUsesVAFloatArgument (const CallInst &I, MachineModuleInfo *MMI)
void AddCatchInfo (const CallInst &I, MachineModuleInfo *MMI, MachineBasicBlock *MBB)
void AddLandingPadInfo (const LandingPadInst &I, MachineModuleInfo &MMI, MachineBasicBlock *MBB)
void linkOcamlGC ()
 Creates an ocaml-compatible garbage collector.
void linkOcamlGCPrinter ()
 Creates an ocaml-compatible metadata printer.
void linkErlangGC ()
 Creates an erlang-compatible garbage collector.
void linkErlangGCPrinter ()
 Creates an erlang-compatible metadata printer.
void linkShadowStackGC ()
raw_ostreamoperator<< (raw_ostream &os, const LiveRange &LR)
bool operator< (SlotIndex V, const LiveRange &LR)
bool operator< (const LiveRange &LR, SlotIndex V)
raw_ostreamoperator<< (raw_ostream &OS, const LiveInterval &LI)
raw_ostreamoperator<< (raw_ostream &OS, const LiveRangeUpdater &X)
bool overlap (const LiveRange &VRSeg, const IntervalMap< SlotIndex, LiveInterval * >::const_iterator &LUSeg)
 Compare a live virtual register segment to a LiveIntervalUnion segment.
raw_ostreamoperator<< (raw_ostream &OS, const MachineBasicBlock &MBB)
void WriteAsOperand (raw_ostream &, const MachineBasicBlock *, bool t)
raw_ostreamoperator<< (raw_ostream &OS, const MachineConstantPoolValue &V)
 EXTERN_TEMPLATE_INSTANTIATION (class DominatorTreeBase< MachineBasicBlock >)
raw_ostreamoperator<< (raw_ostream &OS, const MachineInstr &MI)
MachineInstrBuilder BuildMI (MachineFunction &MF, DebugLoc DL, const MCInstrDesc &MCID)
MachineInstrBuilder BuildMI (MachineFunction &MF, DebugLoc DL, const MCInstrDesc &MCID, unsigned DestReg)
MachineInstrBuilder BuildMI (MachineBasicBlock &BB, MachineBasicBlock::iterator I, DebugLoc DL, const MCInstrDesc &MCID, unsigned DestReg)
MachineInstrBuilder BuildMI (MachineBasicBlock &BB, MachineBasicBlock::instr_iterator I, DebugLoc DL, const MCInstrDesc &MCID, unsigned DestReg)
MachineInstrBuilder BuildMI (MachineBasicBlock &BB, MachineInstr *I, DebugLoc DL, const MCInstrDesc &MCID, unsigned DestReg)
MachineInstrBuilder BuildMI (MachineBasicBlock &BB, MachineBasicBlock::iterator I, DebugLoc DL, const MCInstrDesc &MCID)
MachineInstrBuilder BuildMI (MachineBasicBlock &BB, MachineBasicBlock::instr_iterator I, DebugLoc DL, const MCInstrDesc &MCID)
MachineInstrBuilder BuildMI (MachineBasicBlock &BB, MachineInstr *I, DebugLoc DL, const MCInstrDesc &MCID)
MachineInstrBuilder BuildMI (MachineBasicBlock *BB, DebugLoc DL, const MCInstrDesc &MCID)
MachineInstrBuilder BuildMI (MachineBasicBlock *BB, DebugLoc DL, const MCInstrDesc &MCID, unsigned DestReg)
unsigned getDefRegState (bool B)
unsigned getImplRegState (bool B)
unsigned getKillRegState (bool B)
unsigned getDeadRegState (bool B)
unsigned getUndefRegState (bool B)
unsigned getInternalReadRegState (bool B)
unsigned getDebugRegState (bool B)
void finalizeBundle (MachineBasicBlock &MBB, MachineBasicBlock::instr_iterator FirstMI, MachineBasicBlock::instr_iterator LastMI)
MachineBasicBlock::instr_iterator finalizeBundle (MachineBasicBlock &MBB, MachineBasicBlock::instr_iterator FirstMI)
bool finalizeBundles (MachineFunction &MF)
MachineInstrgetBundleStart (MachineInstr *MI)
const MachineInstrgetBundleStart (const MachineInstr *MI)
MachineBasicBlock::instr_iterator getBundleEnd (MachineInstr *MI)
 Return an iterator pointing beyond the bundle containing MI.
MachineBasicBlock::const_instr_iterator getBundleEnd (const MachineInstr *MI)
 Return an iterator pointing beyond the bundle containing MI.
raw_ostreamoperator<< (raw_ostream &OS, const MachineMemOperand &MRO)
raw_ostreamoperator<< (raw_ostream &OS, const MachineOperand &MO)
hash_code hash_value (const MachineOperand &MO)
raw_ostreamoperator<< (raw_ostream &OS, const MachineTraceMetrics::Trace &Tr)
raw_ostreamoperator<< (raw_ostream &OS, const MachineTraceMetrics::Ensemble &En)
ImmutablePasscreateBasicTargetTransformInfoPass (const TargetMachine *TM)
 Create a basic TargetTransformInfo analysis pass.
FunctionPasscreateUnreachableBlockEliminationPass ()
MachineFunctionPasscreateMachineFunctionPrinterPass (raw_ostream &OS, const std::string &Banner="")
FunctionPasscreateFastRegisterAllocator ()
FunctionPasscreateBasicRegisterAllocator ()
FunctionPasscreateGreedyRegisterAllocator ()
FunctionPasscreateDefaultPBQPRegisterAllocator ()
FunctionPasscreateGCLoweringPass ()
FunctionPasscreateGCInfoPrinter (raw_ostream &OS)
FunctionPasscreateStackProtectorPass (const TargetMachine *TM)
FunctionPasscreateMachineVerifierPass (const char *Banner=0)
FunctionPasscreateDwarfEHPass (const TargetMachine *TM)
FunctionPasscreateSjLjEHPreparePass (const TargetMachine *TM)
FunctionPasscreateExecutionDependencyFixPass (const TargetRegisterClass *RC)
FunctionPasscreatePBQPRegisterAllocator (OwningPtr< PBQPBuilder > &builder, char *customPassID=0)
raw_ostreamoperator<< (raw_ostream &OS, const ILPValue &Val)
ScheduleDAGSDNodescreateBURRListDAGScheduler (SelectionDAGISel *IS, CodeGenOpt::Level OptLevel)
ScheduleDAGSDNodescreateSourceListDAGScheduler (SelectionDAGISel *IS, CodeGenOpt::Level OptLevel)
ScheduleDAGSDNodescreateHybridListDAGScheduler (SelectionDAGISel *IS, CodeGenOpt::Level)
ScheduleDAGSDNodescreateILPListDAGScheduler (SelectionDAGISel *IS, CodeGenOpt::Level)
ScheduleDAGSDNodescreateFastDAGScheduler (SelectionDAGISel *IS, CodeGenOpt::Level OptLevel)
ScheduleDAGSDNodescreateVLIWDAGScheduler (SelectionDAGISel *IS, CodeGenOpt::Level OptLevel)
 createVLIWDAGScheduler - This creates a top-down list scheduler.
ScheduleDAGSDNodescreateDefaultScheduler (SelectionDAGISel *IS, CodeGenOpt::Level OptLevel)
ScheduleDAGSDNodescreateDAGLinearizer (SelectionDAGISel *IS, CodeGenOpt::Level OptLevel)
void checkForCycles (const SDNode *N)
void checkForCycles (const SelectionDAG *DAG)
raw_ostreamoperator<< (raw_ostream &os, SlotIndex li)
bool operator< (SlotIndex V, const IdxMBBPair &IM)
bool operator< (const IdxMBBPair &IM, SlotIndex V)
raw_ostreamoperator<< (raw_ostream &OS, const VirtRegMap &VRM)
DISubprogram getDISubprogram (const MDNode *Scope)
 getDISubprogram - Find subprogram that is enclosing this scope.
DICompositeType getDICompositeType (DIType T)
 getDICompositeType - Find underlying composite type.
bool isSubprogramContext (const MDNode *Context)
NamedMDNodegetOrInsertFnSpecificMDNode (Module &M, DISubprogram SP)
NamedMDNodegetFnSpecificMDNode (const Module &M, DISubprogram SP)
DIVariable createInlinedVariable (MDNode *DV, MDNode *InlinedScope, LLVMContext &VMContext)
DIVariable cleanseInlinedVariable (MDNode *DV, LLVMContext &VMContext)
 cleanseInlinedVariable - Remove inlined scope from the variable.
GenericValue PTOGV (void *P)
void * GVTOP (const GenericValue &GV)
void initializeCore (PassRegistry &)
void initializeTransformUtils (PassRegistry &)
void initializeScalarOpts (PassRegistry &)
void initializeObjCARCOpts (PassRegistry &)
void initializeVectorization (PassRegistry &)
void initializeInstCombine (PassRegistry &)
void initializeIPO (PassRegistry &)
 initializeIPO - Initialize all passes linked into the IPO library.
void initializeInstrumentation (PassRegistry &)
void initializeAnalysis (PassRegistry &)
 initializeAnalysis - Initialize all passes linked into the Analysis library.
void initializeIPA (PassRegistry &)
 initializeIPA - Initialize all passes linked into the IPA library.
void initializeCodeGen (PassRegistry &)
 initializeCodeGen - Initialize all passes linked into the CodeGen library.
void initializeTarget (PassRegistry &)
 initializeCodeGen - Initialize all passes linked into the CodeGen library.
void initializeAAEvalPass (PassRegistry &)
void initializeADCEPass (PassRegistry &)
void initializeAliasAnalysisAnalysisGroup (PassRegistry &)
void initializeAliasAnalysisCounterPass (PassRegistry &)
void initializeAliasDebuggerPass (PassRegistry &)
void initializeAliasSetPrinterPass (PassRegistry &)
void initializeAlwaysInlinerPass (PassRegistry &)
void initializeArgPromotionPass (PassRegistry &)
void initializeBarrierNoopPass (PassRegistry &)
void initializeBasicAliasAnalysisPass (PassRegistry &)
void initializeBasicCallGraphPass (PassRegistry &)
void initializeBasicTTIPass (PassRegistry &)
void initializeBlockExtractorPassPass (PassRegistry &)
void initializeBlockFrequencyInfoPass (PassRegistry &)
void initializeBlockPlacementPass (PassRegistry &)
void initializeBoundsCheckingPass (PassRegistry &)
void initializeBranchFolderPassPass (PassRegistry &)
void initializeBranchProbabilityInfoPass (PassRegistry &)
void initializeBreakCriticalEdgesPass (PassRegistry &)
void initializeCallGraphPrinterPass (PassRegistry &)
void initializeCallGraphViewerPass (PassRegistry &)
void initializeCFGOnlyPrinterPass (PassRegistry &)
void initializeCFGOnlyViewerPass (PassRegistry &)
void initializeCFGPrinterPass (PassRegistry &)
void initializeCFGSimplifyPassPass (PassRegistry &)
void initializeStructurizeCFGPass (PassRegistry &)
void initializeCFGViewerPass (PassRegistry &)
void initializeCalculateSpillWeightsPass (PassRegistry &)
void initializeCallGraphAnalysisGroup (PassRegistry &)
void initializeCodeGenPreparePass (PassRegistry &)
void initializeConstantMergePass (PassRegistry &)
void initializeConstantPropagationPass (PassRegistry &)
void initializeMachineCopyPropagationPass (PassRegistry &)
void initializeCostModelAnalysisPass (PassRegistry &)
void initializeCorrelatedValuePropagationPass (PassRegistry &)
void initializeDAEPass (PassRegistry &)
void initializeDAHPass (PassRegistry &)
void initializeDCEPass (PassRegistry &)
void initializeDSEPass (PassRegistry &)
void initializeDebugIRPass (PassRegistry &)
void initializeDeadInstEliminationPass (PassRegistry &)
void initializeDeadMachineInstructionElimPass (PassRegistry &)
void initializeDependenceAnalysisPass (PassRegistry &)
void initializeDomOnlyPrinterPass (PassRegistry &)
void initializeDomOnlyViewerPass (PassRegistry &)
void initializeDomPrinterPass (PassRegistry &)
void initializeDomViewerPass (PassRegistry &)
void initializeDominanceFrontierPass (PassRegistry &)
void initializeDominatorTreePass (PassRegistry &)
void initializeEarlyIfConverterPass (PassRegistry &)
void initializeEdgeBundlesPass (PassRegistry &)
void initializeEdgeProfilerPass (PassRegistry &)
void initializeExpandPostRAPass (PassRegistry &)
void initializePathProfilerPass (PassRegistry &)
void initializeGCOVProfilerPass (PassRegistry &)
void initializeAddressSanitizerPass (PassRegistry &)
void initializeAddressSanitizerModulePass (PassRegistry &)
void initializeMemorySanitizerPass (PassRegistry &)
void initializeThreadSanitizerPass (PassRegistry &)
void initializeEarlyCSEPass (PassRegistry &)
void initializeExpandISelPseudosPass (PassRegistry &)
void initializeFindUsedTypesPass (PassRegistry &)
void initializeFunctionAttrsPass (PassRegistry &)
void initializeGCMachineCodeAnalysisPass (PassRegistry &)
void initializeGCModuleInfoPass (PassRegistry &)
void initializeGVNPass (PassRegistry &)
void initializeGlobalDCEPass (PassRegistry &)
void initializeGlobalOptPass (PassRegistry &)
void initializeGlobalsModRefPass (PassRegistry &)
void initializeIPCPPass (PassRegistry &)
void initializeIPSCCPPass (PassRegistry &)
void initializeIVUsersPass (PassRegistry &)
void initializeIfConverterPass (PassRegistry &)
void initializeIndVarSimplifyPass (PassRegistry &)
void initializeInlineCostAnalysisPass (PassRegistry &)
void initializeInstCombinerPass (PassRegistry &)
void initializeInstCountPass (PassRegistry &)
void initializeInstNamerPass (PassRegistry &)
void initializeInternalizePassPass (PassRegistry &)
void initializeIntervalPartitionPass (PassRegistry &)
void initializeJumpThreadingPass (PassRegistry &)
void initializeLCSSAPass (PassRegistry &)
void initializeLICMPass (PassRegistry &)
void initializeLazyValueInfoPass (PassRegistry &)
void initializeLibCallAliasAnalysisPass (PassRegistry &)
void initializeLintPass (PassRegistry &)
void initializeLiveDebugVariablesPass (PassRegistry &)
void initializeLiveIntervalsPass (PassRegistry &)
void initializeLiveRegMatrixPass (PassRegistry &)
void initializeLiveStacksPass (PassRegistry &)
void initializeLiveVariablesPass (PassRegistry &)
void initializeLoaderPassPass (PassRegistry &)
void initializeProfileMetadataLoaderPassPass (PassRegistry &)
void initializePathProfileLoaderPassPass (PassRegistry &)
void initializeLocalStackSlotPassPass (PassRegistry &)
void initializeLoopDeletionPass (PassRegistry &)
void initializeLoopExtractorPass (PassRegistry &)
void initializeLoopInfoPass (PassRegistry &)
void initializeLoopInstSimplifyPass (PassRegistry &)
void initializeLoopRotatePass (PassRegistry &)
void initializeLoopSimplifyPass (PassRegistry &)
void initializeLoopStrengthReducePass (PassRegistry &)
void initializeGlobalMergePass (PassRegistry &)
void initializeLoopUnrollPass (PassRegistry &)
void initializeLoopUnswitchPass (PassRegistry &)
void initializeLoopIdiomRecognizePass (PassRegistry &)
void initializeLowerAtomicPass (PassRegistry &)
void initializeLowerExpectIntrinsicPass (PassRegistry &)
void initializeLowerIntrinsicsPass (PassRegistry &)
void initializeLowerInvokePass (PassRegistry &)
void initializeLowerSwitchPass (PassRegistry &)
void initializeMachineBlockFrequencyInfoPass (PassRegistry &)
void initializeMachineBlockPlacementPass (PassRegistry &)
void initializeMachineBlockPlacementStatsPass (PassRegistry &)
void initializeMachineBranchProbabilityInfoPass (PassRegistry &)
void initializeMachineCSEPass (PassRegistry &)
void initializeMachineDominatorTreePass (PassRegistry &)
void initializeMachinePostDominatorTreePass (PassRegistry &)
void initializeMachineLICMPass (PassRegistry &)
void initializeMachineLoopInfoPass (PassRegistry &)
void initializeMachineModuleInfoPass (PassRegistry &)
void initializeMachineSchedulerPass (PassRegistry &)
void initializeMachineSinkingPass (PassRegistry &)
void initializeMachineTraceMetricsPass (PassRegistry &)
void initializeMachineVerifierPassPass (PassRegistry &)
void initializeMemCpyOptPass (PassRegistry &)
void initializeMemDepPrinterPass (PassRegistry &)
void initializeMemoryDependenceAnalysisPass (PassRegistry &)
void initializeMetaRenamerPass (PassRegistry &)
void initializeMergeFunctionsPass (PassRegistry &)
void initializeModuleDebugInfoPrinterPass (PassRegistry &)
void initializeNoAAPass (PassRegistry &)
void initializeNoProfileInfoPass (PassRegistry &)
void initializeNoPathProfileInfoPass (PassRegistry &)
void initializeObjCARCAliasAnalysisPass (PassRegistry &)
void initializeObjCARCAPElimPass (PassRegistry &)
void initializeObjCARCExpandPass (PassRegistry &)
void initializeObjCARCContractPass (PassRegistry &)
void initializeObjCARCOptPass (PassRegistry &)
void initializeOptimalEdgeProfilerPass (PassRegistry &)
void initializeOptimizePHIsPass (PassRegistry &)
void initializePEIPass (PassRegistry &)
void initializePHIEliminationPass (PassRegistry &)
void initializePartialInlinerPass (PassRegistry &)
void initializePeepholeOptimizerPass (PassRegistry &)
void initializePostDomOnlyPrinterPass (PassRegistry &)
void initializePostDomOnlyViewerPass (PassRegistry &)
void initializePostDomPrinterPass (PassRegistry &)
void initializePostDomViewerPass (PassRegistry &)
void initializePostDominatorTreePass (PassRegistry &)
void initializePostRASchedulerPass (PassRegistry &)
void initializePreVerifierPass (PassRegistry &)
void initializePrintFunctionPassPass (PassRegistry &)
void initializePrintModulePassPass (PassRegistry &)
void initializePrintBasicBlockPassPass (PassRegistry &)
void initializeProcessImplicitDefsPass (PassRegistry &)
void initializeProfileEstimatorPassPass (PassRegistry &)
void initializeProfileInfoAnalysisGroup (PassRegistry &)
void initializePathProfileInfoAnalysisGroup (PassRegistry &)
void initializePathProfileVerifierPass (PassRegistry &)
void initializeProfileVerifierPassPass (PassRegistry &)
void initializePromotePassPass (PassRegistry &)
void initializePruneEHPass (PassRegistry &)
void initializeReassociatePass (PassRegistry &)
void initializeRegToMemPass (PassRegistry &)
void initializeRegionInfoPass (PassRegistry &)
void initializeRegionOnlyPrinterPass (PassRegistry &)
void initializeRegionOnlyViewerPass (PassRegistry &)
void initializeRegionPrinterPass (PassRegistry &)
void initializeRegionViewerPass (PassRegistry &)
void initializeSCCPPass (PassRegistry &)
void initializeSROAPass (PassRegistry &)
void initializeSROA_DTPass (PassRegistry &)
void initializeSROA_SSAUpPass (PassRegistry &)
void initializeScalarEvolutionAliasAnalysisPass (PassRegistry &)
void initializeScalarEvolutionPass (PassRegistry &)
void initializeSimpleInlinerPass (PassRegistry &)
void initializeRegisterCoalescerPass (PassRegistry &)
void initializeSimplifyLibCallsPass (PassRegistry &)
void initializeSingleLoopExtractorPass (PassRegistry &)
void initializeSinkingPass (PassRegistry &)
void initializeSlotIndexesPass (PassRegistry &)
void initializeSpillPlacementPass (PassRegistry &)
void initializeStackProtectorPass (PassRegistry &)
void initializeStackColoringPass (PassRegistry &)
void initializeStackSlotColoringPass (PassRegistry &)
void initializeStripDeadDebugInfoPass (PassRegistry &)
void initializeStripDeadPrototypesPassPass (PassRegistry &)
void initializeStripDebugDeclarePass (PassRegistry &)
void initializeStripNonDebugSymbolsPass (PassRegistry &)
void initializeStripSymbolsPass (PassRegistry &)
void initializeStrongPHIEliminationPass (PassRegistry &)
void initializeTailCallElimPass (PassRegistry &)
void initializeTailDuplicatePassPass (PassRegistry &)
void initializeTargetPassConfigPass (PassRegistry &)
void initializeDataLayoutPass (PassRegistry &)
void initializeTargetTransformInfoAnalysisGroup (PassRegistry &)
void initializeNoTTIPass (PassRegistry &)
void initializeTargetLibraryInfoPass (PassRegistry &)
void initializeTwoAddressInstructionPassPass (PassRegistry &)
void initializeTypeBasedAliasAnalysisPass (PassRegistry &)
void initializeUnifyFunctionExitNodesPass (PassRegistry &)
void initializeUnreachableBlockElimPass (PassRegistry &)
void initializeUnreachableMachineBlockElimPass (PassRegistry &)
void initializeVerifierPass (PassRegistry &)
void initializeVirtRegMapPass (PassRegistry &)
void initializeVirtRegRewriterPass (PassRegistry &)
void initializeInstSimplifierPass (PassRegistry &)
void initializeUnpackMachineBundlesPass (PassRegistry &)
void initializeFinalizeMachineBundlesPass (PassRegistry &)
void initializeLoopVectorizePass (PassRegistry &)
void initializeSLPVectorizerPass (PassRegistry &)
void initializeBBVectorizePass (PassRegistry &)
void initializeMachineFunctionPrinterPassPass (PassRegistry &)
 HANDLE_BINARY_INST (20, Shl, BinaryOperator) HANDLE_BINARY_INST(21
BinaryOperator HANDLE_BINARY_INST (22, AShr, BinaryOperator) HANDLE_MEMORY_INST(26
BinaryOperator AllocaInst HANDLE_MEMORY_INST (27, Load, LoadInst) HANDLE_CAST_INST(33
BinaryOperator AllocaInst TruncInst HANDLE_CAST_INST (34, ZExt, ZExtInst) HANDLE_CAST_INST(35
BinaryOperator AllocaInst
TruncInst SExtInst 
HANDLE_CAST_INST (36, FPToUI, FPToUIInst) HANDLE_CAST_INST(37
BinaryOperator AllocaInst
TruncInst SExtInst FPToSIInst 
HANDLE_CAST_INST (38, UIToFP, UIToFPInst) HANDLE_CAST_INST(39
BinaryOperator AllocaInst
TruncInst SExtInst FPToSIInst
SIToFPInst 
HANDLE_CAST_INST (40, FPTrunc, FPTruncInst) HANDLE_CAST_INST(41
BinaryOperator AllocaInst
TruncInst SExtInst FPToSIInst
SIToFPInst FPExtInst 
HANDLE_CAST_INST (42, PtrToInt, PtrToIntInst) HANDLE_CAST_INST(43
BinaryOperator AllocaInst
TruncInst SExtInst FPToSIInst
SIToFPInst FPExtInst
IntToPtrInst 
HANDLE_CAST_INST (44, BitCast, BitCastInst) HANDLE_OTHER_INST(45
BinaryOperator AllocaInst
TruncInst SExtInst FPToSIInst
SIToFPInst FPExtInst
IntToPtrInst ICmpInst 
HANDLE_OTHER_INST (46, FCmp, FCmpInst) HANDLE_OTHER_INST(47
BinaryOperator AllocaInst
TruncInst SExtInst FPToSIInst
SIToFPInst FPExtInst
IntToPtrInst ICmpInst PHINode 
HANDLE_OTHER_INST (48, Call, CallInst) HANDLE_OTHER_INST(49
BinaryOperator AllocaInst
TruncInst SExtInst FPToSIInst
SIToFPInst FPExtInst
IntToPtrInst ICmpInst PHINode
SelectInst 
HANDLE_OTHER_INST (50, UserOp1, Instruction) HANDLE_OTHER_INST(51
BinaryOperator AllocaInst
TruncInst SExtInst FPToSIInst
SIToFPInst FPExtInst
IntToPtrInst ICmpInst PHINode
SelectInst Instruction 
HANDLE_OTHER_INST (52, VAArg, VAArgInst) HANDLE_OTHER_INST(53
BinaryOperator AllocaInst
TruncInst SExtInst FPToSIInst
SIToFPInst FPExtInst
IntToPtrInst ICmpInst PHINode
SelectInst Instruction
ExtractElementInst 
HANDLE_OTHER_INST (54, InsertElement, InsertElementInst) HANDLE_OTHER_INST(55
BinaryOperator AllocaInst
TruncInst SExtInst FPToSIInst
SIToFPInst FPExtInst
IntToPtrInst ICmpInst PHINode
SelectInst Instruction
ExtractElementInst
ShuffleVectorInst 
HANDLE_OTHER_INST (56, ExtractValue, ExtractValueInst) HANDLE_OTHER_INST(57
BinaryOperator AllocaInst
TruncInst SExtInst FPToSIInst
SIToFPInst FPExtInst
IntToPtrInst ICmpInst PHINode
SelectInst Instruction
ExtractElementInst
ShuffleVectorInst
InsertValueInst 
HANDLE_OTHER_INST (58, LandingPad, LandingPadInst) template< typename SubClass
 Base class for instruction visitors.
TypecheckGEPType (Type *Ty)
LLVMContextgetGlobalContext ()
LLVMContext ** unwrap (LLVMContextRef *Tys)
LLVMContextRefwrap (const LLVMContext **Tys)
raw_ostreamoperator<< (raw_ostream &O, const Module &M)
 An raw_ostream inserter for modules.
Moduleunwrap (LLVMModuleProviderRef MP)
static raw_ostreamoperator<< (raw_ostream &OS, Type &T)
Type ** unwrap (LLVMTypeRef *Tys)
LLVMTypeRefwrap (Type **Tys)
 DEFINE_INTEGRAL_TYPEBUILDER (char)
 DEFINE_INTEGRAL_TYPEBUILDER (signed char)
 DEFINE_INTEGRAL_TYPEBUILDER (unsigned char)
 DEFINE_INTEGRAL_TYPEBUILDER (short)
 DEFINE_INTEGRAL_TYPEBUILDER (int)
 DEFINE_INTEGRAL_TYPEBUILDER (long)
 DEFINE_INTEGRAL_TYPEBUILDER (unsigned long long)
raw_ostreamoperator<< (raw_ostream &OS, const Value &V)
Value ** unwrap (LLVMValueRef *Vals)
template<typename T >
T ** unwrap (LLVMValueRef *Vals, unsigned Length)
LLVMValueRefwrap (const Value **Vals)
ModulegetLazyIRModule (MemoryBuffer *Buffer, SMDiagnostic &Err, LLVMContext &Context)
ModulegetLazyIRFileModule (const std::string &Filename, SMDiagnostic &Err, LLVMContext &Context)
ModuleParseIR (MemoryBuffer *Buffer, SMDiagnostic &Err, LLVMContext &Context)
ModuleParseIRFile (const std::string &Filename, SMDiagnostic &Err, LLVMContext &Context)
raw_ostreamoperator<< (raw_ostream &OS, const MCDwarfFile &DwarfFile)
raw_ostreamoperator<< (raw_ostream &OS, const MCExpr &E)
raw_ostreamoperator<< (raw_ostream &OS, const MCOperand &MO)
raw_ostreamoperator<< (raw_ostream &OS, const MCInst &MI)
raw_ostreamoperator<< (raw_ostream &OS, const MCLabel &Label)
MCObjectWritercreateMachObjectWriter (MCMachObjectTargetWriter *MOTW, raw_ostream &OS, bool IsLittleEndian)
 Construct a new Mach-O writer instance.
MCAsmParsercreateMCAsmParser (SourceMgr &, MCContext &, MCStreamer &, const MCAsmInfo &)
 Create an MCAsmParser instance.
raw_ostreamoperator<< (raw_ostream &OS, const MCParsedAsmOperand &MO)
MCStreamercreateNullStreamer (MCContext &Ctx)
MCStreamercreateAsmStreamer (MCContext &Ctx, formatted_raw_ostream &OS, bool isVerboseAsm, bool useLoc, bool useCFI, bool useDwarfDirectory, MCInstPrinter *InstPrint=0, MCCodeEmitter *CE=0, MCAsmBackend *TAB=0, bool ShowInst=false)
MCStreamercreateMachOStreamer (MCContext &Ctx, MCAsmBackend &TAB, raw_ostream &OS, MCCodeEmitter *CE, bool RelaxAll=false)
MCStreamercreateWinCOFFStreamer (MCContext &Ctx, MCAsmBackend &TAB, MCCodeEmitter &CE, raw_ostream &OS, bool RelaxAll=false)
MCStreamercreateELFStreamer (MCContext &Ctx, MCAsmBackend &TAB, raw_ostream &OS, MCCodeEmitter *CE, bool RelaxAll, bool NoExecStack)
MCStreamercreatePureStreamer (MCContext &Ctx, MCAsmBackend &TAB, raw_ostream &OS, MCCodeEmitter *CE)
raw_ostreamoperator<< (raw_ostream &OS, const MCSymbol &Sym)
MCObjectWritercreateWinCOFFObjectWriter (MCWinCOFFObjectTargetWriter *MOTW, raw_ostream &OS)
 Construct a new Win COFF writer instance.
TimergetPassTimer (Pass *)
 If TimingInfo is enabled then start pass timer.
template<typename PassName >
PasscallDefaultCtor ()
template<typename T >
unsigned alignOf ()
raw_ostreamoperator<< (raw_ostream &OS, const BlockFrequency &Freq)
raw_ostreamoperator<< (raw_ostream &OS, const BranchProbability &Prob)
template<typename T >
static size_t capacity_in_bytes (const T &x)
template<class X , class Y >
bool isa (const Y &Val)
template<class X , class Y >
cast_retty< X, const Y >::ret_type cast (const Y &Val)
template<class X , class Y >
cast_retty< X, Y >::ret_type cast (Y &Val)
template<class X , class Y >
enable_if< is_same< Y,
typename simplify_type< Y >
::SimpleType >, typename
cast_retty< X, Y * >::ret_type >
::type 
cast (Y *Val)
template<class X , class Y >
cast_retty< X, Y * >::ret_type cast_or_null (Y *Val)
template<class X , class Y >
cast_retty< X, const Y >::ret_type dyn_cast (const Y &Val)
template<class X , class Y >
cast_retty< X, Y >::ret_type dyn_cast (Y &Val)
template<class X , class Y >
enable_if< is_same< Y,
typename simplify_type< Y >
::SimpleType >, typename
cast_retty< X, Y * >::ret_type >
::type 
dyn_cast (Y *Val)
template<class X , class Y >
cast_retty< X, Y * >::ret_type dyn_cast_or_null (Y *Val)
pred_iterator pred_begin (BasicBlock *BB)
const_pred_iterator pred_begin (const BasicBlock *BB)
pred_iterator pred_end (BasicBlock *BB)
const_pred_iterator pred_end (const BasicBlock *BB)
succ_iterator succ_begin (BasicBlock *BB)
succ_const_iterator succ_begin (const BasicBlock *BB)
succ_iterator succ_end (BasicBlock *BB)
succ_const_iterator succ_end (const BasicBlock *BB)
CodeModel::Model unwrap (LLVMCodeModel Model)
LLVMCodeModel wrap (CodeModel::Model Model)
raw_ostreamoperator<< (raw_ostream &OS, const ConstantRange &CR)
DataStreamergetDataFileStreamer (const std::string &Filename, std::string *Err)
bool isCurrentDebugType (const char *Type)
void setCurrentDebugType (const char *Type)
raw_ostreamdbgs ()
 dbgs - Return a circular-buffered debug stream.
void install_fatal_error_handler (fatal_error_handler_t handler, void *user_data=0)
void remove_fatal_error_handler ()
LLVM_ATTRIBUTE_NORETURN void report_fatal_error (const char *reason, bool gen_crash_diag=true)
LLVM_ATTRIBUTE_NORETURN void report_fatal_error (const std::string &reason, bool gen_crash_diag=true)
LLVM_ATTRIBUTE_NORETURN void report_fatal_error (StringRef reason, bool gen_crash_diag=true)
LLVM_ATTRIBUTE_NORETURN void report_fatal_error (const Twine &reason, bool gen_crash_diag=true)
LLVM_ATTRIBUTE_NORETURN void llvm_unreachable_internal (const char *msg=0, const char *file=0, unsigned line=0)
template<class T , class V >
V & moveIfMoveConstructible (V &Val)
template<class T , class E >
enable_if_c
< is_error_code_enum< E >
::value||is_error_condition_enum
< E >::value, bool >::type 
operator== (ErrorOr< T > &Err, E Code)
int DiffFilesWithTolerance (StringRef FileA, StringRef FileB, double AbsTol, double RelTol, std::string *Error=0)
template<typename T >
format_object1< Tformat (const char *Fmt, const T &Val)
template<typename T1 , typename T2 >
format_object2< T1, T2 > format (const char *Fmt, const T1 &Val1, const T2 &Val2)
template<typename T1 , typename T2 , typename T3 >
format_object3< T1, T2, T3 > format (const char *Fmt, const T1 &Val1, const T2 &Val2, const T3 &Val3)
template<typename T1 , typename T2 , typename T3 , typename T4 >
format_object4< T1, T2, T3, T4 > format (const char *Fmt, const T1 &Val1, const T2 &Val2, const T3 &Val3, const T4 &Val4)
template<typename T1 , typename T2 , typename T3 , typename T4 , typename T5 >
format_object5< T1, T2, T3, T4,
T5 > 
format (const char *Fmt, const T1 &Val1, const T2 &Val2, const T3 &Val3, const T4 &Val4, const T5 &Val5)
formatted_raw_ostreamfouts ()
formatted_raw_ostreamferrs ()
formatted_raw_ostreamfdbgs ()
gep_type_iterator gep_type_begin (const User *GEP)
gep_type_iterator gep_type_end (const User *GEP)
gep_type_iterator gep_type_begin (const User &GEP)
gep_type_iterator gep_type_end (const User &GEP)
template<typename T >
generic_gep_type_iterator
< const T * > 
gep_type_begin (Type *Op0, ArrayRef< T > A)
template<typename T >
generic_gep_type_iterator
< const T * > 
gep_type_end (Type *, ArrayRef< T > A)
void DisplayGraph (StringRef Filename, bool wait=true, GraphProgram::Name program=GraphProgram::DOT)
template<typename GraphType >
raw_ostreamWriteGraph (raw_ostream &O, const GraphType &G, bool ShortNames=false, const Twine &Title="")
std::string createGraphFilename (const Twine &Name, int &FD)
template<typename GraphType >
std::string WriteGraph (const GraphType &G, const Twine &Name, bool ShortNames=false, const Twine &Title="")
template<typename GraphType >
void ViewGraph (const GraphType &G, const Twine &Name, bool ShortNames=false, const Twine &Title="", GraphProgram::Name Program=GraphProgram::DOT)
inst_iterator inst_begin (Function *F)
inst_iterator inst_end (Function *F)
const_inst_iterator inst_begin (const Function *F)
const_inst_iterator inst_end (const Function *F)
inst_iterator inst_begin (Function &F)
inst_iterator inst_end (Function &F)
const_inst_iterator inst_begin (const Function &F)
const_inst_iterator inst_end (const Function &F)
static void encodeSLEB128 (int64_t Value, raw_ostream &OS)
 Utility function to encode a SLEB128 value to an output stream.
static void encodeULEB128 (uint64_t Value, raw_ostream &OS, unsigned Padding=0)
 Utility function to encode a ULEB128 value to an output stream.
static unsigned encodeULEB128 (uint64_t Value, uint8_t *p, unsigned Padding=0)
static uint64_t decodeULEB128 (const uint8_t *p, unsigned *n=0)
 Utility function to decode a ULEB128 value.
template<class C >
void * object_creator ()
 object_creator - Helper method for ManagedStatic.
void llvm_shutdown ()
 llvm_shutdown - Deallocate and destroy all ManagedStatic variables.
template<typename T >
enable_if_c
< std::numeric_limits< T >
::is_integer
&&!std::numeric_limits< T >
::is_signed, std::size_t >
::type 
countTrailingZeros (T Val, ZeroBehavior ZB=ZB_Width)
 Count number of 0's from the least significant bit to the most stopping at the first 1.
template<typename T >
enable_if_c
< std::numeric_limits< T >
::is_integer
&&!std::numeric_limits< T >
::is_signed, std::size_t >
::type 
countLeadingZeros (T Val, ZeroBehavior ZB=ZB_Width)
 Count number of 0's from the most significant bit to the least stopping at the first 1.
template<typename T >
enable_if_c
< std::numeric_limits< T >
::is_integer
&&!std::numeric_limits< T >
::is_signed, T >::type 
findFirstSet (T Val, ZeroBehavior ZB=ZB_Max)
 Get the index of the first set bit starting from the least significant bit.
template<typename T >
enable_if_c
< std::numeric_limits< T >
::is_integer
&&!std::numeric_limits< T >
::is_signed, T >::type 
findLastSet (T Val, ZeroBehavior ZB=ZB_Max)
 Get the index of the last set bit starting from the least significant bit.
template<typename T >
T reverseBits (T Val)
 Reverse the bits in Val.
uint32_t Hi_32 (uint64_t Value)
 Hi_32 - This function returns the high 32 bits of a 64 bit value.
uint32_t Lo_32 (uint64_t Value)
 Lo_32 - This function returns the low 32 bits of a 64 bit value.
template<unsigned N>
bool isInt (int64_t x)
 isInt - Checks if an integer fits into the given bit width.
template<>
bool isInt< 8 > (int64_t x)
template<>
bool isInt< 16 > (int64_t x)
template<>
bool isInt< 32 > (int64_t x)
template<unsigned N, unsigned S>
bool isShiftedInt (int64_t x)
template<unsigned N>
bool isUInt (uint64_t x)
 isUInt - Checks if an unsigned integer fits into the given bit width.
template<>
bool isUInt< 8 > (uint64_t x)
template<>
bool isUInt< 16 > (uint64_t x)
template<>
bool isUInt< 32 > (uint64_t x)
template<unsigned N, unsigned S>
bool isShiftedUInt (uint64_t x)
bool isUIntN (unsigned N, uint64_t x)
bool isIntN (unsigned N, int64_t x)
bool isMask_32 (uint32_t Value)
bool isMask_64 (uint64_t Value)
bool isShiftedMask_32 (uint32_t Value)
bool isShiftedMask_64 (uint64_t Value)
bool isPowerOf2_32 (uint32_t Value)
bool isPowerOf2_64 (uint64_t Value)
uint16_t ByteSwap_16 (uint16_t Value)
uint32_t ByteSwap_32 (uint32_t Value)
uint64_t ByteSwap_64 (uint64_t Value)
unsigned CountLeadingOnes_32 (uint32_t Value)
unsigned CountLeadingOnes_64 (uint64_t Value)
unsigned CountTrailingOnes_32 (uint32_t Value)
unsigned CountTrailingOnes_64 (uint64_t Value)
unsigned CountPopulation_32 (uint32_t Value)
unsigned CountPopulation_64 (uint64_t Value)
unsigned Log2_32 (uint32_t Value)
unsigned Log2_64 (uint64_t Value)
unsigned Log2_32_Ceil (uint32_t Value)
unsigned Log2_64_Ceil (uint64_t Value)
uint64_t GreatestCommonDivisor64 (uint64_t A, uint64_t B)
double BitsToDouble (uint64_t Bits)
float BitsToFloat (uint32_t Bits)
uint64_t DoubleToBits (double Double)
uint32_t FloatToBits (float Float)
int IsNAN (float f)
 Platform-independent wrappers for the C99 isnan() function.
int IsNAN (double d)
int IsInf (float f)
 Platform-independent wrappers for the C99 isinf() function.
int IsInf (double d)
uint64_t MinAlign (uint64_t A, uint64_t B)
uint64_t NextPowerOf2 (uint64_t A)
uint64_t RoundUpToAlignment (uint64_t Value, uint64_t Align)
uint64_t OffsetToAlignment (uint64_t Value, uint64_t Align)
int64_t abs64 (int64_t x)
template<unsigned B>
int32_t SignExtend32 (uint32_t x)
int32_t SignExtend32 (uint32_t X, unsigned B)
 Sign extend number in the bottom B bits of X to a 32-bit int. Requires 0 < B <= 32.
template<unsigned B>
int64_t SignExtend64 (uint64_t x)
int64_t SignExtend64 (uint64_t X, unsigned B)
 Sign extend number in the bottom B bits of X to a 64-bit int. Requires 0 < B <= 64.
static cl::opt< PluginLoader,
false, cl::parser< std::string > > 
LoadOpt ("load", cl::ZeroOrMore, cl::value_desc("pluginfilename"), cl::desc("Load the specified plugin"))
raw_ostreamouts ()
raw_ostreamerrs ()
raw_ostreamnulls ()
 nulls() - This returns a reference to a raw_ostream which discards output.
void PrintRecyclerStats (size_t Size, size_t Align, size_t FreeListSize)
StreamableMemoryObjectgetNonStreamedMemoryObject (const unsigned char *Start, const unsigned char *End)
const error_categorygeneric_category ()
const error_categorysystem_category ()
const error_categoryposix_category ()
error_condition make_error_condition (errc _e)
bool operator< (const error_condition &_x, const error_condition &_y)
error_code make_error_code (errc _e)
bool operator< (const error_code &_x, const error_code &_y)
bool operator== (const error_code &_x, const error_code &_y)
bool operator== (const error_code &_x, const error_condition &_y)
bool operator== (const error_condition &_x, const error_code &_y)
bool operator== (const error_condition &_x, const error_condition &_y)
bool operator!= (const error_code &_x, const error_code &_y)
bool operator!= (const error_code &_x, const error_condition &_y)
bool operator!= (const error_condition &_x, const error_code &_y)
bool operator!= (const error_condition &_x, const error_condition &_y)
error_code make_error_code (windows_error e)
bool CheckBitcodeOutputToConsole (raw_ostream &stream_to_check, bool print_warning=true)
 Check for output written to a console.
MCRelocationInfocreateMCRelocationInfo (StringRef TT, MCContext &Ctx)
MCSymbolizercreateMCSymbolizer (StringRef TT, LLVMOpInfoCallback GetOpInfo, LLVMSymbolLookupCallback SymbolLookUp, void *DisInfo, MCContext *Ctx, MCRelocationInfo *RelInfo)
void InitializeAllTargetInfos ()
void InitializeAllTargets ()
void InitializeAllTargetMCs ()
void InitializeAllAsmPrinters ()
void InitializeAllAsmParsers ()
void InitializeAllDisassemblers ()
bool InitializeNativeTarget ()
bool InitializeNativeTargetAsmPrinter ()
bool InitializeNativeTargetAsmParser ()
bool InitializeNativeTargetDisassembler ()
bool llvm_start_multithreaded ()
void llvm_stop_multithreaded ()
bool llvm_is_multithreaded ()
void llvm_acquire_global_lock ()
void llvm_release_global_lock ()
void llvm_execute_on_thread (void(*UserFn)(void *), void *UserData, unsigned RequestedStackSize=0)
void PrintWarning (ArrayRef< SMLoc > WarningLoc, const Twine &Msg)
void PrintWarning (const char *Loc, const Twine &Msg)
void PrintWarning (const Twine &Msg)
void PrintError (ArrayRef< SMLoc > ErrorLoc, const Twine &Msg)
void PrintError (const char *Loc, const Twine &Msg)
void PrintError (const Twine &Msg)
LLVM_ATTRIBUTE_NORETURN void PrintFatalError (const std::string &Msg)
LLVM_ATTRIBUTE_NORETURN void PrintFatalError (ArrayRef< SMLoc > ErrorLoc, const std::string &Msg)
int TableGenMain (char *argv0, TableGenMainFn *MainFn)
raw_ostreamoperator<< (raw_ostream &OS, const RecTy &Ty)
RecTyresolveTypes (RecTy *T1, RecTy *T2)
raw_ostreamoperator<< (raw_ostream &OS, const Init &I)
raw_ostreamoperator<< (raw_ostream &OS, const RecordVal &RV)
raw_ostreamoperator<< (raw_ostream &OS, const Record &R)
raw_ostreamoperator<< (raw_ostream &OS, const RecordKeeper &RK)
InitQualifyName (Record &CurRec, MultiClass *CurMultiClass, Init *Name, const std::string &Scoper)
InitQualifyName (Record &CurRec, MultiClass *CurMultiClass, const std::string &Name, const std::string &Scoper)
void emitSourceFileHeader (StringRef Desc, raw_ostream &OS)
template<class TypeTy >
int CostTableLookup (const CostTblEntry< TypeTy > *Tbl, unsigned len, int ISD, TypeTy Ty)
 Find in cost table, TypeTy must be comparable by ==.
template<class TypeTy >
int ConvertCostTableLookup (const TypeConversionCostTblEntry< TypeTy > *Tbl, unsigned len, int ISD, TypeTy Dst, TypeTy Src)
 Find in type conversion cost table, TypeTy must be comparable by ==.
void GetReturnInfo (Type *ReturnType, AttributeSet attr, SmallVectorImpl< ISD::OutputArg > &Outs, const TargetLowering &TLI)
bool operator== (const TargetOptions &LHS, const TargetOptions &RHS)
bool operator!= (const TargetOptions &LHS, const TargetOptions &RHS)
static raw_ostreamoperator<< (raw_ostream &OS, const PrintReg &PR)
static raw_ostreamoperator<< (raw_ostream &OS, const PrintRegUnit &PR)
ModulePasscreateEdgeProfilerPass ()
ModulePasscreateOptimalEdgeProfilerPass ()
ModulePasscreatePathProfilerPass ()
ModulePasscreateGCOVProfilerPass (const GCOVOptions &Options=GCOVOptions::getDefault())
FunctionPasscreateAddressSanitizerFunctionPass (bool CheckInitOrder=true, bool CheckUseAfterReturn=false, bool CheckLifetime=false, StringRef BlacklistFile=StringRef(), bool ZeroBaseShadow=false)
ModulePasscreateAddressSanitizerModulePass (bool CheckInitOrder=true, StringRef BlacklistFile=StringRef(), bool ZeroBaseShadow=false)
FunctionPasscreateMemorySanitizerPass (bool TrackOrigins=false, StringRef BlacklistFile=StringRef())
FunctionPasscreateThreadSanitizerPass (StringRef BlacklistFile=StringRef())
FunctionPasscreateBoundsCheckingPass ()
ModulePasscreateDebugIRPass (StringRef FilenamePostfix, bool hideDebugIntrinsics=true, bool hideDebugMetadata=true)
ModulePasscreateStripSymbolsPass (bool OnlyDebugInfo=false)
ModulePasscreateStripNonDebugSymbolsPass ()
ModulePasscreateStripDebugDeclarePass ()
ModulePasscreateStripDeadDebugInfoPass ()
ModulePasscreateConstantMergePass ()
ModulePasscreateGlobalOptimizerPass ()
ModulePasscreateGlobalDCEPass ()
ModulePasscreateGVExtractionPass (std::vector< GlobalValue * > &GVs, bool deleteFn=false)
PasscreateFunctionInliningPass ()
PasscreateFunctionInliningPass (int Threshold)
PasscreateAlwaysInlinerPass ()
PasscreateAlwaysInlinerPass (bool InsertLifetime)
PasscreatePruneEHPass ()
ModulePasscreateInternalizePass (ArrayRef< const char * > exportList)
ModulePasscreateInternalizePass ()
 createInternalizePass - Same as above, but with an empty exportList.
ModulePasscreateDeadArgEliminationPass ()
ModulePasscreateDeadArgHackingPass ()
PasscreateArgumentPromotionPass (unsigned maxElements=3)
ModulePasscreateIPConstantPropagationPass ()
ModulePasscreateIPSCCPPass ()
PasscreateLoopExtractorPass ()
PasscreateSingleLoopExtractorPass ()
ModulePasscreateBlockExtractorPass ()
ModulePasscreateStripDeadPrototypesPass ()
PasscreateFunctionAttrsPass ()
ModulePasscreateMergeFunctionsPass ()
ModulePasscreatePartialInliningPass ()
ModulePasscreateMetaRenamerPass ()
ModulePasscreateBarrierNoopPass ()
PasscreateObjCARCAPElimPass ()
PasscreateObjCARCExpandPass ()
PasscreateObjCARCContractPass ()
PasscreateObjCARCOptPass ()
FunctionPasscreateConstantPropagationPass ()
FunctionPasscreateSCCPPass ()
PasscreateDeadInstEliminationPass ()
FunctionPasscreateDeadCodeEliminationPass ()
FunctionPasscreateDeadStoreEliminationPass ()
FunctionPasscreateAggressiveDCEPass ()
FunctionPasscreateSROAPass (bool RequiresDomTree=true)
FunctionPasscreateScalarReplAggregatesPass (signed Threshold=-1, bool UseDomTree=true, signed StructMemberThreshold=-1, signed ArrayElementThreshold=-1, signed ScalarLoadThreshold=-1)
PasscreateIndVarSimplifyPass ()
FunctionPasscreateInstructionCombiningPass ()
PasscreateLICMPass ()
PasscreateLoopStrengthReducePass ()
PasscreateGlobalMergePass (const TargetMachine *TM=0)
PasscreateLoopUnswitchPass (bool OptimizeForSize=false)
PasscreateLoopInstSimplifyPass ()
PasscreateLoopUnrollPass (int Threshold=-1, int Count=-1, int AllowPartial=-1)
PasscreateLoopRotatePass ()
PasscreateLoopIdiomPass ()
FunctionPasscreatePromoteMemoryToRegisterPass ()
FunctionPasscreateDemoteRegisterToMemoryPass ()
FunctionPasscreateReassociatePass ()
FunctionPasscreateJumpThreadingPass ()
FunctionPasscreateCFGSimplificationPass ()
PasscreateStructurizeCFGPass ()
 Create the pass.
FunctionPasscreateBreakCriticalEdgesPass ()
PasscreateLoopSimplifyPass ()
FunctionPasscreateTailCallEliminationPass ()
FunctionPasscreateLowerSwitchPass ()
FunctionPasscreateLowerInvokePass (const TargetMachine *TM=0, bool useExpensiveEHSupport=false)
FunctionPasscreateBlockPlacementPass ()
PasscreateLCSSAPass ()
FunctionPasscreateEarlyCSEPass ()
FunctionPasscreateGVNPass (bool NoLoads=false)
FunctionPasscreateMemCpyOptPass ()
PasscreateLoopDeletionPass ()
FunctionPasscreateSimplifyLibCallsPass ()
FunctionPasscreateCodeGenPreparePass (const TargetMachine *TM=0)
FunctionPasscreateInstructionNamerPass ()
FunctionPasscreateSinkingPass ()
PasscreateLowerAtomicPass ()
PasscreateCorrelatedValuePropagationPass ()
FunctionPasscreateInstructionSimplifierPass ()
FunctionPasscreateLowerExpectIntrinsicPass ()
void DeleteDeadBlock (BasicBlock *BB)
void FoldSingleEntryPHINodes (BasicBlock *BB, Pass *P=0)
bool DeleteDeadPHIs (BasicBlock *BB, const TargetLibraryInfo *TLI=0)
bool MergeBlockIntoPredecessor (BasicBlock *BB, Pass *P=0)
void ReplaceInstWithValue (BasicBlock::InstListType &BIL, BasicBlock::iterator &BI, Value *V)
void ReplaceInstWithInst (BasicBlock::InstListType &BIL, BasicBlock::iterator &BI, Instruction *I)
void ReplaceInstWithInst (Instruction *From, Instruction *To)
void FindFunctionBackedges (const Function &F, SmallVectorImpl< std::pair< const BasicBlock *, const BasicBlock * > > &Result)
unsigned GetSuccessorNumber (BasicBlock *BB, BasicBlock *Succ)
bool isCriticalEdge (const TerminatorInst *TI, unsigned SuccNum, bool AllowIdenticalEdges=false)
BasicBlockSplitCriticalEdge (TerminatorInst *TI, unsigned SuccNum, Pass *P=0, bool MergeIdenticalEdges=false, bool DontDeleteUselessPHIs=false, bool SplitLandingPads=false)
BasicBlockSplitCriticalEdge (BasicBlock *BB, succ_iterator SI, Pass *P=0)
bool SplitCriticalEdge (BasicBlock *Succ, pred_iterator PI, Pass *P=0)
BasicBlockSplitCriticalEdge (BasicBlock *Src, BasicBlock *Dst, Pass *P=0, bool MergeIdenticalEdges=false, bool DontDeleteUselessPHIs=false)
BasicBlockSplitEdge (BasicBlock *From, BasicBlock *To, Pass *P)
BasicBlockSplitBlock (BasicBlock *Old, Instruction *SplitPt, Pass *P)
BasicBlockSplitBlockPredecessors (BasicBlock *BB, ArrayRef< BasicBlock * > Preds, const char *Suffix, Pass *P=0)
void SplitLandingPadPredecessors (BasicBlock *OrigBB, ArrayRef< BasicBlock * > Preds, const char *Suffix, const char *Suffix2, Pass *P, SmallVectorImpl< BasicBlock * > &NewBBs)
ReturnInstFoldReturnIntoUncondBranch (ReturnInst *RI, BasicBlock *BB, BasicBlock *Pred)
TerminatorInstSplitBlockAndInsertIfThen (Instruction *Cmp, bool Unreachable, MDNode *BranchWeights=0)
ValueCastToCStr (Value *V, IRBuilder<> &B)
 CastToCStr - Return V if it is an i8*, otherwise cast it to i8*.
ValueEmitStrLen (Value *Ptr, IRBuilder<> &B, const DataLayout *TD, const TargetLibraryInfo *TLI)
ValueEmitStrNLen (Value *Ptr, Value *MaxLen, IRBuilder<> &B, const DataLayout *TD, const TargetLibraryInfo *TLI)
ValueEmitStrChr (Value *Ptr, char C, IRBuilder<> &B, const DataLayout *TD, const TargetLibraryInfo *TLI)
ValueEmitStrNCmp (Value *Ptr1, Value *Ptr2, Value *Len, IRBuilder<> &B, const DataLayout *TD, const TargetLibraryInfo *TLI)
 EmitStrNCmp - Emit a call to the strncmp function to the builder.
ValueEmitStrCpy (Value *Dst, Value *Src, IRBuilder<> &B, const DataLayout *TD, const TargetLibraryInfo *TLI, StringRef Name="strcpy")
ValueEmitStrNCpy (Value *Dst, Value *Src, Value *Len, IRBuilder<> &B, const DataLayout *TD, const TargetLibraryInfo *TLI, StringRef Name="strncpy")
ValueEmitMemCpyChk (Value *Dst, Value *Src, Value *Len, Value *ObjSize, IRBuilder<> &B, const DataLayout *TD, const TargetLibraryInfo *TLI)
ValueEmitMemChr (Value *Ptr, Value *Val, Value *Len, IRBuilder<> &B, const DataLayout *TD, const TargetLibraryInfo *TLI)
ValueEmitMemCmp (Value *Ptr1, Value *Ptr2, Value *Len, IRBuilder<> &B, const DataLayout *TD, const TargetLibraryInfo *TLI)
 EmitMemCmp - Emit a call to the memcmp function.
ValueEmitUnaryFloatFnCall (Value *Op, StringRef Name, IRBuilder<> &B, const AttributeSet &Attrs)
ValueEmitPutChar (Value *Char, IRBuilder<> &B, const DataLayout *TD, const TargetLibraryInfo *TLI)
ValueEmitPutS (Value *Str, IRBuilder<> &B, const DataLayout *TD, const TargetLibraryInfo *TLI)
ValueEmitFPutC (Value *Char, Value *File, IRBuilder<> &B, const DataLayout *TD, const TargetLibraryInfo *TLI)
ValueEmitFPutS (Value *Str, Value *File, IRBuilder<> &B, const DataLayout *TD, const TargetLibraryInfo *TLI)
ValueEmitFWrite (Value *Ptr, Value *Size, Value *File, IRBuilder<> &B, const DataLayout *TD, const TargetLibraryInfo *TLI)
bool bypassSlowDivision (Function &F, Function::iterator &I, const DenseMap< unsigned int, unsigned int > &BypassWidth)
ModuleCloneModule (const Module *M)
ModuleCloneModule (const Module *M, ValueToValueMapTy &VMap)
BasicBlockCloneBasicBlock (const BasicBlock *BB, ValueToValueMapTy &VMap, const Twine &NameSuffix="", Function *F=0, ClonedCodeInfo *CodeInfo=0)
FunctionCloneFunction (const Function *F, ValueToValueMapTy &VMap, bool ModuleLevelChanges, ClonedCodeInfo *CodeInfo=0)
void CloneFunctionInto (Function *NewFunc, const Function *OldFunc, ValueToValueMapTy &VMap, bool ModuleLevelChanges, SmallVectorImpl< ReturnInst * > &Returns, const char *NameSuffix="", ClonedCodeInfo *CodeInfo=0, ValueMapTypeRemapper *TypeMapper=0, ValueMaterializer *Materializer=0)
void CloneAndPruneFunctionInto (Function *NewFunc, const Function *OldFunc, ValueToValueMapTy &VMap, bool ModuleLevelChanges, SmallVectorImpl< ReturnInst * > &Returns, const char *NameSuffix="", ClonedCodeInfo *CodeInfo=0, const DataLayout *TD=0, Instruction *TheCall=0)
bool InlineFunction (CallInst *C, InlineFunctionInfo &IFI, bool InsertLifetime=true)
bool InlineFunction (InvokeInst *II, InlineFunctionInfo &IFI, bool InsertLifetime=true)
bool InlineFunction (CallSite CS, InlineFunctionInfo &IFI, bool InsertLifetime=true)
unsigned getICmpCode (const ICmpInst *ICI, bool InvertPred=false)
ValuegetICmpValue (bool Sign, unsigned Code, Value *LHS, Value *RHS, CmpInst::Predicate &NewICmpPred)
bool PredicatesFoldable (CmpInst::Predicate p1, CmpInst::Predicate p2)
bool expandRemainder (BinaryOperator *Rem)
 Replace Rem with generated code.
bool expandDivision (BinaryOperator *Div)
 Replace Div with generated code.
bool expandRemainderUpTo32Bits (BinaryOperator *Rem)
 Replace Rem with generated code.
bool expandDivisionUpTo32Bits (BinaryOperator *Div)
 Replace Rem with generated code.
bool ConstantFoldTerminator (BasicBlock *BB, bool DeleteDeadConditions=false, const TargetLibraryInfo *TLI=0)
bool isInstructionTriviallyDead (Instruction *I, const TargetLibraryInfo *TLI=0)
bool RecursivelyDeleteTriviallyDeadInstructions (Value *V, const TargetLibraryInfo *TLI=0)
bool RecursivelyDeleteDeadPHINode (PHINode *PN, const TargetLibraryInfo *TLI=0)
bool SimplifyInstructionsInBlock (BasicBlock *BB, const DataLayout *TD=0, const TargetLibraryInfo *TLI=0)
void RemovePredecessorAndSimplify (BasicBlock *BB, BasicBlock *Pred, DataLayout *TD=0)
void MergeBasicBlockIntoOnlyPred (BasicBlock *BB, Pass *P=0)
bool TryToSimplifyUncondBranchFromEmptyBlock (BasicBlock *BB)
bool EliminateDuplicatePHINodes (BasicBlock *BB)
bool SimplifyCFG (BasicBlock *BB, const TargetTransformInfo &TTI, const DataLayout *TD=0)
bool FoldBranchToCommonDest (BranchInst *BI)
AllocaInstDemoteRegToStack (Instruction &X, bool VolatileLoads=false, Instruction *AllocaPoint=0)
AllocaInstDemotePHIToStack (PHINode *P, Instruction *AllocaPoint=0)
unsigned getOrEnforceKnownAlignment (Value *V, unsigned PrefAlign, const DataLayout *TD=0)
static unsigned getKnownAlignment (Value *V, const DataLayout *TD=0)
 getKnownAlignment - Try to infer an alignment for the specified pointer.
template<typename IRBuilderTy >
ValueEmitGEPOffset (IRBuilderTy *Builder, const DataLayout &TD, User *GEP, bool NoAssumptions=false)
bool ConvertDebugDeclareToDebugValue (DbgDeclareInst *DDI, StoreInst *SI, DIBuilder &Builder)
bool ConvertDebugDeclareToDebugValue (DbgDeclareInst *DDI, LoadInst *LI, DIBuilder &Builder)
bool LowerDbgDeclare (Function &F)
DbgDeclareInstFindAllocaDbgDeclare (Value *V)
bool replaceDbgDeclareForAlloca (AllocaInst *AI, Value *NewAllocaAddress, DIBuilder &Builder)
bool removeUnreachableBlocks (Function &F)
 Remove all blocks that can not be reached from the function's entry.
BasicBlockInsertPreheaderForLoop (Loop *L, Pass *P)
void appendToGlobalCtors (Module &M, Function *F, int Priority)
void appendToGlobalDtors (Module &M, Function *F, int Priority)
 Same as appendToGlobalCtors(), but for global dtors.
bool isAllocaPromotable (const AllocaInst *AI)
void PromoteMemToReg (const std::vector< AllocaInst * > &Allocas, DominatorTree &DT, AliasSetTracker *AST=0)
bool simplifyUsersOfIV (PHINode *CurrIV, ScalarEvolution *SE, LPPassManager *LPM, SmallVectorImpl< WeakVH > &Dead, IVVisitor *V=NULL)
bool simplifyLoopIVs (Loop *L, ScalarEvolution *SE, LPPassManager *LPM, SmallVectorImpl< WeakVH > &Dead)
PasscreateUnifyFunctionExitNodesPass ()
bool UnrollLoop (Loop *L, unsigned Count, unsigned TripCount, bool AllowRuntime, unsigned TripMultiple, LoopInfo *LI, LPPassManager *LPM)
bool UnrollRuntimeLoopProlog (Loop *L, unsigned Count, LoopInfo *LI, LPPassManager *LPM)
static RemapFlags operator| (RemapFlags LHS, RemapFlags RHS)
ValueMapValue (const Value *V, ValueToValueMapTy &VM, RemapFlags Flags=RF_None, ValueMapTypeRemapper *TypeMapper=0, ValueMaterializer *Materializer=0)
void RemapInstruction (Instruction *I, ValueToValueMapTy &VM, RemapFlags Flags=RF_None, ValueMapTypeRemapper *TypeMapper=0, ValueMaterializer *Materializer=0)
MDNodeMapValue (const MDNode *V, ValueToValueMapTy &VM, RemapFlags Flags=RF_None, ValueMapTypeRemapper *TypeMapper=0, ValueMaterializer *Materializer=0)
ConstantMapValue (const Constant *V, ValueToValueMapTy &VM, RemapFlags Flags=RF_None, ValueMapTypeRemapper *TypeMapper=0, ValueMaterializer *Materializer=0)
BasicBlockPasscreateBBVectorizePass (const VectorizeConfig &C=VectorizeConfig())
PasscreateLoopVectorizePass ()
PasscreateSLPVectorizerPass ()
bool vectorizeBasicBlock (Pass *P, BasicBlock &BB, const VectorizeConfig &C=VectorizeConfig())
 Vectorize the BasicBlock.
raw_ostreamoperator<< (raw_ostream &OS, const LVILatticeVal &Val) LLVM_ATTRIBUTE_USED
PasscreateProfileEstimatorPass (const unsigned execcount)
static double readEdgeOrRemember (ProfileInfo::Edge edge, double w, ProfileInfo::Edge &tocalc, unsigned &uncalc)
static void readEdge (ProfileInfo *PI, ProfileInfo::Edge e, double &calcw, std::set< ProfileInfo::Edge > &misscount)
SpillercreateInlineSpiller (MachineFunctionPass &pass, MachineFunction &mf, VirtRegMap &vrm)
 TEMPLATE_INSTANTIATION (class DomTreeNodeBase< MachineBasicBlock >)
 TEMPLATE_INSTANTIATION (class DominatorTreeBase< MachineBasicBlock >)
cl::opt< boolForceTopDown ("misched-topdown", cl::Hidden, cl::desc("Force top-down list scheduling"))
cl::opt< boolForceBottomUp ("misched-bottomup", cl::Hidden, cl::desc("Force bottom-up list scheduling"))
MachineBasicBlock::iterator findPHICopyInsertPoint (MachineBasicBlock *MBB, MachineBasicBlock *SuccMBB, unsigned SrcReg)
SpillercreateSpiller (MachineFunctionPass &pass, MachineFunction &mf, VirtRegMap &vrm)
 Create and return a spiller object, as specified on the command line.
static int jit_noop ()
static uint16_t applyPPClo (uint64_t value)
static uint16_t applyPPChi (uint64_t value)
static uint16_t applyPPChigher (uint64_t value)
static uint16_t applyPPChighest (uint64_t value)
static unsigned char * processFDE (unsigned char *P, intptr_t DeltaForText, intptr_t DeltaForEH)
static intptr_t computeDelta (SectionEntry *A, SectionEntry *B)
SlotTrackercreateSlotTracker (const Module *M)
 Create a new SlotTracker for a Module.
static SlotTrackercreateSlotTracker (const Value *V)
static void WriteAsOperandInternal (raw_ostream &Out, const Value *V, TypePrinting *TypePrinter, SlotTracker *Machine, const Module *Context)
static const char * getPredicateText (unsigned predicate)
static void writeAtomicRMWOperation (raw_ostream &Out, AtomicRMWInst::BinOp Op)
static void WriteOptimizationInfo (raw_ostream &Out, const User *U)
static void WriteConstantInternal (raw_ostream &Out, const Constant *CV, TypePrinting &TypePrinter, SlotTracker *Machine, const Module *Context)
static void WriteMDNodeBodyInternal (raw_ostream &Out, const MDNode *Node, TypePrinting *TypePrinter, SlotTracker *Machine, const Module *Context)
static void PrintLinkage (GlobalValue::LinkageTypes LT, formatted_raw_ostream &Out)
static void PrintVisibility (GlobalValue::VisibilityTypes Vis, formatted_raw_ostream &Out)
static void PrintThreadLocalModel (GlobalVariable::ThreadLocalMode TLM, formatted_raw_ostream &Out)
static void WriteMDNodeComment (const MDNode *Node, formatted_raw_ostream &Out)
ConstantConstantFoldCastInstruction (unsigned opcode, Constant *V, Type *DestTy)
ConstantConstantFoldSelectInstruction (Constant *Cond, Constant *V1, Constant *V2)
ConstantConstantFoldExtractElementInstruction (Constant *Val, Constant *Idx)
ConstantConstantFoldInsertElementInstruction (Constant *Val, Constant *Elt, Constant *Idx)
ConstantConstantFoldShuffleVectorInstruction (Constant *V1, Constant *V2, Constant *Mask)
ConstantConstantFoldExtractValueInstruction (Constant *Agg, ArrayRef< unsigned > Idxs)
ConstantConstantFoldBinaryInstruction (unsigned Opcode, Constant *V1, Constant *V2)
ConstantConstantFoldCompareInstruction (unsigned short predicate, Constant *C1, Constant *C2)
ConstantConstantFoldGetElementPtr (Constant *C, bool inBounds, ArrayRef< Constant * > Idxs)
ConstantConstantFoldGetElementPtr (Constant *C, bool inBounds, ArrayRef< Value * > Idxs)
static bool ShouldPrintBeforeOrAfterPass (const PassInfo *PI, PassOptionList &PassesToPrint)
static bool ShouldPrintBeforePass (const PassInfo *PI)
static bool ShouldPrintAfterPass (const PassInfo *PI)
raw_ostreamoperator<< (raw_ostream &OS, const MCFixup &AF)
MCAsmParserExtensioncreateDarwinAsmParser ()
MCAsmParserExtensioncreateELFAsmParser ()
MCAsmParserExtensioncreateCOFFAsmParser ()
static uint8_t CountOfUnwindCodes (std::vector< MCWin64EHInstruction > &instArray)
static void EmitAbsDifference (MCStreamer &streamer, MCSymbol *lhs, MCSymbol *rhs)
static void EmitUnwindCode (MCStreamer &streamer, MCSymbol *begin, MCWin64EHInstruction &inst)
static void EmitRuntimeFunction (MCStreamer &streamer, const MCWin64EHUnwindInfo *info)
static void EmitUnwindInfo (MCStreamer &streamer, MCWin64EHUnwindInfo *info)
static const MCSectiongetWin64EHTableSection (StringRef suffix, MCContext &context)
static const MCSectiongetWin64EHFuncTableSection (StringRef suffix, MCContext &context)
bool ConvertUTF8toWide (unsigned WideCharWidth, llvm::StringRef Source, char *&ResultPtr, const UTF8 *&ErrorPtr)
bool ConvertCodePointToUTF8 (unsigned Source, char *&ResultPtr)
void * SearchForAddressOfSpecialSymbol (const char *symbolName)
raw_ostreamCreateInfoOutputFile ()
template<class T >
SmallVectorImpl< T >::const_pointer c_str (SmallVectorImpl< T > &str)
static void PrintMessage (ArrayRef< SMLoc > Loc, SourceMgr::DiagKind Kind, const Twine &Msg)
FunctionPasscreateAArch64ISelDAG (AArch64TargetMachine &TM, CodeGenOpt::Level OptLevel)
FunctionPasscreateAArch64CleanupLocalDynamicTLSPass ()
FunctionPasscreateAArch64BranchFixupPass ()
 Returns an instance of the branch fixup pass.
void LowerAArch64MachineInstrToMCInst (const MachineInstr *MI, MCInst &OutMI, AArch64AsmPrinter &AP)
bool rewriteA64FrameIndex (MachineInstr &MI, unsigned FrameRegIdx, unsigned FrameReg, int &Offset, const AArch64InstrInfo &TII)
void emitRegUpdate (MachineBasicBlock &MBB, MachineBasicBlock::iterator MI, DebugLoc dl, const TargetInstrInfo &TII, unsigned DstReg, unsigned SrcReg, unsigned ScratchReg, int64_t NumBytes, MachineInstr::MIFlag MIFlags=MachineInstr::NoFlags)
void emitSPUpdate (MachineBasicBlock &MBB, MachineBasicBlock::iterator MI, DebugLoc dl, const TargetInstrInfo &TII, unsigned ScratchReg, int64_t NumBytes, MachineInstr::MIFlag MIFlags=MachineInstr::NoFlags)
MCELFStreamercreateAArch64ELFStreamer (MCContext &Context, MCAsmBackend &TAB, raw_ostream &OS, MCCodeEmitter *Emitter, bool RelaxAll, bool NoExecStack)
MCCodeEmittercreateAArch64MCCodeEmitter (const MCInstrInfo &MCII, const MCRegisterInfo &MRI, const MCSubtargetInfo &STI, MCContext &Ctx)
MCObjectWritercreateAArch64ELFObjectWriter (raw_ostream &OS, uint8_t OSABI)
MCAsmBackendcreateAArch64AsmBackend (const Target &T, StringRef TT, StringRef CPU)
static const char * A64CondCodeToString (A64CC::CondCodes CC)
static A64CC::CondCodes A64StringToCondCode (StringRef CondStr)
static A64CC::CondCodes A64InvertCondCode (A64CC::CondCodes CC)
FunctionPasscreateARMISelDag (ARMBaseTargetMachine &TM, CodeGenOpt::Level OptLevel)
FunctionPasscreateARMJITCodeEmitterPass (ARMBaseTargetMachine &TM, JITCodeEmitter &JCE)
FunctionPasscreateA15SDOptimizerPass ()
FunctionPasscreateARMLoadStoreOptimizationPass (bool PreAlloc=false)
FunctionPasscreateARMExpandPseudoPass ()
FunctionPasscreateARMGlobalBaseRegPass ()
FunctionPasscreateARMGlobalMergePass (const TargetLowering *tli)
FunctionPasscreateARMConstantIslandPass ()
FunctionPasscreateMLxExpansionPass ()
FunctionPasscreateThumb2ITBlockPass ()
FunctionPasscreateThumb2SizeReductionPass ()
ImmutablePasscreateARMTargetTransformInfoPass (const ARMBaseTargetMachine *TM)
 Creates an ARM-specific Target Transformation Info pass.
void LowerARMMachineInstrToMCInst (const MachineInstr *MI, MCInst &OutMI, ARMAsmPrinter &AP)
static const MachineInstrBuilderAddDefaultPred (const MachineInstrBuilder &MIB)
static const MachineInstrBuilderAddDefaultCC (const MachineInstrBuilder &MIB)
static const MachineInstrBuilderAddDefaultT1CC (const MachineInstrBuilder &MIB, bool isDead=false)
static const MachineInstrBuilderAddNoT1CC (const MachineInstrBuilder &MIB)
static bool isUncondBranchOpcode (int Opc)
static bool isCondBranchOpcode (int Opc)
static bool isJumpTableBranchOpcode (int Opc)
static bool isIndirectBranchOpcode (int Opc)
ARMCC::CondCodes getInstrPredicate (const MachineInstr *MI, unsigned &PredReg)
int getMatchingCondBranchOpcode (int Opc)
unsigned canFoldARMInstrIntoMOVCC (unsigned Reg, MachineInstr *&MI, const MachineRegisterInfo &MRI)
unsigned convertAddSubFlagsOpcode (unsigned OldOpc)
void emitARMRegPlusImmediate (MachineBasicBlock &MBB, MachineBasicBlock::iterator &MBBI, DebugLoc dl, unsigned DestReg, unsigned BaseReg, int NumBytes, ARMCC::CondCodes Pred, unsigned PredReg, const ARMBaseInstrInfo &TII, unsigned MIFlags=0)
void emitT2RegPlusImmediate (MachineBasicBlock &MBB, MachineBasicBlock::iterator &MBBI, DebugLoc dl, unsigned DestReg, unsigned BaseReg, int NumBytes, ARMCC::CondCodes Pred, unsigned PredReg, const ARMBaseInstrInfo &TII, unsigned MIFlags=0)
void emitThumbRegPlusImmediate (MachineBasicBlock &MBB, MachineBasicBlock::iterator &MBBI, DebugLoc dl, unsigned DestReg, unsigned BaseReg, int NumBytes, const TargetInstrInfo &TII, const ARMBaseRegisterInfo &MRI, unsigned MIFlags=0)
bool rewriteARMFrameIndex (MachineInstr &MI, unsigned FrameRegIdx, unsigned FrameReg, int &Offset, const ARMBaseInstrInfo &TII)
bool rewriteT2FrameIndex (MachineInstr &MI, unsigned FrameRegIdx, unsigned FrameReg, int &Offset, const ARMBaseInstrInfo &TII)
static bool isARMArea1Register (unsigned Reg, bool isIOS)
static bool isARMArea2Register (unsigned Reg, bool isIOS)
static bool isARMArea3Register (unsigned Reg, bool isIOS)
static bool f64AssignAPCS (unsigned &ValNo, MVT &ValVT, MVT &LocVT,