[pypy-svn] r68905 - pypy/branch/msvc-asmgcroot/pypy/translator/c/gcc

afa at codespeak.net afa at codespeak.net
Sun Nov 1 23:13:27 CET 2009


Author: afa
Date: Sun Nov  1 23:13:24 2009
New Revision: 68905

Modified:
   pypy/branch/msvc-asmgcroot/pypy/translator/c/gcc/trackgcroot.py
Log:
The code generated by the msvc compiler is inconsistent after a never-returning function:
sometimes esp is adjusted, sometimes not.


Modified: pypy/branch/msvc-asmgcroot/pypy/translator/c/gcc/trackgcroot.py
==============================================================================
--- pypy/branch/msvc-asmgcroot/pypy/translator/c/gcc/trackgcroot.py	(original)
+++ pypy/branch/msvc-asmgcroot/pypy/translator/c/gcc/trackgcroot.py	Sun Nov  1 23:13:24 2009
@@ -635,7 +635,7 @@
         else:
             target = match.group(1)
             if target in FUNCTIONS_NOT_RETURNING:
-                return InsnStop()
+                return [InsnStop(), InsnCannotFollowEsp()]
             if sys.platform == 'win32' and target == '__alloca':
                 # in functions with large stack requirements, windows
                 # needs a call to _alloca(), to turn reserved pages



More information about the Pypy-commit mailing list