[pypy-svn] r50294 - pypy/branch/asmgcroot/pypy/translator/c

arigo at codespeak.net arigo at codespeak.net
Thu Jan 3 19:04:41 CET 2008


Author: arigo
Date: Thu Jan  3 19:04:41 2008
New Revision: 50294

Modified:
   pypy/branch/asmgcroot/pypy/translator/c/trackgcroot.py
Log:
Support for "operation source, (memory target)"


Modified: pypy/branch/asmgcroot/pypy/translator/c/trackgcroot.py
==============================================================================
--- pypy/branch/asmgcroot/pypy/translator/c/trackgcroot.py	(original)
+++ pypy/branch/asmgcroot/pypy/translator/c/trackgcroot.py	Thu Jan  3 19:04:41 2008
@@ -439,8 +439,10 @@
         target = match.group(2)
         if self.r_localvar.match(target):
             return InsnSetLocal(target)
-        else:
+        elif target == '%esp':
             raise UnrecognizedOperation(line)
+        else:
+            return []
 
     visit_xorl = binary_insn   # used in "xor reg, reg" to create a NULL GC ptr
     visit_orl = binary_insn
@@ -472,12 +474,6 @@
         else:
             return self.binary_insn(line)
 
-    def unary_or_binary_insn(self, line):
-        if r_binaryinsn.match(line):
-            return self.binary_insn(line)
-        else:
-            return self.unary_insn(line)
-
     def insns_for_copy(self, source, target):
         if source == '%esp' or target == '%esp':
             raise UnrecognizedOperation('%s -> %s' % (source, target))



More information about the Pypy-commit mailing list