13#ifndef LLVM_IR_TYPEFINDER_H 
   14#define LLVM_IR_TYPEFINDER_H 
   39  std::vector<StructType*> StructTypes;
 
   40  bool OnlyNamed = 
false;
 
   45  void run(
const Module &M, 
bool onlyNamed);
 
   48  using iterator = std::vector<StructType*>::iterator;
 
   57  bool empty()
 const { 
return StructTypes.empty(); }
 
   58  size_t size()
 const { 
return StructTypes.size(); }
 
   68  void incorporateType(
Type *Ty);
 
   74  void incorporateValue(
const Value *V);
 
   78  void incorporateMDNode(
const MDNode *V);
 
   81  void incorporateAttributes(AttributeList AL);
 
 
This file contains the simple types necessary to represent the attributes associated with functions a...
static GCRegistry::Add< CoreCLRGC > E("coreclr", "CoreCLR-compatible GC")
This file defines the DenseSet and SmallDenseSet classes.
Implements a dense probed hash-table based set.
A Module instance is used to store all the information related to an LLVM module.
Class to represent struct types.
DenseSet< const MDNode * > & getVisitedMetadata()
void run(const Module &M, bool onlyNamed)
iterator erase(iterator I, iterator E)
const_iterator end() const
const_iterator begin() const
std::vector< StructType * >::const_iterator const_iterator
StructType *& operator[](unsigned Idx)
std::vector< StructType * >::iterator iterator
The instances of the Type class are immutable: once they are created, they are never changed.
LLVM Value Representation.
This is an optimization pass for GlobalISel generic memory operations.