Commit [f68d0f] Maximize Restore History

1.0.1.15:

Add RESTART-FRAME command to the debugger, reduce the runtime cost
of the debug catch tags.

* Change the debugger catch tag to funcall the thrown value, rather
than just returning it.
* Make RETURN throw a thunk that returns an appropriate value,
and RESTART-FRAME throw a thunk that calls the same function again
with the same arguments.
* Always emit the debug catch with a static tag, rather than consing
up a new tag every time the catch is entered.
* To ensure that the tags are unique, the RETURN and RESTART-FRAME
commands will first cons up a new tag, find the right catch-block
structure on the stack, assign the new tag to the tag slot, and
then throw the new tag.
* Don't add the catch tags to some uninteresting (usually
compiler-generated) functions, to reduce the compilation speed
hit.

Juho Snellman Juho Snellman 2007-01-09

changed doc/manual/debugger.texinfo
changed src/code/debug-int.lisp
changed src/code/debug.lisp
changed src/compiler/ir1-translators.lisp
changed src/compiler/ir1tran-lambda.lisp
changed src/compiler/main.lisp
changed NEWS
changed OPTIMIZATIONS
changed package-data-list.lisp-expr
changed version.lisp-expr
doc/manual/debugger.texinfo Diff Switch to side-by-side view
Loading...
src/code/debug-int.lisp Diff Switch to side-by-side view
Loading...
src/code/debug.lisp Diff Switch to side-by-side view
Loading...
src/compiler/ir1-translators.lisp Diff Switch to side-by-side view
Loading...
src/compiler/ir1tran-lambda.lisp Diff Switch to side-by-side view
Loading...
src/compiler/main.lisp Diff Switch to side-by-side view
Loading...
NEWS Diff Switch to side-by-side view
Loading...
OPTIMIZATIONS Diff Switch to side-by-side view
Loading...
package-data-list.lisp-expr Diff Switch to side-by-side view
Loading...
version.lisp-expr Diff Switch to side-by-side view
Loading...