]> git.ipfire.org Git - thirdparty/valgrind.git/commitdiff
Small optimisation: no need to have a syscall wrapper unless collect systime is yes
authorPhilippe Waroquiers <philippe.waroquiers@skynet.be>
Sat, 3 Dec 2016 17:09:20 +0000 (17:09 +0000)
committerPhilippe Waroquiers <philippe.waroquiers@skynet.be>
Sat, 3 Dec 2016 17:09:20 +0000 (17:09 +0000)
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@16167

callgrind/main.c

index 69b0ddba2951e9d2c685f49b29ff4aa58d4733a3..d1a8ab765d469c0f0c44e322ab919db341db89ae 100644 (file)
@@ -1975,6 +1975,16 @@ void CLG_(post_clo_init)(void)
                 "sp-at-mem-access\n");
    }
 
+   if (CLG_(clo).collect_systime) {
+      VG_(needs_syscall_wrapper)(CLG_(pre_syscalltime),
+                                 CLG_(post_syscalltime));
+      syscalltime = CLG_MALLOC("cl.main.pci.1",
+                               VG_N_THREADS * sizeof syscalltime[0]);
+      for (UInt i = 0; i < VG_N_THREADS; ++i) {
+         syscalltime[i] = 0;
+      }
+   }
+
    if (VG_(clo_px_file_backed) != VexRegUpdSpAtMemAccess) {
       CLG_DEBUG(1, " Using user specified value for "
                 "--px-file-backed\n");
@@ -2063,8 +2073,6 @@ void CLG_(pre_clo_init)(void)
 
     VG_(needs_client_requests)(CLG_(handle_client_request));
     VG_(needs_print_stats)    (clg_print_stats);
-    VG_(needs_syscall_wrapper)(CLG_(pre_syscalltime),
-                              CLG_(post_syscalltime));
 
     VG_(track_start_client_code)  ( & clg_start_client_code_callback );
     VG_(track_pre_deliver_signal) ( & CLG_(pre_signal) );
@@ -2072,11 +2080,6 @@ void CLG_(pre_clo_init)(void)
 
     CLG_(set_clo_defaults)();
 
-    syscalltime = CLG_MALLOC("cl.main.pci.1",
-                             VG_N_THREADS * sizeof syscalltime[0]);
-    for (UInt i = 0; i < VG_N_THREADS; ++i) {
-       syscalltime[i] = 0;
-    }
 }
 
 VG_DETERMINE_INTERFACE_VERSION(CLG_(pre_clo_init))