Index: /branches/purify/source/library/elf.lisp
===================================================================
--- /branches/purify/source/library/elf.lisp	(revision 13255)
+++ /branches/purify/source/library/elf.lisp	(revision 13256)
@@ -150,36 +150,18 @@
     (subseq (nsubstitute #\0 #\# (nsubstitute #\. #\Space name)) 1)))
 
-#+x8664-target
-(defx86lapfunction dynamic-dnode ((x arg_z))
-  (movq (% x) (% imm0))
-  (ref-global x86::heap-start arg_y)
-  (subq (% arg_y) (% imm0))
-  (shrq ($ x8664::dnode-shift) (% imm0))
-  (box-fixnum imm0 arg_z)
-  (single-value-return))
-
-#+x8632-target
-(defx8632lapfunction dynamic-dnode ((x arg_z))
-  (movl (% x) (% imm0))
-  (ref-global x86::heap-start arg_y)
-  (subl (% arg_y) (% imm0))
-  (shrl ($ x8632::dnode-shift) (% imm0))
-  (box-fixnum imm0 arg_z)
-  (single-value-return))
+
 
 (defun collect-elf-static-functions ()
   (collect ((functions))
-    (freeze)
+    (purify)
     (block walk
       (let* ((frozen-dnodes (frozen-space-dnodes)))
         (%map-areas (lambda (o)
-                      (when (>= (dynamic-dnode o) frozen-dnodes)
-                        (return-from walk nil))
                       (when (typep o
                                    #+x8664-target 'function-vector
                                    #-x8664-target 'function)
                         (functions (function-vector-to-function o))))
-                    ccl::area-dynamic
-                    ccl::area-dynamic
+                    ccl::area-readonly
+                    ccl::area-readonly
                     )))
     (functions)))
