diff options
author | Andy Wingo <wingo@pobox.com> | 2014-04-14 14:54:14 +0200 |
---|---|---|
committer | Andy Wingo <wingo@pobox.com> | 2014-04-14 14:54:14 +0200 |
commit | 44d9705464d8f54111ed8a8a90d76f0c774e7184 (patch) | |
tree | fd3b34a48f7581829d7b04a639860cf0da550d36 /libguile/frames.h | |
parent | 2ad91e6b34f8aa204f4cd64d9578cc218a35041d (diff) | |
download | guile-44d9705464d8f54111ed8a8a90d76f0c774e7184.tar.gz |
Refactor to frames code
* libguile/frames.h:
* libguile/frames.c (scm_c_frame_previous): New internal helper.
(scm_frame_previous): Use the helper.
(RELOC): Take kind and low-level frame args separately. Adapt
callers.
(frame_stack_base, frame_offset): New helpers.
(scm_i_frame_offset, scm_i_frame_stack_base): Use low-level helpers.
Diffstat (limited to 'libguile/frames.h')
-rw-r--r-- | libguile/frames.h | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/libguile/frames.h b/libguile/frames.h index e48bb48e6..bc3cca956 100644 --- a/libguile/frames.h +++ b/libguile/frames.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2001, 2009, 2010, 2011, 2012, 2013 Free Software Foundation, Inc. +/* Copyright (C) 2001, 2009, 2010, 2011, 2012, 2013, 2014 Free Software Foundation, Inc. * * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public License @@ -171,6 +171,9 @@ SCM_INTERNAL SCM scm_c_make_frame (enum scm_vm_frame_kind vm_frame_kind, void *stack_holder, scm_t_ptrdiff fp_offset, scm_t_ptrdiff sp_offset, scm_t_uint32 *ip); +SCM_INTERNAL int scm_c_frame_previous (enum scm_vm_frame_kind kind, + struct scm_frame *frame); + #endif SCM_API SCM scm_frame_p (SCM obj); |