]> git.ipfire.org Git - thirdparty/valgrind.git/commitdiff
Change hp2ps to output .ps files in the same dir that the .hp input files
authorNicholas Nethercote <njn@valgrind.org>
Mon, 5 Dec 2005 20:45:59 +0000 (20:45 +0000)
committerNicholas Nethercote <njn@valgrind.org>
Mon, 5 Dec 2005 20:45:59 +0000 (20:45 +0000)
are in.  This fixes bug #117686.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5287

cachegrind/cg-ppc32.c
cachegrind/cg-ppc64.c
cachegrind/tests/filter_stderr
coregrind/m_main.c
coregrind/m_translate.c
docs/internals/roadmap.txt
include/vki-amd64-linux.h
include/vki-ppc32-linux.h
include/vki-ppc64-linux.h
massif/hp2ps/Main.c

index d988141bcda65462380a8781938e34a5dbf9725a..485d0dc477254851c2665713d14b4f171f8ff4e1 100644 (file)
@@ -49,6 +49,10 @@ void VG_(configure_caches)(cache_t* I1c, cache_t* D1c, cache_t* L2c,
    // not important) in the regression test suite without filtering the
    // x86/AMD64 one (which we want to see if it ever occurs in the
    // regression test suite).
+   //
+   // If you change this message, please update
+   // cachegrind/tests/filter_stderr!
+   //
    if (!all_caches_clo_defined) {
       VG_(message)(Vg_DebugMsg, 
                    "Warning: Cannot auto-detect cache config on PPC32, using one "
index 18a0e07aa0f0691423c80ab71c30e7339918fd28..7c09f702f0864d2d10c1b9246132642ee3ac5c74 100644 (file)
@@ -49,6 +49,10 @@ void VG_(configure_caches)(cache_t* I1c, cache_t* D1c, cache_t* L2c,
    // not important) in the regression test suite without filtering the
    // x86/AMD64 one (which we want to see if it ever occurs in the
    // regression test suite).
+   //
+   // If you change this message, please update
+   // cachegrind/tests/filter_stderr!
+   //
    if (!all_caches_clo_defined) {
       VG_(message)(Vg_DebugMsg, 
                    "Warning: Cannot auto-detect cache config on PPC64, using one "
index c961a90553d524b362cc2c944b844d6b8126d70e..91b8ed5b2203966bbaed783eae69bdd5141fbcb3 100755 (executable)
@@ -17,4 +17,4 @@ sed "s/\(\(I1\|D1\|L2\|L2i\|L2d\) *\(misses\|miss rate\):\)[ 0-9,()+rdw%\.]*$/\1
 sed "/warning: Pentium 4 with 12 KB micro-op instruction trace cache/d" |
 sed "/Simulating a 16 KB I-cache with 32 B lines/d"   |
 sed "/warning: L3 cache detected but ignored/d" |
-sed "/Warning: Cannot auto-detect cache config on PPC32, using one or more defaults/d"
+sed "/Warning: Cannot auto-detect cache config on PPC.., using one or more defaults/d"
index c4da14fb9cfc1f203827698ff7ce7fe7958adaf1..c01ee65c243cba7ef13728d8c952b61543818172 100644 (file)
@@ -66,6 +66,7 @@
 
 static void print_all_stats ( void )
 {
+   VG_(print_translation_stats)();
    VG_(print_tt_tc_stats)();
    VG_(print_scheduler_stats)();
    VG_(print_ExeContext_stats)();
index f6558a7a8639f0aef224e4268ee81a66f5e4e46c..4adbd68c457dc1e257d81f492c3f2e842bd01e16 100644 (file)
 #include "pub_core_transtab.h"
 
 
+/*------------------------------------------------------------*/
+/*--- Stats                                                ---*/
+/*------------------------------------------------------------*/
+
+static UInt n_SP_updates_fast            = 0;
+static UInt n_SP_updates_generic_known   = 0;
+static UInt n_SP_updates_generic_unknown = 0;
+
+void VG_(print_translation_stats) ( void )
+{
+   Char buf[6];
+   UInt n_SP_updates = n_SP_updates_fast + n_SP_updates_generic_known
+                                         + n_SP_updates_generic_unknown;
+   VG_(percentify)(n_SP_updates_fast, n_SP_updates, 1, 6, buf);
+   VG_(message)(Vg_DebugMsg,
+      "translate:            fast SP updates identified: %,u (%s)",
+      n_SP_updates_fast, buf );
+
+   VG_(percentify)(n_SP_updates_generic_known, n_SP_updates, 1, 6, buf);
+   VG_(message)(Vg_DebugMsg,
+      "translate:   generic_known SP updates identified: %,u (%s)",
+      n_SP_updates_generic_known, buf );
+
+   VG_(percentify)(n_SP_updates_generic_unknown, n_SP_updates, 1, 6, buf);
+   VG_(message)(Vg_DebugMsg,
+      "translate: generic_unknown SP updates identified: %,u (%s)",
+      n_SP_updates_generic_unknown, buf );
+}
+
 /*------------------------------------------------------------*/
 /*--- %SP-update pass                                      ---*/
 /*------------------------------------------------------------*/
@@ -147,6 +176,9 @@ IRBB* vg_SP_update_pass ( IRBB*             bb_in,
          dcall->fxState[0].size   = layout->sizeof_SP;                  \
                                                                         \
          addStmtToIRBB( bb, IRStmt_Dirty(dcall) );                      \
+                                                                        \
+         n_SP_updates_fast++;                                           \
+                                                                        \
       } while (0)
 
    for (i = 0; i <  bb_in->stmts_used; i++) {
@@ -211,10 +243,14 @@ IRBB* vg_SP_update_pass ( IRBB*             bb_in,
             case -16: DO(new, 16); addStmtToIRBB(bb,st); delta = 0; continue;
             case  32: DO(die, 32); addStmtToIRBB(bb,st); delta = 0; continue;
             case -32: DO(new, 32); addStmtToIRBB(bb,st); delta = 0; continue;
-            default:  goto generic;
+            default:  
+               n_SP_updates_generic_known++;
+               goto generic;
          }
       } else {
          IRTemp old_SP;
+         n_SP_updates_generic_unknown++;
+
         generic:
          /* Pass both the old and new SP values to this helper. */
          old_SP = newIRTemp(bb->tyenv, typeof_SP);
index 15219ba747376cf70b2e51ed592f669616b689b0..28f58a22220bafa40eeb6b1599084618816a0826 100644 (file)
@@ -29,6 +29,16 @@ In order of increasing speculativeness
 
 * Try to accelerate development for Darwin ?
 
+Smaller things
+--------------
+* Consider using the following defaults:
+  --leak-check=yes
+  --num-callers=20
+
+* Expose some of m_redir's functionality to tools so that Memcheck
+  can replace strlen/strcmp on PPC32 (remove the 3.1.0 hack for this
+  which checked in m_redir.c if the current tool was Memcheck).
+
 
 -----------------------------------------------------------------------------
 3.1.1
index 79f96a432df68525fe54405c6a4481aaf0d72760..3911b34c00138fffc3f38c529e65286fa407b388 100644 (file)
@@ -1,7 +1,6 @@
 
 /*--------------------------------------------------------------------*/
-/*--- AMD64/Linux-specific kernel interface.                       ---*/
-/*---                                            vki-amd64-linux.h ---*/
+/*--- AMD64/Linux-specific kernel interface.     vki-amd64-linux.h ---*/
 /*--------------------------------------------------------------------*/
 
 /*
index 150340e385747c8e3d1bf4537006119b305d6ada..7cd2aa49e0ecece78674d40d78029aad5eedd5d1 100644 (file)
@@ -1,7 +1,6 @@
 
 /*--------------------------------------------------------------------*/
-/*--- PPC32/Linux-specific kernel interface.                       ---*/
-/*---                                ppc32-linux/vki-ppc32-linux.h ---*/
+/*--- PPC32/Linux-specific kernel interface.     vki-ppc32-linux.h ---*/
 /*--------------------------------------------------------------------*/
 
 /*
index 1e8c1b0fcd47b24a82c71339c3064459e3bcceda..41f4792b8b0582434cad8129d02924c5ada61cb3 100644 (file)
@@ -1,7 +1,6 @@
 
 /*--------------------------------------------------------------------*/
-/*--- PPC64/Linux-specific kernel interface.                       ---*/
-/*---                                ppc64-linux/vki-ppc64-linux.h ---*/
+/*--- PPC64/Linux-specific kernel interface.     vki-ppc64-linux.h ---*/
 /*--------------------------------------------------------------------*/
 
 /*
index 86621a92f5669913a38af3292cec9b62330fd138..7dfffcde60bb2e31368b3ae7116ca975fe8c6d9f 100644 (file)
@@ -147,9 +147,16 @@ nextarg: ;
        baseName = copystring(Basename(pathName));
 
         hpfp  = Fp(pathName, &hpfile, ".hp", "r"); 
-       psfp  = Fp(baseName, &psfile, ".ps", "w"); 
 
-       if (pflag) auxfp = Fp(baseName, &auxfile, ".aux", "r");
+        // I changed these two lines to use 'pathName' instead of
+        // 'baseName'.  This means that the .ps and .aux files get put in
+        // the same directory as the .hp file.  This solved Valgrind bugt
+        // #117686.  --njn 
+//     psfp  = Fp(baseName, &psfile, ".ps", "w"); 
+       psfp  = Fp(pathName, &psfile, ".ps", "w"); 
+
+//     if (pflag) auxfp = Fp(baseName, &auxfile, ".aux", "r");
+       if (pflag) auxfp = Fp(pathName, &auxfile, ".aux", "r");
     }
 
     GetHpFile(hpfp);