Does the pass -postdomfrontier exist?

Hi,

I found the -postdomfrontier pass in *llvm*.org/docs/Passes.html, but 'opt' does not accept it. I could not find the relevant codes in PostDominance.cpp in SVN trunk, but I found some relevant codes here http://opensource.apple.com/source/clang/clang-137/src/lib/Analysis/PostDominators.cpp.

I am wondering why this pass is removed and what should I do if I want the post dominance frontier information?

Thanks!

Hi,

I found the -postdomfrontier pass in *llvm*.org/docs/Passes.html, but
'opt' does not accept it. I could not find the relevant codes in
PostDominance.cpp in SVN trunk, but I found some relevant codes here
http://opensource.apple.com/source/clang/clang-137/src/lib/Analysis/PostDominators.cpp.

I am wondering why this pass is removed and what should I do if I want
the post dominance frontier information?

there was some discussion of this on the mailing list already, so I suggest you
search the archives.

Ciao, Duncan.

I searched the archives and found
http://llvm.1065342.n5.nabble.com/post-dominance-frontier-fix-td10221.html
http://llvm.1065342.n5.nabble.com/Is-there-a-control-dependence-graph-builder-td35919.html#a35921
http://llvm.1065342.n5.nabble.com/post-dominance-frontier-td6783.html

It seems none of them are relevant. Could you give me more hints about this topic? Thanks!

I found the -postdomfrontier pass in *llvm*.org/docs/Passes.html, but
'opt' does not accept it. I could not find the relevant codes in
PostDominance.cpp in SVN trunk, but I found some relevant codes here
http://opensource.apple.com/source/clang/clang-137/src/lib/Analysis/PostDominators.cpp.

  LLVM 3.0 release note said postdomfrontier had been removed [1].

    The unused PostOrder Dominator Frontiers and LowerSetJmp passes
    were removed.

  I'll send patch to update the document.

Regards,
chenwj

[1] http://llvm.org/releases/3.0/docs/ReleaseNotes.html

So it means the postdomfrontier algorithm in <3.0 version is correct, but it is removed because no one uses it. And I can add the codes to my personal code base for my personal use. Am I correct? Thanks!

Hi shadowkernel,

I searched the archives and found
http://llvm.1065342.n5.nabble.com/post-dominance-frontier-fix-td10221.html
http://llvm.1065342.n5.nabble.com/Is-there-a-control-dependence-graph-builder-td35919.html#a35921
http://llvm.1065342.n5.nabble.com/post-dominance-frontier-td6783.html

It seems none of them are relevant. Could you give me more hints about
this topic? Thanks!
_______________________________________________
LLVM Developers mailing list
LLVMdev@cs.uiuc.edu http://llvm.cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev

I'm not sure this is what I had in mind, but it does explain the issues with
dominance frontiers in general:

http://lists.cs.uiuc.edu/pipermail/llvmdev/2012-January/046638.html

Ciao, Duncan.

Also, PostDominators is broken in various ways in a number of edge
cases (nick llewycky had emailed me some), so in all likelihood there
are edge cases where post dominance frontiers are broken as well.

In any case, as Duncan's quoted emails point out, computing
post-dominance frontiers for the entire function is expensive but not
really useful.