- Feb 19, 2018
-
-
Raymond Toy authored
Fixes #61 and #62. The `ARRAY-HAS-FILL-POINTER-P` and `ARRAY-DISPLACEMENT` functions are declared inline and the compiler tries to constant-fold these inlined functions operating on simple arrays. Thus don't allow the compiler to constant-fold calls to `%ARRAY-FILL-POINTER-P`. This is normally protected by a call to `ARRAY-HEADER-P`, but when it's inlined, the compiler tries to constant-fold `%ARRAY-FILL-POINTER-P` on an array without such a slot. Likewise `ARRAY-DISPLACEMENT` calls `%ARRAY-DISPLACED-P`, `%ARRAY-DATA-VECTOR`, and `%ARRAY-DISPLACEMENT`, and the calls are protected by `ARRAY-HEADER-P`. So don't constant-fold these either. Maybe we could also make CONSTANT-FOLD-CALL be smarter about this? * src/compiler/generic/objdef.lisp * Remove flushable from these ref-trans methods. * src/general-info/release-21d.md * Update * tests/issues.lisp * Add tests from the bug reports.
-
- May 15, 2013
-
-
Raymond Toy authored
src/compiler/generic/objdef.lisp:: src/compiler/generic/utils.lisp:; src/compiler/generic/vm-macs.lisp:: src/compiler/sparc/c-callback.lisp:: src/compiler/sparc/parms.lisp:: When export lost its compile-time effects and became a normal function, the exports in many files no longer took affect while compiling the file. This change makes the compile-time effects happen as before in selected files. With this change, the sparc port can be cross-compiled from x86 again. src/tools/cross-scripts/cross-x86-sparc.lisp:: Need to frob CHAR-BYTES, which is needed by BYTE-BASH-COPY. .
-
- Nov 04, 2011
-
-
Raymond Toy authored
-
- Sep 25, 2011
-
-
Raymond Toy authored
entries with just the file path, removing the revision number, date, author and state. The actual information is now computed during compilation and stored in the fasl itself. (See ticket:48.)
-
- Apr 19, 2010
-
-
rtoy authored
-
- Mar 19, 2010
-
-
rtoy authored
boot-2010-02-1 as the bootstrap file. You should probably also use the new -P option for build.sh to generate and update the po files while building.
-
- Feb 06, 2008
-
-
rtoy authored
SIMPLE-ARRAY-DOUBLE-DOUBLE-FLOAT-TYPE, and SIMPLE-ARRAY-COMPLEX-DOUBLE-DOUBLE-FLOAT-TYPE so that during cross-compile world-build, we create internals.h correctly.
-
- Jun 30, 2006
-
-
rtoy authored
The merge is from the tag "double-double-irrat-end". The double-double branch is now obsolete. The code should build without double-double support (tested on sparc) as well as build with double-double support (tested also on sparc).
-
- Apr 08, 2005
-
-
rtoy authored
function-pointer and instance-pointer tags were swapped compared to all other ports. Remove code for ppc-fun-hack.
-
- Sep 08, 2004
-
-
rtoy authored
boot6-sxhash to bootstrap this change for ppc.
-
- Jul 25, 2004
-
-
pmai authored
This includes various fixes from SBCL and other sources to the PPC backend. It also does away with Gary Byers' renumbering of the type tags for function and instance pointers, which allowed for a slightly clever and presumably faster function calling convention. These changes have been conditionalized out with the PPC-FUN-HACK conditional, so that we might revisit the changes in the future. The current port has only been tested without PPC-FUN-HACK, but this might change.
-
- May 24, 2004
-
-
cwang authored
-
- May 18, 2004
- May 17, 2004
-
-
rtoy authored
zero on creation, and is computed when sxhash is called, which is then cached.
-
- May 15, 2004
-
-
rtoy authored
instead of a random value, just like on sparc.
-
- May 14, 2004
-
-
rtoy authored
itself. Only for sparc currently. Doesn't lazily compute the symbol hash yet. Simple test shows a 5% increase in compilation speed, despite making make-symbol significantly slower. * src/code/hash-new.lisp (internal-sxhash): Use the symbol-hash slot instead of computing the hash value. * src/compiler/generic/new-genesis.lisp (allocate-symbol): Write out the sxhash value of the symbol into the symbol-hash slot. * src/compiler/globaldb.lisp (info-hash): Update to use the symbol hash instead of computing the sxhash. * src/code/symbol.lisp (make-symbol): Compute the symbol hash when creating the symbol. * src/compiler/sparc/cell.lisp ((symbol-hash)): Add vop to extract out the symbol hash from a symbol. * src/compiler/generic/objdef.lisp: Rename the unused slot to hash, so we can make it the symbol hash.
-
- May 11, 2004
-
-
rtoy authored
adds the mark_bit slot to weak-pointers and eliminates the n-squared performance problem with scav_weak_pointer.
-
- Jun 18, 2003
-
-
gerd authored
2003-06-17. * src/compiler/generic/objdef.lisp (weak-pointer): Add setters for value and broken. * src/code/weak.lisp (setf weak-pointer-value) (c::%set-weak-pointer-value, c::%set-weak-pointer-value): New functions.
-
gerd authored
package COMMON-LISP which LISP uses, so that COMMON-LISP no longer has the non-ANSI nickname LISP. To bootstrap, use boot13.lisp as target:bootstrap.lisp with pmai's build scripts, and do a full compile. * src/bootfiles/18e/boot13.lisp: Change for all the package changes. * src/code/exports.lisp: New package common-lisp, which lisp uses. * src/tools/worldload.lisp: * src/tools/setup.lisp: Use cl-user instead of user. Use lisp:: instead of cl::. * src/tools/worldcom.lisp: * src/tools/snapshot-update.lisp: * src/tools/pclcom.lisp: * src/tools/mk-lisp: * src/tools/hemcom.lisp: * src/tools/config.lisp: * src/tools/comcom.lisp: * src/tools/clxcom.lisp: * src/tools/clmcom.lisp: * src/pcl/defsys.lisp: * src/motif/lisp/initial.lisp: * src/interface/initial.lisp: * src/hemlock/lispmode.lisp (setup-lisp-mode): Use cl-user instead of user. * src/code/save.lisp (assert-user-package): * src/code/print.lisp (%with-standard-io-syntax): Find cl-user package instead of user. * src/code/package.lisp (package-locks-init): Add lisp. (package-init): Don't add user nickname to cl-user. * src/code/ntrace.lisp (*trace-encapsulate-package-names*): Add common-lisp. * src/code/hash.lisp (toplevel): * src/code/hash-new.lisp (toplevel): Use in-package :lisp instead of :common-lisp. * src/code/float-trap.lisp (sigfpe-handler): Don't qualify floating-point-inexact with ext:. * src/pcl/simple-streams/strategy.lisp (sc): * src/pcl/simple-streams/null.lisp (null-read-char): * src/pcl/simple-streams/internal.lisp (allocate-buffer) (free-buffer): * src/pcl/simple-streams/impl.lisp (%check, %read-line) (%peek-char, %read-byte): * src/pcl/simple-streams/file.lisp (open-file-stream) (device-close): * src/pcl/simple-streams/classes.lisp (simple-stream) (device-close): * src/pcl/macros.lisp (toplevel): * src/pcl/braid.lisp (lisp::sxhash-instance): * src/pcl/env.lisp (toplevel): * src/compiler/generic/objdef.lisp (symbol-hash): * src/code/stream.lisp (read-sequence, write-sequence): * src/code/macros.lisp (defmacro, deftype): * src/code/eval.lisp (interpreted-function): * src/code/defstruct.lisp (defstruct): * src/code/debug.lisp (debug-eval-print): Use lisp:: instead of cl::.
-
- Sep 04, 2002
-
-
toy authored
and LOWTAG-LIMIT since they're used elsewhere.
-
- Sep 03, 2002
-
-
toy authored
from compiler/generic/objdef.lisp to compiler/sparc/parms.lisp because cross-compiling on sparc loads parms after objdef, and parms uses these symbols. o Added TARGET-FOREIGN-LINKAGE-SPACE-START and TARGET-FOREIGN-LINKAGE-ENTRY-SIZE to parms.lisp to support the new linkage table stuff. (Not yet implemented on sparc, so these values may be wrong.)
-
- Feb 11, 2001
-
-
dtc authored
-
- Jul 24, 1998
-
-
dtc authored
remove unnecessary conditionals.
-
- Mar 21, 1998
-
-
dtc authored
-
- Jan 17, 1998
-
-
dtc authored
catch-block objects on the x86 port.
-
- Nov 04, 1997
-
-
dtc authored
-
dtc authored
common binaries to be run on both: * The immediate-stack storage class has been removed, this is unnecessary as the descriptor-stack SC can be used. It may have once been part of some GC stragety to reduce the number of stack slots that needed to be noted for a GC. * The object allocation has been abstracted and cleaned up. This should produce slightly faster smaller code with CGC, and can be compiled to support inline allocation with GENCGC. CGC compiled code will run under GENCGC, and GENCGC binaries that don't use inline allocation will run under CGC. * A random hash is now placed in the unused symbol object slot (the symbol-hash slot). This saves flushing the info cache at each GC, and may have other uses for symbol based hash tables. Should help MP safety. * Common set of static symbols used by both CGC and GENCGC. * Corrections to the stack-ref VOP; now returns lisp objects not unsigned numbers. Required some patches to debug-int. * Inline unsigned/signed byte 32 to bignum allocation enabled. * Support for the x86 xadd instruction applied to instance slot and symbol values - may be handy for some MP code. * Bump up the FASL file version from 1 to 2.
-
- Nov 01, 1997
-
-
dtc authored
types. Adds storage classes to the backend for these so they can be stored in registers or on the stack without consing; new primitive types etc. Also adds (simple-array (complex {single,double}-float)) array types to avoid consing and speed vectors operations. All these changes are conditional on the :complex-float feature. More work is needed to exploit these changes: improving the type dispatch in the various function; maybe compiler transforms or more VOPs to handle common functions inline.
-
- Apr 01, 1997
-
-
dtc authored
(signed-byte 16), (signed-byte 30), (signed-byte 32). These patches include the general support and the x86 backend support; more to follow. The important changes are conditional on the :signed-array feature so shouldn't affect the source without this feature. This work has been driven by Raymond Toy.
-
- Oct 31, 1994
-
-
ram authored
-
- Apr 06, 1994
-
-
hallgren authored
-
- Feb 11, 1994
-
-
cvs2git authored
-
- Aug 27, 1993
- May 18, 1993
-
-
wlott authored
are created, this is filled in with a random value. Things that want a fast hashing of symbols but don't want to depend on the address can use this value.
-
- May 13, 1993
-
-
ram authored
-
- May 07, 1993
-
-
wlott authored
Directly translate make-weak-pointer instead of %make-weak-pointer. Added scavenger-hook stuff. Changed some mutator slots for the gengc system.
-
- Mar 13, 1993
-
-
ram authored
-