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] Make tail-call work on SSA form


> On Tue, 2003-11-18 at 12:27, Jan Hubicka wrote:
> 
> > I really hope it passes now.  I would preffer to avoid the patch from
> > being reverted as there is cascated work on it.
> >
> Yes, your last tail-call patch depends on the previous one.
And I have more patches in queue, so really hope everything will be
fine.
I am getting random misscompilations in my tests now, so it seems that
there is some latent bug around and my patches are exposing it randomly.
Hope I will localize it.
> 
> > However the attached patch I am currently testing is for the more
> > nastier of two bugs I run into.  We completely missed the fact that
> > address of variable has been taken when it has been taken in nontrivial
> > way inside CALL_EXPR.  Such as func(&var+4B)
> >
> Good catch.  Thanks.
> 
> > Do you have any idea why the CALL_EXPR walker is not recursive?
> > 
> Oversight.
> 
> > 2003-11-18  Jan Hubicka  <jh@suse.cz>
> > 	* tree-dfa.c (get_expr_operands): Parse properly more complex operands of
> > 	CALL_EXPR.
> > 	* tree-must-alias.c (tree_compute_must_alias, promote_var): Kill workaround
> > 	for the bug.
> > 
> OK if it passes bootstrap, etc.

Actaully I managed to remove one line extra in my patch so I don't
clear TREE_ADDRESSABLE anymore.  That caused my testing to pass, but
I still get misscompilation with the tree-must-alias.c change in :(

I will commit the first part of patch if it passes testing alone as that
one appears obvious and will investigate the new problems I got with the
other change.

Honza
> 
> 
> Diego.


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