Enzyme main
Loading...
Searching...
No Matches
TypeAnalysis Class Reference

Full interprocedural TypeAnalysis. More...

#include "TypeAnalysis/TypeAnalysis.h"

Collaboration diagram for TypeAnalysis:

Public Member Functions

 TypeAnalysis (EnzymeLogic &Logic)
 
TypeResults analyzeFunction (const FnTypeInfo &fn)
 Analyze a particular function, returning the results.
 
void clear ()
 Clear existing analyses.
 

Public Attributes

EnzymeLogicLogic
 
llvm::StringMap< std::function< bool(int, TypeTree &, llvm::ArrayRef< TypeTree >, llvm::ArrayRef< std::set< int64_t > >, llvm::CallBase *, TypeAnalyzer *)> > CustomRules
 Map of custom function call handlers.
 
std::map< FnTypeInfo, std::shared_ptr< TypeAnalyzer > > analyzedFunctions
 Map of possible query states to TypeAnalyzer intermediate results.
 

Detailed Description

Full interprocedural TypeAnalysis.

Definition at line 414 of file TypeAnalysis.h.

Constructor & Destructor Documentation

◆ TypeAnalysis()

TypeAnalysis::TypeAnalysis ( EnzymeLogic & Logic)
inline

Definition at line 417 of file TypeAnalysis.h.

Member Function Documentation

◆ analyzeFunction()

◆ clear()

void TypeAnalysis::clear ( )

Clear existing analyses.

Definition at line 6504 of file TypeAnalysis.cpp.

References analyzedFunctions.

Referenced by ClearTypeAnalysis().

Member Data Documentation

◆ analyzedFunctions

std::map<FnTypeInfo, std::shared_ptr<TypeAnalyzer> > TypeAnalysis::analyzedFunctions

Map of possible query states to TypeAnalyzer intermediate results.

Definition at line 427 of file TypeAnalysis.h.

Referenced by analyzeFunction(), and clear().

◆ CustomRules

llvm::StringMap< std::function<bool(int , TypeTree & , llvm::ArrayRef<TypeTree> , llvm::ArrayRef<std::set<int64_t>> , llvm::CallBase * , TypeAnalyzer *)> > TypeAnalysis::CustomRules

Map of custom function call handlers.

Definition at line 424 of file TypeAnalysis.h.

Referenced by CreateTypeAnalysis(), TypeAnalyzer::run(), and TypeAnalyzer::visitCallBase().

◆ Logic

EnzymeLogic& TypeAnalysis::Logic

Definition at line 416 of file TypeAnalysis.h.

Referenced by EnzymeTypeAnalysisGetLogic().


The documentation for this class was generated from the following files: