[pypy-svn] r67847 - pypy/trunk/pypy/translator/c/gcc

afa at codespeak.net afa at codespeak.net
Tue Sep 22 19:05:30 CEST 2009


Author: afa
Date: Tue Sep 22 19:05:30 2009
New Revision: 67847

Modified:
   pypy/trunk/pypy/translator/c/gcc/trackgcroot.py
Log:
"call __assert" always fails, of course. Update the list of non-returning functions.

This fixes the last error when translating on Windows:
    translator/goal/translate.py -Ojit --cc=mingw32 --gc=hybrid --gcrootfinder=asmgcc


Modified: pypy/trunk/pypy/translator/c/gcc/trackgcroot.py
==============================================================================
--- pypy/trunk/pypy/translator/c/gcc/trackgcroot.py	(original)
+++ pypy/trunk/pypy/translator/c/gcc/trackgcroot.py	Tue Sep 22 19:05:30 2009
@@ -1037,13 +1037,21 @@
             self.framesize = framesize
 
 
-FUNCTIONS_NOT_RETURNING = {
-    'abort': None,
-    '_exit': None,
-    '__assert_fail': None,
-    '___assert_rtn': None,
-    'L___assert_rtn$stub': None
-    }
+if sys.platform != 'win32':
+    FUNCTIONS_NOT_RETURNING = {
+        'abort': None,
+        '_exit': None,
+        '__assert_fail': None,
+        '___assert_rtn': None,
+        'L___assert_rtn$stub': None
+        }
+else:
+    FUNCTIONS_NOT_RETURNING = {
+        '_abort': None,
+        '__exit': None,
+        '__assert': None,
+        '__wassert': None,
+        }
 
 CALLEE_SAVE_REGISTERS_NOEBP = ['%ebx', '%esi', '%edi']
 CALLEE_SAVE_REGISTERS = CALLEE_SAVE_REGISTERS_NOEBP + ['%ebp']



More information about the Pypy-commit mailing list