2
Fork 1
mirror of https://sourceware.org/git/valgrind.git synced 2026-04-17 12:44:28 +00:00
No description
  • C 94%
  • Assembly 1.7%
  • C++ 1.6%
  • Makefile 0.6%
  • Perl 0.5%
  • Other 1.5%
Find a file
Paul Floyd 7bb915e619 Darwin suppressions and massif ignore function
Suppresss a few more still reachables. Suppress a Helgrind race in
getaddrinfo. Add another massif --ignore-fn.
2026-04-16 21:25:08 +02:00
auxprogs Update libiberty demangler 2026-04-14 02:26:44 +02:00
cachegrind Update Valgrind and Tool printed copyright years 2026-04-14 07:29:18 +02:00
callgrind Upgrade to GNU General Public License version 3 2025-10-18 00:55:07 +02:00
coregrind Darwin distribution: add m_mach/priv_dyld_internals.h to noinst_HEADERS 2026-04-15 21:37:41 +02:00
dhat testsuite: Tidy. Remove empty .stdout.exp files 2025-12-13 18:37:27 +00:00
docs Bug 514297 - Track madvise MADV_GUARD_INSTALL in address space manager 2026-03-31 18:10:05 +02:00
drd Update Valgrind and Tool printed copyright years 2026-04-14 07:29:18 +02:00
exp-bbv Regtest build: fix exp-bbv build on amd64 Linux 2026-03-15 08:36:52 +01:00
gdbserver_tests Darwin regtest: fix compilation of gdbserver_tests/self_invalidate.c 2026-03-18 07:48:39 +01:00
helgrind Soalris regtest: remove unused expected 2026-04-14 21:14:23 +02:00
include Update copyright notices in FreeBSD-related source files 2026-04-14 07:46:09 +02:00
lackey Upgrade to GNU General Public License version 3 2025-10-18 00:55:07 +02:00
m4 Check for and compile using -std=gnu11 (or higher) 2025-01-23 19:33:57 +01:00
massif Darwin suppressions and massif ignore function 2026-04-16 21:25:08 +02:00
memcheck Update Valgrind and Tool printed copyright years 2026-04-14 07:29:18 +02:00
mpi warnings: one more -Wno-deprecated-declarations flag 2025-10-29 08:06:28 +01:00
nightly Replace which and type with command -v 2026-02-14 21:36:56 +01:00
none Add PCMPEQQ SSE4.1 support for x86 2026-04-16 20:36:53 +02:00
perf Upgrade to GNU General Public License version 3 2025-10-18 00:55:07 +02:00
shared Bug 513844 - Support macOS 13.0 (Ventura) 2026-03-13 07:51:08 +01:00
solaris Replace git:// URLs with https:// URLs 2022-08-29 10:13:47 +02:00
tests FreeBSD regtest: add a (below main) filter for one of the massif tests. 2026-04-12 16:36:27 +02:00
VEX Add PCMPEQQ SSE4.1 support for x86 2026-04-16 20:36:53 +02:00
.clang-format Bug 468401 - [PATCH] Add a style file for clang-format 2023-04-17 22:05:30 +02:00
.dir-locals.el Add Emacs configuration files 2018-12-05 18:15:57 -08:00
.git-blame-ignore-revs Add a .git-blame-ignore-revs file. 2023-04-26 16:54:15 +10:00
.gitignore helgrind: add --track-destroy command line option 2026-04-14 01:40:42 +02:00
AUTHORS Update AUTHORS 2026-01-01 09:56:54 +01:00
autogen.sh Check for and compile using -std=gnu11 (or higher) 2025-01-23 19:33:57 +01:00
bionic.supp Initial suppressions from Android 2.3.5 (on ARM). 2011-09-26 20:18:29 +00:00
configure.ac Set version to 3.27.0-RC1 2026-04-14 02:34:26 +02:00
COPYING Upgrade to GNU General Public License version 3 2025-10-18 00:55:07 +02:00
COPYING.DOCS Update COPYING and COPYING.DOCS with new FSF address. 2015-09-04 10:21:38 +00:00
darwin-drd.supp Darwin regtest and suppressions: more for Darwin 19 2026-03-30 13:25:52 +02:00
darwin-helgrind.supp Darwin suppressions and massif ignore function 2026-04-16 21:25:08 +02:00
darwin-legacy.supp Darwin suppressions: merge old suppression files to darwin-legacy.supp 2025-12-09 07:33:49 +01:00
darwin.supp Darwin suppressions and massif ignore function 2026-04-16 21:25:08 +02:00
freebsd-drd.supp FreeBSD DRD: add suppression for _malloc_postfork 2025-09-14 12:00:46 +00:00
freebsd-helgrind.supp FreeBSD helgrind: add a suppression for ostream padding 2026-04-06 15:59:53 +02:00
freebsd.supp FreeBSD suppression: broaden rtld sigprocmask param suppression 2026-04-14 08:05:52 +02:00
glibc-2.2-LinuxThreads-helgrind.supp Add some Helgrind suppressions for LinuxThreads. 2007-11-11 06:13:01 +00:00
glibc-2.2.supp Remove old Helgrind suppressions. 2007-11-10 20:12:23 +00:00
glibc-2.3.supp Remove old Helgrind suppressions. 2007-11-10 20:12:23 +00:00
glibc-2.4.supp Supps for MVL 4.0.1 on ppc32 (Bart Van Assche) 2007-01-05 15:09:53 +00:00
glibc-2.5.supp Supps for MVL 4.0.1 on ppc32 (Bart Van Assche) 2007-01-05 15:09:53 +00:00
glibc-2.6.supp Even more suppressions for glibc-2.6. 2007-11-13 20:51:26 +00:00
glibc-2.7.supp Preliminary support for Fedora 8, which includes initial support for 2007-11-18 14:40:02 +00:00
glibc-2.X-drd.supp.in Linux DRD suppression: add an entry for __is_decorate_maps_enabled 2025-12-01 08:12:30 +01:00
glibc-2.X-helgrind.supp.in Linux Helgrind: add a suppression for _dl_allocate_tls_init 2025-12-01 08:18:56 +01:00
glibc-2.X.supp.in Linux PPC: add a suppression for an invalid read in libaio io_getevents 2025-03-30 09:04:56 +02:00
Makefile.all.am Add -fno-diagnostics-show-caret and -ftrack-macro-expansion=0. 2026-03-13 16:01:28 +00:00
Makefile.am regtest: Support make regtest BUNSEN=no 2026-03-04 22:23:18 +00:00
Makefile.tool-tests.am mips64: add N32 ABI support 2018-06-14 17:40:08 +00:00
Makefile.tool.am riscv64: Add initial support: Valgrind modifications 2025-02-25 17:04:36 +01:00
Makefile.vex.am Add SSE4.1 BLENDPD instruction for x86 32 bit 2026-01-21 18:52:06 +01:00
musl.supp musl: updates to suppressions and drd pthread detection script 2024-02-17 18:24:36 +01:00
NEWS Add PCMPEQQ SSE4.1 support for x86 2026-04-16 20:36:53 +02:00
NEWS.old Correct typos and spelling mistakes 2024-11-03 10:55:57 +01:00
NEWS.older Update version to 3.23.0.GIT, split NEWS files and create NEWS.older 2023-11-01 10:56:39 +01:00
README Upgrade to GNU General Public License version 3 2025-10-18 00:55:07 +02:00
README.aarch64 Bug 480126 - Build failure on Raspberry Pi 5 / OS 6.1.0-rpi7-rpi-v8 2024-01-21 21:33:06 +01:00
README.android Fix documentation of command line flag 2015-11-06 22:08:46 +00:00
README.android_emulator Fix documentation of command line flag 2015-11-06 22:08:46 +00:00
README.freebsd FreeBSD README: add a section on syscalls. 2026-03-01 21:51:29 +01:00
README.mips mips: update NEWS and README.mips 2020-01-06 16:51:37 +00:00
README.riscv64 riscv64: Add support for csrrc 2025-04-24 02:06:04 +02:00
README.s390 NEWS / README.s390 update 2025-11-30 21:52:32 +00:00
README.solaris Illumos: mention the build-essential package in README.solaris 2025-04-01 20:09:14 +02:00
README_DEVELOPERS regtest: Support make regtest BUNSEN=no 2026-03-04 22:23:18 +00:00
README_DEVELOPERS_processes Change SVN to GIT in various places and simple scripts. 2017-08-14 15:27:27 +02:00
README_MISSING_SYSCALL_OR_IOCTL FreeBSD: switch to FreeBSD 12 versions of syscalls for fstat etc 2023-01-24 20:41:15 +01:00
README_PACKAGERS Update README_PACKAGERS 2024-02-15 20:48:07 +01:00
solaris11.supp Illumos suppression and regtest 2025-04-20 22:14:44 +02:00
solaris12.supp Darwin suppressions: merge old suppression files to darwin-legacy.supp 2025-12-09 07:33:49 +01:00
valgrind.pc.in Fix valt_load_address value in pkgconfig file. 2012-10-04 20:01:50 +00:00
valgrind.spec.in Move older news into its own file, NEWS.old, so as not to overrun TeX 2012-08-08 20:38:03 +00:00
vg-in-place vgdb: implement the extended-remote protocol 2023-04-14 00:08:53 +02:00
xfree-3.supp Completely overhauled the internals of Memcheck's error handling. All the 2006-12-16 00:54:12 +00:00
xfree-4.supp Bug 466884 - Missing writev uninit padding suppression for _XSend 2023-11-18 09:38:25 +01:00

Release notes for Valgrind
~~~~~~~~~~~~~~~~~~~~~~~~~~
If you are building a binary package of Valgrind for distribution,
please read README_PACKAGERS.  It contains some important information.

If you are developing Valgrind, please read README_DEVELOPERS.  It contains
some useful information.

For instructions on how to build/install, see the end of this file.

If you have problems, consult the FAQ to see if there are workarounds.


Executive Summary
~~~~~~~~~~~~~~~~~
Valgrind is a framework for building dynamic analysis tools. There are
Valgrind tools that can automatically detect many memory management
and threading bugs, and profile your programs in detail. You can also
use Valgrind to build new tools.

The Valgrind distribution currently includes seven production-quality
tools: a memory error detector, two thread error detectors, a cache
and branch-prediction profiler, a call-graph generating cache and
branch-prediction profiler, and two heap profilers. It also includes
one experimental tool: a SimPoint basic block vector generator.

Valgrind is closely tied to details of the CPU, operating system and to
a lesser extent, compiler and basic C libraries. This makes it difficult
to make it portable.  Nonetheless, it is available for the following
platforms: 

- X86/Linux
- AMD64/Linux
- PPC32/Linux
- PPC64/Linux
- ARM/Linux
- ARM64/Linux
- X86/macOS
- AMD64/macOS
- S390X/Linux
- MIPS32/Linux
- MIPS64/Linux
- nanoMIPS/Linux
- X86/Solaris
- AMD64/Solaris
- X86/FreeBSD
- AMD64/FreeBSD
- ARM64/FreeBSD

Note that AMD64 is just another name for x86_64, and Valgrind runs fine
on Intel processors.  Also note that the core of macOS is called
"Darwin" and this name is used sometimes.

Valgrind is licensed under the GNU General Public License, version 3.
Read the file COPYING in the source distribution for details.

However: if you contribute code, you need to make it available as GPL
version 3 or later, and not 3-only.


Documentation
~~~~~~~~~~~~~
A comprehensive user guide is supplied.  Point your browser at
$PREFIX/share/doc/valgrind/manual.html, where $PREFIX is whatever you
specified with --prefix= when building.


Building and installing it
~~~~~~~~~~~~~~~~~~~~~~~~~~
To install from the GIT repository:

  0. Clone the code from GIT:
     git clone https://sourceware.org/git/valgrind.git
     There are further instructions at
     http://www.valgrind.org/downloads/repository.html.

  1. cd into the source directory.

  2. Run ./autogen.sh to setup the environment (you need the standard
     autoconf tools to do so).

  3. Continue with the following instructions...

To install from a tar.bz2 distribution:

  4. Run ./configure, with some options if you wish.  The only interesting
     one is the usual --prefix=/where/you/want/it/installed.

  5. Run "make".

  6. Run "make install", possibly as root if the destination permissions
     require that.

  7. See if it works.  Try "valgrind ls -l".  Either this works, or it
     bombs out with some complaint.  In that case, please let us know
     (see http://valgrind.org/support/bug_reports.html).

Important!  Do not move the valgrind installation into a place
different from that specified by --prefix at build time.  This will
cause things to break in subtle ways, mostly when Valgrind handles
fork/exec calls.


The Valgrind Developers