[M3devel] friendly reminder/request for cooperative suspend
Dragiša Durić
dragisha at m3w.org
Sun Sep 16 11:00:51 CEST 2012
Can we have clang as a reference compiler, one we target with our C++ backend?
--
Divided by a common language
Dragiša Durić
dragisha at m3w.org
On Sep 14, 2012, at 5:10 PM, Antony Hosking wrote:
> Yes, this is on the top of my list of things to do.
> Plus fix some atomics bugs.
> atomics plus cooperative suspend gives us a much better story on locks too.
> We could even have a proper memory model like C++11.
>
> LLVM would also be great (better even than the C backend) because we’d get some decent optimization passes.
>
>
> On Sep 14, 2012, at 4:01 AM, Jay K <jay.krell at cornell.edu> wrote:
>
>> friendly reminder/request: I'd like to see the system changed to use cooperative suspend.
>>
>>
>> Combined with a C backend, that would greatly expand portability and remove existing target-dependent code (i.e. already ported) from the system.
>>
>>
>> I'm not confident that GetThreadContext works on "wow64".
>> It'd fix that.
>>
>>
>> We can compute the top/bottom of the stack fairly portably -- address of locals.
>> We can capture current context/registers via setjmp.
>> Or maybe getcontext.
>> (We should find out about setjmp/longjmp munging -- what gets munged? Everything? Just non-gc-roots? Only after longjmp?)
>> Itanium is special -- there is a second stack growing up from the same base.
>>
>>
>> I'd like this way more than LLVM.
>>
>>
>> Maybe I can work on. Maybe.
>>
>>
>> I believe typical production Java VMs use cooperative suspend.
>>
>>
>> - Jay
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://m3lists.elegosoft.com/pipermail/m3devel/attachments/20120916/86765fd0/attachment-0002.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 495 bytes
Desc: Message signed with OpenPGP using GPGMail
URL: <http://m3lists.elegosoft.com/pipermail/m3devel/attachments/20120916/86765fd0/attachment-0002.sig>
More information about the M3devel
mailing list