[Mono-devel-list] [PATCH] Don't spill return from call
Paolo Molaro
lupus at ximian.com
Mon Apr 26 04:43:18 EDT 2004
On 04/23/04 Ben Maurer wrote:
> By having temporary variables like these, we reduce the chances that
> other variables will be put into registers, and increase code size. It
> also increases the complexity of analyzing the code.
When copy propagation is implemented this won't be an issue anyway.
> One thing I was not sure of is why this optimization was commented out.
> There was no rationale behind the if (0. The code was commented since
> the initial checkin, so i have no idea why it is not enabled.
It's not enabled because it produces incorrect code when the instruction
following the call is the start of a new basic block and because
implementing copy propagation will solve this issue (and many more).
To that, you added your own bug with the handling of CEE_RET.
> I had no failures on the regression tests, nor the jit tests. I also did
> a bootstrap.
Maybe you should also start writing your own tests to exercize the
changes you make...
lupus
--
-----------------------------------------------------------------
lupus at debian.org debian/rules
lupus at ximian.com Monkeys do it better
More information about the Mono-devel-list
mailing list