[Vm-dev] Re: About new Cog update
Igor Stasenko
siguctua at gmail.com
Thu Mar 17 17:32:54 UTC 2011
On 17 March 2011 18:22, Eliot Miranda <eliot.miranda at gmail.com> wrote:
>
>
> On Thu, Mar 17, 2011 at 10:13 AM, Igor Stasenko <siguctua at gmail.com> wrote:
>>
>> On 17 March 2011 18:07, Eliot Miranda <eliot.miranda at gmail.com> wrote:
>> >
>> >
>> > On Thu, Mar 17, 2011 at 7:46 AM, Igor Stasenko <siguctua at gmail.com>
>> > wrote:
>> >>
>> >> Hi, Eliot
>> >>
>> >> is your new stuff having platform-specific files changes?
>> >
>> > The Sista stuff requires nothing new. I think I've already integrated
>> > the
>> > changes necessary for the threaded VM but I've only tried to build the
>> > threaded VM against the Teleplace platforms hierarchy, not yet against
>> > the
>> > oscog platforms hierarchy. So if you try and build the threaded VM you
>> > may
>> > hit problems, you may not. I'll get around to doing that soon.
>>
>> and sorry for ignorance..
>> what is the magic invocation for generating sources for threaded VMs?
>
> Just substitute CoInterpreterMT for CoInterpreter. Then you'll find
> src/vm/cointerpmt.c src/vm/gcc3x-cointerpmt.c
> src/vm/cointerpmt.h
> You must also generate CoInterpreterMT second, and then src/vm/interp.h will
> read:
> /* Automatically generated by
> CCodeGeneratorGlobalStructure VMMaker-eem.734 uuid:
> cf815676-05e1-44d8-be7f-62138a99b532
> */
> #define COGVM 1
> #if !defined(COGMTVM)
> # define COGMTVM 1
> #endif
> #define STACKVM 1
> #define SQ_VI_BYTES_PER_WORD 4
> #define PrimErrGenericFailure 1
> #define PrimErrBadReceiver 2
> #define PrimErrBadArgument 3
> #define PrimErrBadIndex 4
> #define PrimErrBadNumArgs 5
> #define PrimErrInappropriate 6
> #define PrimErrUnsupported 7
> #define PrimErrNoModification 8
> #define PrimErrNoMemory 9
> #define PrimErrNoCMemory 10
> #define PrimErrNotFound 11
> #define PrimErrBadMethod 12
> #define PrimErrNamedInternal 13
> #define PrimErrObjectMayMove 14
> #define PrimErrLimitExceeded 15
> #define DisownVMLockOutFullGC 1
> and then in one set of makefiles use -DCOGMTVM=0 and pickup cointerp.c or
> gcc3x-cointerp.c and in the other use -DCOGMTVM=1 and pickup cointerpmt.c or
> gcc3x-cointerpmt.c
> Look for #if COGMTVM & #if !COGMTVM in the platforms sources to see where
> the additions are. Make sure you use the ThreadedFFIPlugin
> (ThreadedIA32FFIPlugin on x86).
Thanks. The idea is as usual is to gather this information into separate
CogMT<Platform>Config in CMakeVMMaker package
so people could reproduce and build this kind of VMs without much hassle.
:P
>>
>>
>> >>
>> >> I'm asking because i'd like to merge it with
>> >> VMMaker-oscog-EstebanLorenzano.50
>> >> and then bump the package versions in ConfigurationOfCog
>> >>
>> >>
>> >> --
>> >> Best regards,
>> >> Igor Stasenko AKA sig.
>> >
>> >
>>
>>
>>
>> --
>> Best regards,
>> Igor Stasenko AKA sig.
>
>
--
Best regards,
Igor Stasenko AKA sig.
More information about the Vm-dev
mailing list