Coalesce constant strings more aggressively maybe.
commite8bfd77b0c0d68465155dd7ebbfa4254a7e970b9
authorDouglas Katzman <dougk@google.com>
Wed, 3 May 2017 20:38:25 +0000 (3 16:38 -0400)
committerDouglas Katzman <dougk@google.com>
Wed, 3 May 2017 20:45:07 +0000 (3 16:45 -0400)
tree970c61809d11d83cb48dfe2700f718cafeb936e8
parent967bad690c7a250fdc1f7eb1b3ce2a80700c02d4
Coalesce constant strings more aggressively maybe.

Strings eligible to share data are those dumped into a fasl
via FOP-{BASE,CHARACTER}-STRING, and symbol names.
Whether the string is eligible for sharing is noted when allocated.
The actual sharing is deferred until SAVE-LISP-AND-DIE since it
requires an image-wide hashtable of strings.
NEWS
make-target-2.sh
package-data-list.lisp-expr
src/code/fop.lisp
src/code/string.lisp
src/code/symbol.lisp
src/code/target-package.lisp
src/compiler/generic/genesis.lisp
src/compiler/target-disassem.lisp
src/runtime/gc-common.c
src/runtime/gencgc.c