mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-05-01 12:20:26 +02:00
add scm_frame_address / frame-address
* libguile/frames.h: * libguile/frames.c (scm_frame_address): New accessor, returns a frame's fp.
This commit is contained in:
parent
1bc1800ffa
commit
2e30f3989c
2 changed files with 11 additions and 0 deletions
|
@ -203,6 +203,16 @@ SCM_DEFINE (scm_frame_local_set_x, "frame-local-set!", 3, 0, 0,
|
||||||
}
|
}
|
||||||
#undef FUNC_NAME
|
#undef FUNC_NAME
|
||||||
|
|
||||||
|
SCM_DEFINE (scm_frame_address, "frame-address", 1, 0, 0,
|
||||||
|
(SCM frame),
|
||||||
|
"Return the frame pointer for @var{frame}.")
|
||||||
|
#define FUNC_NAME s_scm_frame_address
|
||||||
|
{
|
||||||
|
SCM_VALIDATE_VM_FRAME (1, frame);
|
||||||
|
return scm_from_ulong ((unsigned long) SCM_VM_FRAME_FP (frame));
|
||||||
|
}
|
||||||
|
#undef FUNC_NAME
|
||||||
|
|
||||||
SCM_DEFINE (scm_frame_instruction_pointer, "frame-instruction-pointer", 1, 0, 0,
|
SCM_DEFINE (scm_frame_instruction_pointer, "frame-instruction-pointer", 1, 0, 0,
|
||||||
(SCM frame),
|
(SCM frame),
|
||||||
"")
|
"")
|
||||||
|
|
|
@ -114,6 +114,7 @@ SCM_API SCM scm_frame_source (SCM frame);
|
||||||
SCM_API SCM scm_frame_num_locals (SCM frame);
|
SCM_API SCM scm_frame_num_locals (SCM frame);
|
||||||
SCM_API SCM scm_frame_local_ref (SCM frame, SCM index);
|
SCM_API SCM scm_frame_local_ref (SCM frame, SCM index);
|
||||||
SCM_API SCM scm_frame_local_set_x (SCM frame, SCM index, SCM val);
|
SCM_API SCM scm_frame_local_set_x (SCM frame, SCM index, SCM val);
|
||||||
|
SCM_API SCM scm_frame_address (SCM frame);
|
||||||
SCM_API SCM scm_frame_instruction_pointer (SCM frame);
|
SCM_API SCM scm_frame_instruction_pointer (SCM frame);
|
||||||
SCM_API SCM scm_frame_return_address (SCM frame);
|
SCM_API SCM scm_frame_return_address (SCM frame);
|
||||||
SCM_API SCM scm_frame_mv_return_address (SCM frame);
|
SCM_API SCM scm_frame_mv_return_address (SCM frame);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue