[pypy-svn] r47630 - pypy/dist/pypy/rpython/memory/gc

arigo at codespeak.net arigo at codespeak.net
Sat Oct 20 12:45:51 CEST 2007


Author: arigo
Date: Sat Oct 20 12:45:50 2007
New Revision: 47630

Modified:
   pypy/dist/pypy/rpython/memory/gc/generation.py
   pypy/dist/pypy/rpython/memory/gc/semispace.py
Log:
A few forgotten direct references to 'typeid'.  Renamed the field
to a shorter 'tid' to make sure no one uses it directly any more.


Modified: pypy/dist/pypy/rpython/memory/gc/generation.py
==============================================================================
--- pypy/dist/pypy/rpython/memory/gc/generation.py	(original)
+++ pypy/dist/pypy/rpython/memory/gc/generation.py	Sat Oct 20 12:45:50 2007
@@ -205,7 +205,7 @@
             if not self.is_forwarded(obj):
                 continue # weakref itself dies
             obj = self.get_forwarding_address(obj)
-            offset = self.weakpointer_offset(self.header(obj).typeid)
+            offset = self.weakpointer_offset(self.get_type_id(obj))
             pointing_to = (obj + offset).address[0]
             if self.is_in_nursery(pointing_to):
                 if self.is_forwarded(pointing_to):

Modified: pypy/dist/pypy/rpython/memory/gc/semispace.py
==============================================================================
--- pypy/dist/pypy/rpython/memory/gc/semispace.py	(original)
+++ pypy/dist/pypy/rpython/memory/gc/semispace.py	Sat Oct 20 12:45:50 2007
@@ -19,7 +19,7 @@
     inline_simple_malloc = True
 
     HDR = lltype.Struct('header', ('forw', llmemory.Address),
-                                  ('typeid', lltype.Signed))
+                                  ('tid', lltype.Signed))
 
     def __init__(self, AddressLinkedList, space_size=4096,
                  max_space_size=sys.maxint//2+1,
@@ -277,18 +277,18 @@
         return llmemory.cast_adr_to_ptr(addr, lltype.Ptr(self.HDR))
 
     def get_type_id(self, addr):
-        return self.header(addr).typeid
+        return self.header(addr).tid
 
     def init_gc_object(self, addr, typeid):
         hdr = llmemory.cast_adr_to_ptr(addr, lltype.Ptr(self.HDR))
         #hdr.forw = NULL   -- unneeded, the space is initially filled with zero
-        hdr.typeid = typeid
+        hdr.tid = typeid
 
     def init_gc_object_immortal(self, addr, typeid):
         # immortal objects always have forward to themselves
         hdr = llmemory.cast_adr_to_ptr(addr, lltype.Ptr(self.HDR))
         hdr.forw = addr + self.gcheaderbuilder.size_gc_header
-        hdr.typeid = typeid
+        hdr.tid = typeid
 
     def deal_with_objects_with_finalizers(self):
         # walk over list of objects with finalizers
@@ -314,7 +314,7 @@
             if not self.is_forwarded(obj):
                 continue # weakref itself dies
             obj = self.get_forwarding_address(obj)
-            offset = self.weakpointer_offset(self.header(obj).typeid)
+            offset = self.weakpointer_offset(self.get_type_id(obj))
             pointing_to = (obj + offset).address[0]
             if pointing_to:
                 if self.is_forwarded(pointing_to):
@@ -344,8 +344,7 @@
             while self.run_finalizers.non_empty():
                 #print "finalizer"
                 obj = self.run_finalizers.pop()
-                hdr = self.header(obj)
-                finalizer = self.getfinalizer(hdr.typeid)
+                finalizer = self.getfinalizer(self.get_type_id(obj))
                 finalizer(obj)
         finally:
             self.finalizer_lock_count = 0



More information about the Pypy-commit mailing list