[OpenBIOS] [RFC 2/3] ppc64: Switch to 64-bit cell size
Segher Boessenkool
segher at kernel.crashing.org
Sat May 28 22:15:36 CEST 2011
>>> If I recall correctly what I said, the device-tree property cell
>>> size is _always_ 32-bit, regardless of what the internal cell size
>>> is.
>>
>> Don't call that "cell size" :-) The OF standard calls it "a 32-bit
>> integer
>> as encoded by encode-int".
>
> There are places where 1275 refers to "cells" in the properties, where
> it _means_ 32-bit quantities. It's an unfortunate terminology problem.
Only in the actual property names, as far as I know. Historical
accident :-)
>>> - The cell size presented to FCode version 2 drivers (plug-in
>>> cards), which is emulated to be 32 bits.
>>
>> Do you mean the size of (lit) here? That's 32-bit signed always,
>> yes. The
>> FCode cell size is the same as the Forth cell size. Most FCode
>> programs
>> written for 32-bit systems work as-is on 64-bit systems; some need
>> some
>> fixes. Programs that need 64-bit numbers (for example, for devices
>> that
>> have 64-bit registers) need some careful coding.
>
> The FCode version 2 interpreter on SPARCs emulates 32-bit FCode by
> making various operations 32-bit specific. E.g., "0<>" tests only the
> low-order 32 bits of a cell. The intent was to ensure that 32-bit
> FCode programs did _not_ need fixes (because we couldn't afford the
> hassle of forcing everyone to fix them). That has resulted in
> considerable pain over the years as FCode programs and Forth don't
> always run the same.
Yeah, it's the worse of two evils, if you ask me.
Segher
More information about the OpenBIOS
mailing list