We are pleased to announce a new release of Valgrind, version 3.28.0,
available from https://valgrind.org/downloads/current.html

This release should bring joy to x86 (32bit) users with support for
SSE4.1, SSE4.2, POPCNT and LZCNT. There is a new client request
VALGRIND_RUNNING_VERSION.  Support for zstd has been updated to
version 1.5.7. arm64 now supports the EOR3 instruction. s390x
implements DIDBR and DIEBR instructions. macOS 10.14 Mojave (x86) is
now supported, thanks to the addition of SSE4.1 support on x86. linux
ioctl UFFDIO_* are recognized for userfaultfd support. The Linux Test
Project (LTP) v20260930 was integrated. The massif ms_print script has
a new --peak-only option.

See the release notes below for details of the changes.

Our thanks to all those who contribute to Valgrind's development.
This release represents a great deal of time, energy and effort on the
part of many people with 185 commits by 16 people, fixing 43 bugs.

Happy and productive debugging and profiling,

-- The Valgrind Developers

Release 3.28.0 (23 Oct 2026)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~

This release supports X86/Linux, AMD64/Linux, ARM32/Linux,
ARM64/Linux, PPC32/Linux, PPC64BE/Linux, PPC64LE/Linux, S390X/Linux,
MIPS32/Linux, MIPS64/Linux, RISCV64/Linux, ARM/Android, ARM64/Android,
MIPS32/Android, X86/Android, X86/Solaris, AMD64/Solaris, X86/macOS,
AMD64/macOS.  X86/FreeBSD, AMD64/FreeBSD and ARM64/FreeBSD. There is
preliminary support for nanoMIPS/Linux. macOS is supported up to
version 13 Ventura (amd64 only).

* ==================== CORE CHANGES ===================

* There is a new client request

  - VALGRIND_RUNNING_VERSION returns the Valgrind version that
    the guest executable is running under. The value returned
    is a decimal value in the form Mmm where M is the major
    version and mm is the minor version. For instance, this
    release returns 328. Returns 0 if the executable is not
    running under Valgrind, or is running under a version older
    than 3.28.

* Support for zstd compressed debug sections has been updated
  to zstd version 1.5.7.

* ================== PLATFORM CHANGES =================

* x86: Support for SSE4.1 and SSE4.2 instructions has been ported from
  AMD64 to (32bit) x86. Valgrind will now advertise support for
  SSE4.1, SSE4.2, POPCNT and LZCNT through cpuid emulation if the host
  cpu supports those instruction sets (e.g. when 32bit x86 code runs
  on x86_64).

* arm64: Add support for the EOR3 instruction.

* s390x: Implement DIDBR and DIEBR instructions.

* macOS 10.14 Mojave (x86) is now supported, thanks to the addition
  of SSE4.1 support on x86.

* linux ioctl UFFDIO_* are recognized for userfaultfd support. Add
  support for the open_tree_attr syscall.

* The Linux Test Project (LTP) v20260930 was integrated.

* ==================== TOOL CHANGES ===================

* The massif ms_print script used to view results as text has a new
  --peak-only option. This is intended for use in Continuous Integration
  systems, making peak memory usage easier to parse.

* ==================== FIXED BUGS ====================

The following bugs have been fixed or resolved.  Note that "n-i-bz"
stands for "not in bugzilla" -- that is, a bug that was reported to us
but never got a bugzilla entry.  We encourage you to file bugs in
bugzilla (https://bugs.kde.org/enter_bug.cgi?product=valgrind) rather
than mailing the developers (or mailing lists) directly -- bugs that
are not entered into bugzilla tend to get forgotten about or ignored.

271615  Unhandled instruction "popcnt" on x86
295974  Add SSE4.1 PEXTRD instruction for x86 32 bit
338365  New client request to fetch valgrind version
387080  Add --peak-only option to ms_print
391311  Fix arm64 valgrind tests compilation with clang
438640  vex x86->IR: unhandled instruction bytes:
        0xF2 0xF 0x38 0xF1 (CRC, SSE4.2)
519223  Recognize ioctl(UFFDIO_*) operations
519539  Darwin shm_open mode is optional and depends on oflag
519574  valgrind 3.27 "--fair-sched=yes" does not work
519613  Valgrind incorrectly unpacks the result of sys_port (port_getn)
        on error, leading to a ~60s wallclock time delay on every call
518217  Add PHMINPOSUW SSE4.1 support for x86
518218  Add PMULDQ SSE4.1 support for x86
518219  Add DPPS, DPPD SSE4.1 support for x86
518220  Add ROUNDPS, ROUNDSS, ROUNDPD, ROUNDSD SSE4.1 support for x86
518221  Implement PMOVSXBW, PMOVZXBW, PMOVSXBD, PMOVZXBD, PMOVSXBQ,
        PMOVZXBQ, PMOVSXWD, PMOVZXWD, PMOVSXWQ, PMOVZXWQ, PMOVSXDQ,
        PMOVZXDQ SSE4.1 for x86
518222  SSE4.1 support for x86 (32bit)
520482  Advertise POPCNT on x86 via CPUID
520753  Advertise LZCNT via CPUID for x86 (32-bit) clients
520856  unhandled instruction bytes: 0x2E 0xFF 0x14 0x85
520861  Update FAQ for C++ standard library
521027  Advertise LZCNT on amd64 via CPUID
521054  Unhandled amd64-linux syscall: 467 (open_tree_attr)
521259  Improve check_makefile_consistency
521332  vex x86->IR: unhandled instruction bytes: 66 0F 38 37 (PCMPGTQ)
521413  Add PCMPxSTRx support for x86
521414  SSE4.2 support for x86 (32bit)
522160  Robustify the flags check in the none/tests/x86/crc32 test
522533  Valgrind can't handle some encoding from gas trunk with -Wa,-O2
523096  Add INSERTPS, PINSRB, PINSRW SSE4.1 support for x86
523097  Add EXTRACTPS, PEXTRB, PEXTRW SSE4.1 support for x86
523375  Fix none/tests/amd64/pcmpxstrx64.c
523434  Memcheck: false "Conditional jump depends on uninitialised value"
        for unsigned compares of partially-defined words (clang bitfield idiom)
523626  Fix sse4-x86 test fails when valgrind compiled with clang
523843  Ensure the stack alignment in doHelperCall [x86]
524312  Add support for illumos spawn(2)
525478  Valgrind's vgdb extended-remote mode broken on aarch64
526075  Tool link fails against a libgcc built without optimisation:
        undefined reference to _Unwind_Resume / __gcc_personality_v0
526648  --track-fds=yes with forkpty() causes a false positive
526840  Update the LTP version in valgrind testsuite to 20260930
526974  Fix do_mremap() retval for old_size > VMA size
527258  PPC: Fix r10 collision in 8-argument dirty helper calls
527283  Add support for illumos close_range
527268  Clean up unhandled client request traces

To see details of a given bug, visit
  https://bugs.kde.org/show_bug.cgi?id=XXXXXX
where XXXXXX is the bug number as listed above.

(3.28.0.RC1: 20 Oct 2026)


_______________________________________________
Valgrind-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/valgrind-users

Reply via email to