|
From: <cli...@li...> - 2005-06-19 03:12:38
|
Send clisp-cvs mailing list submissions to cli...@li... To subscribe or unsubscribe via the World Wide Web, visit https://lists.sourceforge.net/lists/listinfo/clisp-cvs or, via email, send a message with subject or body 'help' to cli...@li... You can reach the person managing the list at cli...@li... When replying, please edit your Subject line so it is more specific than "Re: Contents of clisp-cvs digest..." CLISP CVS commits for today Today's Topics: 1. clisp/src lispbibl.d,1.654,1.655 ChangeLog,1.4706,1.4707 (Bruno Haible) 2. clisp/doc impbody.xml,1.387,1.388 (Bruno Haible) 3. clisp/src TODO,1.97,1.98 (Bruno Haible) --__--__-- Message: 1 From: Bruno Haible <ha...@us...> To: cli...@li... Subject: clisp/src lispbibl.d,1.654,1.655 ChangeLog,1.4706,1.4707 Date: Sat, 18 Jun 2005 17:18:38 +0000 Reply-To: cli...@li... Update of /cvsroot/clisp/clisp/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv5421 Modified Files: lispbibl.d ChangeLog Log Message: Use 48-bit fixnums on all 64-bit CPUs. Index: lispbibl.d =================================================================== RCS file: /cvsroot/clisp/clisp/src/lispbibl.d,v retrieving revision 1.654 retrieving revision 1.655 diff -u -d -r1.654 -r1.655 --- lispbibl.d 15 Jun 2005 12:26:22 -0000 1.654 +++ lispbibl.d 18 Jun 2005 17:18:30 -0000 1.655 @@ -2859,74 +2859,43 @@ Malloc address range: 0x0000000120000000 Shared libraries: 0x0000000160000000 Stack address range: 0x00000001FF000000 */ - #if defined(NO_SINGLEMAP) - # If MAP_MEMORY is not demanded, this is the safest. - # Bits 63..48 = type code, Bits 47..0 = address - #define oint_type_shift 48 - #define oint_type_len 16 - #define oint_type_mask 0xFFFF000000000000UL - #define oint_addr_shift 0 - #define oint_addr_len 48 - #define oint_addr_mask 0x0000FFFFFFFFFFFFUL - #define oint_data_shift 0 - #define oint_data_len 48 - #define oint_data_mask 0x0000FFFFFFFFFFFFUL - #else - # Bits 63..33 = type code, bits 32..0 = address - #if 1 # what is better?? - #define oint_type_shift 32 - #define oint_type_len 32 - #else - #define oint_type_shift 33 - #define oint_type_len 31 - #endif - #define oint_type_mask 0xFFFFFFFE00000000UL - #define oint_addr_shift 0 - #define oint_addr_len 33 - #define oint_addr_mask 0x00000001FFFFFFFFUL - #define oint_data_shift 0 - #define oint_data_len 32 - #define oint_data_mask 0x00000000FFFFFFFFUL - #endif + # This is the safest. + # Bits 63..48 = type code, Bits 47..0 = address + #define oint_type_shift 48 + #define oint_type_len 16 + #define oint_type_mask 0xFFFF000000000000UL + #define oint_addr_shift 0 + #define oint_addr_len 48 + #define oint_addr_mask 0x0000FFFFFFFFFFFFUL + #define oint_data_shift 0 + #define oint_data_len 48 + #define oint_data_mask 0x0000FFFFFFFFFFFFUL #endif #if defined(MIPS64) - # Bits 63..32 = type code, bits 31..0 = address - #define oint_type_shift 32 - #define oint_type_len 32 - #define oint_type_mask 0xFFFFFFFF00000000UL + # Bits 63..48 = type code, bits 31..0 = address + #define oint_type_shift 48 + #define oint_type_len 16 + #define oint_type_mask 0xFFFF000000000000UL #define oint_addr_shift 0 #define oint_addr_len 64 #define oint_addr_mask 0x00000000FFFFFFFFUL #define oint_data_shift 0 - #define oint_data_len 32 - #define oint_data_mask 0x00000000FFFFFFFFUL + #define oint_data_len 48 + #define oint_data_mask 0x0000FFFFFFFFFFFFUL #endif #if defined(SPARC64) # Virtual address limit on some systems: -2^43..2^43. - #if 1 - # If MAP_MEMORY isn't demanded, this is the safest. - # Bits 63..48 = type code, bits 47..0 = address - #define oint_type_shift 48 - #define oint_type_len 16 - #define oint_type_mask 0xFFFF000000000000UL - #define oint_addr_shift 0 - #define oint_addr_len 48 - #define oint_addr_mask 0x0000FFFFFFFFFFFFUL - #define oint_data_shift 0 - #define oint_data_len 48 - #define oint_data_mask 0x0000FFFFFFFFFFFFUL - #else - # Bits 63..32 = type code, bits 31..0 = address - #define oint_type_shift 32 - #define oint_type_len 32 - #define oint_type_mask 0xFFFFFFFF00000000UL - #define oint_addr_shift 0 - #define oint_addr_len 32 - #define oint_addr_mask 0x00000000FFFFFFFFUL - #define oint_data_shift 0 - #define oint_data_len 32 - #define oint_data_mask 0x00000000FFFFFFFFUL - #endif + # This is the safest. + # Bits 63..48 = type code, bits 47..0 = address + #define oint_type_shift 48 + #define oint_type_len 16 + #define oint_type_mask 0xFFFF000000000000UL + #define oint_addr_shift 0 + #define oint_addr_len 48 + #define oint_addr_mask 0x0000FFFFFFFFFFFFUL + #define oint_data_shift 0 + #define oint_data_len 48 + #define oint_data_mask 0x0000FFFFFFFFFFFFUL #endif #if defined(IA64) && defined(UNIX_LINUX) # Bits 63..61 = region code, @@ -2936,58 +2905,32 @@ # CODE_ADDRESS_RANGE = 0x4000000000000000UL (region 2) # MALLOC_ADDRESS_RANGE = 0x6000000000000000UL (region 3) # STACK_ADDRESS_RANGE = 0x9FFFFFFFFF000000UL (region 4) - #if defined(NO_SINGLEMAP) - # If MAP_MEMORY is not demanded, this is the safest. - # Bits 63..48 = Typcode, Bits 47..0 = address - #define oint_type_shift 48 - #define oint_type_len 16 - #define oint_type_mask 0x1FFF000000000000UL - #define oint_addr_shift 0 - #define oint_addr_len 64 - #define oint_addr_mask 0xE000FFFFFFFFFFFFUL - #define oint_data_shift 0 - #define oint_data_len 48 - #define oint_data_mask 0x0000FFFFFFFFFFFFUL - #else - # Bits 63..32 = Typcode, Bits 31..0 = address - #define oint_type_shift 32 - #define oint_type_len 32 - #define oint_type_mask 0x1FFFFFFF00000000UL - #define oint_addr_shift 0 - #define oint_addr_len 64 - #define oint_addr_mask 0xE0000000FFFFFFFFUL - #define oint_data_shift 0 - #define oint_data_len 32 - #define oint_data_mask 0x00000000FFFFFFFFUL - #endif + # This is the safest. + # Bits 63..48 = Typcode, Bits 47..0 = address + #define oint_type_shift 48 + #define oint_type_len 16 + #define oint_type_mask 0x1FFF000000000000UL + #define oint_addr_shift 0 + #define oint_addr_len 64 + #define oint_addr_mask 0xE000FFFFFFFFFFFFUL + #define oint_data_shift 0 + #define oint_data_len 48 + #define oint_data_mask 0x0000FFFFFFFFFFFFUL #endif #if defined(AMD64) && defined(UNIX_LINUX) # Code address range: 0x000000004xxxxxxx # Malloc address range: 0x000000004xxxxxxx # Shared libraries: 0x0000002A95xxxxxx - #if 1 /* slightly faster than the other one */ - # Bits 63..48 = type code, Bits 47..0 = address - #define oint_type_shift 48 - #define oint_type_len 16 - #define oint_type_mask 0xFFFF000000000000UL - #define oint_addr_shift 0 - #define oint_addr_len 48 - #define oint_addr_mask 0x0000FFFFFFFFFFFFUL - #define oint_data_shift 0 - #define oint_data_len 48 - #define oint_data_mask 0x0000FFFFFFFFFFFFUL - #else - # Bits 63..40 = Typcode, Bits 39..0 = address - #define oint_type_shift 40 - #define oint_type_len 24 - #define oint_type_mask 0xFFFFFF0000000000UL - #define oint_addr_shift 0 - #define oint_addr_len 64 - #define oint_addr_mask 0x000000FFFFFFFFFFUL - #define oint_data_shift 0 - #define oint_data_len 40 - #define oint_data_mask 0x000000FFFFFFFFFFUL - #endif + # Bits 63..48 = type code, Bits 47..0 = address + #define oint_type_shift 48 + #define oint_type_len 16 + #define oint_type_mask 0xFFFF000000000000UL + #define oint_addr_shift 0 + #define oint_addr_len 48 + #define oint_addr_mask 0x0000FFFFFFFFFFFFUL + #define oint_data_shift 0 + #define oint_data_len 48 + #define oint_data_mask 0x0000FFFFFFFFFFFFUL #endif #elif defined(WIDE_SOFT) # separate one 32-bit word for typcode and address. Index: ChangeLog =================================================================== RCS file: /cvsroot/clisp/clisp/src/ChangeLog,v retrieving revision 1.4706 retrieving revision 1.4707 diff -u -d -r1.4706 -r1.4707 --- ChangeLog 16 Jun 2005 13:42:51 -0000 1.4706 +++ ChangeLog 18 Jun 2005 17:18:32 -0000 1.4707 @@ -1,3 +1,9 @@ +2005-06-18 Bruno Haible <br...@cl...> + + * lispbibl.d (oint_data_len, oint_data_mask): On 64-bit platforms, + always set oint_data_len to 48, not 40 or 32. + (oint_type_*) [MIPS64]: Use only 16 bits for the type. + 2005-06-15 Bruno Haible <br...@cl...> * socket.d (string_to_addr): Mark as maygc. --__--__-- Message: 2 From: Bruno Haible <ha...@us...> To: cli...@li... Subject: clisp/doc impbody.xml,1.387,1.388 Date: Sat, 18 Jun 2005 17:21:37 +0000 Reply-To: cli...@li... Update of /cvsroot/clisp/clisp/doc In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7626 Modified Files: impbody.xml Log Message: most-positive-fixnum's value is now predictable. Index: impbody.xml =================================================================== RCS file: /cvsroot/clisp/clisp/doc/impbody.xml,v retrieving revision 1.387 retrieving revision 1.388 diff -u -d -r1.387 -r1.388 --- impbody.xml 16 Jun 2005 13:33:29 -0000 1.387 +++ impbody.xml 18 Jun 2005 17:21:34 -0000 1.388 @@ -1802,12 +1802,10 @@ <tgroup cols="3" colsep="1" rowsep="1" align="center">&cpu-type-header;<tbody> <row><entry>&most-positive-fixnum;</entry> <entry>2<superscript>24</superscript>-1 = 16777215</entry> - <entry>2<superscript>32</superscript>-1 = 4294967295 or - 2<superscript>48</superscript>-1 = 281474976710655</entry></row> + <entry>2<superscript>48</superscript>-1 = 281474976710655</entry></row> <row><entry>&most-negative-fixnum;</entry> <entry>-2<superscript>24</superscript> = -16777216</entry> - <entry>-2<superscript>32</superscript> = -4294967296 or - -2<superscript>48</superscript> = -281474976710656</entry></row> + <entry>-2<superscript>48</superscript> = -281474976710656</entry></row> </tbody></tgroup></table></section> <section id="bignum-lim"><title>Bignum Limits --__--__-- Message: 3 From: Bruno Haible <ha...@us...> To: cli...@li... Subject: clisp/src TODO,1.97,1.98 Date: Sat, 18 Jun 2005 17:25:25 +0000 Reply-To: cli...@li... Update of /cvsroot/clisp/clisp/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv9186 Modified Files: TODO Log Message: The get-charset-range work is not a bug, not a regression, just a wish => after 2.34. Index: TODO =================================================================== RCS file: /cvsroot/clisp/clisp/src/TODO,v retrieving revision 1.97 retrieving revision 1.98 diff -u -d -r1.97 -r1.98 --- TODO 16 Jun 2005 16:36:26 -0000 1.97 +++ TODO 18 Jun 2005 17:25:23 -0000 1.98 @@ -10,8 +10,6 @@ workaround for an extra comma in _clisp.1 [sds] -get-charset-range: move the "caching" code to the test suite [bruno] - regression: resolution of logical pathnames is broken, try (compile-file (logical-pathname "SYS:FOO.LISP")) [sds] @@ -95,6 +93,9 @@ Should handle these soon. +get-charset-range: move the "caching" code to the test suite [bruno] + + Embeddability: additional API in spvw.d; example. <https://sourceforge.net/tracker/index.php?func=detail&aid=423264&group_id=1355&atid=351355> --__--__-- _______________________________________________ clisp-cvs mailing list cli...@li... https://lists.sourceforge.net/lists/listinfo/clisp-cvs End of clisp-cvs Digest |