1.0.43.1: better handling of complex array types in fill-pointer ops
authorNikodemus Siivola <nikodemus@random-state.net>
Thu, 30 Sep 2010 07:03:25 +0000 (07:03 +0000)
committerNikodemus Siivola <nikodemus@random-state.net>
Thu, 30 Sep 2010 07:03:25 +0000 (07:03 +0000)
commit0c0d8909984b5b33bb6b59b350b2d5cee6dc1715
tree48c0863f4415d16363d9d3f77bef76c61ac1b1d1
parenta7afb656dbe6acac16499a4c81e8f5d03a784a15
1.0.43.1: better handling of complex array types in fill-pointer ops

 Derive the fact that the result of MAKE-ARRAY is (NOT SIMPLE-ARRAY)
 when possible.

 Instead of DEFOPTIMIZERs asserting that various functions need a
 complex array, put the right type in the DEFKNOWNs instead.

 Also remove a few of redundant typechecks: FILL-POINTER ->
 ARRAY-HAS-FILL-POINTER call path does all the checks any of the other
 operations need.

 Fixes lp#309130.
NEWS
package-data-list.lisp-expr
src/code/array.lisp
src/compiler/array-tran.lisp
src/compiler/fndb.lisp
src/compiler/generic/vm-type.lisp
tests/compiler.pure.lisp
version.lisp-expr