[Vm-dev] Re: [Poll] Who is interested in, thinking about, or already contributing to a 64-bit OpenSmalltalk VM for Windows?

Nicolas Cellier nicolas.cellier.aka.nice at gmail.com
Thu Jul 7 17:05:55 UTC 2016


2016-07-07 14:47 GMT+02:00 David T. Lewis <lewis at mail.msen.com>:

>
> On Thu, Jul 07, 2016 at 12:45:14PM +0200, Nicolas Cellier wrote:
> >
> > 2016-07-06 4:04 GMT+02:00 Eliot Miranda <eliot.miranda at gmail.com>:
> >
> > >
> > > Hi All,
> > >
> > > On Tue, Jul 5, 2016 at 8:06 AM, Nicolas Cellier <
> > > nicolas.cellier.aka.nice at gmail.com> wrote:
> > >
> > >>
> > >>
> > >> 2016-07-05 15:40 GMT+02:00 marcel.taeumel <Marcel.Taeumel at hpi.de>:
> > >>
> > >>>
> > >>> >>
> > >>> >> --
> > >>> >> View this message in context:
> > >>> >>
> > >>>
> http://forum.world.st/Poll-Who-is-interested-in-thinking-about-or-already-contributing-to-a-64-bit-OpenSmalltalk-VM-for-Wi-tp4904953.html
> > >>> >> Sent from the Squeak VM mailing list archive at Nabble.com.
> > >>> >>
> > >>>
> > >>> Hi Nicolas,
> > >>>
> > >>>
> > >> Hi Marcel,
> > >>
> > >>
> > >>> if we target Cygwin as a build environment, this might be worth
> noticing:
> > >>> https://cygwin.com/faq.html#faq.programming.64bitporting
> > >>>
> > >>>
> > >> As currently generated, the Spur Vm for 64 bits expects sizeof(long)
> == 8.
> > >> So it is cygwin64 x86_64 compatible, but not so much MSVC... (or
> > >> mingw-w64 variants...)
> > >> IMO, this is the easiest target. then we could inquire about alternate
> > >> compilers.
> > >>
> > >
> > > This is great to hear.  So there is a model where sizeof(long) == 8?
> If
> > > that's so, we should target it.  There's a /lot/ of work to do if we
> have
> > > to support the Win64 sizeof(long) == 4 model.
> > >
> > snip...
> >
> > After inquiring a bit more, that's not going to be that easy...
> > Yes, x86_64-pc-cygwin-gcc.exe is LP64 and Spur64 compatible, but it lacks
> > all the interfaces used by platforms/win32 (like _fmode _O_BINARY etc...)
> > On the other hand, x86_64-w64-mingw32-gcc.exe has all the required win32
> > interfaces but is thus LLP64.
> >
> > Thus, either we use cygwin, switch to a unix architecture, and loose a
> > bunch of win32 specific features (Direct3D etc...). But how to provide
> the
> > interface to window manager/GUI?
>
> Also, on Windows, FilePlugin uses HANDLE rather than (FILE *) for all
> references to file operations.
>
> > Or we take the longer path to get VMMaker work on LLP64 (sizeof long ==
> 4,
> > sizeof(long) < sizeof(char *)).
>
> That would be the right thing to do. Assuming that a long is large enough
> to hold a pointer is wrong. But it would not be easy or quick to make the
> changes. Updates to platforms/Cross would be needed, so it affects more
> than just the win32 tree.
>
> Dave
>
> Hi Dave,
I've started the LLP64 compatibility changes on master branch.
It's not so hard if we stick to the sq* types.
Then there will be a bunch of VMMaker (long) usage to revise.

cheers
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/vm-dev/attachments/20160707/3612ee4a/attachment.htm


More information about the Vm-dev mailing list