summaryrefslogtreecommitdiff
path: root/libguile/frames.h
diff options
context:
space:
mode:
authorAndy Wingo <wingo@pobox.com>2014-04-16 19:20:42 +0200
committerAndy Wingo <wingo@pobox.com>2014-04-16 19:20:42 +0200
commit18aa6da21e4f644878021e920bf88644f2bcc6f2 (patch)
tree91db7e9198677beb676719f61d5b6432d1bcab52 /libguile/frames.h
parent73fc4e73e40d555431156ea486dd7fcff63bcad6 (diff)
downloadguile-18aa6da21e4f644878021e920bf88644f2bcc6f2.tar.gz
Remove SCM_FRAME_PROGRAM
* libguile/frames.h: Remove SCM_FRAME_PROGRAM, now unused.
Diffstat (limited to 'libguile/frames.h')
-rw-r--r--libguile/frames.h21
1 files changed, 0 insertions, 21 deletions
diff --git a/libguile/frames.h b/libguile/frames.h
index 394fddc74..31f86345f 100644
--- a/libguile/frames.h
+++ b/libguile/frames.h
@@ -110,27 +110,6 @@ struct scm_vm_frame
#define SCM_FRAME_NUM_LOCALS(fp, sp) \
((sp) + 1 - &SCM_FRAME_LOCAL (fp, 0))
-/* Currently (November 2013) we keep the procedure and arguments in
- their slots for the duration of the procedure call, regardless of
- whether the values are live or not. This allows for backtraces that
- show the closure and arguments. We may allow the compiler to relax
- this restriction in the future, if the user so desires. This would
- conserve stack space and make GC more precise. We would need better
- debugging information to do that, however.
-
- Even now there is an exception to the rule that slot 0 holds the
- procedure, which is in the case of tail calls. The compiler will
- emit code that shuffles the new procedure and arguments into position
- before performing the tail call, so there is a window in which
- SCM_FRAME_PROGRAM does not correspond to the program being executed.
-
- The moral of the story is to use the IP in a frame to determine what
- procedure is being called. It is only appropriate to use
- SCM_FRAME_PROGRAM in the prologue of a procedure call, when you know
- it must be there. */
-
-#define SCM_FRAME_PROGRAM(fp) (SCM_FRAME_LOCAL (fp, 0))
-
/*
* Heap frames