Author: Richard Plangger <planri...@gmail.com>
Branch: 
Changeset: r91525:82f30247c9bb
Date: 2017-06-05 09:06 -0400
http://bitbucket.org/pypy/pypy/changeset/82f30247c9bb/

Log:    fix tests and scatter real_time parameter to other functions needed

diff --git a/pypy/module/_vmprof/test/test__vmprof.py 
b/pypy/module/_vmprof/test/test__vmprof.py
--- a/pypy/module/_vmprof/test/test__vmprof.py
+++ b/pypy/module/_vmprof/test/test__vmprof.py
@@ -60,7 +60,7 @@
         import _vmprof
         gc.collect()  # try to make the weakref list deterministic
         gc.collect()  # by freeing all dead code objects
-        _vmprof.enable(tmpfileno, 0.01, 0, 0, 0)
+        _vmprof.enable(tmpfileno, 0.01, 0, 0, 0, 0)
         _vmprof.disable()
         s = open(self.tmpfilename, 'rb').read()
         no_of_codes = count(s)
@@ -73,7 +73,7 @@
 
         gc.collect()
         gc.collect()
-        _vmprof.enable(tmpfileno2, 0.01, 0, 0, 0)
+        _vmprof.enable(tmpfileno2, 0.01, 0, 0, 0, 0)
 
         exec """def foo2():
             pass
@@ -88,18 +88,18 @@
 
     def test_enable_ovf(self):
         import _vmprof
-        raises(_vmprof.VMProfError, _vmprof.enable, 2, 0, 0, 0, 0)
-        raises(_vmprof.VMProfError, _vmprof.enable, 2, -2.5, 0, 0, 0)
-        raises(_vmprof.VMProfError, _vmprof.enable, 2, 1e300, 0, 0, 0)
-        raises(_vmprof.VMProfError, _vmprof.enable, 2, 1e300 * 1e300, 0, 0, 0)
+        raises(_vmprof.VMProfError, _vmprof.enable, 2, 0, 0, 0, 0, 0)
+        raises(_vmprof.VMProfError, _vmprof.enable, 2, -2.5, 0, 0, 0, 0)
+        raises(_vmprof.VMProfError, _vmprof.enable, 2, 1e300, 0, 0, 0, 0)
+        raises(_vmprof.VMProfError, _vmprof.enable, 2, 1e300 * 1e300, 0, 0, 0, 
0)
         NaN = (1e300*1e300) / (1e300*1e300)
-        raises(_vmprof.VMProfError, _vmprof.enable, 2, NaN, 0, 0, 0)
+        raises(_vmprof.VMProfError, _vmprof.enable, 2, NaN, 0, 0, 0, 0)
 
     def test_is_enabled(self):
         import _vmprof
         tmpfile = open(self.tmpfilename, 'wb')
         assert _vmprof.is_enabled() is False
-        _vmprof.enable(tmpfile.fileno(), 0.01, 0, 0, 0)
+        _vmprof.enable(tmpfile.fileno(), 0.01, 0, 0, 0, 0)
         assert _vmprof.is_enabled() is True
         _vmprof.disable()
         assert _vmprof.is_enabled() is False
@@ -108,7 +108,7 @@
         import _vmprof
         tmpfile = open(self.tmpfilename, 'wb')
         assert _vmprof.get_profile_path() is None
-        _vmprof.enable(tmpfile.fileno(), 0.01, 0, 0, 0)
+        _vmprof.enable(tmpfile.fileno(), 0.01, 0, 0, 0, 0)
         path = _vmprof.get_profile_path()
         if path != tmpfile.name:
             with open(path, "rb") as fd1:
diff --git a/rpython/rlib/rvmprof/__init__.py b/rpython/rlib/rvmprof/__init__.py
--- a/rpython/rlib/rvmprof/__init__.py
+++ b/rpython/rlib/rvmprof/__init__.py
@@ -33,8 +33,8 @@
         return code._vmprof_unique_id
     return 0
 
-def enable(fileno, interval, memory=0, native=0):
-    _get_vmprof().enable(fileno, interval, memory, native)
+def enable(fileno, interval, memory=0, native=0, real_time=0):
+    _get_vmprof().enable(fileno, interval, memory, native, real_time)
 
 def disable():
     _get_vmprof().disable()
diff --git a/rpython/rlib/rvmprof/cintf.py b/rpython/rlib/rvmprof/cintf.py
--- a/rpython/rlib/rvmprof/cintf.py
+++ b/rpython/rlib/rvmprof/cintf.py
@@ -84,7 +84,7 @@
     eci = global_eci
     vmprof_init = rffi.llexternal("vmprof_init",
                                   [rffi.INT, rffi.DOUBLE, rffi.INT, rffi.INT,
-                                   rffi.CCHARP, rffi.INT],
+                                   rffi.CCHARP, rffi.INT, rffi.INT],
                                   rffi.CCHARP, compilation_info=eci)
     vmprof_enable = rffi.llexternal("vmprof_enable", [rffi.INT, rffi.INT, 
rffi.INT],
                                     rffi.INT,
diff --git a/rpython/rlib/rvmprof/rvmprof.py b/rpython/rlib/rvmprof/rvmprof.py
--- a/rpython/rlib/rvmprof/rvmprof.py
+++ b/rpython/rlib/rvmprof/rvmprof.py
@@ -124,7 +124,7 @@
         self._gather_all_code_objs = gather_all_code_objs
 
     @jit.dont_look_inside
-    def enable(self, fileno, interval, memory=0, native=0):
+    def enable(self, fileno, interval, memory=0, native=0, real_time=0):
         """Enable vmprof.  Writes go to the given 'fileno'.
         The sampling interval is given by 'interval' as a number of
         seconds, as a float which must be smaller than 1.0.
@@ -138,12 +138,12 @@
             native = 0 # force disabled on Windows
         lines = 0 # not supported on PyPy currently
 
-        p_error = self.cintf.vmprof_init(fileno, interval, lines, memory, 
"pypy", native)
+        p_error = self.cintf.vmprof_init(fileno, interval, lines, memory, 
"pypy", native, real_time)
         if p_error:
             raise VMProfError(rffi.charp2str(p_error))
 
         self._gather_all_code_objs()
-        res = self.cintf.vmprof_enable(memory, native)
+        res = self.cintf.vmprof_enable(memory, native, real_time)
         if res < 0:
             raise VMProfError(os.strerror(rposix.get_saved_errno()))
         self.is_enabled = True
diff --git a/rpython/rlib/rvmprof/src/rvmprof.h 
b/rpython/rlib/rvmprof/src/rvmprof.h
--- a/rpython/rlib/rvmprof/src/rvmprof.h
+++ b/rpython/rlib/rvmprof/src/rvmprof.h
@@ -27,7 +27,7 @@
 #endif
 
 RPY_EXTERN char *vmprof_init(int fd, double interval, int memory,
-                     int lines, const char *interp_name, int native);
+                     int lines, const char *interp_name, int native, int 
real_time);
 RPY_EXTERN void vmprof_ignore_signals(int);
 RPY_EXTERN int vmprof_enable(int memory, int native, int real_time);
 RPY_EXTERN int vmprof_disable(void);
diff --git a/rpython/rlib/rvmprof/src/shared/vmprof_common.h 
b/rpython/rlib/rvmprof/src/shared/vmprof_common.h
--- a/rpython/rlib/rvmprof/src/shared/vmprof_common.h
+++ b/rpython/rlib/rvmprof/src/shared/vmprof_common.h
@@ -6,6 +6,7 @@
 
 #include <stddef.h>
 #include <time.h>
+#include <stdlib.h>
 
 #ifndef VMPROF_WINDOWS
 #include <sys/time.h>
diff --git a/rpython/rlib/rvmprof/src/shared/vmprof_main.h 
b/rpython/rlib/rvmprof/src/shared/vmprof_main.h
--- a/rpython/rlib/rvmprof/src/shared/vmprof_main.h
+++ b/rpython/rlib/rvmprof/src/shared/vmprof_main.h
@@ -295,7 +295,11 @@
             if (commit) {
                 commit_buffer(fd, p);
             } else {
+#ifndef RPYTHON_VMPROF
                 fprintf(stderr, "WARNING: canceled buffer, no stack trace was 
written %d\n", is_enabled);
+#else
+                fprintf(stderr, "WARNING: canceled buffer, no stack trace was 
written\n");
+#endif
                 cancel_buffer(p);
             }
         }
_______________________________________________
pypy-commit mailing list
pypy-commit@python.org
https://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to