implementing escape analysis
David Daney
ddaney@avtrex.com
Thu Feb 16 19:06:00 GMT 2006
Per Bothner wrote:
> David Daney wrote:
>>> An object allocated by _Jv_AllocObject can not be stack allocated as
>> it has a finalizer, but one allocated with _Jv_AllocObjectNoFinalizer
>> can be, so there has to be some differentiation between all these
>> different cases.
>>> Stack allocating objects with finalizers is straight-forward.
> C++ has done it for decades.
Well there you go!
There does have to be quite a bit of communication with the front-end so
that you know which case is which and how to finalize.
The thing that concerns me is that in an ideal world you might do this
in the middle-end, but if we wait for this to happen, it could be a long
wait.
On the other hand if we hacked a limited version of it into the gcj
front-end, it could be something that is possible for 4.2.
I think all the discussion is great. But I think the added complexity
of doing it at the tree-ssa level might be so great that it will never
happen.
David Daney.
More information about the Java
mailing list