* Added ARM64 support for FreeBSD.
* ARM64 now supports dotprod instructions (sdot/udot).
* AMD64 better supports code build with -march=x86-64-v3.
fused-multiple-add instructions (fma) are now emulated more
accurately. And memcheck now handles __builtin_strcmp using 128/256
bit vectors with sse4.1, avx/avx2.
* S390X added support for NNPA (neural network processing assist)
facility vector instructions VCNF, VCLFNH, VCFN, VCLFNL, VCRNF and
NNPA (z16/arch14).
* X86 recognizes new binutils-2.42 nop patterns.
- drop VEX-x86-nop-pattern.patch (upstream)
- drop armv6-support.diff (obsolete)
OBS-URL: https://build.opensuse.org/package/show/devel:tools/valgrind?expand=0&rev=279
* Many bugfixes, too many to list here, see NEWS file
- The implicit memcpy done by each call to realloc now counts towards the
read and write counts of resized heap blocks, making those counts higher
and more accurate.
- cg_annotate's --auto and --show-percs options now default to 'yes', because
they are usually wanted.
- callgrind_annotate's --auto and --show-percs options now default to 'yes',
because they are usually wanted.
- The command option --collect-systime has been enhanced to specify
the unit used to record the elapsed time spent during system calls.
The command option now accepts the values no|yes|msec|usec|nsec,
where yes is a synonym of msec. When giving the value nsec, the
system cpu time of system calls is also recorded.
- Several memcheck options are now dynamically changeable.
Use valgrind --help-dyn-options to list them.
- The release 3.15 introduced a backward incompatible change for
some suppression entries related to preadv and pwritev syscalls.
When reading a suppression entry using the unsupported 3.14 format,
valgrind will now produce a warning to say the suppression entry will not
work, and suggest the needed change.
- Significantly fewer false positive errors on optimised code generated by
Clang and GCC. In particular, Memcheck now deals better with the
situation where the compiler will transform C-level "A && B" into "B && A"
under certain circumstances (in which the transformation is valid).
Handling of integer equality/non-equality checks on partially defined
values is also improved on some architectures.
- The exprimental Stack and Global Array Checking tool has been removed.
It only ever worked on x86 and amd64, and even on those it had a
high false positive rate and was slow. An alternative for detecting
OBS-URL: https://build.opensuse.org/package/show/devel:tools/valgrind?expand=0&rev=221
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