Similar to change 4bf626, dump STANDARD-OBJECTs using fasl ops, maybe.
commit428fd6f993fd2ede4f6f77f462ba47efef2ca55c
authorDouglas Katzman <dougk@google.com>
Wed, 21 Jan 2015 03:31:25 +0000 (20 22:31 -0500)
committerDouglas Katzman <dougk@google.com>
Wed, 21 Jan 2015 03:31:25 +0000 (20 22:31 -0500)
tree695adb217ea4ef684be2ddf8ccf27d81e54c13a6
parent71e0191458d8ebfb433278c92d731bb421910884
Similar to change 4bf626, dump STANDARD-OBJECTs using fasl ops, maybe.

Given a macro HAIRY that computes a tree of objects returned as literals
in a toplevel defvar such as (DEFVAR *X* (HAIRY)), this change has the
potential to reduce fasl size by 100:1 versus compiling to machine code,
and not just in a contrived case - it reflects how cl-protobufs represents
and stores its metadata after converting from '.proto' language.
In one example, compile time went from 3 minutes down to 2 seconds,
and another, 7 minutes to .5 seconds, depending on interwoven-ness.

Also make some tests more quiet.
src/code/fop.lisp
src/code/target-defstruct.lisp
src/compiler/fopcompile.lisp
src/compiler/main.lisp
tests/dump.impure-cload.lisp
tests/test-util.lisp