aboutsummaryrefslogtreecommitdiff
path: root/none
AgeCommit message (Collapse)Author
2017-06-21Upgrade to valgrind 3.13.0 (15 June 2017).Elliott Hughes
Release 3.13.0 (15 June 2017) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 3.13.0 is a feature release with many improvements and the usual collection of bug fixes. This release supports X86/Linux, AMD64/Linux, ARM32/Linux, ARM64/Linux, PPC32/Linux, PPC64BE/Linux, PPC64LE/Linux, S390X/Linux, MIPS32/Linux, MIPS64/Linux, ARM/Android, ARM64/Android, MIPS32/Android, X86/Android, X86/Solaris, AMD64/Solaris and AMD64/MacOSX 10.12. * ==================== CORE CHANGES =================== * The translation cache size has been increased to keep up with the demands of large applications. The maximum number of sectors has increased from 24 to 48. The default number of sectors has increased from 16 to 32 on all targets except Android, where the increase is from 6 to 12. * The amount of memory that Valgrind can use has been increased from 64GB to 128GB. In particular this means your application can allocate up to about 60GB when running on Memcheck. * Valgrind's default load address has been changed from 0x3800'0000 to 0x5800'0000, so as to make it possible to load larger executables. This should make it possible to load executables of size at least 1200MB. * A massive spaceleak caused by reading compressed debuginfo files has been fixed. Valgrind should now be entirely usable with gcc-7.0 "-gz" created debuginfo. * The C++ demangler has been updated. * Support for demangling Rust symbols has been added. * A new representation of stack traces, the "XTree", has been added. An XTree is a tree of stacktraces with data associated with the stacktraces. This is used by various tools (Memcheck, Helgrind, Massif) to report on the heap consumption of your program. Reporting is controlled by the new options --xtree-memory=none|allocs|full and --xtree-memory-file=<file>. A report can also be produced on demand using the gdbserver monitor command 'xtmemory [<filename>]>'. The XTree can be output in 2 formats: 'callgrind format' and 'massif format. The existing visualisers for these formats (e.g. callgrind_annotate, KCachegrind, ms_print) can be used to visualise and analyse these reports. Memcheck can also produce XTree leak reports using the Callgrind file format. For more details, see the user manual. * ================== PLATFORM CHANGES ================= * ppc64: support for ISA 3.0B and various fixes for existing 3.0 support * amd64: fixes for JIT failure problems on long AVX2 code blocks * amd64 and x86: support for CET prefixes has been added * arm32: a few missing ARMv8 instructions have been implemented * arm64, mips64, mips32: an alternative implementation of Load-Linked and Store-Conditional instructions has been added. This is to deal with processor implementations that implement the LL/SC specifications strictly and as a result cause Valgrind to hang in certain situations. The alternative implementation is automatically enabled at startup, as required. You can use the option --sim-hints=fallback-llsc to force-enable it if you want. * Support for OSX 10.12 has been improved. * On Linux, clone handling has been improved to honour CLONE_VFORK that involves a child stack. Note however that CLONE_VFORK | CLONE_VM is handled like CLONE_VFORK (by removing CLONE_VM), so applications that depend on CLONE_VM exact semantics will (still) not work. * The TileGX/Linux port has been removed because it appears to be both unused and unsupported. * ==================== TOOL CHANGES ==================== * Memcheck: - Memcheck should give fewer false positives when running optimised Clang/LLVM generated code. - Support for --xtree-memory and 'xtmemory [<filename>]>'. - New command line options --xtree-leak=no|yes and --xtree-leak-file=<file> to produce the end of execution leak report in a xtree callgrind format file. - New option 'xtleak' in the memcheck leak_check monitor command, to produce the leak report in an xtree file. * Massif: - Support for --xtree-memory and 'xtmemory [<filename>]>'. - For some workloads (typically, for big applications), Massif memory consumption and CPU consumption has decreased significantly. * Helgrind: - Support for --xtree-memory and 'xtmemory [<filename>]>'. - addition of client request VALGRIND_HG_GNAT_DEPENDENT_MASTER_JOIN, useful for Ada gnat compiled applications. * ==================== OTHER CHANGES ==================== * For Valgrind developers: in an outer/inner setup, the outer Valgrind will append the inner guest stacktrace to the inner host stacktrace. This helps to investigate the errors reported by the outer, when they are caused by the inner guest program (such as an inner regtest). See README_DEVELOPERS for more info. * To allow fast detection of callgrind files by desktop environments and file managers, the format was extended to have an optional first line that uniquely identifies the format ("# callgrind format"). Callgrind creates this line now, as does the new xtree functionality. * File name template arguments (such as --log-file, --xtree-memory-file, ...) have a new %n format letter that is replaced by a sequence number. * "--version -v" now shows the SVN revision numbers from which Valgrind was built. * ==================== 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. 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 below. 162848 --log-file output isn't split when a program forks 340777 Illegal instruction on mips (ar71xx) 341481 MIPS64: Iop_CmpNE32 triggers false warning on MIPS64 platforms 342040 Valgrind mishandles clone with CLONE_VFORK | CLONE_VM that clones to a different stack. 344139 x86 stack-seg overrides, needed by the Wine people 344524 store conditional of guest applications always fail - observed on Octeon3(MIPS) 348616 Wine/valgrind: noted but unhandled ioctl 0x5390 [..] (DVD_READ_STRUCT) 352395 Please provide SVN revision info in --version -v 352767 Wine/valgrind: noted but unhandled ioctl 0x5307 [..] (CDROMSTOP) 356374 Assertion 'DRD_(g_threadinfo)[tid].pt_threadid != INVALID_POSIX_THREADID' failed 358213 helgrind/drd bar_bad testcase hangs or crashes with new glibc pthread barrier implementation 358697 valgrind.h: Some code remains even when defining NVALGRIND 359202 Add musl libc configure/compile 360415 amd64 instructions ADCX and ADOX are not implemented in VEX == 372828 (vex amd64->IR: 0x66 0xF 0x3A 0x62 0x4A 0x10) 360429 unhandled ioctl 0x530d with no size/direction hints (CDROMREADMODE1) 362223 assertion failed when .valgrindrc is a directory instead of a file 367543 bt/btc/btr/bts x86/x86_64 instructions are poorly-handled wrt flags 367942 Segfault vgPlain_do_sys_sigaction (m_signals.c:1138) 368507 can't malloc chunks larger than about 34GB 368529 Android arm target link error, missing atexit and pthread_atfork 368863 WARNING: unhandled arm64-linux syscall: 100 (get_robust_list) 368865 WARNING: unhandled arm64-linux syscall: 272 (kcmp) 368868 disInstr(arm64): unhandled instruction 0xD53BE000 = cntfrq_el0 (ARMv8) 368917 WARNING: unhandled arm64-linux syscall: 218 (request_key) 368918 WARNING: unhandled arm64-linux syscall: 127 (sched_rr_get_interval) 368922 WARNING: unhandled arm64-linux syscall: 161 (sethostname) 368924 WARNING: unhandled arm64-linux syscall: 84 (sync_file_range) 368925 WARNING: unhandled arm64-linux syscall: 130 (tkill) 368926 WARNING: unhandled arm64-linux syscall: 97 (unshare) 369459 valgrind on arm64 violates the ARMv8 spec (ldxr/stxr) 370028 Reduce the number of compiler warnings on MIPS platforms 370635 arm64 missing syscall getcpu 371225 Fix order of timer_{gettime,getoverrun,settime} syscalls on arm64 371227 Clean AArch64 syscall table 371412 Rename wrap_sys_shmat to sys_shmat like other wrappers 371471 Valgrind complains about non legit memory leaks on placement new (C++) 371491 handleAddrOverrides() is [incorrect] when ASO prefix is used 371503 disInstr(arm64): unhandled instruction 0xF89F0000 371869 support '%' in symbol Z-encoding 371916 execution tree xtree concept 372120 c++ demangler demangles symbols which are not c++ 372185 Support of valgrind on ARMv8 with 32 bit executable 372188 vex amd64->IR: 0x66 0xF 0x3A 0x62 0x4A 0x10 0x10 0x48 (PCMPxSTRx $0x10) 372195 Power PC, xxsel instruction is not always recognized. 372504 Hanging on exit_group 372600 process loops forever when fatal signals are arriving quickly 372794 LibVEX (arm32 front end): 'Assertion szBlg2 <= 3' failed 373046 Stacks registered by core are never deregistered 373069 memcheck/tests/leak_cpp_interior fails with GCC 5.1+ 373086 Implement additional Xen hypercalls 373192 Calling posix_spawn in glibc 2.24 completely broken 373488 Support for fanotify API on ARM64 architecture == 368864 WARNING: unhandled arm64-linux syscall: 262 (fanotify_init) 373555 Rename BBPTR to GSPTR as it denotes guest state pointer only 373938 const IRExpr arguments for matchIRExpr() 374719 some spelling fixes 374963 increase valgrind's load address to prevent mmap failure 375514 valgrind_get_tls_addr() does not work in case of static TLS 375772 +1 error in get_elf_symbol_info() when computing value of 'hi' address for ML_(find_rx_mapping)() 375806 Test helgrind/tests/tc22_exit_w_lock fails with glibc 2.24 375839 Temporary storage exhausted, with long sequence of vfmadd231ps insns == 377159 "vex: the `impossible' happened" still present == 375150 Assertion 'tres.status == VexTransOK' failed == 378068 valgrind crashes on AVX2 function in FFmpeg 376142 Segfaults on MIPS Cavium Octeon boards 376279 disInstr(arm64): unhandled instruction 0xD50320FF 376455 Solaris: unhandled syscall lgrpsys(180) 376518 Solaris: unhandled fast trap getlgrp(6) 376611 ppc64 and arm64 don't know about prlimit64 syscall 376729 PPC64, remove R2 from the clobber list == 371668 376956 syswrap of SNDDRV and DRM_IOCTL_VERSION causing some addresses to be wrongly marked as addressable 377066 Some Valgrind unit tests fail to compile on Ubuntu 16.10 with PIE enabled by default 377376 memcheck/tests/linux/getregset fails with glibc2.24 377427 PPC64, lxv instruction failing on odd destination register 377478 PPC64: ISA 3.0 setup fixes 377698 Missing memory check for futex() uaddr arg for FUTEX_WAKE and FUTEX_WAKE_BITSET, check only 4 args for FUTEX_WAKE_BITSET, and 2 args for FUTEX_TRYLOCK_PI 377717 Fix massive space leak when reading compressed debuginfo sections 377891 Update Xen 4.6 domctl wrappers 377930 fcntl syscall wrapper is missing flock structure check 378524 libvexmultiarch_test regression on s390x and ppc64 378535 Valgrind reports INTERNAL ERROR in execve syscall wrapper 378673 Update libiberty demangler 378931 Add ISA 3.0B additional isnstructions, add OV32, CA32 setting support 379039 syscall wrapper for prctl(PR_SET_NAME) must not check more than 16 bytes 379094 Valgrind reports INTERNAL ERROR in rt_sigsuspend syscall wrapper 379371 UNKNOWN task message [id 3444, to mach_task_self(), reply 0x603] (task_register_dyld_image_infos) 379372 UNKNOWN task message [id 3447, to mach_task_self(), reply 0x603] (task_register_dyld_shared_cache_image_info) 379390 unhandled syscall: mach:70 (host_create_mach_voucher_trap) 379473 MIPS: add support for rdhwr cycle counter register 379504 remove TileGX/Linux port 379525 Support more x86 nop opcodes 379838 disAMode(x86): not an addr! 379703 PC ISA 3.0 fixes: stxvx, stxv, xscmpexpdp instructions 379890 arm: unhandled instruction: 0xEBAD 0x1B05 (sub.w fp, sp, r5, lsl #4) 379895 clock_gettime does not execute POST syscall wrapper 379925 PPC64, mtffs does not set the FPCC and C bits in the FPSCR correctly 379966 WARNING: unhandled amd64-linux syscall: 313 (finit_module) 380200 xtree generated callgrind files refer to files without directory name 380202 Assertion failure for cache line size (cls == 64) on aarch64. 380397 s390x: __GI_strcspn() replacement needed n-i-bz Fix pub_tool_basics.h build issue with g++ 4.4.7. (3.13.0.RC1: 2 June 2017, vex r3386, valgrind r16434) (3.13.0.RC2: 9 June 2017, vex r3389, valgrind r16443) (3.13.0: 14 June 2017, vex r3396, valgrind r16446) Bug: N/A Test: manual Change-Id: Id4498a49f462c3689cbcb35c15f96a8c7e3cea17
2017-04-19Upgrade to valgrind 3.12.0.Elliott Hughes
Release 3.12.0 (20 October 2016) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 3.12.0 is a feature release with many improvements and the usual collection of bug fixes. This release supports X86/Linux, AMD64/Linux, ARM32/Linux, ARM64/Linux, PPC32/Linux, PPC64BE/Linux, PPC64LE/Linux, S390X/Linux, MIPS32/Linux, MIPS64/Linux, ARM/Android, ARM64/Android, MIPS32/Android, X86/Android, X86/Solaris, AMD64/Solaris, X86/MacOSX 10.10 and AMD64/MacOSX 10.10. There is also preliminary support for X86/MacOSX 10.11/12, AMD64/MacOSX 10.11/12 and TILEGX/Linux. * ================== PLATFORM CHANGES ================= * POWER: Support for ISA 3.0 has been added * mips: support for O32 FPXX ABI has been added. * mips: improved recognition of different processors * mips: determination of page size now done at run time * amd64: Partial support for AMD FMA4 instructions. * arm, arm64: Support for v8 crypto and CRC instructions. * Improvements and robustification of the Solaris port. * Preliminary support for MacOS 10.12 (Sierra) has been added. Whilst 3.12.0 continues to support the 32-bit x86 instruction set, we would prefer users to migrate to 64-bit x86 (a.k.a amd64 or x86_64) where possible. Valgrind's support for 32-bit x86 has stagnated in recent years and has fallen far behind that for 64-bit x86 instructions. By contrast 64-bit x86 is well supported, up to and including AVX2. * ==================== TOOL CHANGES ==================== * Memcheck: - Added meta mempool support for describing a custom allocator which: - Auto-frees all chunks assuming that destroying a pool destroys all objects in the pool - Uses itself to allocate other memory blocks - New flag --ignore-range-below-sp to ignore memory accesses below the stack pointer, if you really have to. The related flag --workaround-gcc296-bugs=yes is now deprecated. Use --ignore-range-below-sp=1024-1 as a replacement. * DRD: - Improved thread startup time significantly on non-Linux platforms. * DHAT - Added collection of the metric "tot-blocks-allocd" * ==================== OTHER CHANGES ==================== * Replacement/wrapping of malloc/new related functions is now done not just for system libraries by default, but for any globally defined malloc/new related function (both in shared libraries and statically linked alternative malloc implementations). The dynamic (runtime) linker is excluded, though. To only intercept malloc/new related functions in system libraries use --soname-synonyms=somalloc=nouserintercepts (where "nouserintercepts" can be any non-existing library name). This new functionality is not implemented for MacOS X. * The maximum number of callers in a suppression entry is now equal to the maximum size for --num-callers (500). Note that --gen-suppressions=yes|all similarly generates suppressions containing up to --num-callers frames. * New and modified GDB server monitor features: - Valgrind's gdbserver now accepts the command 'catch syscall'. Note that you must have GDB >= 7.11 to use 'catch syscall' with gdbserver. * New option --run-cxx-freeres=<yes|no> can be used to change whether __gnu_cxx::__freeres() cleanup function is called or not. Default is 'yes'. * Valgrind is able to read compressed debuginfo sections in two formats: - zlib ELF gABI format with SHF_COMPRESSED flag (gcc option -gz=zlib) - zlib GNU format with .zdebug sections (gcc option -gz=zlib-gnu) * Modest JIT-cost improvements: the cost of instrumenting code blocks for the most common use case (x86_64-linux, Memcheck) has been reduced by 10%-15%. * Improved performance for programs that do a lot of discarding of instruction address ranges of 8KB or less. * The C++ symbol demangler has been updated. * More robustness against invalid syscall parameters on Linux. * ==================== 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. 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 below. 191069 Exiting due to signal not reported in XML output 199468 Suppressions: stack size limited to 25 while --num-callers allows more frames 212352 vex amd64 unhandled opc_aux = 0x 2, first_opcode == 0xDC (FCOM) 278744 cvtps2pd with redundant RexW 303877 valgrind doesn't support compressed debuginfo sections. 345307 Warning about "still reachable" memory when using libstdc++ from gcc 5 348345 Assertion fails for negative lineno 351282 V 3.10.1 MIPS softfloat build broken with GCC 4.9.3 / binutils 2.25.1 351692 Dumps created by valgrind are not readable by gdb (mips32 specific) 351804 Crash on generating suppressions for "printf" call on OS X 10.10 352197 mips: mmap2() not wrapped correctly for page size > 4096 353083 arm64 doesn't implement various xattr system calls 353084 arm64 doesn't support sigpending system call 353137 www: update info for Supported Platforms 353138 www: update "The Valgrind Developers" page 353370 don't advertise RDRAND in cpuid for Core-i7-4910-like avx2 machine == 365325 == 357873 353384 amd64->IR: 0x66 0xF 0x3A 0x62 0xD1 0x62 (pcmpXstrX $0x62) 353398 WARNING: unhandled amd64-solaris syscall: 207 353660 XML in auxwhat tag not escaping reserved symbols properly 353680 s390x: Crash with certain glibc versions due to non-implemented TBEGIN 353727 amd64->IR: 0x66 0xF 0x3A 0x62 0xD1 0x72 (pcmpXstrX $0x72) 353802 ELF debug info reader confused with multiple .rodata sections 353891 Assert 'bad_scanned_addr < VG_ROUNDDN(start+len, sizeof(Addr))' failed 353917 unhandled amd64-solaris syscall fchdir(120) 353920 unhandled amd64-solaris syscall: 170 354274 arm: unhandled instruction: 0xEBAD 0x0AC1 (sub.w sl, sp, r1, lsl #3) 354392 unhandled amd64-solaris syscall: 171 354797 Vbit test does not include Iops for Power 8 instruction support 354883 tst->os_state.pthread - magic_delta assertion failure on OSX 10.11 == 361351 == 362920 == 366222 354933 Fix documentation of --kernel-variant=android-no-hw-tls option 355188 valgrind should intercept all malloc related global functions 355454 do not intercept malloc related symbols from the runtime linker 355455 stderr.exp of test cases wrapmalloc and wrapmallocstatic overconstrained 356044 Dwarf line info reader misinterprets is_stmt register 356112 mips: replace addi with addiu 356393 valgrind (vex) crashes because isZeroU happened == 363497 == 364497 356676 arm64-linux: unhandled syscalls 125, 126 (sched_get_priority_max/min) 356678 arm64-linux: unhandled syscall 232 (mincore) 356817 valgrind.h triggers compiler errors on MSVC when defining NVALGRIND 356823 Unsupported ARM instruction: stlex 357059 x86/amd64: SSE cvtpi2ps with memory source does transition to MMX state 357338 Unhandled instruction for SHA instructions libcrypto Boring SSL 357673 crash if I try to run valgrind with a binary link with libcurl 357833 Setting RLIMIT_DATA to zero breaks with linux 4.5+ 357871 pthread_spin_destroy not properly wrapped 357887 Calls to VG_(fclose) do not close the file descriptor 357932 amd64->IR: accept redundant REX prefixes for {minsd,maxsd} m128, xmm. 358030 support direct socket calls on x86 32bit (new in linux 4.3) 358478 drd/tests/std_thread.cpp doesn't build with GCC6 359133 Assertion 'eltSzB <= ddpa->poolSzB' failed 359181 Buffer Overflow during Demangling 359201 futex syscall "skips" argument 5 if op is FUTEX_WAIT_BITSET 359289 s390x: popcnt (B9E1) not implemented 359472 The Power PC vsubuqm instruction doesn't always give the correct result 359503 Add missing syscalls for aarch64 (arm64) 359645 "You need libc6-dbg" help message could be more helpful 359703 s390: wire up separate socketcalls system calls 359724 getsockname might crash - deref_UInt should call safe_to_deref 359733 amd64 implement ld.so strchr/index override like x86 359767 Valgrind does not support the IBM POWER ISA 3.0 instructions, part 1/5 359829 Power PC test suite none/tests/ppc64/test_isa_2_07.c uses uninitialized data 359838 arm64: Unhandled instruction 0xD5033F5F (clrex) 359871 Incorrect mask handling in ppoll 359952 Unrecognised PCMPESTRM variants (0x70, 0x19) 360008 Contents of Power vr registers contents is not printed correctly when the --vgdb-shadow-registers=yes option is used 360035 POWER PC instruction bcdadd and bcdsubtract generate result with non-zero shadow bits 360378 arm64: Unhandled instruction 0x5E280844 (sha1h s4, s2) 360425 arm64 unsupported instruction ldpsw == 364435 360519 none/tests/arm64/memory.vgtest might fail with newer gcc 360571 Error about the Android Runtime reading below the stack pointer on ARM 360574 Wrong parameter type for an ashmem ioctl() call on Android and ARM64 360749 kludge for multiple .rodata sections on Solaris no longer needed 360752 raise the number of reserved fds in m_main.c from 10 to 12 361207 Valgrind does not support the IBM POWER ISA 3.0 instructions, part 2/5 361226 s390x: risbgn (EC59) not implemented 361253 [s390x] ex_clone.c:42: undefined reference to `pthread_create' 361354 ppc64[le]: wire up separate socketcalls system calls 361615 Inconsistent termination for multithreaded process terminated by signal 361926 Unhandled Solaris syscall: sysfs(84) 362009 V dumps core on unimplemented functionality before threads are created 362329 Valgrind does not support the IBM POWER ISA 3.0 instructions, part 3/5 362894 missing (broken) support for wbit field on mtfsfi instruction (ppc64) 362935 [AsusWRT] Assertion 'sizeof(TTEntryC) <= 88' failed 362953 Request for an update to the Valgrind Developers page 363680 add renameat2() support 363705 arm64 missing syscall name_to_handle_at and open_by_handle_at 363714 ppc64 missing syscalls sync, waitid and name_to/open_by_handle_at 363858 Valgrind does not support the IBM POWER ISA 3.0 instructions, part 4/5 364058 clarify in manual limitations of array overruns detections 364413 pselect sycallwrapper mishandles NULL sigmask 364728 Power PC, missing support for several HW registers in get_otrack_shadow_offset_wrk() 364948 Valgrind does not support the IBM POWER ISA 3.0 instructions, part 5/5 365273 Invalid write to stack location reported after signal handler runs 365912 ppc64BE segfault during jm-insns test (RELRO) 366079 FPXX Support for MIPS32 Valgrind 366138 Fix configure errors out when using Xcode 8 (clang 8.0.0) 366344 Multiple unhandled instruction for Aarch64 (0x0EE0E020, 0x1AC15800, 0x4E284801, 0x5E040023, 0x5E056060) 367995 Integration of memcheck with custom memory allocator 368120 x86_linux asm _start functions do not keep 16-byte aligned stack pointer 368412 False positive result for altivec capability check 368416 Add tc06_two_races_xml.exp output for ppc64 368419 Perf Events ioctls not implemented 368461 mmapunmap test fails on ppc64 368823 run_a_thread_NORETURN assembly code typo for VGP_arm64_linux target 369000 AMD64 fma4 instructions unsupported. 369169 ppc64 fails jm_int_isa_2_07 test 369175 jm_vec_isa_2_07 test crashes on ppc64 369209 valgrind loops and eats up all memory if cwd doesn't exist. 369356 pre_mem_read_sockaddr syscall wrapper can crash with bad sockaddr 369359 msghdr_foreachfield can crash when handling bad iovec 369360 Bad sigprocmask old or new sets can crash valgrind 369361 vmsplice syscall wrapper crashes on bad iovec 369362 Bad sigaction arguments crash valgrind 369383 x86 sys_modify_ldt wrapper crashes on bad ptr 369402 Bad set/get_thread_area pointer crashes valgrind 369441 bad lvec argument crashes process_vm_readv/writev syscall wrappers 369446 valgrind crashes on unknown fcntl command 369439 S390x: Unhandled insns RISBLG/RISBHG and LDE/LDER 369468 Remove quadratic metapool algorithm using VG_(HT_remove_at_Iter) 370265 ISA 3.0 HW cap stuff needs updating 371128 BCD add and subtract instructions on Power BE in 32-bit mode do not work n-i-bz Fix incorrect (or infinite loop) unwind on RHEL7 x86 and amd64 n-i-bz massif --pages-as-heap=yes does not report peak caused by mmap+munmap n-i-bz false positive leaks due to aspacemgr merging heap & non heap segments n-i-bz Fix ppoll_alarm exclusion on OS X n-i-bz Document brk segment limitation, reference manual in limit reached msg. n-i-bz Fix clobber list in none/tests/amd64/xacq_xrel.c [valgrind r15737] n-i-bz Bump allowed shift value for "add.w reg, sp, reg, lsl #N" [vex r3206] n-i-bz amd64: memcheck false positive with shr %edx n-i-bz arm3: Allow early writeback of SP base register in "strd rD, [sp, #-16]" n-i-bz ppc: Fix two cases of PPCAvFpOp vs PPCFpOp enum confusion n-i-bz arm: Fix incorrect register-number constraint check for LDAEX{,B,H,D} n-i-bz DHAT: added collection of the metric "tot-blocks-allocd" (3.12.0.RC1: 20 October 2016, vex r3282, valgrind r16094) (3.12.0.RC2: 20 October 2016, vex r3282, valgrind r16096) (3.12.0: 21 October 2016, vex r3282, valgrind r16098) Bug: http://b/37470713 Bug: http://b/29251682 Test: ran runtests-arm(64)?.sh and the bug reporter's specific binary (32- and 64-bit) Change-Id: I43ccbea946d89fc4ae9f355181ac5061d6ce4453
2015-10-12Bug #278744 cvtps2pd with redundant RexW.mjw
Add testcase for VEX svn r3198. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15699 a5019735-40e9-0310-863c-91ae7b9d1cf9
2015-10-03Follow up to r15628, properly guard none/tests/ansi and fix a typo. n-i-bz.rhyskidd
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15697 a5019735-40e9-0310-863c-91ae7b9d1cf9
2015-09-10Avoid compiler warning about uninitialised variable.florian
Observed with gcc 5.1 git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15648 a5019735-40e9-0310-863c-91ae7b9d1cf9
2015-09-09libvex_test: Use arm64_[di]MinLine_lg2_szB values that make libvex happy.mjw
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15647 a5019735-40e9-0310-863c-91ae7b9d1cf9
2015-09-08Make distcheck happy. Fix srcdir != builddir in none/tests/tilegx.mjw
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15641 a5019735-40e9-0310-863c-91ae7b9d1cf9
2015-09-05Changes related to new IROp Iop_RoundF128toInt. See VEX r3183.florian
s390: Add testcase for fixbr. Patch by Andreas Arnez <arnez@linux.vnet.ibm.com>. Part of fixing BZ #350290. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15629 a5019735-40e9-0310-863c-91ae7b9d1cf9
2015-09-05Do not compile ansi.c with clang as that compiler does notflorian
recognise the -ansi command line option. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15628 a5019735-40e9-0310-863c-91ae7b9d1cf9
2015-09-05Add callgrind.hflorian
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15627 a5019735-40e9-0310-863c-91ae7b9d1cf9
2015-09-05Update line number as a result of r15624.florian
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15626 a5019735-40e9-0310-863c-91ae7b9d1cf9
2015-09-04Add an assert.florian
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15624 a5019735-40e9-0310-863c-91ae7b9d1cf9
2015-09-04To test extended BFP opcodes we need sizeof(long double) == 16.florian
Certain old versions of GCC don't have that as default. So we must give -mlong-double-128 on the command line. Pertains to BZ #352183. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15623 a5019735-40e9-0310-863c-91ae7b9d1cf9
2015-09-02Suppress unwanted clang 3.7 warnings.florian
Fix undefined behaviour in perf/tinycc.c git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15616 a5019735-40e9-0310-863c-91ae7b9d1cf9
2015-09-02Bug 351873 Newer gcc doesn't allow __builtin_tabortdc[i] in ppc32 mode.mjw
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15615 a5019735-40e9-0310-863c-91ae7b9d1cf9
2015-09-01Document that --read-inline-info=yes is the defaultiraisr
even on Solaris for Memcheck, Helgrind and DRD. n-i-bz git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15613 a5019735-40e9-0310-863c-91ae7b9d1cf9
2015-08-31clang miscompiles faultstatus.c function test5().florian
First it choses %eax as the 1st operand of the bound insn. Then it complains that %eax is invalid. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15610 a5019735-40e9-0310-863c-91ae7b9d1cf9
2015-08-31Comment out unused functions to avoid clang warnings.florian
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15605 a5019735-40e9-0310-863c-91ae7b9d1cf9
2015-08-31Change the default setting for --dsymutil from =no to =yes, sincesewardj
in practice it needs to be permanently enabled on OS X. No change on other platforms. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15603 a5019735-40e9-0310-863c-91ae7b9d1cf9
2015-08-31Change the --smc-check default value to =all-non-file.sewardj
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15601 a5019735-40e9-0310-863c-91ae7b9d1cf9
2015-08-21More copyright date changes for 2015 (fallout from r15577)sewardj
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15578 a5019735-40e9-0310-863c-91ae7b9d1cf9
2015-08-21Update copyright dates, to include 2015. No functional change.sewardj
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15577 a5019735-40e9-0310-863c-91ae7b9d1cf9
2015-08-17Add bug338606 testfile to none/tests/scripts/Makefile.am EXTRA_DIST.mjw
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15561 a5019735-40e9-0310-863c-91ae7b9d1cf9
2015-08-17Add test cases for VCVT.{S,U}32.F32, S[n], S[n], #imm.sewardj
Pertains to #342783. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15559 a5019735-40e9-0310-863c-91ae7b9d1cf9
2015-08-16Enable building of ARMv8 crypto instruction tests, having finallysewardj
figured out what the relevant gcc flag is. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15557 a5019735-40e9-0310-863c-91ae7b9d1cf9
2015-08-16Add test cases for PRFM (register). Pertains to #345177.sewardj
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15555 a5019735-40e9-0310-863c-91ae7b9d1cf9
2015-08-15Increase test coverage on OS X, by re-enabling the none/tests/amd64/avx2-1 ↵rhyskidd
regression test. n-i-bz (Unfortunately I don’t have right here the hw support, but build environment works) $ perl tests/vg_regtest none/tests/amd64/avx2-1 avx2-1: (skipping, prereq failed: test -x avx2-1 && ../../../tests/x86_amd64_features amd64-avx) == 0 tests, 0 stderr failures, 0 stdout failures, 0 stderrB failures, 0 stdoutB failures, 0 post failures == On OS X 10.10 Before: == 594 tests, 215 stderr failures, 9 stdout failures, 0 stderrB failures, 0 stdoutB failures, 30 post failures == After: == 594 tests, 215 stderr failures, 9 stdout failures, 0 stderrB failures, 0 stdoutB failures, 30 post failures == git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15553 a5019735-40e9-0310-863c-91ae7b9d1cf9
2015-08-15Preliminary OS X memalign() shim work, although this specific regression ↵rhyskidd
test remains guarded due to clang build issues with _randArray. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15552 a5019735-40e9-0310-863c-91ae7b9d1cf9
2015-08-15Increase test coverage on OS X, by re-enabling the none/tests/amd64/avx-1 ↵rhyskidd
regression tests with a handy memalign() shim. n-i-bz (Unfortunately I don’t have right here the hw support, but build environment works) $ perl tests/vg_regtest none/tests/amd64/avx-1 avx-1: (skipping, prereq failed: test -x avx-1 && ../../../tests/x86_amd64_features amd64-avx) == 0 tests, 0 stderr failures, 0 stdout failures, 0 stderrB failures, 0 stdoutB failures, 0 post failures == On OS X 10.10 Before: == 594 tests, 215 stderr failures, 9 stdout failures, 0 stderrB failures, 0 stdoutB failures, 30 post failures == After: == 594 tests, 215 stderr failures, 9 stdout failures, 0 stderrB failures, 0 stdoutB failures, 30 post failures == git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15550 a5019735-40e9-0310-863c-91ae7b9d1cf9
2015-08-15Increase test coverage on OS X, by re-enabling the none/tests/*/movbe ↵rhyskidd
regression tests with a handy memalign() shim. n-i-bz $ perl tests/vg_regtest none/tests/x86/movbe none/tests/amd64/movbe movbe: valgrind -q ./movbe movbe: valgrind -q ./movbe == 2 tests, 0 stderr failures, 0 stdout failures, 0 stderrB failures, 0 stdoutB failures, 0 post failures == On OS X 10.10 Before: == 592 tests, 215 stderr failures, 9 stdout failures, 0 stderrB failures, 0 stdoutB failures, 30 post failures == After: == 594 tests, 215 stderr failures, 9 stdout failures, 0 stderrB failures, 0 stdoutB failures, 30 post failures == git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15549 a5019735-40e9-0310-863c-91ae7b9d1cf9
2015-08-15Plumb through memalign16() rather than having four implementations of the ↵rhyskidd
same code. n-i-bz. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15548 a5019735-40e9-0310-863c-91ae7b9d1cf9
2015-08-15Add regression test for bz#350062 - vex x86->IR: unhandled instruction ↵rhyskidd
bytes: 0x66 0xF 0x3A 0xB (ROUNDSD) on OS X. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15546 a5019735-40e9-0310-863c-91ae7b9d1cf9
2015-08-14Newer Solaris has added /proc/self/cmdline and /proc/<pid>/cmdline.iraisr
Add support for it in the syswrap machinery and test it more thoroughly. n-i-bz git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15545 a5019735-40e9-0310-863c-91ae7b9d1cf9
2015-08-13do_cmpxchg8b(): fix incorrect inline assembly (wrong register name)sewardj
and updated expected result. n-i-bz. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15536 a5019735-40e9-0310-863c-91ae7b9d1cf9
2015-08-13Add test cases for PCMPxSTRx case 0x18.sewardj
Pertains to #348574, vex r3172. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15535 a5019735-40e9-0310-863c-91ae7b9d1cf9
2015-08-13Add test cases for PCMPxSTRx case 0x42.sewardj
Pertains to #339820, vex r3171. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15534 a5019735-40e9-0310-863c-91ae7b9d1cf9
2015-08-13Add test cases for missing AVX VCMPPD/VCMPPS cases.sewardj
Pertains to vex r3170. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15532 a5019735-40e9-0310-863c-91ae7b9d1cf9
2015-08-11For those testcases that crash one way or anotherflorian
remove any core files after running the test. Patch by Matthias Schwarzott <zzam@gentoo.org> git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15520 a5019735-40e9-0310-863c-91ae7b9d1cf9
2015-08-11In filter_stderr_basic do not remove lines beginning withflorian
--pid: i.e. debug output. Asserts originating from the address space manager look exactly like that and we do not want to filter those out by default. Remove some specialised filter scripts that are no longer needed and update a few .vgtest files accordingly. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15519 a5019735-40e9-0310-863c-91ae7b9d1cf9
2015-08-09Fix another GCC 5.1 warning.florian
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15512 a5019735-40e9-0310-863c-91ae7b9d1cf9
2015-08-05Fix typo: add missing space between $(AM_CFLAGS) and @FLAG_FSANITIZE@philippe
(spotted by Bart and Florian). git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15496 a5019735-40e9-0310-863c-91ae7b9d1cf9
2015-08-05Let "make distclean" remove generated tilegx instruction test fileszliu
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15488 a5019735-40e9-0310-863c-91ae7b9d1cf9
2015-08-05Fix issue of "make dist BUILD_ALL_DOCS=no"zliu
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15487 a5019735-40e9-0310-863c-91ae7b9d1cf9
2015-08-04Ensure libvex tests in none are compiling on amd64, when configuring for 32 ↵philippe
bits only Patch from Matthias Schwarzott git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15485 a5019735-40e9-0310-863c-91ae7b9d1cf9
2015-08-04Fix the "make regtest" error caused by the new tilegx instruction testszliu
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15481 a5019735-40e9-0310-863c-91ae7b9d1cf9
2015-08-03Guard two hanging tests on OS X 10.11, which otherwise prevent regression ↵rhyskidd
test suite from running in automated manner. n-i-bz git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15474 a5019735-40e9-0310-863c-91ae7b9d1cf9
2015-08-01Check for Solaris specific program headers PT_SUNW_SYSSTAT and ↵iraisr
PT_SUNW_SYSSTAT_ZONE; and act accordingly. Test cases provided. n-i-bz git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15469 a5019735-40e9-0310-863c-91ae7b9d1cf9
2015-08-01Merge tilegx instruction test patch "valgrind-tilegx-instruction-test.patch"zliu
in Bug 345921 - Add TileGX instruction set test in none/tests/tilegx Submitted by Liming Sun, lsun@ezchip.com git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15466 a5019735-40e9-0310-863c-91ae7b9d1cf9
2015-07-31Properly guard none/tests/amd64/avx-1. This resolves one failing regression ↵rhyskidd
test on OS X with modern hardware. n-i-bz. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15463 a5019735-40e9-0310-863c-91ae7b9d1cf9
2015-07-31Fix testcase such that it can be run under cron on Solaris.florian
The tescase depends on SIGHUP to be delivered but cron on Solaris ignored the signal. So it needs to be enabled in child processes after fork. Patch by Ivo Raisr <ivosh@ivosh.net>. Fixes BZ #350809. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15462 a5019735-40e9-0310-863c-91ae7b9d1cf9