More efficient representation of compilation policies.
commitf313cf0284432dc0fd53648740c499ab9ea9195f
authorDouglas Katzman <dougk@google.com>
Mon, 18 May 2015 06:52:41 +0000 (18 02:52 -0400)
committerDouglas Katzman <dougk@google.com>
Mon, 18 May 2015 07:08:29 +0000 (18 03:08 -0400)
tree8c01df1d0169415263cb427b70bbdc6ff63a3cf9
parentc502d6c344451f0dbe08872169565b8b8e995b87
More efficient representation of compilation policies.

Making POLICY a struct rather than list avoids sorting
and is a huge win for expressions involving the POLICY macro.
Various tests including self-rebuild showed an overall speedup
in COMPILE-FILE of around 3.5%
20 files changed:
NEWS
contrib/asdf/uiop.lisp
contrib/sb-cltl2/env.lisp
src/code/defmacro.lisp
src/code/describe-policy.lisp
src/code/describe.lisp
src/code/full-eval.lisp
src/code/macros.lisp
src/compiler/ir1-translators.lisp
src/compiler/ir1opt.lisp
src/compiler/ir1util.lisp
src/compiler/lexenv.lisp
src/compiler/ltv.lisp
src/compiler/main.lisp
src/compiler/node.lisp
src/compiler/policies.lisp
src/compiler/policy.lisp
src/compiler/proclaim.lisp
src/compiler/srctran.lisp
src/pcl/compiler-support.lisp