[pypy-svn] r66950 - pypy/branch/asmgcc-mingw32/pypy/translator/c/gcc
afa at codespeak.net
afa at codespeak.net
Tue Aug 18 23:13:12 CEST 2009
Author: afa
Date: Tue Aug 18 23:13:11 2009
New Revision: 66950
Modified:
pypy/branch/asmgcc-mingw32/pypy/translator/c/gcc/trackgcroot.py
Log:
Start parsing the assembler code.
mingw32 format is very similar to darwin.
Modified: pypy/branch/asmgcc-mingw32/pypy/translator/c/gcc/trackgcroot.py
==============================================================================
--- pypy/branch/asmgcc-mingw32/pypy/translator/c/gcc/trackgcroot.py (original)
+++ pypy/branch/asmgcc-mingw32/pypy/translator/c/gcc/trackgcroot.py Tue Aug 18 23:13:11 2009
@@ -188,8 +188,10 @@
if functionlines:
yield in_function, functionlines
+ _find_functions_mingw32 = _find_functions_darwin
+
def process(self, iterlines, newfile, entrypoint='main', filename='?'):
- if self.format == 'darwin':
+ if self.format in ('darwin', 'mingw32'):
entrypoint = '_' + entrypoint
for in_function, lines in self.find_functions(iterlines):
if in_function:
@@ -232,6 +234,9 @@
elif format == 'darwin':
match = r_functionstart_darwin.match(lines[0])
funcname = '_'+match.group(1)
+ elif format == 'mingw32':
+ match = r_functionstart_darwin.match(lines[0])
+ funcname = '_'+match.group(1)
else:
assert False, "unknown format: %s" % format
@@ -1107,6 +1112,8 @@
break
if sys.platform == 'darwin':
format = 'darwin'
+ elif sys.platform == 'win32':
+ format = 'mingw32'
else:
format = 'elf'
tracker = GcRootTracker(verbose=verbose, shuffle=shuffle, format=format)
More information about the Pypy-commit
mailing list