ed39800a83baf5bffbe391f3974eb2af0f415f80 |
|
21-Jun-2017 |
Elliott Hughes <enh@google.com> |
Upgrade to valgrind 3.13.0 (15 June 2017). 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
/external/valgrind/memcheck/memcheck.h
|
b3a1e4bffbdbbf38304f216af405009868f43628 |
|
21-Aug-2015 |
sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Update copyright dates, to include 2015. No functional change. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15577 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/memcheck.h
|
c5fc86696ed7196c8e9431b0ff5167ee906cdfba |
|
21-Mar-2014 |
sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Add client requests VALGRIND_DISABLE_ADDR_ERROR_REPORTING_IN_RANGE and VALGRIND_ENABLE_ADDR_ERROR_REPORTING_IN_RANGE and supporting machinery for managing whole-address-space sparse mappings. n-i-bz. In support of https://bugzilla.mozilla.org/show_bug.cgi?id=970643 git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13884 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/memcheck.h
|
0f157ddb404bcde7815a1c5bf2d7e41c114f3d73 |
|
18-Oct-2013 |
sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Update copyright dates (20XY-2012 ==> 20XY-2013) git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13658 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/memcheck.h
|
03f8d3fc25f5a45c5826259d1b33b7f310117279 |
|
05-Aug-2012 |
sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Update copyright dates to include 2012. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12843 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/memcheck.h
|
4b3a74204894e943c43cb8e8aae39d813040702c |
|
24-Oct-2011 |
sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Fix #284384 (clang 3.1 -Wunused-value warnings in valgrind.h, memcheck.h) by changing a bunch of VALGRIND_DO_CLIENT_REQUEST_EXPR into VALGRIND_DO_CLIENT_REQUEST_STMT for cases where the return value of the former would be unused. (Bart Van Assche, bart.vanassche@gmail.com) git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12226 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/memcheck.h
|
ec062e8d96a361af9905b5447027819dfbfee01a |
|
23-Oct-2011 |
sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Update all copyright dates, from 20xy-2010 to 20xy-2011. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12206 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/memcheck.h
|
06e9bf06cf953602adaf5e2a0a3f5522e4dc7f50 |
|
07-Oct-2011 |
bart <bart@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Avoid that using any of the VALGRIND_DISABLE_ERROR_REPORTING, VALGRIND_ENABLE_ERROR_REPORTING, VALGRIND_DO_ADDED_LEAK_CHECK, VALGRIND_DO_CHANGED_LEAK_CHECK macros causes gcc 4.6 to print a warning message about assigning a value to an unused variable. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12110 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/memcheck.h
|
c8bd1df6c23e2409512e1e50616e7dc3bae501a2 |
|
26-Jun-2011 |
sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Memcheck: * add delta leak checking functionality * some editing of related manual sections (Philippe Waroquiers, philippe.waroquiers@skynet.be). Bug 214909 comment 105. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11838 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/memcheck.h
|
575ce8ef8fa86a502dabe152293320676922dcfe |
|
15-May-2011 |
bart <bart@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Get rid of the remaining "set but not used" warnings reported by gcc 4.6 by swapping the roles of the VALGRIND_DO_CLIENT_REQUEST() and VALGRIND_DO_CLIENT_REQUEST_EXPR() macros. Also, many __attribute__((unused)) declarations on variables have been eliminated. Closes #269778. Note: so far this patch has been tested on x86/Linux, amd64/Linux and ppc64/Linux but not yet on any other supported CPU/OS combination. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11755 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/memcheck.h
|
66304e23eee4249f35561a70b41cc390d8d6e54f |
|
28-Mar-2011 |
sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Remove a bunch more warnings generated by gcc-4.6 about dead assignments ("[-Wunused-but-set-variable]"), in the test suite. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11675 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/memcheck.h
|
eb09f9e3746112fe8cfb0f42fa0a2bb08fca6530 |
|
22-Oct-2010 |
bart <bart@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Removed superfluous semicolon. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11476 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/memcheck.h
|
8c87e7135e4d41528e40166219a3e915da1fd972 |
|
18-Oct-2010 |
bart <bart@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Avoid that using VALGRIND_GET_VBITS() / VALGRIND_SET_VBITS() triggers warnings about casting away constness. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11451 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/memcheck.h
|
edef4176ea9d6720a7e698ae71650cb001bb22e6 |
|
02-Sep-2010 |
bart <bart@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
The client requests defined in memcheck.h can now be invoked from programs compiled with the Microsoft C compiler too. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11319 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/memcheck.h
|
9eecbbb9a9cbbd30b903c09a9e04d8efc20bda33 |
|
03-May-2010 |
sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Update copyright dates to 2010. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11121 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/memcheck.h
|
9f207460d70d38c46c9e81996a3dcdf90961c6db |
|
10-Mar-2009 |
njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Updated copyright years. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@9344 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/memcheck.h
|
8225cc0de2ccf390127b5910dceb7c6185091a38 |
|
09-Mar-2009 |
njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
This commit completely overhauls the leak checker. In particular: - It heavily refactors the code: uses better names for things, splits up complex functions that behaved very differently depending on how they were called, removes some redundancies, and generally makes it much simpler and easier to follow. - It adds lots of comments, both inline, and also a big explanatory one at the top which makes it clear exactly how the leak checker works and also exactly what is meant by definite, possible, and indirect leaks. It also has some ideas for future improvements. - All tabs have been converted to spaces. It also improves the functionality: - Previously if you did --leak-check=summary, indirect and suppressed blocks were counted as definite leaks. Now they are done properly, and so the summary results from --leak-check=summary match those from --leak-check=yes. - Previously, some possibly reachable blocks were miscategorised as definitely reachable, because only the pointer to the block itself was considered, not any preceding pointers in the chain. This is now fixed. - Added memcheck/tests/leak-cases, which fully tests all the possible combinations of directly/indirectly reachable and possibly/definitely reachable. And it improves the manual quite a bit, and the FAQ a little bit. This doesn't fix the leak checker to handle MALLOCLIKE_BLOCK works that have been taken from within malloc'd blocks, but I think I know how to do it and hope to do so in a subsequent commit. It also changes all instances of "<constant>memcheck</constant>" in the Memcheck manual to "Memcheck", for consistency and because "Memcheck" is easier to write. There's one similar case for DRD but I didn't change that. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@9330 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/memcheck.h
|
8df80b22d8f0ed19fb2d7ac7267b8015b202f661 |
|
02-Mar-2009 |
njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Merge r9299..r9303 (various leak-check test fixes) from the DARWIN branch. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@9304 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/memcheck.h
|
7db73be9f02a70ea9ccd8640670f10fcd4aabfcc |
|
12-May-2008 |
sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Make return types for some of the requests 64-bit clean. (following bug report/investigation by Bernard Solomon). git-svn-id: svn://svn.valgrind.org/valgrind/trunk@8048 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/memcheck.h
|
4d474d086188fd1f29fa97dbd84d8ea2e589a9b8 |
|
11-Feb-2008 |
sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Update copyright dates ("200X-2007" --> "200X-2008"). git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7398 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/memcheck.h
|
92676d73dac76085222e6e95fc8d18a039c054ff |
|
04-Dec-2007 |
njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Remove client requests that were deprecated in 3.2.0. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7274 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/memcheck.h
|
9ebd6e0c607fa30301b1325874eb8de871c21cc5 |
|
08-Jan-2007 |
sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Update copyright dates. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6488 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/memcheck.h
|
e4b0bf07b0ee0a18eacc5aba91686ab5fc1d327b |
|
06-Jun-2006 |
sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Update copyright dates. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5954 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/memcheck.h
|
36c11e9897195445f160f8c07245af3aaa3e3442 |
|
06-Apr-2006 |
njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Commit a patch from Olly Betts which avoids a possible problem with COUNT_LEAKS on 64-bit machines. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5832 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/memcheck.h
|
7fd15d674f18757167305947732057099e175914 |
|
31-Mar-2006 |
njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Make the BSD-style license notices slightly more accurate. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5803 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/memcheck.h
|
dbf7ca71128c6787ba8a99cbd03c3773ff572d96 |
|
31-Mar-2006 |
njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Terminology change: previously in Memcheck we had the four states: noaccess, writable, readable, other Now they are: noaccess, undefined, defined, partdefined As a result, the following names: make_writable, make_readable, check_writable, check_readable, check_defined have become: make_mem_undefined, make_mem_defined, check_mem_is_addressable, check_mem_is_defined, check_value_is_defined (and likewise for the upper-case versions for client request macros). The old MAKE_* and CHECK_* macros still work for backwards compatibility. This is much better, because the old names were subtly misleading. For example: - "readable" really meant "readable and writable". - "writable" really meant "writable and maybe readable, depending on how the read value is used". - "check_writable" really meant "check writable or readable" The new names avoid these problems. The recently-added macro which was called MAKE_DEFINED is now MAKE_MEM_DEFINED_IF_ADDRESSABLE. I also corrected the spelling of "addressable" in numerous places in memcheck.h. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5802 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/memcheck.h
|
1d0825ff46d57f0ce83c3fa88538a42f67022eee |
|
27-Mar-2006 |
njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Merge in the COMPVBITS branch to the trunk. This is a big change to Memcheck, replacing the 9-bits-per-byte shadow memory representation to a 2-bits-per-byte representation (with possibly a little more on the side) by taking advantage of the fact that extremely few memory bytes are partially defined. For the SPEC2k benchmarks with "test" inputs, this speeds up Memcheck by a (geometric mean) factor of 1.20, and reduces the size of shadow memory by a (geometric mean) factor of 4.26. At the same time, Addrcheck is removed. It hadn't worked for quite some time, and with these improvements in Memcheck its raisons-d'etre have shrivelled so much that it's not worth the effort to keep around. Hooray! Nb: this code hasn't been tested on PPC. If things go wrong, look first in the fast stack-handling functions (eg. mc_new_mem_stack_160, MC_(helperc_MAKE_STACK_UNINIT)). git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5791 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/memcheck.h
|
0928fedf21e9ddc1b1dead582fdaeda2cf346ee6 |
|
11-Mar-2006 |
sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Fix comment typo. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5746 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/memcheck.h
|
fb1e9ada13f0c46f84f3562d48213e8288cc135f |
|
10-Mar-2006 |
sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Add a new kind of memory-painting primitive, which is: 'make_defined'. For each byte in the range, if the byte is addressible, make it be initialised, but if it isn't addressible, leave it alone. So it's like a version of make_readable which doesn't alter addressibility. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5736 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/memcheck.h
|
9af10a1c0d1b8897195ccfbc6dc46d8113d77153 |
|
01-Feb-2006 |
sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Change the number of client request args from 4 to 5 as that may be useful in future. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5603 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/memcheck.h
|
0ec07f32bbbb209d749b9974408e6f025ad40b31 |
|
12-Jan-2006 |
sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Merge in function wrapping support from the FNWRAP branch. That branch hereby becomes inactive. This currently breaks everything except x86; fixes for amd64/ppc32 to follow. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5520 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/memcheck.h
|
0fe5a451791b73c10f1ec95a3aa16a86de1b40f1 |
|
14-Aug-2005 |
njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Remove ancient backwards compatibility code which is no longer needed, since backwards compatibility was broken in various other ways by 3.0.0. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@4408 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/memcheck.h
|
1f8b3e734bbebc5481c21c5a1fc896f4223a0138 |
|
22-Mar-2005 |
njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
De-convolute somewhat the client request usage for reporting overlap errors. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3407 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/memcheck.h
|
5361242f022b38fadb4cdf02428cea8b8d901a90 |
|
12-Mar-2005 |
njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Update copyright notice for 2005 on all relevant files. Don't bother trying to be selective about it. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3303 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/memcheck.h
|
b5f6f51ebcac183818061bf53427a3e7808ef10d |
|
11-Mar-2005 |
sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Merge in changes from the 2.4.0 line. This basically brings in the overhaul of the thread support. Many things are now probably broken, but at least with --tool=none, simple and not-so-simple threaded and non-thread programs work. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3265 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/memcheck.h
|
fc26ff9ed636a3dd79ee3d90e5e521bc7749f105 |
|
22-Nov-2004 |
njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Rename macros ("SKIN"-->"TOOL") git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3062 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/memcheck.h
|
7246d52d2433d65a01036ccffe1ae0dffaa496f0 |
|
06-Oct-2004 |
thughes <thughes@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Remove spurious (void) cast from VALGRIND_CHECK_DEFINED so that it actually does what the comment says it does. Patch from Nathan Kurz. CCMAIL: 90778-done@bugs.kde.org git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2728 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/memcheck.h
|
abcf6127c91a68126c2b88649d38249a5ecf1c71 |
|
04-Mar-2004 |
nethercote <nethercote@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Remove comma from last element of enum; C++ apparently doesn't allow it. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2286 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/memcheck.h
|
7cc9c239f785f2903b597cdb34418bed42d25331 |
|
21-Jan-2004 |
nethercote <nethercote@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Convert "skin" to "tool" in various places; almost entirely within comments, nothing that will affect code. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2217 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/memcheck.h
|
bb1c99123c95fb9a4a2617d6e1d09559ac68db80 |
|
04-Jan-2004 |
nethercote <nethercote@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Updated copyright dates for 2004. Also added a couple of missing headers and footers to some new files. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2177 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/memcheck.h
|
98abfc7bb7798c4ac4580f7e0bc7171de94a0255 |
|
16-Dec-2003 |
fitzhardinge <fitzhardinge@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
This jumbo-checkin is the Full Virtualization checkin. This eliminates Valgrind's dependency on the dynamic linker for getting started, and instead takes things into its own hands. This checkin doesn't add much in the way of new functionality, but it is the basis for all future work on Valgrind. It allows us much more flexibility in implementation, and well as increasing the reliability of Valgrind by protecting it more from its clients. This patch requires some changes to tools to update them to the changes in the tool API, but they are straightforward. See the posting "Heads up: Full Virtualization" on valgrind-developers for a more complete description of this change and its effects on you. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2118 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/memcheck.h
|
137bc55f216bc7d9528f159a78cdf9025e0b02ff |
|
14-Nov-2003 |
nethercote <nethercote@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Started to rescind the name "skin", replacing it with "tool". Did this in all the places that normal users will see: - command line: --tool=foo (although --skin=foo still works) - docs: removed all traces (included renaming coregrind_skins.html to coregrind_tools.html) - in the usage messages - in error messages Also did in in some places that I judged were unlikely to cause clashes with existing workspaces: - in the header comments of many files (eg. "This file is part of Memcheck, a Valgrind tool for...") - in the regtests script - in the .supp files - in AUTHORS - in README_MISSING_SYSCALL_OR_IOCTL Also update the AUTHORS file to mention Jeremy. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2027 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/memcheck.h
|
d799418996812817596beaa8b59563e3f3cb2dda |
|
02-Oct-2003 |
njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Moved the MALLOCLIKE and FREELIKE client requests out of memcheck.h, and into valgrind.h. Although these requests are not implemented by the core, they can be implemented by skins that track heap blocks, eg. Memcheck, Annelid, Massif. This is in preparation for committing Massif to the repository. I think I managed to make the change in a binary-compatible way. The only inconvenience for users is that if they have a client program compiled with the old requests in, Valgrind will abort with an explanatory message that tells them to recompile. Once they've done that (no changes to their program are required), it works again. I even updated the docs. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@1881 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/memcheck.h
|
6e69ecdc8436e2e6c0fcb2861fb1503ffcad3779 |
|
02-Oct-2003 |
njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Fixed up the client request info in the docs, which required splitting the core requests from the Memcheck requests and putting the descriptions in the appropriate parts of the docs. Removed the __VALGRIND_SOME_SKIN_H test -- it was designed to prevent people #including valgrind.h when they probably want memcheck.h, but it's actually a reasonable thing to do to #include valgrind.h alone, because there are some requests in valgrind.h. Removed references to VALGRIND_MAKE_NOACCESS_STACK from the docs, as it doesn't exist in the implementation. Fixed a few other minor things. MERGE TO STABLE git-svn-id: svn://svn.valgrind.org/valgrind/trunk@1880 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/memcheck.h
|
ee070841e197a311bb7a5bf966ff8babec134e6c |
|
05-Jul-2003 |
sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Add memcheck client requests VALGRIND_GET_VBITS / VALGRIND_SET_VBITS for fetching/setting metadata so that it can be sent between unconnected address spaces (or whatever). git-svn-id: svn://svn.valgrind.org/valgrind/trunk@1718 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/memcheck.h
|
107854599d05168b9b1bf1c69f3fcfc05877e98a |
|
20-May-2003 |
njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Added VALGRIND_MALLOCLIKE_BLOCK and VALGRIND_FREELIKE_BLOCK which allow you to use a custom-allocator and detect almost as many errors as you could detect if you used malloc/new/new[]. (eg. leaks detected, free errors, free mismatch, etc). Had to fiddle with mac_malloc_wrappers.c a bit to factor out the appropriate code to be called from the client request handling code. Also had to add a new element `MAC_AllocCustom' to the MAC_AllocKind type. Also added a little documentation, and a regression test. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@1643 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/memcheck.h
|
47363aba8fa03b094195bca99fc232ce5f85605d |
|
21-Apr-2003 |
njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Added two client requests: VALGRIND_COUNT_ERRORS and VALGRIND_COUNT_LEAKS. The first returns the number of errors found so far, and is a core request. The second returns the number of bytes found reachable/dubious/leaked/suppressed by all leak checks so far, for Memcheck and Addrcheck. Both are useful for using Valgrind in regression test suites where multiple tests are present in a single file -- one can run Valgrind with no output (using --logfile-fd=-1) and use the requests after each test to determine if any errors happened. Had to rename and make public vg_n_errs_found --> VG_(n_errs_found) to do so. Nb: leak errors are not counted as errors for the purposes of VALGRIND_COUNT_ERRORS. This was decided as the best thing to do after discussion with Olly Betts, who original suggested these changes. Pulled out common client request code shared between Memcheck and Addrcheck. Added a regression test for this. Added some documentation too. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@1533 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/memcheck.h
|
0e1b514ab8e837f75a207a037ea53a6a721e9d28 |
|
15-Apr-2003 |
njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Updated copyright notices for 2003. Only 4 months late. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@1526 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/memcheck.h
|
34a257cf51445a7149d3a57fb6ed003d08704830 |
|
15-Mar-2003 |
sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Various fixes to the client-perms include files to stop gccs yelping at high warning levels. Partially due to Andreas Jaeger and Hans-Peter Nilsson. MERGE TO STABLE. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@1457 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/memcheck.h
|
6591dc250c889506c5f6e1ccd939634de5a3ab74 |
|
15-Mar-2003 |
sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
A little cpp magic to cause compilation to fail if valgrind.h is included directly into sources (it should not be, and was causing people problems). MERGE TO STABLE git-svn-id: svn://svn.valgrind.org/valgrind/trunk@1456 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/memcheck.h
|
a81709d34f56d9426f996c3d3f7c858c3194ff7e |
|
28-Dec-2002 |
sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Remove the mechanism which allowed clients to set block permissions on their stacks and have those blocks automatically cleared when the stack retreats past them. This never really worked, certainly didn't work in a multithreaded setting, and slowed everything down due to having to do even more stuff at %esp changes. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@1399 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/memcheck.h
|
34042515c1715b3e0c5c0a5e0bd033e9d4858f01 |
|
22-Oct-2002 |
sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Merge patch from Jeremy Fitzhardinge: 08-skin-clientreq Introduce a systematic way for skins to distinguish each other's client requests. Uses the de-facto standard two-letter identifiers in the top two bytes of the client request code. Also changes the interface to SK_(handle_client_request) so that a skin can say whether or not it handled the request, which allows correct setting of the default return value if the request was not handled. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@1251 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/memcheck.h
|
c953984b8ee34ac55830b9871138b409d9d9476c |
|
02-Oct-2002 |
njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Updated file descriptions in the copyright notices to reflect the core/skin split. Each skin now has its own two-line description. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@1166 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/memcheck.h
|
cac76cb18577b9c51d331f56e8ea241f6effaf31 |
|
23-Sep-2002 |
njn25 <njn25@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Changed lots of files for the new core/ + skin/ directory structure: - changed lots of Makefile.am files - changed configure.in - changed lots of #include lines for changed file names - changed lots of file headers n footers for changed file names - changed vg_regtest to handle new directory structure -- recursively traverses subdirectories for .vgtest test files - changed lots of paths in memcheck/ regression test expected outputs git-svn-id: svn://svn.valgrind.org/valgrind/trunk@1090 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/memcheck.h
|
e49d8e7dfd3a9c96feb9935b5920973dfc0b170a |
|
23-Sep-2002 |
njn25 <njn25@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Files updated, added and removed in order to turn the ERASER branch into HEAD git-svn-id: svn://svn.valgrind.org/valgrind/trunk@1086 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/memcheck.h
|