post-dominance frontier

In the literature (see below for a reference), when a dominance frontier is computed, it is computed from a CFG that contains a dummy entry node and dummy exit node. Further, those dummy nodes are potential members of the (post-)dominance frontier for a given basic block. In LLVM, I could not figure out a way to determine if the dummy entry node is a member of the post-dominance frontier of a basic block. Is there a way to get that information?

Regards,
Ryan

* "Efficiently Computing Static Single Assignment Form and the Control Dependence Graph" by Cytron, Ferrante, Rosen, Wegman, and Zadeck

Sorry I never responded to this:

In the literature (see below for a reference), when a dominance frontier
is computed, it is computed from a CFG that contains a dummy entry node
and dummy exit node. Further, those dummy nodes are potential members
of the (post-)dominance frontier for a given basic block. In LLVM, I
could not figure out a way to determine if the dummy entry node is a
member of the post-dominance frontier of a basic block. Is there a way
to get that information?

LLVM doesn't use dummy entrance/exit nodes. LLVM functions always have a single entry node (the first BB in the function) and multiple exits are handled specially.

-Chris

Regards,
Ryan

* "Efficiently Computing Static Single Assignment Form and the Control
Dependence Graph" by Cytron, Ferrante, Rosen, Wegman, and Zadeck

-Chris

In a message that I had previously posted, contained below, I inquired about how the post-dominance frontier of a procedure is computed in LLVM. I was informed that LLVM does not use a CFG that is augmented with a dummy entry and exit node, when it computes the post-dominance frontier. Does that change the result when computing the post-dominance frontier?

I am asking because that is what I believe is happening in an LLVM transformation that I'm working on.

Below is a function that on which I am running the transform, with all instructions stripped from the function, except terminator instructions: