[PATCH] D25191: Modify df_iterator to support post-order actions

Daniel Berlin via llvm-commits llvm-commits at lists.llvm.org
Mon Oct 3 09:13:04 PDT 2016


This actually looks really good at a first glance.  I know a few other
places we would want to use this, and use custom non-recursive dfs
implementations instead

Staring at it, i'm not actually sure i'd change anything, but i'll give
folks longer than 6 minutes to comment on it :-)

On Mon, Oct 3, 2016 at 9:05 AM, David Callahan <dcallahan at fb.com> wrote:

> david2050 created this revision.
> david2050 added reviewers: dberlin, mehdi_amini, nadav.
> david2050 added subscribers: llvm-commits, freik, twoh.
> Herald added subscribers: mzolotukhin, MatzeB.
>
> This makes a change to the state used to maintain visited information for
> depth first iterator. We know assume a method "completed(...)" which is
> called after all children of a node have been visited. In all existing
> cases, this method does nothing so this patch has no functional changes.
> It will however allow a client to distinguish back from cross edges in a
> DFS tree.
>
>
> https://reviews.llvm.org/D25191
>
> Files:
>   include/llvm/ADT/DepthFirstIterator.h
>   include/llvm/Analysis/LoopInfoImpl.h
>   include/llvm/Analysis/RegionInfo.h
>   include/llvm/Analysis/RegionIterator.h
>   include/llvm/CodeGen/MachineRegionInfo.h
>   include/llvm/IR/Dominators.h
>   lib/CodeGen/LiveIntervalAnalysis.cpp
>   lib/CodeGen/LiveVariables.cpp
>   lib/CodeGen/MachineVerifier.cpp
>   lib/CodeGen/PrologEpilogInserter.cpp
>   lib/CodeGen/UnreachableBlockElim.cpp
>   lib/Target/X86/X86FloatingPoint.cpp
>   lib/Transforms/IPO/ArgumentPromotion.cpp
>   unittests/ADT/DepthFirstIteratorTest.cpp
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20161003/113add03/attachment.html>


More information about the llvm-commits mailing list