New valgrind results - with fixes for two kinds of false positives

Dan Kegel dank at
Sun Jan 31 15:40:03 CST 2010

Julian kindly pointed out that --vex-iropt-precise-memory-exns=yes is needed
to avoid false positives in tricky signal handlers like the one
involved in GetBitmapBits().
Adding that didn't slow things down much if any, and got rid of lots
of valgrind-specific GetBitmapBits() crashes.

Also, I applied what seems like an obvious fix for the subheap_notify_free_all
false positives (see ),
and it got rid of them.

I've updated correspondingly
(and made it a bunch clearer, too).

Current results at

Current stats:
      1 Invalid free/ delete / delete[]
      2 Source and destination overlap in memcpy
      2 Syscall param writev
      3 Use of uninitialised value of size 4
      6 Invalid write of size 4
      7 Invalid read of size 2
     12 Invalid write of size 1
     22 Invalid read of size 4
     48 Conditional jump or move depends on uninitialised value
     78 Invalid read of size 1
    283 XXX bytes in XXX blocks are definitely lost
total:  464

*All* of the "Invalid read of size 1" errors are in the heap tests, so
I'll suppress them for the next run.

So we're at 386 warnings currently, a bit better than last time I
reported figures,

More information about the wine-devel mailing list