[PATCH] D154695: [Coroutines] Add an O(n) algorithm for computing the cross suspend point information.

witstorm via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Aug 1 07:46:03 PDT 2023


witstorm95 added a comment.

@MatzeB Thanks for your report. I have reproduced it by compiling folly library and enabling experimental/channels/test. The algorithm of this patch cannot handle super complex CFG with many loops.

In D154695#4549064 <https://reviews.llvm.org/D154695#4549064>, @MatzeB wrote:

> Can't you use a reverse-port-order (see PostOrderIterator.h / ReversePostOrderTraversal) to get a topological sorting of CFG blocks? That is a simpler algorithm than the one here and it already exists as a helper function in LLVM!

Thanks for your reminding. I will try this.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D154695/new/

https://reviews.llvm.org/D154695



More information about the llvm-commits mailing list