diff options
author | Andy Wingo <wingo@pobox.com> | 2018-05-14 13:21:16 +0200 |
---|---|---|
committer | Andy Wingo <wingo@pobox.com> | 2018-05-14 14:04:59 +0200 |
commit | 77e7bea4c25431f39bb8ba7f900e35ef008ea00b (patch) | |
tree | 7130bb7993de87be32f1add75d084e6734bf21fd /module/system/xref.scm | |
parent | 667d808f5841dd99341f220b88f15ab5ed26390a (diff) | |
download | guile-77e7bea4c25431f39bb8ba7f900e35ef008ea00b.tar.gz |
Remove backend support for cached-module-box et al.
* module/language/cps/compile-bytecode.scm (compile-function): Remove
unused assemblers for cached-module-box, cached-toplevel-box, and
cache-current-module!.
* module/language/cps/effects-analysis.scm (&cache): New memory kind.
(cache-current-module!): Set &cache memory, not &box.
(resolve-module, lookup-module, cache-ref, cache-set!): Add effect
annotations.
* module/system/vm/assembler.scm (emit-cache-current-module!)
(emit-cached-toplevel-box, emit-cached-module-box): Remove
assemblers.
* module/system/vm/disassembler.scm (code-annotation, fold-code-range):
Remove special cases for toplevel-box and module-box.
* module/system/xref.scm (program-callee-rev-vars): Add a FIXME for the
future.
Diffstat (limited to 'module/system/xref.scm')
-rw-r--r-- | module/system/xref.scm | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/module/system/xref.scm b/module/system/xref.scm index 2b943fdd9..e335f9481 100644 --- a/module/system/xref.scm +++ b/module/system/xref.scm @@ -1,4 +1,4 @@ -;;;; Copyright (C) 2009, 2010, 2013 Free Software Foundation, Inc. +;;;; Copyright (C) 2009, 2010, 2013, 2018 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 @@ -56,6 +56,10 @@ (fold (lambda (prog out) (fold-program-code (lambda (elt out) + ;; FIXME: Update for change to top-level variable + ;; resolution. Need to build a per-program map of + ;; IP->SLOT->CONSTANT to be able to resolve operands to + ;; resolve-module and lookup intrinsic calls. (match elt (('toplevel-box dst var mod sym bound?) (let ((var (or var (and mod (module-variable mod sym))))) |