[pypy-svn] r49714 - pypy/branch/pypy-gc-traceopt/rpython/memory/gc
arigo at codespeak.net
arigo at codespeak.net
Thu Dec 13 14:12:47 CET 2007
Author: arigo
Date: Thu Dec 13 14:12:47 2007
New Revision: 49714
Modified:
pypy/branch/pypy-gc-traceopt/rpython/memory/gc/base.py
Log:
Merge of r49713 from the trunk.
Modified: pypy/branch/pypy-gc-traceopt/rpython/memory/gc/base.py
==============================================================================
--- pypy/branch/pypy-gc-traceopt/rpython/memory/gc/base.py (original)
+++ pypy/branch/pypy-gc-traceopt/rpython/memory/gc/base.py Thu Dec 13 14:12:47 2007
@@ -116,19 +116,18 @@
callback(obj + offsets[i], arg)
i += 1
if self.has_gcptr_in_varsize(typeid):
- offset = self.varsize_offset_to_variable_part(
- typeid)
+ item = obj + self.varsize_offset_to_variable_part(typeid)
length = (obj + self.varsize_offset_to_length(typeid)).signed[0]
offsets = self.varsize_offsets_to_gcpointers_in_var_part(typeid)
itemlength = self.varsize_item_sizes(typeid)
i = 0
while i < length:
- item = obj + offset + itemlength * i
j = 0
while j < len(offsets):
callback(item + offsets[j], arg)
j += 1
i += 1
+ item += itemlength
_slow_trace._annspecialcase_ = 'specialize:arg(3)'
More information about the Pypy-commit
mailing list