Re: Comparing Control Flow Graphs (Preston Briggs)
Mon, 7 Dec 1992 23:41:44 GMT

          From comp.compilers

Related articles
Comparing Control Flow Graphs (1992-12-07)
Re: Comparing Control Flow Graphs (1992-12-07)
| List of all articles for this month |

Newsgroups: comp.compilers
From: (Preston Briggs)
Organization: Rice University, Houston
Date: Mon, 7 Dec 1992 23:41:44 GMT
References: 92-12-021
Keywords: optimize

>Is there any formal notion that captures the "precision" of a control flow

>Control Flow Graphs:
> x = y x = y
> /\ /\
> / \ / \
> A B A;C1 B;C2
> \ / \ /
> \/ \/
> | |
> C |
> | |
> end end

I don't have a good answer for the main question; but I can tlak about
your examples for a minute. The left-hand case accurately represents the
code. The right-hand case represents the code after duplicating the block
C. The right-hand case permits sharper analysis for forward problems and
may result in better code for C1 and C2 versus C.

I don't really think of one being more precise than the other; the
right-hand case is just the result of a transformation, permittung better
analysis and optimization. Similar things happen with procedure cloning
and loop unrolling. For more examples of the effects of cloning basic
blocks, see the (poorly titled) paper

    title="Avoiding Unconditional Jumps by Code Replication",
    author="Frank Mueller and David B. Whalley",

Preston Briggs

Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.