Patch to mark return values in mark_regs_live_at_end instead of using USE insns

Jan Hubicka hubicka@atrey.karlin.mff.cuni.cz
Tue Aug 31 22:41:00 GMT 1999


> On Wed, Aug 11, 1999 at 03:50:23PM +0200, Jan Hubicka wrote:
> > (or at least we can fix the function.c to really put uses as the last
> > in the function. It fails to do so because the return uses tend to
> > bubble forward in the code and also because the are generated only
> > before jump to exit (by return expander) so they not appear at the
> > end of function.
> 
> We could remove the use insns post-reload.  Then flow2 would not
> see them.
The USE insns are not big problem (at least for my reg-stack code)
real problem is that the return value appears to be dead after USE
in flow graph. So my patches reg-stack happily pops value out of the stack
and for example the peepholers happily matches scratch return value.
My patch will work equally when you keep those use insns. I just tought
it will be cleaner to get rid of them.

I've just found problem with my patch on x86 where long longs are in two
registers (only first half is marked live).
Is there any chance for this patch to get in if I prepare version that fixes
this bug and keeps those USE insns on place?

Honza
> 
> 
> r~

-- 
                       OK. Lets make a signature file.
+-------------------------------------------------------------------------+
|        Jan Hubicka (Jan Hubi\v{c}ka in TeX) hubicka@freesoft.cz         |
|         Czech free software foundation: http://www.freesoft.cz          |
|AA project - the new way for computer graphics - http://www.ta.jcu.cz/aa |
|  homepage: http://www.paru.cas.cz/~hubicka/ , games koules, Xonix, fast  |
|  fractal zoomer XaoS, index of Czech GNU/Linux/UN*X documentation etc.  | 
+-------------------------------------------------------------------------+



More information about the Gcc-patches mailing list