[pypy-svn] r75514 - pypy/branch/x86-64-jit-backend/pypy/jit/backend/x86

jcreigh at codespeak.net jcreigh at codespeak.net
Tue Jun 22 22:57:27 CEST 2010


Author: jcreigh
Date: Tue Jun 22 22:57:26 2010
New Revision: 75514

Modified:
   pypy/branch/x86-64-jit-backend/pypy/jit/backend/x86/assembler.py
Log:
fix float comparision bug (see test added in r75513)

Modified: pypy/branch/x86-64-jit-backend/pypy/jit/backend/x86/assembler.py
==============================================================================
--- pypy/branch/x86-64-jit-backend/pypy/jit/backend/x86/assembler.py	(original)
+++ pypy/branch/x86-64-jit-backend/pypy/jit/backend/x86/assembler.py	Tue Jun 22 22:57:26 2010
@@ -647,7 +647,8 @@
                     mc = self.mc._mc
                     mc.J_il8(rx86.Conditions['P'], 2)
                     mc.J_il8(rx86.Conditions[cond], 5)
-                    return self.implement_guard(addr)
+                    mc.JMP_l(addr)
+                    return mc.tell() - 4
                 return self.implement_guard(addr, false_cond)
         return genop_cmp_guard_float
 
@@ -844,7 +845,8 @@
         else:
             mc.J_il8(rx86.Conditions['P'], 2)
             mc.J_il8(rx86.Conditions['E'], 5)
-            return self.implement_guard(addr)
+            mc.JMP_l(addr)
+            return mc.tell() - 4
 
     def genop_float_neg(self, op, arglocs, resloc):
         # Following what gcc does: res = x ^ 0x8000000000000000



More information about the Pypy-commit mailing list