Public domain memory debugging tools

Here is a short list of public domain memory debugging tools. They work
wonderfully well: no code modification, only a relink (static or dynamic
using LD_PRELOAD) is required.

Memory debuggers based on code re-interpretation

Julian Seward's Valgrind, an
open-source memory debugger for x86-linux.
Valgrind was released in February 2002 and reached version 1.0 in July
2002. It operates by just-in-time translation of x86 code on Linux. The
code must use at least one dynamic library. Except for a large
execution slowdown, there is no real practical limitation. Highly
recommended.