mit-scheme-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [MIT-Scheme-devel] [commit acae7a5] svm: Port to 64 bit words.


From: Taylor R Campbell
Subject: Re: [MIT-Scheme-devel] [commit acae7a5] svm: Port to 64 bit words.
Date: Sun, 4 Mar 2012 18:51:39 +0000
User-agent: IMAIL/1.21; Edwin/3.116; MIT-Scheme/9.1

   Date: Sun, 4 Mar 2012 10:52:52 -0700
   From: Matt Birkholz <address@hidden>

   Is the rest of LIAR already word size independent?  I see just a few
   suspicious references to address-units-per-object in opncod.scm and
   rtlty2.scm...

It should be.  ADDRESS-UNITS-PER-OBJECT is the value for the target,
not for the host, so it's appropriate for the compiler to use it.
What I'm wondering about is whether SVM code is independent of the
word size of the Scheme system you load it into.

In the C back end, ADDRESS-UNITS-PER-OBJECT not even a number -- it's
a C expression whose value the C compiler fills in.  That is, the C
code that the compiler spits out (`machine code') is independent of
word size.  Thus, you can load the same C code into a 32-bit Scheme
and a 64-bit Scheme, by way of a C compiler fit for the target
Scheme's system characteristics.

So, if I build an SVM cross-compiler on my ancient and decrepit 32-bit
MacBook, and use that to compile some Scheme to SVM code, can I -- or
is it at least intented that I can -- then load that SVM code into
Scheme on a 64-bit system, and vice versa?



reply via email to

[Prev in Thread] Current Thread [Next in Thread]