This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Question on fixup_abnormal_edges
> Hi,
>
> On Tue, 15 Oct 2002, Richard Henderson wrote:
>
> > > When using table driven EH, is it expected that possibly call clobbered hard
> > > registers get assigned to pseudos live across calls like in the case above ?
> >
> > Well, except for caller-save not being intelligent enough to
> > add the instruction to the edge, rather than directly after
> > the call instruction, everything would have worked out ok.
>
> Erh. You can't add insns on an abnormal edge, if it's critical. I don't
> remember this very case, but is it guaranteed, that abcall/eh edges are
> not critical?
EH edges are abnormal and can be critical. You can add insns to them,
if you update split_edge. (ie teoretically it is possible, but our
current framework can't deal with these)
It can be good idea to add code for that, as GCSE would be much happier
then too.
I think that EH kills registers anyway, so this is not problem.
I think problem is different. The call with live register over is
noreturn, so there should really be no register alive at first place.
Hope I will find time to investigate this more at evening.
Honza