[Vm-dev] VM Maker: VMMaker.oscog-eem.453.mcz

Clément Bera bera.clement at gmail.com
Sat Oct 12 07:54:02 UTC 2013


Hello,

If I understand correctly now you have a working StackInterpreter with a
Spur image. I wonder, as Spur is both compatible for 32 and 64 bits, how
far are we from a Stack VM with a 64 bits image ? It shouldn't be so much
work. I'm not talking about the JIT of course.

Another question in the same direction, I saw on the Bochs website that
their simulator now also supports 64 bits. Do you think if someone try to
port Cog on 64bits he should try to use Bochs in 64 bits mode with the same
plugin as we have, or he should do another plugin for another simulator ?

Anyway I'm amazed by the speed at which you implement Spur :).


2013/10/12 <commits at source.squeak.org>

>
> Eliot Miranda uploaded a new version of VMMaker to project VM Maker:
> http://source.squeak.org/VMMaker/VMMaker.oscog-eem.453.mcz
>
> ==================== Summary ====================
>
> Name: VMMaker.oscog-eem.453
> Author: eem
> Time: 11 October 2013, 5:19:39.495 pm
> UUID: 1510990d-a971-41cc-8a66-bc65a160454a
> Ancestors: VMMaker.oscog-eem.452
>
> Oops.  Some stragglers.   Now gcc3x-interp.c is generated for
> StackInterpreter + Spur.
>
> =============== Diff against VMMaker.oscog-eem.452 ===============
>
> Item was added:
> + ----- Method: Spur32BitMMLESimulator>>isNonIntegerObject: (in category
> 'object testing') -----
> + isNonIntegerObject: oop
> +       "This list records the valid senders of isNonIntegerObject: as we
> replace uses of
> +         isNonIntegerObject: by isNonImmediate: where appropriate."
> +       (#(     on:do: "from the dbeugger"
> +               reverseDisplayFrom:to:
> +               primitiveObjectAtPut
> +               isCogMethodReference:) includes: thisContext sender method
> selector) ifFalse:
> +               [self halt].
> +       ^super isNonIntegerObject: oop!
>
> Item was added:
> + ----- Method: SpurMemoryManager class>>additionalHeadersDo: (in category
> 'translation') -----
> + additionalHeadersDo: aBinaryBlock
> +       "Evaluate aBinaryBlock with the names and contents of
> +        any additional header files that need to be generated."!
>
> Item was changed:
>   ----- Method: SpurMemoryManager>>isNonIntegerObject: (in category
> 'object testing') -----
>   isNonIntegerObject: oop
> -       "This list records the valid senders of isNonIntegerObject: as we
> replace uses of
> -         isNonIntegerObject: by isNonImmediate: where appropriate."
> -       (#(     on:do: "from the dbeugger"
> -               reverseDisplayFrom:to:
> -               primitiveObjectAtPut
> -               isCogMethodReference:) includes: thisContext sender method
> selector) ifFalse:
> -               [self halt].
>         ^(oop bitAnd: 1) = 0!
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/vm-dev/attachments/20131012/95c8f4a4/attachment.htm


More information about the Vm-dev mailing list