1.0.4.55: Optimized REPLACE and UB*-BASH-COPY routines
authorNathan Froyd <froydnj@cs.rice.edu>
Tue, 10 Apr 2007 13:50:43 +0000 (13:50 +0000)
committerNathan Froyd <froydnj@cs.rice.edu>
Tue, 10 Apr 2007 13:50:43 +0000 (13:50 +0000)
commit8cbd7fc0f27222a778ce61bae7d943a5081362cc
treed0e485b53255c640e7dc7df144b6e75578a3fd3b
parent1cf1afff10cfc48a2f4a26fd4533531081602219
1.0.4.55: Optimized REPLACE and UB*-BASH-COPY routines

* Expand simple cases of UB*-BASH-COPY inline to avoid full call
  overhead and generate better code generally;
* Handle more cases of REPLACE; we now optimize REPLACE on all
  simple specialized array types (only element types <= n-word-bits
  are handled generally, though);
* Use a single COPY-SEQ and SUBSEQ transform rather than one per
  specialized array type; generate inline copies for these too
  when possible;
* Tests;
* Backend cleanup: introduce a FIND-SAETP to eliminate duplicate code;
* Backend cleanup: change %{SET-,}VECTOR-RAW-BITS on x86 to use
  the *-WITH-OFFSET machinery.
NEWS
package-data-list.lisp-expr
src/compiler/generic/vm-array.lisp
src/compiler/generic/vm-fndb.lisp
src/compiler/generic/vm-tran.lisp
src/compiler/seqtran.lisp
src/compiler/x86/array.lisp
tests/seq.impure.lisp
version.lisp-expr