------- Additional Comments From amacleod at redhat dot com  2004-11-02 14:23 -------
Is there a rule for make_forwarder_block that says it cannot forward a block
which has *any* abnormal edges?
                                                                                
The code is attempting to make a forwarder block for block 5 for the 3
non-abnormal edges (1,2,3). They are all going to get the same code, so want a
common place to put it.
                                                                                
It would seem the make_forwarder_block simply leaves the existing labels at the
top of the new block, adds an edge from the new block to the old block, and
redirects all edges which are not being forwarded to the old block.
                                                                                
I can see that failing, because now the abnormal edge needs to be redirected to
the old block, when in fact Im not asking for it to be touched.
                                                                                
Is there a reason it doesnt leave all the old labels in the old block, add a new
label to the top of the new block, and redirect all the requested edges to this
new label?.
                                                                                
If it must remain as is, then presumably we will have to punt on commoning any
code on normal edges into a block which also happens to have at least one
abnormal edge, even though we aren't doing anything with that edge.

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |rakdver at atrey dot karlin
                   |                            |dot mff dot cuni dot cz


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18270

Reply via email to