-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Rainer Deyke wrote:
> On 4/1/2010 15:22, div0 wrote:
>> You can't easily or reasonably find the bits of the stack used by D
>> code, so you can't scan the stack, and therefore you can't move any object.
> 
> You could, if D was modified to register the parts of the stack that it
> uses in some sort of per-thread stack registry.  It's not cheap, but it
> works, and it can be optimized until it's cheap enough.
> 

yeah, I was thinking of adding some sort of callback attribute/property.
A callback decorated function would have preamble to register the stack
address with the runtime.

Though you would need to modify dmd to generate accurate stack frame
maps as well and make that info available to the runtime. That's no
small amount of work.

I'd want two types of callback though.

One which does the registration and another which says that the callback
function won't use unpinned objects so the registration is not necessary.

- --
My enormous talent is exceeded only by my outrageous laziness.
http://www.ssTk.co.uk
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.7 (MingW32)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iD8DBQFLtnOcT9LetA9XoXwRAjzHAKDD7PpnHSRqi/M/mGAM1SmGX4IWQgCfVlnn
aqfeUe6fAHyht5z4vc4JZbA=
=b08/
-----END PGP SIGNATURE-----

Reply via email to