diff options
author | Andy Wingo <wingo@pobox.com> | 2013-11-08 18:28:24 +0100 |
---|---|---|
committer | Andy Wingo <wingo@pobox.com> | 2013-11-08 18:28:24 +0100 |
commit | 1c33be992e8120abd20add8021e4d91d226f5b6a (patch) | |
tree | 71f78961b6a29aa1e342049419f402af555e6f20 /module/system/vm/frame.scm | |
parent | 84680d238299c3b2c8be42b16a8be0ff6e02ba5c (diff) | |
download | guile-1c33be992e8120abd20add8021e4d91d226f5b6a.tar.gz |
Remove stack programs, objcode, and the old VM.
* libguile/Makefile.am:
* libguile/vm-i-loader.c:
* libguile/vm-i-scheme.c:
* libguile/vm-i-system.c: Remove the old VM files, and the rules to
build the .i files.
* libguile/vm-engine.c:
* libguile/vm.c: Remove the old VM. Woot!
* libguile/_scm.h (SCM_OBJCODE_COOKIE, SCM_OBJCODE_ENDIANNESS_OFFSET)
(SCM_OBJCODE_WORD_SIZE_OFFSET): Remove.
* libguile/evalext.c (scm_self_evaluating_p): Remove objcode and program
cases.
* libguile/frames.c (scm_frame_num_locals, scm_frame_previous): Remove
program cases.
* libguile/gc.c (scm_i_tag_name): Remove objcode case.
* libguile/goops.c (scm_class_of, create_standard_classes): Remove
objcode and program cases.
* libguile/instructions.h:
* libguile/instructions.c (scm_instruction_list, scm_instruction_p)
(scm_instruction_length, scm_instruction_pops, scm_instruction_pushes)
(scm_instruction_to_opcode, scm_opcode_to_instruction): Remove old VM
code.
* libguile/objcodes.h:
* libguile/objcodes.c: Remove the objcode data type, and handling for
objcode files.
* libguile/print.c: Remove objcode and program printers.
* libguile/procprop.c: Remove program cases.
* libguile/procs.c:
* libguile/programs.h:
* libguile/programs.c: Remove old program code.
* libguile/smob.c: Remove objcodes include.
* libguile/snarf.h: Remove static program defines.
* libguile/stacks.c: Remove program case.
* libguile/tags.h: Remove program and objcode tc7s.
* module/ice-9/session.scm (procedure-arguments)
* module/language/tree-il/analyze.scm (validate-arity)
* module/statprof.scm (get-call-data, procedure=?)
* module/system/vm/frame.scm (frame-bindings)
(frame-call-representation): Remove old program cases.
* module/system/repl/debug.scm (frame->module): Add a FIXME.
* module/system/vm/instruction.scm: Remove old exports.
* module/system/vm/program.scm: Remove old program code.
Diffstat (limited to 'module/system/vm/frame.scm')
-rw-r--r-- | module/system/vm/frame.scm | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/module/system/vm/frame.scm b/module/system/vm/frame.scm index e3b3352d5..ed042face 100644 --- a/module/system/vm/frame.scm +++ b/module/system/vm/frame.scm @@ -31,9 +31,7 @@ (define (frame-bindings frame) (let ((p (frame-procedure frame))) - (if (program? p) - (program-bindings-for-ip p (frame-instruction-pointer frame)) - '()))) + (program-bindings-for-ip p (frame-instruction-pointer frame)))) (define (frame-lookup-binding frame var) (let lp ((bindings (frame-bindings frame))) @@ -90,7 +88,7 @@ (cons (or (false-if-exception (procedure-name p)) p) (cond - ((and (or (program? p) (rtl-program? p)) + ((and (rtl-program? p) (program-arguments-alist p (frame-instruction-pointer frame))) ;; case 1 => (lambda (arguments) |