[pypy-commit] pypy default: kill this test: originally it was meant to check that we take the fastpath when doing a ctypes call, but now the fastpath has gone and thus there is nothing to test. Moreover, most of the logic has been skipped since forever, apparently

antocuni pypy.commits at gmail.com
Tue May 23 07:42:53 EDT 2017


Author: Antonio Cuni <anto.cuni at gmail.com>
Branch: 
Changeset: r91386:a8f0d06d39a8
Date: 2017-05-23 13:42 +0200
http://bitbucket.org/pypy/pypy/changeset/a8f0d06d39a8/

Log:	kill this test: originally it was meant to check that we take the
	fastpath when doing a ctypes call, but now the fastpath has gone and
	thus there is nothing to test. Moreover, most of the logic has been
	skipped since forever, apparently

diff --git a/pypy/module/pypyjit/test_pypy_c/test_ffi.py b/pypy/module/pypyjit/test_pypy_c/test_ffi.py
--- a/pypy/module/pypyjit/test_pypy_c/test_ffi.py
+++ b/pypy/module/pypyjit/test_pypy_c/test_ffi.py
@@ -110,38 +110,6 @@
         loops = log.loops_by_id('sleep')
         assert len(loops) == 1 # make sure that we actually JITted the loop
 
-    def test_ctypes_call(self):
-        from rpython.rlib.test.test_clibffi import get_libm_name
-        def main(libm_name):
-            import ctypes
-            libm = ctypes.CDLL(libm_name)
-            fabs = libm.fabs
-            fabs.argtypes = [ctypes.c_double]
-            fabs.restype = ctypes.c_double
-            x = -4
-            i = 0
-            while i < 300:
-                x = fabs(x)
-                x = x - 100
-                i += 1
-            return fabs._ptr.getaddr(), x
-
-        libm_name = get_libm_name(sys.platform)
-        log = self.run(main, [libm_name], import_site=True)
-        fabs_addr, res = log.result
-        assert res == -4.0
-        loop, = log.loops_by_filename(self.filepath)
-        ops = loop.allops()
-        opnames = log.opnames(ops)
-        assert opnames.count('new_with_vtable') == 1 # only the virtualref
-        py.test.skip("XXX re-optimize _ffi for the JIT?")
-        assert opnames.count('call_release_gil') == 1
-        idx = opnames.index('call_release_gil')
-        call = ops[idx]
-        assert (call.args[0] == 'ConstClass(fabs)' or    # e.g. OS/X
-                int(call.args[0]) == fabs_addr)
-
-
     def test__ffi_struct(self):
         def main():
             from _rawffi.alt import _StructDescr, Field, types


More information about the pypy-commit mailing list