see http://www.valgrind.org/docs/manual/dist.news.html
* The new option --keep-debuginfo=no|yes (default no) can be used to retain
debug info for unloaded code. This allows saved stack traces (e.g. for
memory leaks) to include file/line info for code that has been dlclose'd (or
similar). See the user manual for more information and known limitations.
* Ability to specify suppressions based on source file name and line number.
* Majorly overhauled register allocator. No end-user changes, but the JIT
generates code a bit more quickly now.
* Preliminary support for macOS 10.13 has been added.
* mips: support for MIPS32/MIPS64 Revision 6 has been added.
* mips: support for MIPS SIMD architecture (MSA) has been added.
* mips: support for MIPS N32 ABI has been added.
* s390: partial support for vector instructions (integer and string) has been
added.
* Helgrind: Addition of a flag
--delta-stacktrace=no|yes [yes on linux amd64/x86]
which specifies how full history stack traces should be computed.
Setting this to =yes can speed up Helgrind by 25% when using
--history-level=full.
* Memcheck: reduced false positive rate for optimised code created by Clang 6
/ LLVM 6 on x86, amd64 and arm64. In particular, Memcheck analyses code
blocks more carefully to determine where it can avoid expensive definedness
checks without loss of precision. This is controlled by the flag
--expensive-definedness-checks=no|auto|yes [auto].
* Valgrind is now buildable with link-time optimisation (LTO). A new
configure option --enable-lto=yes allows building Valgrind with LTO. If the
toolchain supports it, this produces a smaller/faster Valgrind (up to 10%).
Note that if you are doing Valgrind development, --enable-lto=yes massively
slows down the build process.
OBS-URL: https://build.opensuse.org/package/show/devel:tools/valgrind?expand=0&rev=173
* 3.11.0 is a feature release with many improvements and the usual
collection of bug fixes.
- replace gcc-version.patch with gcc5.patch: This is the upstream
version
- drop valgrind-linux-4.0.patch: merged upstream
- add svn-r15766.patch: Fix valgrind with recent kernels
- jit-register-unregister.diff commented out, needs porting
OBS-URL: https://build.opensuse.org/package/show/devel:tools/valgrind?expand=0&rev=134
* Support for the 64-bit ARM Architecture (AArch64 ARMv8). This port
is mostly complete, and is usable, but some SIMD instructions are as
yet unsupported.
* Support for little-endian variant of the 64-bit POWER architecture.
* Support for Android on MIPS32.
* Support for 64bit FPU on MIPS32 platforms.
* Both 32- and 64-bit executables are supported on MacOSX 10.8 and 10.9.
* Configuration for and running on Android targets has changed.
See README.android in the source tree for details.
- drop VEX-r2803.diff, VEX-r2808.diff, VEX-r2816.diff, VEX-r2858.diff,
VEX-r2904.diff, VEX-r2910.diff, VEX-r2914.diff, VEX-r2915.diff,
VEX-r2916.diff, aarch64-VEX-support.diff, aarch64-support.diff,
r13767.diff, r13770.diff, r14184.diff, r14238.diff, r14239.diff,
r14240.diff, r14246.diff, r2798.diff, valgrind-r13948.diff
OBS-URL: https://build.opensuse.org/package/show/devel:tools/valgrind?expand=0&rev=119
- update to 3.9.0:
* Support for Intel AVX2 instructions. This is available only on 64
bit code.
* Support for POWER8 (Power ISA 2.07) instructions.
* Initial support for Intel Transactional Synchronization Extensions,
both RTM and HLE.
* Initial support for Hardware Transactional Memory on POWER.
* Improvements in handling of vectorised code, leading to
significantly fewer false error reports. You need to use the flag
--partial-loads-ok=yes to get the benefits of these changes.
* Better control over the leak checker. It is now possible to
specify which leak kinds (definite/indirect/possible/reachable)
should be displayed.
* Reduced "possible leak" reports from the leak checker by the use
of better heuristics.
* Better control of stacktrace acquisition for heap-allocated
blocks.
* Better reporting of leak suppression usage.
* New and modified GDB server monitor features.
* New flag --sigill-diagnostics to control whether a diagnostic
message is printed when the JIT encounters an instruction it can't
translate.
* The maximum amount of memory that Valgrind can use on 64 bit
targets has been increased from 32GB to 64GB.
* Additional smaller new features and many bug fixes.
- Remove obsolete raise-segnames-limit.diff,
valgrind-glibc-2.17.patch and valgrind-glibc-2.18.patch.
OBS-URL: https://build.opensuse.org/request/show/206037
OBS-URL: https://build.opensuse.org/package/show/devel:tools/valgrind?expand=0&rev=96
* Support for MIPS32 platforms running Linux. Valgrind has been
tested on MIPS32 and MIPS32r2 platforms running different Debian
Squeeze and MeeGo distributions. Both little-endian and big-endian
cores are supported. The tools Memcheck, Massif and Lackey have
been tested and are known to work. See README.mips for more details.
* Preliminary support for Android running on x86.
* Preliminary (as-yet largely unusable) support for MacOSX 10.8.
* Support for Intel AVX instructions and for AES instructions. This
support is available only for 64 bit code.
* Support for POWER Decimal Floating Point instructions.
* Non-libc malloc implementations are now supported. This is useful
for tools that replace malloc (Memcheck, Massif, DRD, Helgrind).
Using the new option --soname-synonyms, such tools can be informed
that the malloc implementation is either linked statically into the
executable, or is present in some other shared library different
from libc.so. This makes it possible to process statically linked
programs, and programs using other malloc libraries, for example
TCMalloc or JEMalloc.
* For tools that provide their own replacement for malloc et al, the
option --redzone-size=<number> allows users to specify the size of
the padding blocks (redzones) added before and after each client
allocated block. Smaller redzones decrease the memory needed by
Valgrind. Bigger redzones increase the chance to detect blocks
overrun or underrun. Prior to this change, the redzone size was
hardwired to 16 bytes in Memcheck.
* Memcheck:
- The leak_check GDB server monitor command now can
control the maximum nr of loss records to output.
- Reduction of memory use for applications allocating
OBS-URL: https://build.opensuse.org/package/show/devel:tools/valgrind?expand=0&rev=79
* Support for IBM z/Architecture (s390x) running Linux. Valgrind can
analyse 64-bit programs running on z/Architecture. Most user space
instructions up to and including z10 are supported.
See README.s390 for more details.
* Support for the IBM Power ISA 2.06 (Power7 instructions)
* Further solidification of support for SSE 4.2 in 64-bit mode
* Memcheck:
* - reduction of memory use in some circumstances
* - improved handling of freed memory for finding more errors
* - fix of a longstanding bug that could cause false negatives
* Helgrind:
* - Helgrind: performance improvements and major memory use reductions
* GDB server: Valgrind now has an embedded GDB server. That means it
is possible to control a Valgrind run from GDB, doing all the usual
things that GDB can do (single stepping, breakpoints, examining
data, etc). Tool-specific functionality is also available.
* Over 160 bugs have been fixed.
OBS-URL: https://build.opensuse.org/package/show/devel:tools/valgrind?expand=0&rev=54
3.6.1 is a bug fix release. It adds support for some SSE4
instructions that were omitted in 3.6.0 due to lack of time. Initial
support for glibc-2.13 has been added. A number of bugs causing
crashing or assertion failures have been fixed.
OBS-URL: https://build.opensuse.org/package/show/devel:tools/valgrind?expand=0&rev=24
3.6.0 is a feature release with many significant improvements and the
usual collection of bug fixes. See the NEWS file for details.
- apparently gcc-32bit does not exist on old code streams, but
it seems to work without it as well
- disable building docs until I find a way to build them without
network access
OBS-URL: https://build.opensuse.org/package/show/devel:tools/valgrind?expand=0&rev=20
- Valgrind runs much faster when the --smc-check=all option is given.
- Cachegrind has a new processing script, cg_diff, which finds the
difference between two profiles. It's very useful for evaluating the
performance effects of a change in a program.
Related to this change, the meaning of cg_annotate's (rarely-used)
--threshold option has changed; this is unlikely to affect many people, if
you do use it please see the user manual for details.
- Callgrind now can do branch prediction simulation, similar to Cachegrind.
In addition, it optionally can count the number of executed global bus events.
Both can be used for a better approximation of a "Cycle Estimation" as
derived event (you need to update the event formula in KCachegrind yourself).
- Cachegrind and Callgrind now refer to the LL (last-level) cache rather
than the L2 cache. This is to accommodate machines with three levels of
caches -- if Cachegrind/Callgrind auto-detects the cache configuration of
such a machine it will run the simulation as if the L2 cache isn't
present. This means the results are less likely to match the true result
for the machine, but Cachegrind/Callgrind's results are already only
approximate, and should not be considered authoritative. The results are
still useful for giving a general idea about a program's locality.
- Massif has a new option, --pages-as-heap, which is disabled by default.
When enabled, instead of tracking allocations at the level of heap blocks
(as allocated with malloc/new/new[]), it instead tracks memory allocations
at the level of memory pages (as mapped by mmap, brk, etc). Each mapped
page is treated as its own block. Interpreting the page-level output is
harder than the heap-level output, but this option is useful if you want
to account for every byte of memory used by a program.
- Added new memcheck command-line option --show-possibly-lost.
OBS-URL: https://build.opensuse.org/package/show/devel:tools/valgrind?expand=0&rev=17