[pypy-svn] r36006 - in pypy/dist/pypy/rpython: . test

arigo at codespeak.net arigo at codespeak.net
Wed Dec 27 20:08:33 CET 2006


Author: arigo
Date: Wed Dec 27 20:08:32 2006
New Revision: 36006

Modified:
   pypy/dist/pypy/rpython/rcontrollerentry.py
   pypy/dist/pypy/rpython/test/test_controllerentry.py
Log:
There is actually a "simple" workaround for this problem.


Modified: pypy/dist/pypy/rpython/rcontrollerentry.py
==============================================================================
--- pypy/dist/pypy/rpython/rcontrollerentry.py	(original)
+++ pypy/dist/pypy/rpython/rcontrollerentry.py	Wed Dec 27 20:08:32 2006
@@ -26,6 +26,10 @@
         for index in revealargs:
             s_new, r_new = self.reveal(hop2.args_r[index])
             hop2.args_s[index], hop2.args_r[index] = s_new, r_new
+            v = hop2.args_v[index]
+            if isinstance(v, Constant):
+                real_value = self.controller.convert(v.value)
+                hop2.args_v[index] = Constant(real_value)
         if revealresult:
             hop2.s_result, hop2.r_result = self.reveal(hop2.r_result)
         hop2.v_s_insertfirstarg(c_meth, s_meth)

Modified: pypy/dist/pypy/rpython/test/test_controllerentry.py
==============================================================================
--- pypy/dist/pypy/rpython/test/test_controllerentry.py	(original)
+++ pypy/dist/pypy/rpython/test/test_controllerentry.py	Wed Dec 27 20:08:32 2006
@@ -71,7 +71,6 @@
     assert s.const == "512"
 
 def test_C1_specialize():
-    py.test.skip("argh! what can we do about it?")
     res = interpret(fun1, [])
     assert ''.join(res.chars) == "512"
 



More information about the Pypy-commit mailing list