Hi,

> On Tue, 2013-04-23 at 15:24 -0600, Jeff Law wrote:
> 
> > Well, you have to copy the blocks, adjust the edges and rewrite the SSA 
> > graph.  I'd use duplicate_block to help.
> > 
> > You really want to look at tree-ssa-threadupdate.c.  There's a nice big 
> > block comment which gives the high level view of what needs to happen 
> > when you copy a block for this kind of optimization.  Feel free to 
> > ignore the implementation which has to be fairly efficient when there's 
> > a large number of edges to update.
> > 
> > Jeff
> 
> I think I understand the high level work, it is mapping that hight level
> description to the low level calls that I am having trouble with. 

I'd suggest looking at gimple_duplicate_sese_region in tree-cfg.c.  It does
not do exactly what you need, but it deals with a somewhat similar situation,

Zdenek

Reply via email to