[pypy-svn] r15361 - in pypy/dist/pypy/translator/c: . src test

pedronis at codespeak.net pedronis at codespeak.net
Fri Jul 29 18:07:58 CEST 2005


Author: pedronis
Date: Fri Jul 29 18:07:56 2005
New Revision: 15361

Modified:
   pypy/dist/pypy/translator/c/extfunc.py
   pypy/dist/pypy/translator/c/src/ll_time.h
   pypy/dist/pypy/translator/c/test/test_extfunc.py
Log:
simple-minded time implementation



Modified: pypy/dist/pypy/translator/c/extfunc.py
==============================================================================
--- pypy/dist/pypy/translator/c/extfunc.py	(original)
+++ pypy/dist/pypy/translator/c/extfunc.py	Fri Jul 29 18:07:56 2005
@@ -18,6 +18,7 @@
     ll_os  .ll_os_fstat:   'LL_os_fstat',
     ll_os  .ll_os_lseek:   'LL_os_lseek',
     ll_time.ll_time_clock: 'LL_time_clock',
+    ll_time.ll_time_time: 'LL_time_time',
     ll_math.ll_math_frexp: 'LL_math_frexp',
     ll_math.ll_math_atan2: 'LL_math_atan2',
     ll_math.ll_math_fmod : 'LL_math_fmod',

Modified: pypy/dist/pypy/translator/c/src/ll_time.h
==============================================================================
--- pypy/dist/pypy/translator/c/src/ll_time.h	(original)
+++ pypy/dist/pypy/translator/c/src/ll_time.h	Fri Jul 29 18:07:56 2005
@@ -1,6 +1,7 @@
 /************************************************************/
  /***  C header subsection: time module                    ***/
 
+#include <sys/time.h>
 #include <time.h>
 
 
@@ -48,3 +49,17 @@
 	return ((double)clock()) / CLOCKS_PER_SEC;
 }
 #endif /* MS_WINDOWS */
+
+
+double LL_time_time(void) /* xxx had support for better resolutions */
+{
+	return ll_floattime();
+}
+
+static double
+ll_floattime(void)
+{
+	time_t secs;
+	time(&secs);
+	return (double)secs;
+}

Modified: pypy/dist/pypy/translator/c/test/test_extfunc.py
==============================================================================
--- pypy/dist/pypy/translator/c/test/test_extfunc.py	(original)
+++ pypy/dist/pypy/translator/c/test/test_extfunc.py	Fri Jul 29 18:07:56 2005
@@ -153,3 +153,12 @@
     f = compile(fn, [])
     assert f() == False
 
+def test_time_time():
+    import time
+    def fn():
+        return time.time()
+    f = compile(fn, [])
+    t0 = time.time()
+    res = fn()
+    t1 = time.time()
+    assert t0 <= res <= t1



More information about the Pypy-commit mailing list