From: Jarkko Hietaniemi Date: Mon, 21 Aug 2000 15:39:35 +0000 (+0000) Subject: Document the endianness of Alpha more precisely. X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=b84d4f81fd7f50ce896c753a15a85cba48f9ed80;p=p5sagit%2Fp5-mst-13.2.git Document the endianness of Alpha more precisely. p4raw-id: //depot/perl@6744 --- diff --git a/hints/unicos.sh b/hints/unicos.sh index e49b373..089b960 100644 --- a/hints/unicos.sh +++ b/hints/unicos.sh @@ -2,7 +2,7 @@ case `uname -r` in 6.1*) shellflags="-m+65536" ;; esac case "$optimize" in -# If we used fastmd (the default) integer values would be limited to 43 bits. +# If we used fastmd (the default) integer values would be limited to 46 bits. # --Mark P. Lutz '') optimize="$optimize -h nofastmd" ;; esac diff --git a/pod/perldelta.pod b/pod/perldelta.pod index 0fd8bb3..b9515d9 100644 --- a/pod/perldelta.pod +++ b/pod/perldelta.pod @@ -717,7 +717,7 @@ no longer dying on math errors in runtime. =item * Now using full quad integers (64 bits), previously was using -only 43 bit integers for speed. +only 46 bit integers for speed. =back diff --git a/pod/perlfunc.pod b/pod/perlfunc.pod index cc1393f..9772619 100644 --- a/pod/perlfunc.pod +++ b/pod/perlfunc.pod @@ -3156,10 +3156,10 @@ because they obey the native byteorder and endianness. For example a 0x12 0x34 0x56 0x78 # big-endian 0x78 0x56 0x34 0x12 # little-endian -Basically, the Intel, Alpha, and VAX CPUs are little-endian, while -everybody else, for example Motorola m68k/88k, PPC, Sparc, HP PA, -Power, and Cray are big-endian. MIPS can be either: Digital used it -in little-endian mode; SGI uses it in big-endian mode. +Basically, the Intel and VAX CPUs are little-endian, while everybody +else, for example Motorola m68k/88k, PPC, Sparc, HP PA, Power, and +Cray are big-endian. Alpha and MIPS can be either: Digital/Compaq +used/uses them in little-endian mode; SGI/Cray uses them in big-endian mode. The names `big-endian' and `little-endian' are comic references to the classic "Gulliver's Travels" (via the paper "On Holy Wars and a diff --git a/pod/perlport.pod b/pod/perlport.pod index 23ae003..ae9e0c2 100644 --- a/pod/perlport.pod +++ b/pod/perlport.pod @@ -181,10 +181,12 @@ numbers to secondary storage such as a disk file or tape. Conflicting storage orders make utter mess out of the numbers. If a little-endian host (Intel, VAX) stores 0x12345678 (305419896 in -decimal), a big-endian host (Motorola, MIPS, Sparc, PA) reads it as -0x78563412 (2018915346 in decimal). To avoid this problem in network -(socket) connections use the C and C formats C -and C, the "network" orders. These are guaranteed to be portable. +decimal), a big-endian host (Motorola, Sparc, PA) reads it as +0x78563412 (2018915346 in decimal). Alpha and MIPS can be either: +Digital/Compaq used/uses them in little-endian mode; SGI/Cray uses +them in big-endian mode. To avoid this problem in network (socket) +connections use the C and C formats C and C, the +"network" orders. These are guaranteed to be portable. You can explore the endianness of your platform by unpacking a data structure packed in native format such as: