LLVM  4.0.0
Classes | Namespaces | Typedefs
ModuleSummaryIndex.h File Reference

ModuleSummaryIndex.h This file contains the declarations the classes that hold the module index and summary for function importing. More...

#include "llvm/ADT/DenseMap.h"
#include "llvm/ADT/DenseSet.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/ADT/SmallString.h"
#include "llvm/ADT/StringExtras.h"
#include "llvm/ADT/StringMap.h"
#include "llvm/IR/Module.h"
#include <array>
Include dependency graph for ModuleSummaryIndex.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  llvm::yaml::MappingTraits< T >
 This class should be specialized by any type that needs to be converted to/from a YAML mapping. More...
 
struct  llvm::CalleeInfo
 Class to accumulate and hold information about a callee. More...
 
struct  llvm::ValueInfo
 Struct to hold value either by GUID or GlobalValue*. More...
 
union  llvm::ValueInfo::ValueUnion
 Union of the two possible value types. More...
 
struct  llvm::DenseMapInfo< ValueInfo >
 
class  llvm::GlobalValueSummary
 Function and variable summary information to aid decisions and implementation of importing. More...
 
struct  llvm::GlobalValueSummary::GVFlags
 Group flags (Linkage, NotEligibleToImport, etc.) as a bitfield. More...
 
class  llvm::AliasSummary
 Alias summary information. More...
 
class  llvm::FunctionSummary
 Function summary information to aid decisions and implementation of importing. More...
 
class  llvm::GlobalVarSummary
 Global variable summary information to aid decisions and implementation of importing. More...
 
struct  llvm::TypeTestResolution
 
struct  llvm::TypeIdSummary
 
class  llvm::ModuleSummaryIndex
 Class to hold module path string table and global value map, and encapsulate methods for operating on them. More...
 

Namespaces

 llvm
 Compute iterated dominance frontiers using a linear time algorithm.
 
 llvm::yaml
 

Typedefs

typedef std::array< uint32_t, 5 > llvm::ModuleHash
 160 bits SHA1 More...
 
typedef std::vector
< std::unique_ptr
< GlobalValueSummary > > 
llvm::GlobalValueSummaryList
 List of global value summary structures for a particular value held in the GlobalValueMap. More...
 
typedef std::map
< GlobalValue::GUID,
GlobalValueSummaryList > 
llvm::GlobalValueSummaryMapTy
 Map from global value GUID to corresponding summary structures. More...
 
typedef
GlobalValueSummaryMapTy::const_iterator 
llvm::const_gvsummary_iterator
 Type used for iterating through the global value summary map. More...
 
typedef
GlobalValueSummaryMapTy::iterator 
llvm::gvsummary_iterator
 
typedef StringMap< std::pair
< uint64_t, ModuleHash > > 
llvm::ModulePathStringTableTy
 String table to hold/own module path strings, which additionally holds the module ID assigned to each module during the plugin step, as well as a hash of the module. More...
 
typedef std::map
< GlobalValue::GUID,
GlobalValueSummary * > 
llvm::GVSummaryMapTy
 Map of global value GUID to its summary, used to identify values defined in a particular module, and provide efficient access to their summary. More...
 

Detailed Description

ModuleSummaryIndex.h This file contains the declarations the classes that hold the module index and summary for function importing.

Definition in file ModuleSummaryIndex.h.