diff lisp/emacs-lisp/find-gc.el @ 64403:db69241fec2b

(find-gc-subrs-callers): Renamed from find-gc-subrs-used. (find-gc-subrs-called): Renamed from subrs-called, and defvar'd.
author Richard M. Stallman <rms@gnu.org>
date Sat, 16 Jul 2005 19:20:50 +0000
parents ce8784010c3c
children 5b1a238fcbb4 187d6a1f84f7
line wrap: on
line diff
--- a/lisp/emacs-lisp/find-gc.el	Sat Jul 16 19:15:35 2005 +0000
+++ b/lisp/emacs-lisp/find-gc.el	Sat Jul 16 19:20:50 2005 +0000
@@ -34,8 +34,14 @@
 
 (defvar find-gc-source-directory)
 
-(defvar find-gc-subrs-used nil
-  "List of subrs used so far in GC testing.")
+(defvar find-gc-subrs-callers nil
+  "Alist of users of subrs, from GC testing.
+Each entry has the form (FUNCTION . FUNCTIONS-THAT-CALL-IT).")
+
+(defvar find-gc-subrs-called nil
+  "Alist of subrs called, in GC testing.
+Each entry has the form (FUNCTION . FUNCTIONS-IT-CALLS).")
+
 
 ;;; Functions on this list are safe, even if they appear to be able
 ;;; to call the target.
@@ -84,9 +90,9 @@
 )
 
 (defun trace-unsafe (func)
-  (let ((used (assq func find-gc-subrs-used)))
+  (let ((used (assq func find-gc-subrs-callers)))
     (or used
-	(error "No find-gc-subrs-used for %s" (car find-gc-unsafe-list)))
+	(error "No find-gc-subrs-callers for %s" (car find-gc-unsafe-list)))
     (while (setq used (cdr used))
       (or (assq (car used) find-gc-unsafe-list)
 	  (memq (car used) find-gc-noreturn-list)
@@ -97,8 +103,6 @@
 
 
 
-;;; This produces an a-list of functions in subrs-called.  The cdr of
-;;; each entry is a list of functions which the function in car calls.
 
 (defun trace-call-tree (&optional already-setup)
   (message "Setting up directories...")
@@ -112,7 +116,7 @@
 			      find-gc-source-directory))))
   (save-excursion
     (set-buffer (get-buffer-create "*Trace Call Tree*"))
-    (setq subrs-called nil)
+    (setq find-gc-subrs-called nil)
     (let ((case-fold-search nil)
 	  (files find-gc-source-files)
 	  name entry)
@@ -131,7 +135,7 @@
 						     (match-end 0))))
 		(message "%s : %s" (car files) name)
 		(setq entry (list name)
-		      subrs-called (cons entry subrs-called)))
+		      find-gc-subrs-called (cons entry find-gc-subrs-called)))
 	    (if (looking-at ".*\n?.*\"\\([A-Za-z0-9_]+\\)\"")
 		(progn
 		  (setq name (intern (buffer-substring (match-beginning 1)
@@ -143,17 +147,14 @@
 )
 
 
-;;; This produces an inverted a-list in find-gc-subrs-used.  The cdr of each
-;;; entry is a list of functions that call the function in car.
-
 (defun trace-use-tree ()
-  (setq find-gc-subrs-used (mapcar 'list (mapcar 'car subrs-called)))
-  (let ((ptr subrs-called)
+  (setq find-gc-subrs-callers (mapcar 'list (mapcar 'car find-gc-subrs-called)))
+  (let ((ptr find-gc-subrs-called)
 	p2 found)
     (while ptr
       (setq p2 (car ptr))
       (while (setq p2 (cdr p2))
-	(if (setq found (assq (car p2) find-gc-subrs-used))
+	(if (setq found (assq (car p2) find-gc-subrs-callers))
 	    (setcdr found (cons (car (car ptr)) (cdr found)))))
       (setq ptr (cdr ptr))))
 )