Speed up SIGNAL via dx type check functions in %HANDLER-BIND
commit248e585a207eea513a45316eacccc4a93bb7ff35
authorJan Moringen <jmoringe@techfak.uni-bielefeld.de>
Thu, 24 Apr 2014 00:38:56 +0000 (24 02:38 +0200)
committerJan Moringen <jmoringe@techfak.uni-bielefeld.de>
Sun, 12 Oct 2014 09:36:34 +0000 (12 11:36 +0200)
tree73988a955e48d727583571a3e2807e1819350c1f
parentfbaa17ad3e00582fb2ed9d224a2f140e3ed8f85c
Speed up SIGNAL via dx type check functions in %HANDLER-BIND

This avoids the type specifier parsing and out-of-line TYPEP overhead of
the previous implementation which stored type specifiers
in *HANDLER-CLUSTERS*.

Another benefit are compile-time warnings about undefined condition
types in %HANDLER-BIND clauses.

Unfortunately, %HANDLER-BIND expands to less compact code.
src/code/cold-error.lisp
src/code/defboot.lisp
src/code/target-error.lisp
tests/condition.pure.lisp