Le 07/06/2010 20:23, Charles Oliver Nutter a écrit : > Exciting :) Once you get it in, perhaps you can release the changes > you made to JRuby. I have no problem shipping a reflectively-loaded > version of Fiber that uses JVM coroutines! (and I'd like to do the > same for 1.8 mode Enumerator, which also requires coroutine support) >
It remember something. I wonder if we can try to release a binary version of the DaVinci VM, let say 2 weeks before the JVM Summit. The idea is to coordinate our schedules to produce a set of patches applicable on the same VM version. If we got that I will be able (and I think I won't be the only one) to produce a runtime that use the corresponding features on non trivial examples. I've done that for the FOSDEM last February but I was not able to have all patches working for c1 and c2 on Linux. My idea is to do a binary release with at least indy, coroutine, tail calls on Mac, Linux, Solaris and Windows. What do you think ? Rémi > On Mon, Jun 7, 2010 at 5:17 PM, Lukas Stadler<[email protected]> wrote: > >> Well, I finally got my hands on a Mac machine, I'll investigate as soon >> as I've finished installing. >> >> - Lukas >> >> On 03.06.2010 03:55, Stephen Bannasch wrote: >> >>> At 1:06 PM -0400 6/2/10, Stephen Bannasch wrote: >>> >>> >>>> Hi Lukas, >>>> >>>> It's great to see coro land. >>>> >>>> I'm now getting these errors trying to build coroutine.cpp on MacOS X >>>> 10.5.8: >>>> >>>> ./hotspot/src/share/vm/runtime/coroutine.cpp: In static member function >>>> 'static Coroutine* >>>> Coroutine::create_coroutine(JavaThread*, CoroutineStack*, oopDesc*)': >>>> ./hotspot/src/share/vm/runtime/coroutine.cpp:282: error: 'coroutine_start' >>>> was not declared in thisscope >>>> >>>> >>> Taking a closer look the problem is obvious -- the method coroutine_start >>> is only defined in two #ifdef blocks, one for WINDOWSand one for LINUX. >>> >>> I tried duplicating the Linux implementation wrapping it in #ifdef __APPLE__ >>> >>> but I got he following errors compiling >>> hotspot/src/share/vm/runtime/signature.cpp: >>> >>> ./hotspot/src/cpu/x86/vm/sharedRuntime_x86_32.cpp: In function 'void >>> create_switchTo_contents(MacroAssembler*, int, OopMapSet*, int&, int, >>> BasicType*, VMRegPair*, BasicType, bool)': >>> ./hotspot/src/cpu/x86/vm/sharedRuntime_x86_32.cpp:3446: error: call of >>> overloaded 'movptr(Address, NULL)' is ambiguous >>> ./hotspot/src/cpu/x86/vm/assembler_x86.hpp:2196: note: candidates are: void >>> MacroAssembler::movptr(Address, intptr_t) >>> ./hotspot/src/cpu/x86/vm/assembler_x86.hpp:2198: note: void >>> MacroAssembler::movptr(Address, RegisterImpl*) >>> ./hotspot/src/cpu/x86/vm/sharedRuntime_x86_32.cpp:3449: error: call of >>> overloaded 'movptr(Address, NULL)' is ambiguous >>> ./hotspot/src/cpu/x86/vm/assembler_x86.hpp:2196: note: candidates are: void >>> MacroAssembler::movptr(Address, intptr_t) >>> ./hotspot/src/cpu/x86/vm/assembler_x86.hpp:2198: note: void >>> MacroAssembler::movptr(Address, RegisterImpl*) >>> ./hotspot/src/cpu/x86/vm/sharedRuntime_x86_32.cpp:3491: error: call of >>> overloaded 'movptr(Address, NULL)' is ambiguous >>> ./hotspot/src/cpu/x86/vm/assembler_x86.hpp:2196: note: candidates are: void >>> MacroAssembler::movptr(Address, intptr_t) >>> ./hotspot/src/cpu/x86/vm/assembler_x86.hpp:2198: note: void >>> MacroAssembler::movptr(Address, RegisterImpl*) >>> ./hotspot/src/cpu/x86/vm/sharedRuntime_x86_32.cpp:3492: error: call of >>> overloaded 'movptr(RegisterImpl* const&, int)' is ambiguous >>> ./hotspot/src/cpu/x86/vm/assembler_x86.hpp:2194: note: candidates are: void >>> MacroAssembler::movptr(RegisterImpl*, intptr_t) >>> ./hotspot/src/cpu/x86/vm/assembler_x86.hpp:2195: note: void >>> MacroAssembler::movptr(RegisterImpl*, RegisterImpl*) >>> ./hotspot/src/cpu/x86/vm/assembler_x86.hpp:2200: note: void >>> MacroAssembler::movptr(RegisterImpl*, RegisterOrConstant) >>> make[6]: *** [sharedRuntime_x86_32.o] Error 1 >>> _______________________________________________ >>> mlvm-dev mailing list >>> [email protected] >>> http://mail.openjdk.java.net/mailman/listinfo/mlvm-dev >>> >>> >> _______________________________________________ >> mlvm-dev mailing list >> [email protected] >> http://mail.openjdk.java.net/mailman/listinfo/mlvm-dev >> >> > _______________________________________________ > mlvm-dev mailing list > [email protected] > http://mail.openjdk.java.net/mailman/listinfo/mlvm-dev > _______________________________________________ mlvm-dev mailing list [email protected] http://mail.openjdk.java.net/mailman/listinfo/mlvm-dev
