[llvm] [Coroutines] properly update CallGraph in CoroSplit (PR #107935)
Yuxuan Chen via llvm-commits
llvm-commits at lists.llvm.org
Thu Sep 12 10:05:38 PDT 2024
================
@@ -2080,12 +2080,13 @@ splitCoroutine(Function &F, SmallVectorImpl<Function *> &Clones,
return Shape;
}
-static void updateCallGraphAfterCoroutineSplit(
+static LazyCallGraph::SCC &updateCallGraphAfterCoroutineSplit(
LazyCallGraph::Node &N, const coro::Shape &Shape,
const SmallVectorImpl<Function *> &Clones, LazyCallGraph::SCC &C,
LazyCallGraph &CG, CGSCCAnalysisManager &AM, CGSCCUpdateResult &UR,
FunctionAnalysisManager &FAM) {
----------------
yuxuanchen1997 wrote:
> I noted that the signature is actually very similar to LLVM's updateCGAndAnalysisManagerForPass() signature. Perhaps it is better to be consistent with that? https://llvm.org/doxygen/CGSCCPassManager_8cpp.html#a490117b63072462d035a6933fdb94c1f
Perhaps. Or perhaps the answer is to rewrite `updateCGAndAnalysisManagerForPass`. I really don't like the current semantics. I will see what I can do in another patch.
https://github.com/llvm/llvm-project/pull/107935
More information about the llvm-commits
mailing list