#include "DataFlowAliasAnalysis.h"
#include "DataFlowLattice.h"
#include "Dialect/Ops.h"
#include "mlir/Analysis/DataFlow/DenseAnalysis.h"
#include "mlir/Analysis/DataFlow/SparseAnalysis.h"
#include "mlir/Analysis/DataFlowFramework.h"
Go to the source code of this file.
|
| LogicalResult | mlir::enzyme::reverseToposortCallgraph (CallableOpInterface callee, SymbolTableCollection *symbolTable, SmallVectorImpl< CallableOpInterface > &sorted) |
| | Starting from callee, compute a reverse (bottom-up) topological sorting of all functions transitively called from callee.
|
| |
| void | mlir::enzyme::traversePointsToSets (const enzyme::AliasClassSet &start, const enzyme::PointsToSets &pointsToSets, function_ref< void(DistinctAttr)> visit) |
| | Visit everything transitively pointed-to by any pointer in start.
|
| |
| LogicalResult | mlir::enzyme::runActivityAnnotationsForFunction (FunctionOpInterface funcOp, DataFlowSolver &solver) |
| |
| void | mlir::enzyme::computeSummaries (FunctionOpInterface funcOp, DataFlowSolver &solver, enzyme::PointsToSets &p2sets, enzyme::ForwardOriginsMap &forwardOriginsMap, enzyme::BackwardOriginsMap &backwardOriginsMap, SmallVectorImpl< enzyme::ForwardOriginsLattice > &returnOperandOrigins, SmallVectorImpl< enzyme::AliasClassLattice > &returnAliasClasses) |
| |
| void | mlir::enzyme::serializeSummaries (Operation *op, const enzyme::PointsToSets &p2sets, const enzyme::ForwardOriginsMap &forwardOriginsMap, ArrayRef< enzyme::ForwardOriginsLattice > returnOperandOrigins, ArrayRef< enzyme::AliasClassLattice > returnAliasClasses) |
| |
| void | mlir::enzyme::removeSummaries (Operation *op) |
| |
| void | mlir::enzyme::runActivityAnnotations (FunctionOpInterface callee, ArrayRef< enzyme::Activity > argActivities={}, const ActivityPrinterConfig &config=ActivityPrinterConfig()) |
| |