<html><body>
<p>Are there systems today that use a 128 bit long long? Are there virtual memory systems or filesystems coming in the reasonable future that use a 128 bit address range?<br>
<br>
On IBM Power we support both 32 bit and 64 bit executables. For both 32 bit and 64 bit executables, the C compilers treat int as 32 bits and long long as 64 bit. C long differs so is 32 bits in a 32 bit executable and 64 bits in a 64 bit executable (I.E. big enough to hold an address/pointer). <br>
<br>
The jump from 32 bits to 64 bits is a factor of 4 billion so it may be goodness in the abstract to think about what comes after 64 bits gives way to 128 bits, should we consider this a real problem?<br>
<br>
I do not see much reason to worry about the fact that multiplying 2 arbitrary 64 bit values can overflow a 64 bit result unless we think some real situation will call for 128 bit results. <br>
<br>
<br>
<br>
Dick Treumann - MPI Team <br>
IBM Systems & Technology Group<br>
Dept X2ZA / MS P963 -- 2455 South Road -- Poughkeepsie, NY 12601<br>
Tele (845) 433-7846 Fax (845) 433-8363<br>
<br>
<tt>Alexander</tt> wrote<br>
<tt><snip></tt><br>
<tt>> Another thing is that if we multiply to long values, the result may <br>
> potentially overflow a long. So, for a library that allows long <br>
> counts and long datatype extents, the internals of the library will <br>
> have to be long long. long long (128 bit) arithmetic may be rather <br>
> expensive on some CPUs. So, the 64-bit interface should probably be optional.</tt><br>
<tt><snip><br>
</tt></body></html>