583 Commits

Author SHA1 Message Date
Nicholas Nethercote
9c040c96bf Add exp-bbv to the tool-suite. I'm seeing a couple of amd64-linux test
failures, but they can be fixed up in-repo.  This resolves bug 198395.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10444
2009-07-14 01:39:54 +00:00
Julian Seward
41a528f671 Update oprofiling notes a bit.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10393
2009-07-01 08:12:22 +00:00
Nicholas Nethercote
b05a2a18d7 This commit merges the BUILD_TWEAKS branch onto the trunk. It has the
following improvements:

- Arch/OS/platform-specific files are now included/excluded via the
  preprocessor, rather than via the build system.  This is more consistent
  (we use the pre-processor for small arch/OS/platform-specific chunks
  within files) and makes the build system much simpler, as the sources for
  all programs are the same on all platforms.

- Vast amounts of cut+paste Makefile.am code has been factored out.  If a
  new platform is implemented, you need to add 11 extra Makefile.am lines.
  Previously it was over 100 lines.

- Vex has been autotoolised.  Dependency checking now works in Vex (no more
  incomplete builds).  Parallel builds now also work.  --with-vex no longer
  works;  it's little use and a pain to support.  VEX/Makefile is still in
  the Vex repository and gets overwritten at configure-time;  it should
  probably be renamed Makefile-gcc to avoid possible problems, such as
  accidentally committing a generated Makefile.  There's a bunch of hacky
  copying to deal with the fact that autotools don't handle same-named files
  in different directories.  Julian plans to rename the files to avoid this
  problem.

- Various small Makefile.am things have been made more standard automake
  style, eg. the use of pkginclude/pkglib prefixes instead of rolling our
  own.

- The existing five top-level Makefile.am include files have been
  consolidated into three.

- Most Makefile.am files now are structured more clearly, with comment
  headers separating sections, declarations relating to the same things next
  to each other, better spacing and layout, etc.

- Removed the unused exp-ptrcheck/tests/x86 directory.

- Renamed some XML files.

- Factored out some duplicated dSYM handling code.

- Split auxprogs/ into auxprogs/ and mpi/, which allowed the resulting
  Makefile.am files to be much more standard.

- Cleaned up m_coredump by merging a bunch of files that had been
  overzealously separated.

The net result is 630 fewer lines of Makefile.am code, or 897 if you exclude
the added Makefile.vex.am, or 997 once the hacky file copying for Vex is
removed.  And the build system is much simpler.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10364
2009-06-24 00:37:09 +00:00
Nicholas Nethercote
c019d97d9d Get rid of ACKNOWLEDGEMENTS, because it overlaps hugely with AUTHORS.
Improve AUTHORS a bit at the same time.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10309
2009-06-12 07:38:24 +00:00
Nicholas Nethercote
99f13531ec Remove references to the now-defunct INSTALL file.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10271
2009-06-06 21:54:59 +00:00
Nicholas Nethercote
455137340c Add descriptions of DRD and Ptrcheck in the manual intro. Bart, Julian,
please change these if you don't like what I've written, and merge the
changes to the 3.4.X branch.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10215
2009-06-02 23:20:40 +00:00
Julian Seward
b106f25f23 Document --auto-run-dsymutil flag.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10174
2009-05-31 09:34:05 +00:00
Nicholas Nethercote
07045477ca Merge the DARWIN branch onto the trunk.
I tried using 'svn merge' to do the merge but it did a terrible job and
there were bazillions of conflicts.  So instead I just took the diff between
the branch and trunk  at r10155, applied the diff to the trunk, 'svn add'ed
the added files (no files needed to be 'svn remove'd) and committed.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10156
2009-05-28 01:53:07 +00:00
Nicholas Nethercote
585caf2169 Add some info about building the docs on Ubuntu 9.04.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@9903
2009-05-18 23:11:49 +00:00
Nicholas Nethercote
7f0f76c228 Fix some broken XML tags.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@9901
2009-05-18 23:03:52 +00:00
Julian Seward
720956c6b5 Add a list of bugs reported since 3.4.1 was released. 50 new bug
reports in 60 days.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@9649
2009-04-27 21:07:30 +00:00
Nicholas Nethercote
96609c3972 Fix the installation instructions in the manual.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@9559
2009-04-16 00:40:02 +00:00
Nicholas Nethercote
74b33a87de Made the Valgrind abort/crash message clearer about the fact that it can be
caused by heap corruption by the client.  Also clarified the FAQ about this.

Also updated the FAQ about decoding failures a little.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@9556
2009-04-16 00:33:20 +00:00
Nicholas Nethercote
e0af9ef621 Merge r9431 (remove old Darwin docs) from the DARWIN branch.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@9432
2009-03-16 04:34:41 +00:00
Nicholas Nethercote
bafed25ae9 This commit completely overhauls the leak checker. In particular:
- It heavily refactors the code:  uses better names for things, splits up
  complex functions that behaved very differently depending on how they were
  called, removes some redundancies, and generally makes it much simpler and
  easier to follow.

- It adds lots of comments, both inline, and also a big explanatory one at
  the top which makes it clear exactly how the leak checker works and also
  exactly what is meant by definite, possible, and indirect leaks.  It also
  has some ideas for future improvements.

- All tabs have been converted to spaces.

It also improves the functionality:

- Previously if you did --leak-check=summary, indirect and suppressed
  blocks were counted as definite leaks.  Now they are done properly, and so
  the summary results from --leak-check=summary match those from
  --leak-check=yes.

- Previously, some possibly reachable blocks were miscategorised as
  definitely reachable, because only the pointer to the block itself was
  considered, not any preceding pointers in the chain.  This is now fixed.

- Added memcheck/tests/leak-cases, which fully tests all the possible
  combinations of directly/indirectly reachable and possibly/definitely
  reachable.

And it improves the manual quite a bit, and the FAQ a little bit.

This doesn't fix the leak checker to handle MALLOCLIKE_BLOCK works that have
been taken from within malloc'd blocks, but I think I know how to do it and
hope to do so in a subsequent commit.

It also changes all instances of "<constant>memcheck</constant>" in the
Memcheck manual to "Memcheck", for consistency and because "Memcheck" is
easier to write.  There's one similar case for DRD but I didn't change that.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@9330
2009-03-09 22:52:24 +00:00
Nicholas Nethercote
44b3b49c52 Fix an XML error spotted by Bart.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@9218
2009-02-22 22:25:31 +00:00
Nicholas Nethercote
108768ee98 Merge r9175 (don't run inappropriate OS- and platform-specific tests) from
the DARWIN branch.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@9176
2009-02-16 00:42:10 +00:00
Nicholas Nethercote
a8c9970a34 Cleaned up the mess that was the treatment of "below main" functions such as
'__libc_start_main', in Massif, m_debuginfo and m_stacktrace.  As part of
this, --show-below-main is now visible to tools, and Massif pays attention
to it.

Improved the description of --show-below-main=yes in the manual.

Replaced some instances of "__libc_start_main" in the test *.exp files with
"(below main)", which is what will actually be seen.  Also updated
scalar.stderr.exp*, which should make it get closer to actually passing.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@9131
2009-02-10 06:48:00 +00:00
Nicholas Nethercote
ed322feb84 Rename all the arch/OS/platform-related variables in configure.in to make it
clearer what they mean:
- They all have VGCONF_ prefixes now, to indicate they come out of
  configure.in (and are clearly distinguished from the VGA_/VGO_/VGP_
  #defines passed in to C files).
- The ones that refer to the primary *or* secondary platform have _INCLUDES_
  in them.
- The ones that are in all-caps have a _CAPS suffix.

So, for example, what was VGP_X86_LINUX is now
VGCONF_PLATFORMS_INCLUDE_X86_LINUX, which is more verbose but also a lot
clearer.  The names of the #defines used in the C files (VGA_x86, VGO_linux,
etc) are unchanged.

cputest.c: changed to reflect the Valgrind installation's capabilities,
rather than the machine's capabilities.  In particular, if
--enable-only32bit is used on a 64-bit machine, then this program will claim
to only support 32-bits.  Also use the VGA/VGO/VGP macros which are clearer
than the __i386__ ones.  (This is partially merged from the DARWIN branch.)

configure.in: clean up the comments, distinguish different sections more
clearly, and generally make it more readable.

valgrind.pc.in: try to make this more accurate.  I doubt anyone's using it.
It doesn't appear to be set up to handle dual-architecture builds.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@9031
2009-01-22 21:56:32 +00:00
Nicholas Nethercote
cace8b55cd - No longer using VG_ARCH_ALL to determine the DIST_SUBDIRS used for
arch/OS/platform-specific tool test dirs, instead writing it by hand.
  This is important because up until now if we had any arch-specific test
  dirs, we needed such dirs for all archs.  Now that we also have
  OS-specific and platform-specific test dirs, we don't want to have
  (mostly) empty dirs for every arch/OS/platform.

- Correspondingly, removed several empty directories under memcheck/tests/
  and cachegrind/tests that are no longer needed.

- Also removed VG_ARCH_ALL from configure.in.

- Also used an arch-specific guard rather than a platform-specific one where
  appropriate in cachegrind/tests/Makefile.am.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@9017
2009-01-22 01:13:16 +00:00
Nicholas Nethercote
fa7ee0dc5b Add an FAQ about attaching Valgrind to already-running programs.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@8911
2009-01-06 05:54:45 +00:00
Julian Seward
7e5513b6c0 Update bug lists.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@8876
2008-12-23 17:04:52 +00:00
Julian Seward
5edaee8191 Bump the version stuff.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@8875
2008-12-23 16:34:19 +00:00
Julian Seward
f9c9d9c9d0 Update.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@8874
2008-12-23 16:26:06 +00:00
Julian Seward
c7d583fcbd Minor updates for 3.4.0. Also fix a large number of missing <para>
and </para> tags.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@8861
2008-12-22 01:00:15 +00:00
Julian Seward
7bf24c8472 Include new file (why-no-libc.txt) in the distro tarball.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@8831
2008-12-17 12:25:05 +00:00
Nicholas Nethercote
aee8de8367 Add some useful info.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@8827
2008-12-15 21:29:29 +00:00
Nicholas Nethercote
18216143d9 Update an FAQ to account for --track-origins=yes.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@8824
2008-12-13 22:27:05 +00:00
Julian Seward
2dae239cce Update.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@8822
2008-12-13 16:53:35 +00:00
Dirk Mueller
827735df70 update bug status
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@8801
2008-11-22 23:35:32 +00:00
Dirk Mueller
706dd9fa67 ignore .valgrindrc files that are world writeable
or not owned by the current user (CVE-2008-4865)


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@8798
2008-11-22 12:03:19 +00:00
Dirk Mueller
0ebe1bbe1e add glibc 2.9 support to changelog
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@8792
2008-11-20 00:01:21 +00:00
Julian Seward
91442c55a8 Update.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@8748
2008-11-08 15:26:53 +00:00
Julian Seward
650da4509d Update.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@8733
2008-11-05 12:46:43 +00:00
Julian Seward
217f01f3e2 * add some assertions to frame-level wildcarding mechanism
* remove a couple of tabs

* clarify related documentation a bit



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@8727
2008-11-04 11:29:19 +00:00
Julian Seward
279a7e01cf Update documentation on suppressions following addition of frame-level
wildcarding in suppressions (r8725).  Also clarify a couple of bits of
wording.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@8726
2008-11-04 01:38:02 +00:00
Julian Seward
79765330c3 Add summaries for more than 60 bugs logged in bugzilla since 3.3.1 was
released.  Looking at this lot, you'd get the impression the system is
so bug-riddled it's amazing it works at all.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@8724
2008-11-02 23:46:32 +00:00
Julian Seward
07ac95b348 Get rid of longstanding and now pointless restriction that disallowed
using --db-attach=yes and --trace-children=yes together.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@8722
2008-10-30 13:26:29 +00:00
Julian Seward
0401fb2706 Add notes on how to build/run KDE 4.2.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@8721
2008-10-30 13:17:35 +00:00
Julian Seward
018559c77d Merge howto_profile.txt from branches/YARD and BIG_APP_NOTES.txt from
branches/HGDEV.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@8708
2008-10-25 16:30:38 +00:00
Josef Weidendorfer
4d822b7bd3 Update
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@8706
2008-10-24 19:17:52 +00:00
Julian Seward
a11c045d49 XML-ise exp-ptrcheck's documentation.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@8702
2008-10-23 13:15:23 +00:00
Julian Seward
40399aab00 Fix longstanding bug in dual-arch support, which originated in
memcheck/tests/Makefile.am and was copied into drd/tests/Makefile.am.

When building regtests for a 32-bit only build on a 64-bit CPU, the
use of $(VG_ARCH) in these Makefiles is incorrect, because VG_ARCH
will be set to the 64-bit architecture, not the 32-bit architecture.

See comments on VG_ARCH_PRI and VG_ARCH_MAX in configure.in for more
details.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@8623
2008-09-19 09:02:19 +00:00
Bart Van Assche
6e368a9f37 Renamed exp-drd directory into drd. Moved drd from the experimental tool class to the class of regular tools.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@8361
2008-07-04 15:14:35 +00:00
Bart Van Assche
19747fa682 Added entry for DRD manual.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@8238
2008-06-16 20:31:16 +00:00
Julian Seward
9551b14c18 Reinstate printing of log-file-qualifiers in XML output (Ashley Pittman).
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@8178
2008-06-04 06:51:58 +00:00
Julian Seward
84a03affe1 Update.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@8161
2008-05-31 08:33:59 +00:00
Nicholas Nethercote
9914dd3c89 update
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@8156
2008-05-29 23:18:18 +00:00
Nicholas Nethercote
bb0819a3bb Fix a bug in Massif and Cachegrind, whereby if program's forked, the child
wrote into the parent's output file even if %p was specified.

Josef, I think Callgrind does not have this bug, but you might want to say
something about forking in the manual, as I have done for Massif and
Cachegrind.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@8154
2008-05-29 23:09:52 +00:00
Julian Seward
600b55eadb Update.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@8098
2008-05-15 18:18:36 +00:00