A problem with the loop structure
Zdenek Dvorak
rakdver@kam.mff.cuni.cz
Fri May 4 00:12:00 GMT 2007
Hello,
> ii)
> In loop_version there are two calls to loop_split_edge_with
> 1. loop_split_edge_with (loop_preheader_edge (loop), NULL);
> 2. loop_split_edge_with (loop_preheader_edge (nloop), NULL);
> nloop is the versioned loop, loop is the original.
>
> loop_split_edge_with has the following:
> new_bb = split_edge (e);
> add_bb_to_loop (new_bb, loop_c);
>
> 1) When we get to the fist call, nloop->outer->num_nodes = 8 while dfs
> returns 6.
then the problem is before this call; you need to check which two blocks
that are marked as belonging to nloop->outer in fact do not belong to
this loop, and why.
Zdenek
More information about the Gcc
mailing list