- Dec 10, 2007
- Dec 09, 2007
-
-
rtoy authored
o Change default compression to bzip instead of gzip, since we seem to always suppy bzipped binaries.
-
- Dec 07, 2007
-
-
cshapiro authored
in save.c dependent on FEATURE_EXECUTABLE.
-
- Dec 06, 2007
-
-
rtoy authored
the code from build.sh to here so we do the same thing. (Should this be moved out to a separate file?)
-
cshapiro authored
* Update the Config file to detect the GCC version at build time and use -iquote instead of -I- if we are not using GCC 2 or 3. This silences the unsilenceable deprecation message emitted by GCC 4. * Check the FreeBSD version at compile time and switch the protection violation signal to SIGSEGV if we are on a version of FreeBSD 7 that will deliver a SIGSEGV instead of a SIGBUS for access errors. * Install sigbus_handler to handle whatever UNIX signal the macro PROTECTION_VIOLATION_SIGNAL expands to. Get rid of the useless sigsegv_handler. Add the PROTECTION_VIOLATION_CODE macro so we do not have to conditionalize the check that guards the write barrier code.
-
- Dec 04, 2007
-
-
cshapiro authored
and clean-up some minor damage done by the code beautifier.
-
- Dec 03, 2007
-
-
pwerkowski authored
-
rtoy authored
the following example gets miscompiled: (defun foo () (let ((<= (symbol-function 'list))) (lambda (x y) (funcall <= x y)))) (assert (equal (funcall (foo) 'a 'b) '(a b))) It seems to me that the compiler inappropriately applies a source transformation because the local variable happens to have a function type. (This happens also for symbols other than <=, e.g. char= .) The following patch fixes that. It seems to me, that we can use the secondary return of VALIDATE-CALL-TYPE (info) to decide whether we deal with a global variable, because VALIDATE-CALL-TYPE indirectly calls RECOGNIZE-KNOWN-CALL which does the proper checks for a global variable.
-
rtoy authored
-
- Nov 28, 2007
-
-
rtoy authored
o Add usage message o Make sure we have exactly args
-
- Nov 27, 2007
- Nov 16, 2007
- Nov 15, 2007
-
-
rtoy authored
operations, store the result of the operation to the stack and reload it. This needs some work because the compiler there are a lot of redundant stores and loads. Also, I am unable to create code to exercise all of the possible conditions in the vops, so I am not 100% sure all of these are correct.
-
- Nov 14, 2007
-
-
rtoy authored
-
rtoy authored
rearrangement. Changes not tested, but there are no compiler warnings anymore. o Fix typo: It's fpstate, not ftpstate. o Fix dereferencing of the fpstate, which is not in the sigcontext anymore. It's in the sc-mcontext slot of the sigcontext now.
-
rtoy authored
o Add comments that we need to cross-compile on x86. o Load up boot-2007-11-1 for the x86 cross-compile to get rid of a warning. o Load up the default cross-x86-x86 script. exports.lisp: o Remove FLOAT-ACCURACY. It is now gone.
-
rtoy authored
unix-glibc2 doesn't define FILE-OFFSET.
-
cshapiro authored
the precision control will always be set to double precision. For the duration of calls into C, the precision control will be set to the ABI default. On Linux and Darwin this is double extended precision. On all other platforms the precision control is left as double precision. The specious FLOAT-ACCURACY declaration has been eliminated. * Shorten the precision control field to 24-bits by disposing of the unexamined high order eight bits of the status word. This compacts the code generated around floating point mode changes and reduces consing. * Eliminate unnecessary uses of FLDENV and FSTENV. We can substitute a use of FSTENV with FSTSW in FLOATING-POINT-MODES. This reduces the number of cycles to access the relevant mode bits by a factor of thirty. We cannot eliminate FLDENV in SET-FLOATING-POINT-MODES, but the common case does not require an update to the status word. A fast path has been added to the VOP that improves the execution time by at least a factor of fifteen. * Remove the precision control option to SET-FLOATING-POINT-MODES. It is the responsibility of the compiler to generating code that yields correctly rounded results in double and single precision.
-
cshapiro authored
-
- Nov 09, 2007
-
-
rtoy authored
-
rtoy authored
happened because the callback trampoline used malloc'ed space which were not executable by default. Change this so that the trampoline is executable. code/unix.lisp, code/unix-glibc2.lisp: o Add UNIX-MPROTECT code/exports.lisp: o Export UNIX-MPROTECT code/alieneval.lisp: o Make sure the malloc'ed trampoline area is executable. general-info/release-19e.txt: o Update
-
- Nov 06, 2007
- Nov 05, 2007
-
-
rtoy authored
simple-streams buffers) into LISP and removes them from simple-streams (and from EXT). Use boot-2007-11-1.lisp to bootstrap the necessary symbol changes. Patch from Paul Foley.
-
- Nov 04, 2007
-
-
rtoy authored
-
- Oct 31, 2007
-
-
rtoy authored
o Disable package errors when loading up external formats. o A minor patch allowing string-to-octets and vice versa to write into a preallocated array (though they might still allocate a bigger one if necessary), o Fix up any confusion between simple-base-string and simple-string so that nothing breaks when/if they're not the same.
-
- Oct 25, 2007
-
-
rtoy authored
-
rtoy authored
New files: o code/extfmts.lisp o pcl/simple-streams/external-formats/iso8859-1.lisp o pcl/simple-streams/external-formats/void.lisp code/exports.lisp: o Export the new symbols STRING-TO-OCTETS, OCTETS-TO-STRING, *DEFAULT-EXTERNAL-FORMAT*, ENCODE-STRING, and DECODE-STRING from the STREAM package o Make the symbols in the EXT package too. pcl/simple-streams/internal.lisp: o Move the implementation of STRING-TO-OCTETS and friends to a new file (extfmts.lisp). pcl/simple-streams/external-formats/utf-8.lisp: o New implementation. tools/make-main-dist.sh: o Create new target directory to hold external formats o Copy all of the external formats to the new directory. tools/pclcom.lisp: o Compile new code tools/worldcom.lisp: o Compile code/extfmts.lisp tools/worldload.lisp: o Load code/extfmts.lisp
-
rtoy authored
-
- Oct 19, 2007
- Oct 18, 2007
-
-
rtoy authored
don't do the hackish list-of-name to find local debug function anymore. This change allows us to retrace local functions when the function is redefined. code/debug-int.lisp: o Add :LOCAL-NAME keyword parameter to tell us to look for the local function within the given FUN. The bizarre hack using a list as the FUN to do this is now gone. code/ntrace.lisp: o Change TRACE-FDEFINITION to return a fourth value if the function is a local function. The fourth value is the name of the local function. o TRACE-1 recognizes the extra value from TRACE-FDEFINITION to determine if this is a local function that needs to be traced. Also, if DEFINITION is given, we process that carefully so we can trace the new definition with a local function. o UNTRACE-1 likewise updated to recognize and handle local functions. o TRACE-REFINED-UPDATE modified so that when a function is redefined, we retrace the function itself if it was traced (as before). But we also look through the traced functions to see if we need to retrace the local definitions in this new function.
-
- Oct 10, 2007
-
-
rtoy authored
-
rtoy authored
double-doubles. o Remove now unused DOUBLE-DOUBLE-FLOAT-FROM-BITS. This should fix an issue with converting bignums to double-doubles. For example (- (ash 1 150) 1) can now be be represented accurately as a double-double.
-
rtoy authored
double-double-floats. (From Richard Fateman.) o Use that in FLOAT-RATIO for convertnig ratios to double-double-floats. o Remove old double-double-float support from FLOAT-RATIO. o Split FLOAT-RATIO in two, one supporting single/double floats, and one for double-double-floats. With these changes, I think we now have print/read consistency for double-double-float numbers.
-