[pypy-svn] r59884 - pypy/trunk/pypy/translator/tool
antocuni at codespeak.net
antocuni at codespeak.net
Wed Nov 12 11:49:35 CET 2008
Author: antocuni
Date: Wed Nov 12 11:49:34 2008
New Revision: 59884
Modified:
pypy/trunk/pypy/translator/tool/staticsizereport.py
Log:
put instances of user-defined classes first
Modified: pypy/trunk/pypy/translator/tool/staticsizereport.py
==============================================================================
--- pypy/trunk/pypy/translator/tool/staticsizereport.py (original)
+++ pypy/trunk/pypy/translator/tool/staticsizereport.py Wed Nov 12 11:49:34 2008
@@ -107,6 +107,15 @@
return totalsize, numobjects
def make_report_static_size(database, nodes, grouper, recursive=None):
+ from pypy.rpython.lltypesystem import lltype
+ # sort structs that belongs to user-defined RPython classes first
+ def nodekey(node):
+ if isinstance(node.T, lltype.Struct) and node.T._name.startswith('pypy.'):
+ return (0, node)
+ else:
+ return (1, node)
+
+ nodes = sorted(nodes, key=nodekey)
totalsize, numobjects = group_static_size(database, nodes, grouper, recursive)
l = [(size, key) for key, size in totalsize.iteritems()]
l.sort()
More information about the Pypy-commit
mailing list