[pypy-svn] r62715 - pypy/trunk/pypy/jit/backend/x86

fijal at codespeak.net fijal at codespeak.net
Sat Mar 7 16:46:43 CET 2009


Author: fijal
Date: Sat Mar  7 16:46:42 2009
New Revision: 62715

Modified:
   pypy/trunk/pypy/jit/backend/x86/assembler.py
Log:
bah. implement call_pure and a debug info that helps to find it


Modified: pypy/trunk/pypy/jit/backend/x86/assembler.py
==============================================================================
--- pypy/trunk/pypy/jit/backend/x86/assembler.py	(original)
+++ pypy/trunk/pypy/jit/backend/x86/assembler.py	Sat Mar  7 16:46:42 2009
@@ -559,6 +559,20 @@
         elif size == 2:
             self.mc.AND(eax, imm(0xffff))
 
+    genop_call_pure = genop_call
+
+    def not_implemented_op_discard(self, op, arglocs):
+        print "not implemented operation: %s" % op.getopname()
+        raise NotImplementedError
+
+    def not_implemented_op(self, op, arglocs, resloc):
+        print "not implemented operation with res: %s" % op.getopname()
+        raise NotImplementedError
+
+    def not_implemented_op_guard(self, op, arglocs, resloc, descr):
+        print "not implemented operation (guard): %s" % op.getopname()
+        raise NotImplementedError
+
     #def genop_call__1(self, op, arglocs, resloc):
     #    self.gen_call(op, arglocs, resloc)
     #    self.mc.MOVZX(eax, al)
@@ -568,9 +582,9 @@
     #    self.gen_call(op, arglocs, resloc)
     #    self.mc.MOVZX(eax, eax)
 
-genop_discard_list = [None] * (RETURN + 1)
-genop_list = [None] * rop._LAST
-genop_guard_list = [None] * rop._LAST
+genop_discard_list = [Assembler386.not_implemented_op_discard] * (RETURN + 1)
+genop_list = [Assembler386.not_implemented_op] * rop._LAST
+genop_guard_list = [Assembler386.not_implemented_op_guard] * rop._LAST
 
 for name, value in Assembler386.__dict__.iteritems():
     if name.startswith('genop_'):



More information about the Pypy-commit mailing list