[all-commits] [llvm/llvm-project] 449a13: Add LazyCallGraph API to add function to RefSCC
Brian Gesiak via All-commits
all-commits at lists.llvm.org
Mon Feb 17 09:56:46 PST 2020
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: 449a13509190b1c57e5fcf5cd7e8f0f647f564b4
https://github.com/llvm/llvm-project/commit/449a13509190b1c57e5fcf5cd7e8f0f647f564b4
Author: Brian Gesiak <modocache at gmail.com>
Date: 2020-02-17 (Mon, 17 Feb 2020)
Changed paths:
M llvm/include/llvm/Analysis/LazyCallGraph.h
M llvm/lib/Analysis/LazyCallGraph.cpp
M llvm/unittests/Analysis/CGSCCPassManagerTest.cpp
M llvm/unittests/Analysis/LazyCallGraphTest.cpp
Log Message:
-----------
Add LazyCallGraph API to add function to RefSCC
Summary:
Depends on https://reviews.llvm.org/D70927.
`LazyCallGraph::addNewFunctionIntoSCC` allows users to insert a new
function node into a call graph, into a specific, existing SCC.
Extend this interface such that functions can be added even when they do
not belong in any existing SCC, but instead in a new SCC within an
existing RefSCC.
The ability to insert new functions as part of a RefSCC is necessary for
outlined functions that do not form a strongly connected cycle with the
function they are outlined from. An example of such a function would be the
coroutine funclets 'f.resume', etc., which are outlined from a coroutine 'f'.
Coroutine 'f' only references the funclets' addresses, it does not call
them directly.
Reviewers: jdoerfert, chandlerc, wenlei, hfinkel
Reviewed By: jdoerfert
Subscribers: hfinkel, JonChesterfield, mehdi_amini, hiraditya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D72226
More information about the All-commits
mailing list