sbcl.git
14 years ago1.0.36.39: report location correctly in run-sbcl.sh
Nikodemus Siivola [Thu, 25 Mar 2010 12:24:39 +0000 (12:24 +0000)]
1.0.36.39: report location correctly in run-sbcl.sh

 * Thanks to Attila Lendvai for noticing. In despite the freeze.

14 years ago1.0.36.38: unBREAK
Nikodemus Siivola [Tue, 23 Mar 2010 18:06:05 +0000 (18:06 +0000)]
1.0.36.38: unBREAK

 ...oops.

14 years ago1.0.36.37: fix minor regression from 1.0.36.33
Nikodemus Siivola [Tue, 23 Mar 2010 17:52:10 +0000 (17:52 +0000)]
1.0.36.37: fix minor regression from 1.0.36.33

 * Don't patch the &REST into the type when it has * for args.

14 years ago1.0.36.36: Update release checklist
Juho Snellman [Sun, 21 Mar 2010 06:32:04 +0000 (06:32 +0000)]
1.0.36.36: Update release checklist

     * Add a note about chmoding the release directories to
       group-writable.
     * Remove the obsolete and commented out upload instructions.

14 years ago1.0.36.35: More accurate WHO-CALLS / WHO-EXPANDS information
Tobias C. Rittweiler [Sat, 20 Mar 2010 16:08:06 +0000 (16:08 +0000)]
1.0.36.35: More accurate WHO-CALLS / WHO-EXPANDS information

  * Fix for .34 which also affects WHO-EXPANDS; instead of pointing at
    the toplevel form, actually point into the right subform.

  * Bug due to typo: CDDR was used instead of CADDR.

14 years ago1.0.36.34: WHO-CALLS information for source transformed calls
Nikodemus Siivola [Fri, 19 Mar 2010 21:33:08 +0000 (21:33 +0000)]
1.0.36.34: WHO-CALLS information for source transformed calls

 * Generalize the solution used for macroexpansion XREFs to take care
   of other source-level stuff: this includes both source-transforms
   and compiler-macros.

 Fixes launchpad bug #542174.

 Note re. 1.0.36.33: the commit message is erronous. The real commit
 message would have noted that since FIND-OPTIONAL-DISPATCH-TYPES
 doesn't rightly consider &REST mismatch a lossage in the presence of
 &KEY, we need to make sure the type assigned to the leaf has a &REST
 type if the function actually has a &REST argument.

14 years ago1.0.36.33: handle missing &REST in proclamations
Nikodemus Siivola [Fri, 19 Mar 2010 20:35:15 +0000 (20:35 +0000)]
1.0.36.33: handle missing &REST in proclamations

 * FIND-OPTIONAL-DISPATCH-TYPES cannot skip &REST verification in the
   presence of &KEY.

 Fixes launchpad bug #458354.

14 years ago1.0.36.32: reparsing undefined types when necessary
Nikodemus Siivola [Thu, 18 Mar 2010 18:58:20 +0000 (18:58 +0000)]
1.0.36.32: reparsing undefined types when necessary

 In type methods for unknown types that have since parsing become
 defined, update the type as necessary.

 Fixes bug #309128.

14 years ago1.0.36.30: on x86-64 split MOVE-TO-SINGLE into -REG and -STACK versions
Nikodemus Siivola [Thu, 18 Mar 2010 11:17:01 +0000 (11:17 +0000)]
1.0.36.30: on x86-64 split MOVE-TO-SINGLE into -REG and -STACK versions

 * More accurate lifetime for the temporary in both, to avoid spurious
   moves, as per patch.

 * When moving from control stack to reg, untag in the XMM register
   instead of a GP register, as per patch.

 * Missing commas in SSE shuffle instruction printers.

 Adapted from patch by Lutz Euler on sbcl-devel 2009-10-12.

14 years ago1.0.36.30: print_generation_stats even if heap exhaustion happens during allocation
Nikodemus Siivola [Thu, 18 Mar 2010 08:16:50 +0000 (08:16 +0000)]
1.0.36.30: print_generation_stats even if heap exhaustion happens during allocation

 Ditto for various GC control variables. Handling heap exhaustion is
 tricky enough that puking more information is better than less.

14 years ago1.0.36.29: better Control-C signaling
Nikodemus Siivola [Wed, 17 Mar 2010 16:51:55 +0000 (16:51 +0000)]
1.0.36.29: better Control-C signaling

  Actually SIGNAL the SB-SYS:INTERACTIVE-INTERRUPT so that handlers
  can run.

14 years ago1.0.36.28: real LOAD-LOGICAL-PATHNAME-TRANSLATIONS
Nikodemus Siivola [Wed, 17 Mar 2010 14:28:00 +0000 (14:28 +0000)]
1.0.36.28: real LOAD-LOGICAL-PATHNAME-TRANSLATIONS

 * Read translations from SYS:SITE;HOST.TRANSLATIONS.NEWEST.

 Patch by Michael Weber on sbcl-devel.

14 years ago1.0.36.27: less mprotect calls in GENCGC
Nikodemus Siivola [Wed, 17 Mar 2010 12:35:29 +0000 (12:35 +0000)]
1.0.36.27: less mprotect calls in GENCGC

 * In unprotect_oldspace(), instead of calling os_protect() for every
   page that needs unprotecting separately, call it once for every
   contiguous region of pages. (Thanks to Vitaly Mayatskikh.)

 * Replace the unprotection calls from free_oldspace() and
   copy_large_object() with asserts: unprotect_oldspace should already
   have unprotected everything of interest.

14 years ago1.0.36.26: bug using OF-TYPE VECTOR in LOOP
Nikodemus Siivola [Wed, 17 Mar 2010 11:53:29 +0000 (11:53 +0000)]
1.0.36.26: bug using OF-TYPE VECTOR in LOOP

 Case of :ELEMENT-TYPE * vs T confusion.

 Fixes launchpad bug #540186.

14 years ago1.0.36.25: stuff silly putty into pipe to stop ASDF-INSTALL leaking
Nikodemus Siivola [Mon, 15 Mar 2010 09:36:41 +0000 (09:36 +0000)]
1.0.36.25: stuff silly putty into pipe to stop ASDF-INSTALL leaking

 * ...or the moral equivalent thereof.

14 years ago1.0.36.24: FIND/POSITION bounds checking on lists
Nikodemus Siivola [Mon, 15 Mar 2010 09:13:59 +0000 (09:13 +0000)]
1.0.36.24: FIND/POSITION bounds checking on lists

 * Signal an error if the list is shorter than required, and also
   check for circularity.

   Based on patch by: Jorge Tavares

   Fixes launchpad bug #452008.

 * Also add declarations for some error signaling functions used by
   sequence code so that compiler knows they never return.

14 years ago1.0.36.23: more consistent handling of ignored DX declarations
Nikodemus Siivola [Fri, 12 Mar 2010 12:37:12 +0000 (12:37 +0000)]
1.0.36.23: more consistent handling of ignored DX declarations

 * Use COMPILER-STYLE-WARN if the declaration is for an unbound
   variable or function.

 * Use COMPILER-NOTIFY is the declaration is free, but the
   var/function is bound.

 * Take care not to create an entry in *FREE-VARS* due to processing
   a DX declaration.

 Fixed launchpad bug #497321.

14 years ago1.0.36.22: bogus style-warning in DEFSTRUCT edge-case
Nikodemus Siivola [Fri, 12 Mar 2010 11:23:09 +0000 (11:23 +0000)]
1.0.36.22: bogus style-warning in DEFSTRUCT edge-case

 * Using initformless &AUX to specify uninitialized structure slots
   caused a bogus style-warning.

   Patch by: Adlai Chandrasekhar <Munchking@gmail.com>

 Fixed launchpad bug #528807.

14 years ago1.0.36.21: stricter handling of invalid backquote expressions
Nikodemus Siivola [Fri, 12 Mar 2010 09:38:25 +0000 (09:38 +0000)]
1.0.36.21: stricter handling of invalid backquote expressions

 Based on patch by: Stas Boukarev <stassats@gmail.com>

 Fixed launchpad bug #309093.

14 years ago1.0.36.20: prettier WITH-COMPILATION-UNIT documentation
Nikodemus Siivola [Thu, 11 Mar 2010 17:09:46 +0000 (17:09 +0000)]
1.0.36.20: prettier WITH-COMPILATION-UNIT documentation

 * Adjust the docstring for the benefit of the manual, and
   teach docstrings.lisp more about parsing embedded examples.

14 years ago1.0.36.19: WITH-COMPILATION-UNIT :POLICY
Nikodemus Siivola [Thu, 11 Mar 2010 13:53:49 +0000 (13:53 +0000)]
1.0.36.19: WITH-COMPILATION-UNIT :POLICY

 * Allows binding *POLICY* and *POLICY-RESTRICTIONS*. Read the
   docstring and weep.

 * Document both RESTRICT-COMPILER-POLICY and WITH-COMPILER-POLICY in
   the manual.

 * Also make DECLARATION-INFORMATION heed *POLICY-RESTRICTIONS*.
   Based on patch by: Tobias C. Rittweiler <tcr@freebits.de>

   Fixes Launchpad bug #313337.

14 years ago1.0.36.18: remove *MERGE-SORT-TEMP-VECTOR* and *ZAP-ARRAY-DATA-TEMP*
Nikodemus Siivola [Thu, 11 Mar 2010 10:11:44 +0000 (10:11 +0000)]
1.0.36.18: remove *MERGE-SORT-TEMP-VECTOR* and *ZAP-ARRAY-DATA-TEMP*

 * STABLE-SORT no longer uses a pre-allocated temporary vector, but
   rather allocates it as-required.

   Based on patch by: Keith James <dev@deoxybyte.co.uk>

 * ADJUST-ARRAY no longer uses a pre-allocated temporary vector, but
   rather allocates is as-required.

 In both cases after the temporary vector is done with, it is
 truncated to 0-length to prevent garbage retention.

 Fixes Launchpad bug #496249.

14 years ago1.0.36.17: SB-INTROSPECT building without SB-EVAL
Nikodemus Siivola [Thu, 11 Mar 2010 08:33:59 +0000 (08:33 +0000)]
1.0.36.17: SB-INTROSPECT building without SB-EVAL

 Patch by: Stas Boukarev <stassats@gmail.com>

 Fixes Launchpad bug #535658.

14 years ago1.0.36.16: allocation profiling for new threads
Nikodemus Siivola [Tue, 9 Mar 2010 09:57:29 +0000 (09:57 +0000)]
1.0.36.16: allocation profiling for new threads

 Patch by: Leslie Polzer <polzer@gnu.org>

 Fixes Launchpad bug #472499.

14 years ago1.0.36.15: upgraded array element-type of unions and intersections
Nikodemus Siivola [Mon, 8 Mar 2010 17:05:41 +0000 (17:05 +0000)]
1.0.36.15: upgraded array element-type of unions and intersections

 * Rename EXTRACT-UPGRADED-ELEMENT-TYPE and
   EXTRACT-DECLARED-ELEMENT-TYPE ARRAY-TYPE-UPGRADED-ELEMENT-TYPE and
   ARRAY-TYPE-DECLARED-ELEMENT-TYPE, and make them work on array types
   instead of LVARs.

 * Make ARRAY-TYPE-UPGRADED-ELEMENT-TYPE able to handle general
   intersection and union types. Code by "Gustavo"
   <gugamilare@gmail.com>.

 * Make ARRAY-TYPE-DIMENSIONS-OR-GIVE-UP able to handle general
   intersection and union types.

 Fixes Launchpad bug #316078.

14 years ago1.0.36.14: better differences of numeric types
Nikodemus Siivola [Mon, 8 Mar 2010 13:44:58 +0000 (13:44 +0000)]
1.0.36.14: better differences of numeric types

 Handle differences of numeric types accurately in TYPE-DIFFERENCE (no
 change unless both arguments are number-types.)

 Fixes Launchpad bug #309124.

14 years ago1.0.36.13: Fix test case clos.impure.lisp / BUG-520366.
Alastair Bridgewater [Mon, 1 Mar 2010 17:31:03 +0000 (17:31 +0000)]
1.0.36.13: Fix test case clos.impure.lisp / BUG-520366.

  * Fix rename failure quux -> quux-520366.

14 years ago1.0.36.12: Make sb-posix build on win32 again.
Alastair Bridgewater [Mon, 1 Mar 2010 16:54:00 +0000 (16:54 +0000)]
1.0.36.12: Make sb-posix build on win32 again.

  * Don't support accessing d_ino on win32.

14 years ago1.0.36.11: Make slam.sh work on Win32.
Alastair Bridgewater [Mon, 1 Mar 2010 16:51:17 +0000 (16:51 +0000)]
1.0.36.11: Make slam.sh work on Win32.

  * This is just a matter of changing the userinit and sysinit to
    version.lisp-expr like was done back when for make.sh.

14 years ago1.0.36.10: UD2-BREAKPOINTS for Win32
Alastair Bridgewater [Mon, 1 Mar 2010 16:32:55 +0000 (16:32 +0000)]
1.0.36.10: UD2-BREAKPOINTS for Win32

  * Make UD2-BREAKPOINTS work on Win32.

  * Add :ud2-breakpoints as a feature affecting fasl format, as it
    changes the trap code used in compiled code.

14 years ago1.0.36.9: UD2-BREAKPOINTS feature for x86oid systems
Alastair Bridgewater [Mon, 1 Mar 2010 13:09:00 +0000 (13:09 +0000)]
1.0.36.9: UD2-BREAKPOINTS feature for x86oid systems

  * Add new feature UD2-BREAKPOINTS, enabled by default only on x86oid
darwin targets.

  * Use said feature instead of DARWIN for breakpoint trap selection.

  * Make breakpoints work when using UD2-BREAKPOINTS (tested on x86 and
x86-64 linux).

  * This patch brought to you by lp#309067, which remains valid for
three reasons: First, the test case is still disabled.  Second, this
only fixes for x86oids, not for PPC.  And third, I didn't actually test
this on a darwin system.

14 years ago1.0.36.8: deal with environment argument in TYPEP transforms
Nikodemus Siivola [Sun, 28 Feb 2010 20:26:43 +0000 (20:26 +0000)]
1.0.36.8: deal with environment argument in TYPEP transforms

 Thanks to Karol Swietlicki.

 Launchpad bug #309788

14 years ago1.0.36.7: fix SB-C::CLASS-INFO printing
Nikodemus Siivola [Sun, 28 Feb 2010 19:40:40 +0000 (19:40 +0000)]
1.0.36.7: fix SB-C::CLASS-INFO printing

 Launchpad bug #514762

14 years ago1.0.36.6: array data vector type derivation
Nikodemus Siivola [Sun, 28 Feb 2010 19:37:09 +0000 (19:37 +0000)]
1.0.36.6: array data vector type derivation

 * Needs to be done for ARRAY-STORAGE-VECTOR and %ARRAY-DATA-VECTOR
   in addition to %DATA-VECTOR-AND-INDEX.

 * If the array is simple, we may be able to derive the exact length
   of the data vector, not just the element type.

14 years ago1.0.36.5: delay transforms for SLOT-VALUE and (SETF SLOT-VALUE)
Nikodemus Siivola [Sun, 28 Feb 2010 19:05:39 +0000 (19:05 +0000)]
1.0.36.5: delay transforms for SLOT-VALUE and (SETF SLOT-VALUE)

 Fixes launchpad bug #520366

14 years ago1.0.36.4: muffle style-warnings for undefined slot writers
Nikodemus Siivola [Sun, 28 Feb 2010 18:51:56 +0000 (18:51 +0000)]
1.0.36.4: muffle style-warnings for undefined slot writers

 * Reported by Frederik Tolf on sbcl-help.

14 years ago1.0.36.3: FUNCTION-LAMBDA-EXPRESSION and declarations in interpreted functions
Nikodemus Siivola [Sun, 28 Feb 2010 17:52:37 +0000 (17:52 +0000)]
1.0.36.3: FUNCTION-LAMBDA-EXPRESSION and declarations in interpreted functions

 * Don't throw them away, that is.

 Fixes launchpad bug #524707

14 years ago1.0.36.2: buglet in LVAR-MATCHES
Nikodemus Siivola [Sun, 28 Feb 2010 17:37:12 +0000 (17:37 +0000)]
1.0.36.2: buglet in LVAR-MATCHES

 * LVAR-USE where it should have been LVAR-USES.

 Fixes launchpad bug #523612.

14 years ago1.0.36.1: Improve backtrace from THROW to unknown tag on x86oids.
Alastair Bridgewater [Sun, 28 Feb 2010 17:13:59 +0000 (17:13 +0000)]
1.0.36.1: Improve backtrace from THROW to unknown tag on x86oids.

  * Essentially, just fake up another stack frame before hitting the
    error trap.

14 years ago1.0.36: will be tagged as sbcl_1_0_36
Christophe Rhodes [Sun, 28 Feb 2010 15:59:05 +0000 (15:59 +0000)]
1.0.36: will be tagged as sbcl_1_0_36

14 years ago1.0.35.23: restore buildability on clisp
Christophe Rhodes [Sat, 27 Feb 2010 16:47:49 +0000 (16:47 +0000)]
1.0.35.23: restore buildability on clisp

Problem report and fix from Josh Elasser sbcl-devel 2010-02-16.

14 years ago1.0.35.22: fix building on Darwin when sysctl is not in PATH
Nathan Froyd [Sat, 27 Feb 2010 16:46:05 +0000 (16:46 +0000)]
1.0.35.22: fix building on Darwin when sysctl is not in PATH

Thanks to Robert Goldman for the fix.

14 years ago1.0.35.21: ANSI-fy random-state seeding changes
Nathan Froyd [Sat, 27 Feb 2010 16:43:12 +0000 (16:43 +0000)]
1.0.35.21: ANSI-fy random-state seeding changes

Thanks to Fare for redoing his patch.

14 years ago1.0.35.20: More robust checking for DEFMETHOD argument specializers
Nathan Froyd [Sat, 27 Feb 2010 16:22:56 +0000 (16:22 +0000)]
1.0.35.20: More robust checking for DEFMETHOD argument specializers

Fixes lp#525916, reported by Reinout Stevens.

14 years ago1.0.35.19: fix SB-EXT:GENERATION-* accessors for generation > 0
Nathan Froyd [Sat, 27 Feb 2010 16:01:21 +0000 (16:01 +0000)]
1.0.35.19: fix SB-EXT:GENERATION-* accessors for generation > 0

Add the `lutexes' slot to `struct generation' as defined from Lisp.
Not paying attention to OAOO bites again.  Unfortunately, several things
are still OAOOM...

14 years ago1.0.35.18: Fix type-derivation for EXPT
Nathan Froyd [Mon, 22 Feb 2010 21:54:31 +0000 (21:54 +0000)]
1.0.35.18: Fix type-derivation for EXPT

A small thinko in the condition checking for (EXPT <RATIONAL> <RATIONAL>).

14 years ago1.0.35.17: micro-optimize x86-64 MOVE-TO-SINGLE
Nathan Froyd [Tue, 16 Feb 2010 04:45:25 +0000 (04:45 +0000)]
1.0.35.17: micro-optimize x86-64 MOVE-TO-SINGLE

Sometimes we move a descriptor -> float -> stack.  Teach MOVE-TO-SINGLE
how to do descriptor -> stack in one step.

14 years ago1.0.35.16: Whitespace damage.
Alastair Bridgewater [Sun, 14 Feb 2010 20:17:36 +0000 (20:17 +0000)]
1.0.35.16: Whitespace damage.

14 years ago1.0.35.15: Add and export various functions related to type specifiers.
Tobias C. Rittweiler [Sat, 13 Feb 2010 01:04:44 +0000 (01:04 +0000)]
1.0.35.15: Add and export various functions related to type specifiers.

  * TYPEXPAND-1, TYPEXPAND, TYPEXPAND-ALL work like their MACROEXPAND
    counterparts except that they expand type specifiers.

  * DEFINED-TYPE-NAME-P returns whether a symbol is known to name a
    type specifier.

  * VALID-TYPE-SPECIFIER-P returns whether a (possibly compound) type
    specifier is known, and syntactically / structurally correct. A
    type specifier is valid if it is to be accepted as second argument
    by TYPEP -- except that VALID-TYPE-SPECIFIER-P can also deal with
    FUNCTION and VALUES type specifiers.

  * Export these functions from SB-EXT.

14 years ago1.0.35.14: Remove unused function PRINT-CONTINUATION.
Tobias C. Rittweiler [Sat, 13 Feb 2010 00:12:52 +0000 (00:12 +0000)]
1.0.35.14: Remove unused function PRINT-CONTINUATION.

14 years ago1.0.35.12: Minor cleanup in %TARGET-DEFSTRUCT.
Tobias C. Rittweiler [Thu, 11 Feb 2010 22:11:07 +0000 (22:11 +0000)]
1.0.35.12: Minor cleanup in %TARGET-DEFSTRUCT.

  * Minor refactoring: split MAKE-DEFSTRUCT-PREDICATE and
    MAKE-DEFSTRUCT-COPIER out of %TARGET-DEFSTRUCT.

  * Remove FIXME: MAKE-DEFSTRUCT-COPIER now returns a closure which
    type checks its argument for proper layout before passing it to
    COPY-STRUCTURE.

14 years ago1.0.35.12: Add SB-INTROSPECT:FUNCTION-TYPE.
Tobias C. Rittweiler [Thu, 11 Feb 2010 22:04:03 +0000 (22:04 +0000)]
1.0.35.12: Add SB-INTROSPECT:FUNCTION-TYPE.

  * New function which takes a function designator and returns the
    function's declared, or derived FTYPE.

14 years ago1.0.35.11: Minor cleanup in MAKE-FUN-TYPE / MAKE-VALUES-TYPE
Tobias C. Rittweiler [Thu, 11 Feb 2010 18:11:20 +0000 (18:11 +0000)]
1.0.35.11: Minor cleanup in MAKE-FUN-TYPE / MAKE-VALUES-TYPE

  * MAKE-FUN-TYPE and MAKE-VALUES-TYPE took an :ARGS key parameter
    to translate from a list type-specifier to a ctype. This
    was used in the type-translators for FUNCTION and VALUES, only.
    So I removed :ARGS, and put that code into those type-translators.

  * Renamed ARGS-TYPES helper function to PARSE-ARGS-TYPES.

14 years ago1.0.35.10: d_ino access in SB-POSIX
Nathan Froyd [Thu, 11 Feb 2010 03:37:26 +0000 (03:37 +0000)]
1.0.35.10: d_ino access in SB-POSIX

Thanks to Philipp Marek and Pierre THIERRY for independent, nearly
identical patches.

14 years ago1.0.35.9: Add support for non-trivial random seeds
Nathan Froyd [Thu, 11 Feb 2010 03:26:58 +0000 (03:26 +0000)]
1.0.35.9: Add support for non-trivial random seeds

SBCL is using the popular MT19937 PRNG algorithm, but up until now,
was only seeding the initial random state with a 32-bit seed, and
choosing a seed subject to a lot of collisions (a second-precise timer)
when called with (MAKE-RANDOM-STATE T).

This patch adds and documents an SBCL extension to MAKE-RANDOM-STATE
that supports initializing a random-state based on an arbitrary UNSIGNED-BYTE
or a (SIMPLE-ARRAY (UNSIGNED-BYTE 8)). Also supported (but documented as
not officially so) is a (SIMPLE-ARRAY (UNSIGNED-BYTE 32)). Last but not least,
(MAKE-RANDOM-STATE T) will try to initialize the random state by reading
256 bits from /dev/urandom, which should eliminate the collision problem and
make SBCL's PRNG suitable for more applications than before.

Finally, we use in our random-state initialization routines the very same
algorithms that the author of MT19937 recommends in the latest version
of his C source, and we have tested the output to be identical (see
November 2009 discussion in the sbcl-devel mailing-list).

14 years ago1.0.35.8: Fix FILE-POSITION on simple-streams after READ-VECTOR
Nathan Froyd [Mon, 8 Feb 2010 17:42:25 +0000 (17:42 +0000)]
1.0.35.8: Fix FILE-POSITION on simple-streams after READ-VECTOR

Patch ported from CMUCL; independent testcase that doesn't rely on Unixisms
added instead of the one from CMUCL.

14 years ago1.0.35.7: fix docstrings for printing-releated things
Nathan Froyd [Mon, 8 Feb 2010 16:13:14 +0000 (16:13 +0000)]
1.0.35.7: fix docstrings for printing-releated things

This fixes Launchpad bug #518696.

14 years ago1.0.35.6: Fix typo in make-config.sh
Tobias C. Rittweiler [Sat, 6 Feb 2010 10:30:36 +0000 (10:30 +0000)]
1.0.35.6: Fix typo in make-config.sh

on ppc: :stacka-allocatable-lists -> :stack-allocatable-lists

14 years ago1.0.35.5: Fix backtrace from internal-error on x86-64 OS X.
Alastair Bridgewater [Sat, 6 Feb 2010 05:03:13 +0000 (05:03 +0000)]
1.0.35.5: Fix backtrace from internal-error on x86-64 OS X.

  * Backtraces from internal-error traps were truncated before reaching
the erring stack frame due to an invalid frame pointer value being set
up in the mach exception handler.  Fixed.

14 years ago1.0.35.4: fix compilation on chenygc platforms
Gabor Melis [Thu, 4 Feb 2010 23:27:00 +0000 (23:27 +0000)]
1.0.35.4: fix compilation on chenygc platforms

Thanks to Larry Valkama and Bruce O'Neel.

14 years ago1.0.35.3: Give initial thread function an explicit name..
Tobias C. Rittweiler [Thu, 4 Feb 2010 21:13:04 +0000 (21:13 +0000)]
1.0.35.3: Give initial thread function an explicit name..

...for slightly improved backtrace experience.

14 years ago1.0.35.2: Fix CONDITION-WAIT to signal deadline with interrupts enabled.
Tobias C. Rittweiler [Mon, 1 Feb 2010 18:55:13 +0000 (18:55 +0000)]
1.0.35.2: Fix CONDITION-WAIT to signal deadline with interrupts enabled.

14 years ago1.0.35.1: Fix CONDITION-WAIT not to signal a deadline twice (LP #512914)
Tobias C. Rittweiler [Sun, 31 Jan 2010 20:25:30 +0000 (20:25 +0000)]
1.0.35.1: Fix CONDITION-WAIT not to signal a deadline twice (LP #512914)

14 years ago1.0.35: will be tagged as sbcl_1_0_35
Christophe Rhodes [Sun, 31 Jan 2010 11:10:39 +0000 (11:10 +0000)]
1.0.35: will be tagged as sbcl_1_0_35

14 years ago1.0.34.16: Test case for ROUND brokenness
Christophe Rhodes [Sat, 30 Jan 2010 21:30:50 +0000 (21:30 +0000)]
1.0.34.16: Test case for ROUND brokenness

14 years ago1.0.34.15: Fix DERIVE-TYPE optimizer for %UNARY-ROUND
Paul Khuong [Sat, 30 Jan 2010 16:16:13 +0000 (16:16 +0000)]
1.0.34.15: Fix DERIVE-TYPE optimizer for %UNARY-ROUND

Handle exclusive bounds conservatively by treating them as inclusive
(instead of dying).

14 years ago1.0.34.14: fix permissions of directories of asdf-using contribs
Christophe Rhodes [Thu, 28 Jan 2010 11:36:26 +0000 (11:36 +0000)]
1.0.34.14: fix permissions of directories of asdf-using contribs

Report (lp #508485, sbcl-devel variously) and fix from Eugene Ossintsev

14 years ago1.0.34.13: add DERIVE-TYPE optimizer for %UNARY-ROUND
Nathan Froyd [Wed, 27 Jan 2010 01:57:12 +0000 (01:57 +0000)]
1.0.34.13: add DERIVE-TYPE optimizer for %UNARY-ROUND

This change enables %UNARY-ROUND to be inlined on several platforms.

14 years ago1.0.34.12: slightly better code generation for x86-64 float conversions
Nathan Froyd [Wed, 27 Jan 2010 00:45:11 +0000 (00:45 +0000)]
1.0.34.12: slightly better code generation for x86-64 float conversions

%{SINGLE,DOUBLE}-FLOAT required an unnecessary temporary stack slot.
Float->integer and float->float conversions also suffered from not being
able to take arguments in stack SCs.

14 years ago1.0.34.11: properly inline %UNARY-TRUNCATE/{SINGLE,DOUBLE}-FLOAT
Nathan Froyd [Tue, 26 Jan 2010 15:42:42 +0000 (15:42 +0000)]
1.0.34.11: properly inline %UNARY-TRUNCATE/{SINGLE,DOUBLE}-FLOAT

Add DERIVE-TYPE optimizers for them so the compiler can see that VOPs
are applicable.  Add a testcase that should be valid everywhere.

14 years ago1.0.34.10: New chapter for internals manual.
Alastair Bridgewater [Mon, 25 Jan 2010 03:47:20 +0000 (03:47 +0000)]
1.0.34.10: New chapter for internals manual.

  * Chapter: Objects In Memory, describing type tags and heap object
layouts.

14 years ago1.0.34.9: darwin/x86-64 sb-posix:stat fixes from Kei Suzuki
Cyrus Harmon [Thu, 21 Jan 2010 05:09:43 +0000 (05:09 +0000)]
1.0.34.9: darwin/x86-64 sb-posix:stat fixes from Kei Suzuki

* sb-unix:unix-stat/lstat/fstat return the 32bit inode with x86 and
  the 64bit inode with x86-64,

* sb-posix:stat/lstat/fstat get stat values using the old stat calls
  with x86 and the new ones with x86-64

* re-enable now-working sb-posix stat tests

14 years ago1.0.34.8: Cosmetic improvements to error output on compilation abort.
Tobias C. Rittweiler [Wed, 20 Jan 2010 22:51:19 +0000 (22:51 +0000)]
1.0.34.8: Cosmetic improvements to error output on compilation abort.

* Make sure that error output is printed on a fresh line.

* Add mandatory newline before and after so the abortion
  stands out visually.

* Make sure to report the actual condition (fatal-compiler-error
  is just an encapsulation.)

14 years ago1.0.34.7: add missing x86-64-vm.lisp file from previous commit
Nathan Froyd [Fri, 8 Jan 2010 16:29:31 +0000 (16:29 +0000)]
1.0.34.7: add missing x86-64-vm.lisp file from previous commit

14 years ago1.0.34.6: improvements to SB-ROTATE-BYTE on x86-64
Nathan Froyd [Fri, 8 Jan 2010 02:21:15 +0000 (02:21 +0000)]
1.0.34.6: improvements to SB-ROTATE-BYTE on x86-64

- Generate ROL/ROR instructions for 32-bit rotates, rather than shifts,
  ands, and ors;
- Generate ROL/ROR instructions for 64-bit rotates.

While we're here, we might as well fix the FIXME about the ordering of
DEFTRANSFORMS to ensure we do the right thing for identity rotates.

14 years ago1.0.34.5: remove dead DATA-VECTOR-{REF,SET} transforms
Nathan Froyd [Wed, 6 Jan 2010 16:56:22 +0000 (16:56 +0000)]
1.0.34.5: remove dead DATA-VECTOR-{REF,SET} transforms

The transforms for (SIMPLE-ARRAY (UNSIGNED-BYTE N)) where (< N 8) have
never been used.  Consign them to the version control bitbucket.

14 years ago1.0.34.4: micro-optimize widetag checking on x86oids
Nathan Froyd [Wed, 6 Jan 2010 05:05:43 +0000 (05:05 +0000)]
1.0.34.4: micro-optimize widetag checking on x86oids

If we are checking a range of widetags and there are no more widetags to
check, we can tweak the widetag and do a single, unsigned comparison.

14 years ago1.0.34.3: Fix second return value of GET-MACRO-CHARACTER.
Tobias C. Rittweiler [Mon, 4 Jan 2010 15:55:21 +0000 (15:55 +0000)]
1.0.34.3: Fix second return value of GET-MACRO-CHARACTER.

GET-MACRO-CHARACTER always refered to *READTABLE* when computing its
second return value (the non-terminating-p flag) rather than to the
readtable that may have been passed explicitly.

14 years ago1.0.34.2: Make threads.pure.lisp symbol-value-in-thread.[78] tests more reliable.
Alastair Bridgewater [Wed, 30 Dec 2009 22:54:27 +0000 (22:54 +0000)]
1.0.34.2: Make threads.pure.lisp symbol-value-in-thread.[78] tests more reliable.

  * Actually assert that an error occurred (setf won't signal an
unbound-variable if the thread still lives).

  * Join the thread before attempting to access the value (no more race
condition).

14 years ago1.0.34.1: Kludge reduction in debug-int.
Alastair Bridgewater [Wed, 30 Dec 2009 22:53:37 +0000 (22:53 +0000)]
1.0.34.1: Kludge reduction in debug-int.

  * We can't dump packages in the cross-compiler, but we can use
load-time-value, which is sufficient.

14 years ago1.0.34: will be tagged as sbcl_1_0_34
Christophe Rhodes [Wed, 30 Dec 2009 20:09:45 +0000 (20:09 +0000)]
1.0.34: will be tagged as sbcl_1_0_34

14 years ago1.0.33.30: Fix sb-posix build on win32.
Alastair Bridgewater [Thu, 24 Dec 2009 00:08:11 +0000 (00:08 +0000)]
1.0.33.30: Fix sb-posix build on win32.

  * This was entirely symbol-export issues between win32 and non-win32.

14 years ago1.0.33.29: Fix x86oid backtrace on sigaltstack in LDB.
Alastair Bridgewater [Tue, 22 Dec 2009 17:22:50 +0000 (17:22 +0000)]
1.0.33.29: Fix x86oid backtrace on sigaltstack in LDB.

  * altstack_pointer_p() derives the location of the altstack from the
value of arch_os_get_current_thread(), which returns a struct thread *.
This caused the subsequent offset calculation to be off by a factor of
sizeof(struct thread), thus completely overshooting the altstack area.

14 years ago1.0.33.28: Display descriptions for internal errors in the runtime.
Alastair Bridgewater [Mon, 21 Dec 2009 16:30:08 +0000 (16:30 +0000)]
1.0.33.28: Display descriptions for internal errors in the runtime.

  * In genesis, output a define with the descriptions of internal
errors.

  * In interr.c, create an array with said descriptions and use it when
describing an internal error.

14 years ago1.0.33.27: fix regressions in DESCRIBE from 1.0.33.5
Gabor Melis [Mon, 21 Dec 2009 13:12:47 +0000 (13:12 +0000)]
1.0.33.27: fix regressions in DESCRIBE from 1.0.33.5

14 years ago1.0.33.26: enabled threads by default on x86[-64] Linux
Nikodemus Siivola [Fri, 18 Dec 2009 14:26:33 +0000 (14:26 +0000)]
1.0.33.26: enabled threads by default on x86[-64] Linux

 I'll let FreeBSD folks make the judgement if threads should be
 default there as well.

 Also: update INSTALL documentation regarding *FEATURES* a bit, and
 make the documentation clear about availability of threads on
 different builds.

14 years ago1.0.33.25: switch SB-QUEUE into using ASDF
Nikodemus Siivola [Fri, 18 Dec 2009 13:21:44 +0000 (13:21 +0000)]
1.0.33.25: switch SB-QUEUE into using ASDF

 ...so that other systems can :depends-on it.

14 years ago1.0.33.24: both .FASL and .fasl force fasl-loading
Nikodemus Siivola [Fri, 18 Dec 2009 09:42:23 +0000 (09:42 +0000)]
1.0.33.24: both .FASL and .fasl force fasl-loading

 Bug with case-insensitive filesystems cause other implementations
 .FASL files to be loaded as source reported by Willem Broekema.

14 years ago1.0.33.23: nuke trailing newline from error string
Nikodemus Siivola [Fri, 18 Dec 2009 09:11:26 +0000 (09:11 +0000)]
1.0.33.23: nuke trailing newline from error string

 Thanks to Stas Boukarev.

14 years ago1.0.33.22: fix WITH-MUTEX docstring
Nathan Froyd [Fri, 18 Dec 2009 02:19:30 +0000 (02:19 +0000)]
1.0.33.22: fix WITH-MUTEX docstring

Noted on sbcl-devel 2009-12-17 by William Halliburton.

14 years ago1.0.33.21: safe SB-POSIX:PUTENV
Nikodemus Siivola [Thu, 17 Dec 2009 23:25:04 +0000 (23:25 +0000)]
1.0.33.21: safe SB-POSIX:PUTENV

 Reported by Fare Rideau: POSIX putenv() puts the actual string it is
 passed into environ, which is definitely wrong for any lisp string.

 Since we don't want to leak memory either, implement our own putenv()
 on top of setenv() -- and the other way around on Windows which
 doesn't have setenv().

 Messed up is what this is -- to keep a semblance of sanity add
 test-cases.

14 years ago1.0.33.20: MORE CONSTANTIFICATION
Nathan Froyd [Thu, 17 Dec 2009 21:01:47 +0000 (21:01 +0000)]
1.0.33.20: MORE CONSTANTIFICATION

Use FIXNUM-TAG-MASK and N-FIXNUM-TAG-BITS where appropriate.

14 years ago1.0.33.19: post-fact correct commit log message
Nikodemus Siivola [Thu, 17 Dec 2009 13:12:00 +0000 (13:12 +0000)]
1.0.33.19: post-fact correct commit log message

 Previous commit should have said:

 "1.0.33.18: termios additions to SB-POSIX

    Thanks to Jerry James"

 ...and the one before that should have called its version 1.0.33.17,
 but otherwise has the correct text.

 ...sorry about the noise.

14 years ago1.0.33.11: thread-safe FIND-PACKAGE & DEFPACKAGE
Nikodemus Siivola [Thu, 17 Dec 2009 12:13:56 +0000 (12:13 +0000)]
1.0.33.11: thread-safe FIND-PACKAGE & DEFPACKAGE

 * Must use WITH-PACKAGES around the GETHASH *PACKAGE-NAMES*.

14 years ago1.0.33.11: thread-safe FIND-PACKAGE & DEFPACKAGE
Nikodemus Siivola [Thu, 17 Dec 2009 11:42:22 +0000 (11:42 +0000)]
1.0.33.11: thread-safe FIND-PACKAGE & DEFPACKAGE

 * Must use WITH-PACKAGES around the GETHASH *PACKAGE-NAMES*.

14 years ago1.0.33.16: implement UTF external formats
Christophe Rhodes [Wed, 16 Dec 2009 22:12:35 +0000 (22:12 +0000)]
1.0.33.16: implement UTF external formats

UTF-16 and UTF-32, being strict about handling of surrogates and noncharacters
according to Unicode.

14 years ago1.0.33.15: preparation for UTF external formats
Christophe Rhodes [Wed, 16 Dec 2009 21:54:05 +0000 (21:54 +0000)]
1.0.33.15: preparation for UTF external formats

On input, there are potentially two non-constant sizes of data that need
to be read; for variable-width formats, there are both the number of bytes
for a particular character, and the number of bytes that need to be read in
order to know how many bytes need to be read for a character (previously
hardwired to 1).  Separate out these two sizes in preparation for UTF-16 and
UTF-32 external formats.

14 years ago1.0.33.14: improve UCS external formats
Christophe Rhodes [Wed, 16 Dec 2009 21:39:30 +0000 (21:39 +0000)]
1.0.33.14: improve UCS external formats

Fix a simple bug in the CHAR->UCS-2BE error case.

Fix error-handling UCS-2 cases, by actually being careful about using the
return values of the encoding-error/decoding-error octet functions, and by
using adjustable vectors.  Include tests for this.

Implement UCS-4, as a straight-through 32-bit encoding of the char-code.

Move external-formats/ucs-2.lisp to external-formats/enc-ucs.lisp, and include
a comment header explaining the distinction in our terms between UCS and UTF
external formats.

14 years ago1.0.33.13: Catch errors during compile-time-too processing.
Tobias C. Rittweiler [Wed, 16 Dec 2009 09:58:54 +0000 (09:58 +0000)]
1.0.33.13: Catch errors during compile-time-too processing.

  * Errors signaled within an (EVAL-WHEN (:COMPILE-TOPLEVEL) ...),
    i.e. during ``compile-time-too' processing, are now caught and
    reported just like errors at macroexpansion time.

    Previously, we landed in the debugger from within the compiler and
    thus provided pretty much no information about the actual source
    context to the user.

    Now, we won't land in the debugger, and the appropriate source
    context is reported along the error.

  * Some slight generalization in the test suite.

  * So we can add tests for errors in EVAL-WHEN and during
    macroexpansion.

14 years ago1.0.33.12: Less ugly html manuals
Rudi Schlatte [Tue, 15 Dec 2009 16:09:02 +0000 (16:09 +0000)]
1.0.33.12: Less ugly html manuals
... add some light css styling
... also create single-file manual for easier grepping
... unilaterally deciding on light blue as our new corporate colour