This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [tree-ssa] Fix linearize_cond_expr when branches are entered by goto


In message <20030819220825.GA31830@atrey.karlin.mff.cuni.cz>, Zdenek Dvorak wri
tes:
 >Hello,
 >
 >in case like
 >
 >goto label;
 >
 >...
 >
 >something;
 >if (1)
 > {
 >   label:;
 >   something_else;
 > }
 >else
 > {
 > }
 >
 >the linearization will merge the blocks "something" and
 >"something_else", leaving the label in the middle of basic block.
 >
 >The other problem (not fixed by the patch) for that I don't have a
 >testcase but probably might occur is the situation when the branch
 >bb contains phi nodes -- they are then lost.
 >
 >Zdenek
 >
 >	* tree-cfg.c (linearize_cond_expr): Don't merge blocks if the
 >	later has other predecessors.
Approved.  Note it would be best if you had a compilable testcase 
that we could include...

jeff


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]