summaryrefslogtreecommitdiff
path: root/make-target-2.sh
diff options
context:
space:
mode:
authorDouglas Katzman <dougk@google.com>2017-05-03 16:38:25 -0400
committerDouglas Katzman <dougk@google.com>2017-05-03 16:45:07 -0400
commite8bfd77b0c0d68465155dd7ebbfa4254a7e970b9 (patch)
tree970c61809d11d83cb48dfe2700f718cafeb936e8 /make-target-2.sh
parent967bad690c7a250fdc1f7eb1b3ce2a80700c02d4 (diff)
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.
Diffstat (limited to 'make-target-2.sh')
-rwxr-xr-xmake-target-2.sh1
1 files changed, 1 insertions, 0 deletions
diff --git a/make-target-2.sh b/make-target-2.sh
index 93497f0a7..cedc1baa6 100755
--- a/make-target-2.sh
+++ b/make-target-2.sh
@@ -49,6 +49,7 @@ if [ "$1" != --load ]; then
fi
echo //doing warm init - load and dump phase
echo '(load "loader.lisp") (load-sbcl-file "make-target-2-load.lisp" nil)
+(setf (extern-alien "gc_coalesce_string_literals" char) 1)
(sb-ext:save-lisp-and-die "output/sbcl.core")' | \
./src/runtime/sbcl \
--core output/cold-sbcl.core \