1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-05-23 04:50:28 +02:00
guile/module
Andy Wingo 581a4eb82b frame-instruction-pointer is absolute; rewrite (system vm coverage)
* libguile/frames.c (scm_frame_source): Instead of assuming that
  scm_frame_procedure is correct, use the IP to get the source.
  (scm_frame_instruction_pointer): Return an absolute value instead of
  assuming that slot 0 is correct.  (It isn't, when preparing for a tail
  call.)

* libguile/programs.h:
* libguile/programs.c (scm_find_source_for_addr): New internal helper.

* module/system/repl/debug.scm (print-registers): Readably print
  absolute instruction pointers.

* module/system/vm/coverage.scm: Complete rewrite to use absolute IP's.
  We can't assume that frame-procedure is cheap if it is correct, or
  correct if it is cheap.  Anyway using the address is better anyway.
  (coverage-data->lcov): Disable per-function info temporarily.
  (loaded-modules, module-procedures, closest-source-line)
  (closed-over-procedures): Remove these.  Instead of going from
  procedures to source info, now we go from ELF image to source info.

* module/system/vm/debug.scm (debug-context-length): New interface.

* module/system/vm/program.scm (source-for-addr): New internal helper.
2013-11-07 23:03:45 +01:00
..
ice-9 Eval evaluates initializers before creating environment ribs. 2013-11-03 12:16:49 +01:00
language Source information goes on the $continue, not the $cont. 2013-11-07 10:32:21 +01:00
oop Merge remote-tracking branch 'origin/stable-2.0' 2013-01-31 11:52:42 +01:00
rnrs Merge remote-tracking branch 'origin/stable-2.0' 2013-08-11 22:46:22 -04:00
scripts Default to compiling to RTL 2013-10-31 14:17:30 +01:00
srfi Merge remote-tracking branch 'origin/stable-2.0' 2013-09-13 00:24:04 -04:00
sxml Remove duplicate definitions of call/ec' and let/ec'. 2013-04-06 15:40:19 +02:00
system frame-instruction-pointer is absolute; rewrite (system vm coverage) 2013-11-07 23:03:45 +01:00
texinfo texinfo plain-text: Use match' for stexi->plain-text'. 2013-03-22 22:09:05 +01:00
web Merge remote-tracking branch 'origin/stable-2.0' 2013-09-13 00:24:04 -04:00
Makefile.am New pass: elide-values 2013-10-26 22:30:54 +02:00
rnrs.scm Add missing R6RS `open-file-input/output-port' procedure 2012-11-12 20:47:57 +01:00
statprof.scm Fix statprof-proc-call-data for recent changes 2013-10-18 11:47:05 +02:00
texinfo.scm texinfo: Recognize `@:'. 2013-03-21 18:52:29 +01:00