diff options
Diffstat (limited to 'tiger-compiler/src/callgraph/libcallgraph.cc')
| -rw-r--r-- | tiger-compiler/src/callgraph/libcallgraph.cc | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/tiger-compiler/src/callgraph/libcallgraph.cc b/tiger-compiler/src/callgraph/libcallgraph.cc new file mode 100644 index 0000000..be23b16 --- /dev/null +++ b/tiger-compiler/src/callgraph/libcallgraph.cc @@ -0,0 +1,36 @@ +/** + ** \file callgraph/libcallgraph.cc + ** \brief Define exported callgraph functions. + */ + +#include <callgraph/call-graph-visitor.hh> +#include <callgraph/libcallgraph.hh> +#include <callgraph/parent-graph-visitor.hh> + +#include <misc/contract.hh> +#include <misc/set.hh> + +namespace callgraph +{ + + // Build the callgraph. + const CallGraph* callgraph_compute(const ast::Ast& tree) + { + CallGraphVisitor callgraph_visitor; + return callgraph_visitor.create(tree); + } + + CallGraph* callgraph_compute(ast::Ast& tree) + { + CallGraphVisitor callgraph_visitor; + return callgraph_visitor.create(tree); + } + + // Build the parentgraph. + ParentGraph* parentgraph_compute(ast::Ast& tree) + { + ParentGraphVisitor parentgraph_visitor; + return parentgraph_visitor.create(tree); + } + +} // namespace callgraph |
