You can subscribe to this list here.
| 2002 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
(122) |
Nov
(152) |
Dec
(69) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2003 |
Jan
(6) |
Feb
(25) |
Mar
(73) |
Apr
(82) |
May
(24) |
Jun
(25) |
Jul
(10) |
Aug
(11) |
Sep
(10) |
Oct
(54) |
Nov
(203) |
Dec
(182) |
| 2004 |
Jan
(307) |
Feb
(305) |
Mar
(430) |
Apr
(312) |
May
(187) |
Jun
(342) |
Jul
(487) |
Aug
(637) |
Sep
(336) |
Oct
(373) |
Nov
(441) |
Dec
(210) |
| 2005 |
Jan
(385) |
Feb
(480) |
Mar
(636) |
Apr
(544) |
May
(679) |
Jun
(625) |
Jul
(810) |
Aug
(838) |
Sep
(634) |
Oct
(521) |
Nov
(965) |
Dec
(543) |
| 2006 |
Jan
(494) |
Feb
(431) |
Mar
(546) |
Apr
(411) |
May
(406) |
Jun
(322) |
Jul
(256) |
Aug
(401) |
Sep
(345) |
Oct
(542) |
Nov
(308) |
Dec
(481) |
| 2007 |
Jan
(427) |
Feb
(326) |
Mar
(367) |
Apr
(255) |
May
(244) |
Jun
(204) |
Jul
(223) |
Aug
(231) |
Sep
(354) |
Oct
(374) |
Nov
(497) |
Dec
(362) |
| 2008 |
Jan
(322) |
Feb
(482) |
Mar
(658) |
Apr
(422) |
May
(476) |
Jun
(396) |
Jul
(455) |
Aug
(267) |
Sep
(280) |
Oct
(253) |
Nov
(232) |
Dec
(304) |
| 2009 |
Jan
(486) |
Feb
(470) |
Mar
(458) |
Apr
(423) |
May
(696) |
Jun
(461) |
Jul
(551) |
Aug
(575) |
Sep
(134) |
Oct
(110) |
Nov
(157) |
Dec
(102) |
| 2010 |
Jan
(226) |
Feb
(86) |
Mar
(147) |
Apr
(117) |
May
(107) |
Jun
(203) |
Jul
(193) |
Aug
(238) |
Sep
(300) |
Oct
(246) |
Nov
(23) |
Dec
(75) |
| 2011 |
Jan
(133) |
Feb
(195) |
Mar
(315) |
Apr
(200) |
May
(267) |
Jun
(293) |
Jul
(353) |
Aug
(237) |
Sep
(278) |
Oct
(611) |
Nov
(274) |
Dec
(260) |
| 2012 |
Jan
(303) |
Feb
(391) |
Mar
(417) |
Apr
(441) |
May
(488) |
Jun
(655) |
Jul
(590) |
Aug
(610) |
Sep
(526) |
Oct
(478) |
Nov
(359) |
Dec
(372) |
| 2013 |
Jan
(467) |
Feb
(226) |
Mar
(391) |
Apr
(281) |
May
(299) |
Jun
(252) |
Jul
(311) |
Aug
(352) |
Sep
(481) |
Oct
(571) |
Nov
(222) |
Dec
(231) |
| 2014 |
Jan
(185) |
Feb
(329) |
Mar
(245) |
Apr
(238) |
May
(281) |
Jun
(399) |
Jul
(382) |
Aug
(500) |
Sep
(579) |
Oct
(435) |
Nov
(487) |
Dec
(256) |
| 2015 |
Jan
(338) |
Feb
(357) |
Mar
(330) |
Apr
(294) |
May
(191) |
Jun
(108) |
Jul
(142) |
Aug
(261) |
Sep
(190) |
Oct
(54) |
Nov
(83) |
Dec
(22) |
| 2016 |
Jan
(49) |
Feb
(89) |
Mar
(33) |
Apr
(50) |
May
(27) |
Jun
(34) |
Jul
(53) |
Aug
(53) |
Sep
(98) |
Oct
(206) |
Nov
(93) |
Dec
(53) |
| 2017 |
Jan
(65) |
Feb
(82) |
Mar
(102) |
Apr
(86) |
May
(187) |
Jun
(67) |
Jul
(23) |
Aug
(93) |
Sep
(65) |
Oct
(45) |
Nov
(35) |
Dec
(17) |
| 2018 |
Jan
(26) |
Feb
(35) |
Mar
(38) |
Apr
(32) |
May
(8) |
Jun
(43) |
Jul
(27) |
Aug
(30) |
Sep
(43) |
Oct
(42) |
Nov
(38) |
Dec
(67) |
| 2019 |
Jan
(32) |
Feb
(37) |
Mar
(53) |
Apr
(64) |
May
(49) |
Jun
(18) |
Jul
(14) |
Aug
(53) |
Sep
(25) |
Oct
(30) |
Nov
(49) |
Dec
(31) |
| 2020 |
Jan
(87) |
Feb
(45) |
Mar
(37) |
Apr
(51) |
May
(99) |
Jun
(36) |
Jul
(11) |
Aug
(14) |
Sep
(20) |
Oct
(24) |
Nov
(40) |
Dec
(23) |
| 2021 |
Jan
(14) |
Feb
(53) |
Mar
(85) |
Apr
(15) |
May
(19) |
Jun
(3) |
Jul
(14) |
Aug
(1) |
Sep
(57) |
Oct
(73) |
Nov
(56) |
Dec
(22) |
| 2022 |
Jan
(3) |
Feb
(22) |
Mar
(6) |
Apr
(55) |
May
(46) |
Jun
(39) |
Jul
(15) |
Aug
(9) |
Sep
(11) |
Oct
(34) |
Nov
(20) |
Dec
(36) |
| 2023 |
Jan
(79) |
Feb
(41) |
Mar
(99) |
Apr
(169) |
May
(48) |
Jun
(16) |
Jul
(16) |
Aug
(57) |
Sep
(19) |
Oct
|
Nov
|
Dec
|
| S | M | T | W | T | F | S |
|---|---|---|---|---|---|---|
|
|
|
1
(7) |
2
(5) |
3
(2) |
4
(8) |
5
(10) |
|
6
(3) |
7
(9) |
8
(7) |
9
(8) |
10
(7) |
11
(4) |
12
(11) |
|
13
(5) |
14
(17) |
15
(6) |
16
(15) |
17
|
18
(3) |
19
(1) |
|
20
(6) |
21
(18) |
22
(5) |
23
(9) |
24
(6) |
25
(3) |
26
(1) |
|
27
(1) |
28
|
29
(8) |
30
(5) |
|
|
|
|
From: <sv...@va...> - 2015-09-23 13:14:13
|
Author: sewardj
Date: Wed Sep 23 14:14:07 2015
New Revision: 15678
Log:
Swizzle external.
Modified:
tags/VALGRIND_3_11_0/ (props changed)
|
|
From: <sv...@va...> - 2015-09-23 13:13:29
|
Author: sewardj
Date: Wed Sep 23 14:13:22 2015
New Revision: 15677
Log:
Create tags/VALGRIND_3_11_0 as a copy of r15676 of branches/VALGRIND_3_11_BRANCH.
Added:
tags/VALGRIND_3_11_0/
- copied from r15676, branches/VALGRIND_3_11_BRANCH/
|
|
From: <sv...@va...> - 2015-09-23 13:08:24
|
Author: sewardj
Date: Wed Sep 23 14:08:18 2015
New Revision: 3196
Log:
Create tags/VEX_3_11_0 as a copy of r1395 of branches/VEX_3_11_BRANCH.
Added:
tags/VEX_3_11_0/
- copied from r3195, branches/VEX_3_11_BRANCH/
|
|
From: <sv...@va...> - 2015-09-23 12:15:43
|
Author: mjw
Date: Wed Sep 23 13:15:36 2015
New Revision: 15676
Log:
Bug 353084 arm64 doesn't support sigpending system call.
Modified:
trunk/NEWS
trunk/coregrind/m_syswrap/syswrap-arm64-linux.c
Modified: trunk/NEWS
==============================================================================
--- trunk/NEWS (original)
+++ trunk/NEWS Wed Sep 23 13:15:36 2015
@@ -28,6 +28,7 @@
where XXXXXX is the bug number as listed below.
353083 arm64 doesn't implement various xattr system calls
+353084 arm64 doesn't support sigpending system call
Release 3.11.0 (?? September 2015)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Modified: trunk/coregrind/m_syswrap/syswrap-arm64-linux.c
==============================================================================
--- trunk/coregrind/m_syswrap/syswrap-arm64-linux.c (original)
+++ trunk/coregrind/m_syswrap/syswrap-arm64-linux.c Wed Sep 23 13:15:36 2015
@@ -959,6 +959,7 @@
LINX_(__NR_rt_sigsuspend, sys_rt_sigsuspend), // 133
LINXY(__NR_rt_sigaction, sys_rt_sigaction), // 134
LINXY(__NR_rt_sigprocmask, sys_rt_sigprocmask), // 135
+ LINXY(__NR_rt_sigpending, sys_rt_sigpending), // 136
LINXY(__NR_rt_sigtimedwait, sys_rt_sigtimedwait), // 137
LINXY(__NR_rt_sigqueueinfo, sys_rt_sigqueueinfo), // 138
PLAX_(__NR_rt_sigreturn, sys_rt_sigreturn), // 139
@@ -1231,7 +1232,6 @@
//ZZ LINXY(__NR_prctl, sys_prctl), // 172
//ZZ LINXY(__NR_rt_sigaction, sys_rt_sigaction), // 174
//ZZ
-//ZZ LINXY(__NR_rt_sigpending, sys_rt_sigpending), // 176
//ZZ LINXY(__NR_rt_sigtimedwait, sys_rt_sigtimedwait),// 177
//ZZ
//ZZ LINX_(__NR_chown, sys_chown16), // 182
|
|
From: Julian S. <js...@ac...> - 2015-09-23 12:15:43
|
We are pleased to announce a new release of Valgrind, version 3.11.0, available from http://www.valgrind.org. 3.11.0 is a feature release with many improvements and the usual collection of bug fixes. This release adds full support for X86/Solaris and AMD64/Solaris, improves support for Mac OS X 10.10 (Yosemite), and adds preliminary support for Mac OS X 10.11 (El Capitan) and TileGX/Linux. Intel AVX2 support is more complete (64 bit targets only). There are many smaller refinements and new features. The release notes below give more details. 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. Happy and productive debugging and profiling, -- The Valgrind Developers Release 3.11.0 (22 September 2015) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 3.11.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, AMD64/MacOSX 10.11 and TILEGX/Linux. * ================== PLATFORM CHANGES ================= * Support for Solaris/x86 and Solaris/amd64 has been added. * Preliminary support for Mac OS X 10.11 (El Capitan) has been added. * Preliminary support for the Tilera TileGX architecture has been added. * s390x: It is now required for the host to have the "long displacement" facility. The oldest supported machine model is z990. * x86: on an SSE2 only host, Valgrind in 32 bit mode now claims to be a Pentium 4. 3.10.1 wrongly claimed to be a Core 2, which is SSSE3. * The JIT's register allocator is significantly faster, making the JIT as a whole somewhat faster, so JIT-intensive activities, for example program startup, are modestly faster, around 5%. * There have been changes to the default settings of several command line flags, as detailed below. * Intel AVX2 support is more complete (64 bit targets only). On AVX2 capable hosts, the simulated CPUID will now indicate AVX2 support. * ==================== TOOL CHANGES ==================== * Memcheck: - The default value for --leak-check-heuristics has been changed from "none" to "all". This helps to reduce the number of possibly lost blocks, in particular for C++ applications. - The default value for --keep-stacktraces has been changed from "malloc-then-free" to "malloc-and-free". This has a small cost in memory (one word per malloc-ed block) but allows Memcheck to show the 3 stacktraces of a dangling reference: where the block was allocated, where it was freed, and where it is acccessed after being freed. - The default value for --partial-loads-ok has been changed from "no" to "yes", so as to avoid false positive errors resulting from some kinds of vectorised loops. - A new monitor command 'xb <addr> <len>' shows the validity bits of <len> bytes at <addr>. The monitor command 'xb' is easier to use than get_vbits when you need to associate byte data value with their corresponding validity bits. - The 'block_list' monitor command has been enhanced: o it can print a range of loss records o it now accepts an optional argument 'limited <max_blocks>' to control the number of blocks printed. o if a block has been found using a heuristic, then 'block_list' now shows the heuristic after the block size. o the loss records/blocks to print can be limited to the blocks found via specified heuristics. - The C helper functions used to instrument loads on x86-{linux,solaris} and arm-linux (both 32-bit only) have been replaced by handwritten assembly sequences. This gives speedups in the region of 0% to 7% for those targets only. - A new command line option, --expensive-definedness-checks=yes|no, has been added. This is useful for avoiding occasional invalid uninitialised-value errors in optimised code. Watch out for runtime degradation, as this can be up to 25%. As always, though, the slowdown is highly application specific. The default setting is "no". * Massif: - A new monitor command 'all_snapshots <filename>' dumps all snapshots taken so far. * Helgrind: - Significant memory reduction and moderate speedups for --history-level=full for applications accessing a lot of memory with many different stacktraces. - The default value for --conflict-cache-size=N has been doubled to 2000000. Users that were not using the default value should preferably also double the value they give. The default was changed due to the changes in the "full history" implementation. Doubling the value gives on average a slightly more complete history and uses similar memory (or significantly less memory in the worst case) than the previous implementation. - The Helgrind monitor command 'info locks' now accepts an optional argument 'lock_addr', which shows information about the lock at the given address only. - When using --history-level=full, the new Helgrind monitor command 'accesshistory <addr> [<len>]' will show the recorded accesses for <len> (or 1) bytes at <addr>. * ==================== OTHER CHANGES ==================== * The default value for the --smc-check option has been changed from "stack" to "all-non-file" on targets that provide automatic D-I cache coherence (x86, amd64 and s390x). The result is to provide, by default, transparent support for JIT generated and self-modifying code on all targets. * Mac OS X only: the default value for the --dsymutil option has been changed from "no" to "yes", since any serious usage on Mac OS X always required it to be "yes". * The command line options --db-attach and --db-command have been removed. They were deprecated in 3.10.0. * When a process dies due to a signal, Valgrind now shows the signal and the stacktrace at default verbosity (i.e. verbosity 1). * The address description logic used by Memcheck and Helgrind now describes addresses in anonymous segments, file mmap-ed segments, shared memory segments and the brk data segment. * The new option --error-markers=<begin>,<end> can be used to mark the begin/end of errors in textual output mode, to facilitate searching/extracting errors in output files that mix valgrind errors with program output. * The new option --max-threads=<number> can be used to change the number of threads valgrind can handle. The default is 500 threads which should be more than enough for most applications. * The new option --valgrind-stacksize=<number> can be used to change the size of the private thread stacks used by Valgrind. This is useful for reducing memory use or increasing the stack size if Valgrind segfaults due to stack overflow. * The new option --avg-transtab-entry-size=<number> can be used to specify the expected instrumented block size, either to reduce memory use or to avoid excessive retranslation. * Valgrind can be built with Intel's ICC compiler, version 14.0 or later. * New and modified GDB server monitor features: - When a signal is reported in GDB, you can now use the GDB convenience variable $_siginfo to examine detailed signal information. - Valgrind's gdbserver now allows the user to change the signal to deliver to the process. So, use 'signal SIGNAL' to continue execution with SIGNAL instead of the signal reported to GDB. Use 'signal 0' to continue without passing the signal to the process. - With GDB >= 7.10, the command 'target remote' will automatically load the executable file of the process running under Valgrind. This means you do not need to specify the executable file yourself, GDB will discover it itself. See GDB documentation about 'qXfer:exec-file:read' packet for more info. * ==================== 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. 116002 VG_(printf): Problems with justification of strings and integers 155125 avoid cutting away file:lineno after long function name 197259 Unsupported arch_prtctl PR_SET_GS option 201152 ppc64: Assertion in ppc32g_dirtyhelper_MFSPR_268_269 201216 Fix Valgrind does not support pthread_sigmask() on OS X 201435 Fix Darwin: -v does not show kernel version 208217 "Warning: noted but unhandled ioctl 0x2000747b" on Mac OS X 211256 Fixed an outdated comment regarding the default platform. 211529 Incomplete call stacks for code compiled by newer versions of MSVC 211926 Avoid compilation warnings in valgrind.h with -pedantic 212291 Fix unhandled syscall: unix:132 (mkfifo) on OS X == 263119 226609 Crediting upstream authors in man page 231257 Valgrind omits path when executing script from shebang line 254164 OS X task_info: UNKNOWN task message [id 3405, to mach_task_self() [..] 269360 s390x: Fix addressing mode selection for compare-and-swap 302630 Memcheck: Assertion failed: 'sizeof(UWord) == sizeof(UInt)' == 326797 312989 ioctl handling needs to do POST handling on generic ioctls and [..] 319274 Fix unhandled syscall: unix:410 (sigsuspend_nocancel) on OS X 324181 mmap does not handle MAP_32BIT (handle it now, rather than fail it) 327745 Fix valgrind 3.9.0 build fails on Mac OS X 10.6.8 330147 libmpiwrap PMPI_Get_count returns undefined value 333051 mmap of huge pages fails due to incorrect alignment == 339163 334802 valgrind does not always explain why a given option is bad 335618 mov.w rN, pc/sp (ARM32) 335785 amd64->IR 0xC4 0xE2 0x75 0x2F (vmaskmovpd) == 307399 == 343175 == 342740 == 346912 335907 segfault when running wine's ddrawex/tests/surface.c under valgrind 338602 AVX2 bit in CPUID missing 338606 Strange message for scripts with invalid interpreter 338731 ppc: Fix testuite build for toolchains not supporting -maltivec 338995 shmat with hugepages (SHM_HUGETLB) fails with EINVAL 339045 Getting valgrind to compile and run on OS X Yosemite (10.10) == 340252 339156 gdbsrv not called for fatal signal 339215 Valgrind 3.10.0 contain 2013 in copyrights notice 339288 support Cavium Octeon MIPS specific BBIT*32 instructions 339636 Use fxsave64 and fxrstor64 mnemonics instead of old-school rex64 prefix 339442 Fix testsuite build failure on OS X 10.9 339542 Enable compilation with Intel's ICC compiler 339563 The DVB demux DMX_STOP ioctl doesn't have a wrapper 339688 Mac-specific ASM does not support .version directive (cpuid, tronical and pushfpopf tests) 339745 Valgrind crash when check Marmalade app (partial fix) 339755 Fix known deliberate memory leak in setenv() on Mac OS X 10.9 339778 Linux/TileGx platform support for Valgrind 339780 Fix known uninitialised read in pthread_rwlock_init() on Mac OS X 10.9 339789 Fix none/tests/execve test on Mac OS X 10.9 339808 Fix none/tests/rlimit64_nofile test on Mac OS X 10.9 339820 vex amd64->IR: 0x66 0xF 0x3A 0x63 0xA 0x42 0x74 0x9 (pcmpistri $0x42) 340115 Fix none/tests/cmdline[1|2] tests on systems which define TMPDIR 340392 Allow user to select more accurate definedness checking in memcheck to avoid invalid complaints on optimised code 340430 Fix some grammatical weirdness in the manual. 341238 Recognize GCC5/DWARFv5 DW_LANG constants (Go, C11, C++11, C++14) 341419 Signal handler ucontext_t not filled out correctly on OS X 341539 VG_(describe_addr) should not describe address as belonging to client segment if it is past the heap end 341613 Enable building of manythreads and thread-exits tests on Mac OS X 341615 Fix none/tests/darwin/access_extended test on Mac OS X 341698 Valgrind's AESKEYGENASSIST gives wrong result in words 0 and 2 [..] 341789 aarch64: shmat fails with valgrind on ARMv8 341997 MIPS64: Cavium OCTEON insns - immediate operand handled incorrectly 342008 valgrind.h needs type cast [..] for clang/llvm in 64-bit mode 342038 Unhandled syscalls on aarch64 (mbind/get/set_mempolicy) 342063 wrong format specifier for test mcblocklistsearch in gdbserver_tests 342117 Hang when loading PDB file for MSVC compiled Firefox under Wine 342221 socket connect false positive uninit memory for unknown af family 342353 Allow dumping full massif output while valgrind is still running 342571 Valgrind chokes on AVX compare intrinsic with _CMP_GE_QS == 346476 == 348387 == 350593 342603 Add I2C_SMBUS ioctl support 342635 OS X 10.10 (Yosemite) - missing system calls and fcntl code 342683 Mark memory past the initial brk limit as unaddressable 342783 arm: unhandled instruction 0xEEFE1ACA = "vcvt.s32.f32 s3, s3, #12" 342795 Internal glibc __GI_mempcpy call should be intercepted 342841 s390x: Support instructions fiebr(a) and fidbr(a) 343012 Unhandled syscall 319 (memfd_create) 343069 Patch updating v4l2 API support 343173 helgrind crash during stack unwind 343219 fix GET_STARTREGS for arm 343303 Fix known deliberate memory leak in setenv() on Mac OS X 10.10 343306 OS X 10.10: UNKNOWN mach_msg unhandled MACH_SEND_TRAILER option 343332 Unhandled instruction 0x9E310021 (fcvtmu) on aarch64 343335 unhandled instruction 0x1E638400 (fccmp) aarch64 343523 OS X mach_ports_register: UNKNOWN task message [id 3403, to [..] 343525 OS X host_get_special_port: UNKNOWN host message [id 412, to [..] 343597 ppc64le: incorrect use of offseof macro 343649 OS X host_create_mach_voucher: UNKNOWN host message [id 222, to [..] 343663 OS X 10.10 Memchecj always reports a leak regardless of [..] 343732 Unhandled syscall 144 (setgid) on aarch64 343733 Unhandled syscall 187 (msgctl and related) on aarch64 343802 s390x: False positive "conditional jump or move depends on [..] 343902 --vgdb=yes doesn't break when --xml=yes is used 343967 Don't warn about setuid/setgid/setcap executable for directories 343978 Recognize DWARF5/GCC5 DW_LANG_Fortran 2003 and 2008 constants 344007 accept4 syscall unhandled on arm64 (242) and ppc64 (344) 344033 Helgrind on ARM32 loses track of mutex state in pthread_cond_wait 344054 www - update info for Solaris/illumos 344416 'make regtest' does not work cleanly on OS X 344235 Remove duplicate include of pub_core_aspacemgr.h 344279 syscall sendmmsg on arm64 (269) and ppc32/64 (349) unhandled 344295 syscall recvmmsg on arm64 (243) and ppc32/64 (343) unhandled 344307 2 unhandled syscalls on aarch64/arm64: umount2(39), mount (40) 344314 callgrind_annotate ... warnings about commands containing newlines 344318 socketcall should wrap recvmmsg and sendmmsg 344337 Fix unhandled syscall: mach:41 (_kernelrpc_mach_port_guard_trap) 344416 Fix 'make regtest' does not work cleanly on OS X 344499 Fix compilation for Linux kernel >= 4.0.0 344512 OS X: unhandled syscall: unix:348 (__pthread_chdir), unix:349 (__pthread_fchdir) 344559 Garbage collection of unused segment names in address space manager 344560 Fix stack traces missing penultimate frame on OS X 344621 Fix memcheck/tests/err_disable4 test on OS X 344686 Fix suppression for pthread_rwlock_init on OS X 10.10 344702 Fix missing libobjc suppressions on OS X 10.10 == 344543 344936 Fix unhandled syscall: unix:473 (readlinkat) on OS X 10.10 344939 Fix memcheck/tests/xml1 on OS X 10.10 345016 helgrind/tests/locked_vs_unlocked2 is failing sometimes 345079 Fix build problems in VEX/useful/test_main.c 345126 Incorrect handling of VIDIOC_G_AUDIO and G_AUDOUT 345177 arm64: prfm (reg) not implemented 345215 Performance improvements for the register allocator 345248 add support for Solaris OS in valgrind 345338 TIOCGSERIAL and TIOCSSERIAL ioctl support on Linux 345394 Fix memcheck/tests/strchr on OS X 345637 Fix memcheck/tests/sendmsg on OS X 345695 Add POWERPC support for AT_DCACHESIZE and HWCAP2 345824 Fix aspacem segment mismatch: seen with none/tests/bigcode 345887 Fix an assertion in the address space manager 345928 amd64: callstack only contains current function for small stacks 345984 disInstr(arm): unhandled instruction: 0xEE193F1E 345987 MIPS64: Implement cavium LHX instruction 346031 MIPS: Implement support for the CvmCount register (rhwr %0, 31) 346185 Fix typo saving altivec register v24 346267 Compiler warnings for PPC64 code on call to LibVEX_GuestPPC64_get_XER() and LibVEX_GuestPPC64_get_CR() 346270 Regression tests none/tests/jm_vec/isa_2_07 and none/tests/test_isa_2_07_part2 have failures on PPC64 little endian 346307 fuse filesystem syscall deadlocks 346324 PPC64 missing support for lbarx, lharx, stbcx and sthcx instructions 346411 MIPS: SysRes::_valEx handling is incorrect 346416 Add support for LL_IOC_PATH2FID and LL_IOC_GETPARENT Lustre ioctls 346474 PPC64 Power 8, spr TEXASRU register not supported 346487 Compiler generates "note" about a future ABI change for PPC64 346562 MIPS64: lwl/lwr instructions are performing 64bit loads and causing spurious "invalid read of size 8" warnings 346801 Fix link error on OS X: _vgModuleLocal_sf_maybe_extend_stack 347151 Fix suppression for pthread_rwlock_init on OS X 10.8 347233 Fix memcheck/tests/strchr on OS X 10.10 (Haswell) 347322 Power PC regression test cleanup 347379 valgrind --leak-check=full leak errors from system libs on OS X 10.8 == 217236 347389 unhandled syscall: 373 (Linux ARM syncfs) 347686 Patch set to cleanup PPC64 regtests 347978 Remove bash dependencies where not needed 347982 OS X: undefined symbols for architecture x86_64: "_global" [..] 347988 Memcheck: the 'impossible' happened: unexpected size for Addr (OSX/wine) == 345929 348102 Patch updating v4l2 API support 348247 amd64 front end: jno jumps wrongly when overflow is not set 348269 Improve mmap MAP_HUGETLB support. 348334 (ppc) valgrind does not simulate dcbfl - then my program terminates 348345 Assertion fails for negative lineno 348377 Unsupported ARM instruction: yield 348565 Fix detection of command line option availability for clang 348574 vex amd64->IR pcmpistri SSE4.2 unsupported (pcmpistri $0x18) 348728 Fix broken check for VIDIOC_G_ENC_INDEX 348748 Fix redundant condition 348890 Fix clang warning about unsupported --param inline-unit-growth=900 348949 Bogus "ERROR: --ignore-ranges: suspiciously large range" 349034 Add Lustre ioctls LL_IOC_GROUP_LOCK and LL_IOC_GROUP_UNLOCK 349086 Fix UNKNOWN task message [id 3406, to mach_task_self(), [..] 349087 Fix UNKNOWN task message [id 3410, to mach_task_self(), [..] 349626 Implemented additional Xen hypercalls 349769 Clang/osx: ld: warning: -read_only_relocs cannot be used with x86_64 349790 Clean up of the hardware capability checking utilities. 349828 memcpy intercepts memmove causing src/dst overlap error (ppc64 ld.so) 349874 Fix typos in source code 349879 memcheck: add handwritten assembly for helperc_LOADV* 349941 di_notify_mmap might create wrong start/size DebugInfoMapping 350062 vex x86->IR: 0x66 0xF 0x3A 0xB (ROUNDSD) on OS X 350202 Add limited param to 'monitor block_list' 350290 s390x: Support instructions fixbr(a) 350359 memcheck/tests/x86/fxsave hangs indefinetely on OS X 350809 Fix none/tests/async-sigs for Solaris 350811 Remove reference to --db-attach which has been removed. 350813 Memcheck/x86: enable handwritten assembly helpers for x86/Solaris too 350854 hard-to-understand code in VG_(load_ELF)() 351140 arm64 syscalls setuid (146) and setresgid (149) not implemented 351386 Solaris: Cannot run ld.so.1 under Valgrind 351474 Fix VG_(iseqsigset) as obvious 351534 Fix incorrect header guard 351632 Fix UNKNOWN fcntl 97 on OS X 10.11 351756 Intercept platform_memchr$VARIANT$Haswell on OS X 351858 ldsoexec support on Solaris 351873 Newer gcc doesn't allow __builtin_tabortdc[i] in ppc32 mode 352130 helgrind reports false races for printfs using mempcpy on FILE* state 352284 s390: Conditional jump depends on uninitialised value(s) in vfprintf 352320 arm64 crash on none/tests/nestedfs 352765 Vbit test fails on Power 6 352768 The mbar instruction is missing from the Power PC support 352769 Power PC program priority register (PPR) is not supported n-i-bz Provide implementations of certain compiler builtins to support compilers that may not provide those n-i-bz Old STABS code is still being compiled, but never used. Remove it. n-i-bz Fix compilation on distros with glibc < 2.5 n-i-bz (vex 3098) Avoid generation of Neon insns on non-Neon hosts n-i-bz Enable rt_sigpending syscall on ppc64 linux. n-i-bz mremap did not work properly on shared memory n-i-bz Fix incorrect sizeof expression in syswrap-xen.c reported by Coverity n-i-bz In VALGRIND_PRINTF write out thread name, if any, to xml (3.11.0.TEST1: 8 September 2015, vex r3187, valgrind r15646) (3.11.0.TEST2: 21 September 2015, vex r3193, valgrind r15667) (3.11.0: 22 September 2015, vex r3195, valgrind r15674) |
|
From: <sv...@va...> - 2015-09-23 11:51:54
|
Author: mjw
Date: Wed Sep 23 12:51:47 2015
New Revision: 15675
Log:
Bug 353083 arm64 doesn't implement various xattr system calls.
This enables setxattr, lsetxattr, fsetxattr, fgetxattr, removexattr,
lremovexattr, fremovexattr, listxattr, llistxattr and flistxattr on
arm64-linux.
Modified:
trunk/NEWS
trunk/coregrind/m_syswrap/syswrap-arm64-linux.c
Modified: trunk/NEWS
==============================================================================
--- trunk/NEWS (original)
+++ trunk/NEWS Wed Sep 23 12:51:47 2015
@@ -1,3 +1,33 @@
+Release 3.12.0 (?? ????????? 201?)
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Release 3.12.0 is under development, not yet released.
+
+* ================== PLATFORM CHANGES =================
+
+* ==================== TOOL CHANGES ====================
+
+* Memcheck:
+
+* Helgrind:
+
+* Callgrind:
+
+* ==================== OTHER CHANGES ====================
+
+* ==================== 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.
+
+353083 arm64 doesn't implement various xattr system calls
Release 3.11.0 (?? September 2015)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Modified: trunk/coregrind/m_syswrap/syswrap-arm64-linux.c
==============================================================================
--- trunk/coregrind/m_syswrap/syswrap-arm64-linux.c (original)
+++ trunk/coregrind/m_syswrap/syswrap-arm64-linux.c Wed Sep 23 12:51:47 2015
@@ -855,8 +855,18 @@
// (unknown).
static SyscallTableEntry syscall_main_table[] = {
+ LINX_(__NR_setxattr, sys_setxattr), // 5
+ LINX_(__NR_lsetxattr, sys_lsetxattr), // 6
+ LINX_(__NR_fsetxattr, sys_fsetxattr), // 7
LINXY(__NR_getxattr, sys_getxattr), // 8
LINXY(__NR_lgetxattr, sys_lgetxattr), // 9
+ LINXY(__NR_fgetxattr, sys_fgetxattr), // 10
+ LINXY(__NR_listxattr, sys_listxattr), // 11
+ LINXY(__NR_llistxattr, sys_llistxattr), // 12
+ LINXY(__NR_flistxattr, sys_flistxattr), // 13
+ LINX_(__NR_removexattr, sys_removexattr), // 14
+ LINX_(__NR_lremovexattr, sys_lremovexattr), // 15
+ LINX_(__NR_fremovexattr, sys_fremovexattr), // 16
GENXY(__NR_getcwd, sys_getcwd), // 17
LINXY(__NR_eventfd2, sys_eventfd2), // 19
LINXY(__NR_epoll_create1, sys_epoll_create1), // 20
@@ -1267,18 +1277,6 @@
//ZZ // GENX_(222, sys_ni_syscall), // 222
//ZZ // PLAXY(223, sys_syscall223), // 223 // sys_bproc?
//ZZ
-//ZZ LINX_(__NR_setxattr, sys_setxattr), // 226
-//ZZ LINX_(__NR_lsetxattr, sys_lsetxattr), // 227
-//ZZ LINX_(__NR_fsetxattr, sys_fsetxattr), // 228
-//ZZ
-//ZZ LINXY(__NR_fgetxattr, sys_fgetxattr), // 231
-//ZZ LINXY(__NR_listxattr, sys_listxattr), // 232
-//ZZ LINXY(__NR_llistxattr, sys_llistxattr), // 233
-//ZZ LINXY(__NR_flistxattr, sys_flistxattr), // 234
-//ZZ
-//ZZ LINX_(__NR_removexattr, sys_removexattr), // 235
-//ZZ LINX_(__NR_lremovexattr, sys_lremovexattr), // 236
-//ZZ LINX_(__NR_fremovexattr, sys_fremovexattr), // 237
//ZZ LINXY(__NR_tkill, sys_tkill), // 238 */Linux
//ZZ LINXY(__NR_sendfile64, sys_sendfile64), // 239
//ZZ
|
|
From: <sv...@va...> - 2015-09-23 11:08:09
|
Author: sewardj
Date: Wed Sep 23 12:08:01 2015
New Revision: 505
Log:
Initial updates for 3.11.0.
Modified:
trunk/downloads/current.html
trunk/php/.htconfx
Modified: trunk/downloads/current.html
==============================================================================
--- trunk/downloads/current.html (original)
+++ trunk/downloads/current.html Wed Sep 23 12:08:01 2015
@@ -15,7 +15,32 @@
<div class="hr_brown"><hr/></div>
+<div id="release">
+
+<a name="current"><h3>Valgrind 3.11.0</h3></a>
+
+<p><a href="/downloads/valgrind-3.11.0.tar.bz2">valgrind 3.11.0 (tar.bz2)</a>
+[11MB] - 22 September 2015.<br />
+For {x86,amd64,arm,arm64,ppc32,ppc64,ppc64be,s390x,mips32,mips64,tilegx}-linux,
+{arm,arm64,x86,mips32}-android, {x86,amd64}-darwin (Mac OS X 10.10, with
+limited support for 10.11), and {x86,amd64}-solaris.<br />
+<span class="md5sum">md5: 4ea62074da73ae82e0162d6550d3f129</span></p>
+
+<p>You may want to look at the
+<a href="/docs/manual/dist.news.html">3.11.0 release notes</a>.
+</p>
+<p> 3.11.0 is a feature release with many improvements and the usual
+collection of bug fixes. This release adds full support for
+X86/Solaris and AMD64/Solaris, improves support for Mac OS X 10.10
+(Yosemite), and adds preliminary support for Mac OS X 10.11 (El
+Capitan) and TileGX/Linux. Intel AVX2 support is more complete (64
+bit targets only). There are many smaller refinements and new
+features. See the <a href="/docs/manual/dist.news.html">release
+notes</a> for details.</p>
+
+
+<!--
<div id="release">
<a name="current"><h3>Valgrind 3.10.1</h3></a>
@@ -44,6 +69,7 @@
(4.0 and later), MIPS32/Android, X86/Darwin and AMD64/Darwin (Mac OS X
10.9 and, to a limited extent, 10.8).
</p>
+-->
<!--
Modified: trunk/php/.htconfx
==============================================================================
--- trunk/php/.htconfx (original)
+++ trunk/php/.htconfx Wed Sep 23 12:08:01 2015
@@ -24,11 +24,11 @@
'inc_dir' => $base_dir . '/php/',
'img_dir' => $base_dir . '/images/',
- 'dt_copyright' => '2000-2014',
+ 'dt_copyright' => '2000-2015',
/* current release info */
- 'release-date' => '25 November 2014',
- 'release-version' => 'valgrind-3.10.1',
+ 'release-date' => '22 September 2015',
+ 'release-version' => 'valgrind-3.11.0',
/* mailing lists, bug reports, etc. */
'vgannounce' => array(
|
|
From: <sv...@va...> - 2015-09-23 09:22:14
|
Author: sewardj
Date: Wed Sep 23 10:22:06 2015
New Revision: 15674
Log:
--> 3.11.0 final.
Modified:
branches/VALGRIND_3_11_BRANCH/NEWS
branches/VALGRIND_3_11_BRANCH/configure.ac
branches/VALGRIND_3_11_BRANCH/docs/xml/vg-entities.xml
Modified: branches/VALGRIND_3_11_BRANCH/NEWS
==============================================================================
--- branches/VALGRIND_3_11_BRANCH/NEWS (original)
+++ branches/VALGRIND_3_11_BRANCH/NEWS Wed Sep 23 10:22:06 2015
@@ -1,5 +1,5 @@
-Release 3.11.0 (?? September 2015)
+Release 3.11.0 (22 September 2015)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3.11.0 is a feature release with many improvements and the usual
@@ -74,10 +74,11 @@
in the region of 0% to 7% for those targets only.
- A new command line option, --expensive-definedness-checks=yes|no,
- which is useful to avoid occasional invalid uninitialised-value
- errors in optimised code. Watch out for runtime degradation, as
- this can be up to 25%. As always, though, the slowdown is highly
- application specific. The default setting is "no".
+ has been added. This is useful for avoiding occasional invalid
+ uninitialised-value errors in optimised code. Watch out for
+ runtime degradation, as this can be up to 25%. As always, though,
+ the slowdown is highly application specific. The default setting
+ is "no".
* Massif:
@@ -401,6 +402,7 @@
(3.11.0.TEST1: 8 September 2015, vex r3187, valgrind r15646)
(3.11.0.TEST2: 21 September 2015, vex r3193, valgrind r15667)
+(3.11.0: 22 September 2015, vex r3195, valgrind r15674)
Modified: branches/VALGRIND_3_11_BRANCH/configure.ac
==============================================================================
--- branches/VALGRIND_3_11_BRANCH/configure.ac (original)
+++ branches/VALGRIND_3_11_BRANCH/configure.ac Wed Sep 23 10:22:06 2015
@@ -8,7 +8,7 @@
##------------------------------------------------------------##
# Process this file with autoconf to produce a configure script.
-AC_INIT([Valgrind],[3.11.0.TEST2],[val...@li...])
+AC_INIT([Valgrind],[3.11.0],[val...@li...])
AC_CONFIG_SRCDIR(coregrind/m_main.c)
AC_CONFIG_HEADERS([config.h])
AM_INIT_AUTOMAKE([foreign subdir-objects])
Modified: branches/VALGRIND_3_11_BRANCH/docs/xml/vg-entities.xml
==============================================================================
--- branches/VALGRIND_3_11_BRANCH/docs/xml/vg-entities.xml (original)
+++ branches/VALGRIND_3_11_BRANCH/docs/xml/vg-entities.xml Wed Sep 23 10:22:06 2015
@@ -7,7 +7,7 @@
<!-- valgrind release + version stuff -->
<!ENTITY rel-type "Release">
<!ENTITY rel-version "3.11.0">
-<!ENTITY rel-date "21 September 2015">
+<!ENTITY rel-date "22 September 2015">
<!-- where the docs are installed -->
<!ENTITY vg-docs-path "$INSTALL/share/doc/valgrind/html/index.html">
|
|
From: <sv...@va...> - 2015-09-22 11:06:49
|
Author: florian
Date: Tue Sep 22 12:06:42 2015
New Revision: 15673
Log:
Avoid a possible memory leak.
Modified:
trunk/memcheck/tests/vbit-test/main.c
Modified: trunk/memcheck/tests/vbit-test/main.c
==============================================================================
--- trunk/memcheck/tests/vbit-test/main.c (original)
+++ trunk/memcheck/tests/vbit-test/main.c Tue Sep 22 12:06:42 2015
@@ -136,14 +136,14 @@
const irop_t *op = get_irop(opkind);
if (op == NULL) continue;
- test_data_t *data = new_test_data(op);
-
if (op->undef_kind == UNDEF_UNKNOWN) {
fprintf(stderr, "...skipping %s; unknown undef propagation\n",
op->name);
continue;
}
+ test_data_t *data = new_test_data(op);
+
if (verbose > 1) printf("Testing operator %s\n", op->name);
IRICB iricb = new_iricb(op, data);
|
|
From: <sv...@va...> - 2015-09-22 08:25:56
|
Author: sewardj
Date: Tue Sep 22 09:25:49 2015
New Revision: 3195
Log:
Merge, from trunk, r3194 (Fix for typo in r3189)
Modified:
branches/VEX_3_11_BRANCH/ (props changed)
branches/VEX_3_11_BRANCH/priv/guest_ppc_helpers.c
Modified: branches/VEX_3_11_BRANCH/priv/guest_ppc_helpers.c
==============================================================================
--- branches/VEX_3_11_BRANCH/priv/guest_ppc_helpers.c (original)
+++ branches/VEX_3_11_BRANCH/priv/guest_ppc_helpers.c Tue Sep 22 09:25:49 2015
@@ -694,7 +694,7 @@
vex_state->guest_TFIAR = 0;
vex_state->guest_TEXASR = 0;
vex_state->guest_PPR = 0x4ULL << 50; // medium priority
- vex_state->guest_PSPB = 0x00; // an arbitrary non-zero value to start with
+ vex_state->guest_PSPB = 0x100; // an arbitrary non-zero value to start with
}
|
Author: florian
Date: Tue Sep 22 08:21:50 2015
New Revision: 15672
Log:
Add copyright/license comment.
Modified:
trunk/memcheck/tests/vbit-test/binary.c
trunk/memcheck/tests/vbit-test/irops.c
trunk/memcheck/tests/vbit-test/main.c
trunk/memcheck/tests/vbit-test/qernary.c
trunk/memcheck/tests/vbit-test/ternary.c
trunk/memcheck/tests/vbit-test/unary.c
trunk/memcheck/tests/vbit-test/util.c
trunk/memcheck/tests/vbit-test/valgrind.c
trunk/memcheck/tests/vbit-test/vbits.c
trunk/memcheck/tests/vbit-test/vbits.h
trunk/memcheck/tests/vbit-test/vtest.h
Modified: trunk/memcheck/tests/vbit-test/binary.c
==============================================================================
--- trunk/memcheck/tests/vbit-test/binary.c (original)
+++ trunk/memcheck/tests/vbit-test/binary.c Tue Sep 22 08:21:50 2015
@@ -1,5 +1,29 @@
/* -*- mode: C; c-basic-offset: 3; -*- */
+/*
+ This file is part of MemCheck, a heavyweight Valgrind tool for
+ detecting memory errors.
+
+ Copyright (C) 2012-2015 Florian Krohm
+
+ This program is free software; you can redistribute it and/or
+ modify it under the terms of the GNU General Public License as
+ published by the Free Software Foundation; either version 2 of the
+ License, or (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful, but
+ WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+ 02111-1307, USA.
+
+ The GNU General Public License is contained in the file COPYING.
+*/
+
#include <assert.h>
#include <string.h> // memset
#include "vtest.h"
Modified: trunk/memcheck/tests/vbit-test/irops.c
==============================================================================
--- trunk/memcheck/tests/vbit-test/irops.c (original)
+++ trunk/memcheck/tests/vbit-test/irops.c Tue Sep 22 08:21:50 2015
@@ -1,5 +1,29 @@
/* -*- mode: C; c-basic-offset: 3; -*- */
+/*
+ This file is part of MemCheck, a heavyweight Valgrind tool for
+ detecting memory errors.
+
+ Copyright (C) 2012-2015 Florian Krohm
+
+ This program is free software; you can redistribute it and/or
+ modify it under the terms of the GNU General Public License as
+ published by the Free Software Foundation; either version 2 of the
+ License, or (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful, but
+ WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+ 02111-1307, USA.
+
+ The GNU General Public License is contained in the file COPYING.
+*/
+
#include <stdio.h> // fprintf
#include <stdlib.h> // exit
#include "pub_tool_basics.h" // STATIC_ASSERT
Modified: trunk/memcheck/tests/vbit-test/main.c
==============================================================================
--- trunk/memcheck/tests/vbit-test/main.c (original)
+++ trunk/memcheck/tests/vbit-test/main.c Tue Sep 22 08:21:50 2015
@@ -1,5 +1,29 @@
/* -*- mode: C; c-basic-offset: 3; -*- */
+/*
+ This file is part of MemCheck, a heavyweight Valgrind tool for
+ detecting memory errors.
+
+ Copyright (C) 2012-2015 Florian Krohm
+
+ This program is free software; you can redistribute it and/or
+ modify it under the terms of the GNU General Public License as
+ published by the Free Software Foundation; either version 2 of the
+ License, or (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful, but
+ WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+ 02111-1307, USA.
+
+ The GNU General Public License is contained in the file COPYING.
+*/
+
#include <assert.h> // assert
#include <stdio.h> // printf
#include <stdlib.h> // malloc
Modified: trunk/memcheck/tests/vbit-test/qernary.c
==============================================================================
--- trunk/memcheck/tests/vbit-test/qernary.c (original)
+++ trunk/memcheck/tests/vbit-test/qernary.c Tue Sep 22 08:21:50 2015
@@ -1,5 +1,29 @@
/* -*- mode: C; c-basic-offset: 3; -*- */
+/*
+ This file is part of MemCheck, a heavyweight Valgrind tool for
+ detecting memory errors.
+
+ Copyright (C) 2012-2015 Florian Krohm
+
+ This program is free software; you can redistribute it and/or
+ modify it under the terms of the GNU General Public License as
+ published by the Free Software Foundation; either version 2 of the
+ License, or (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful, but
+ WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+ 02111-1307, USA.
+
+ The GNU General Public License is contained in the file COPYING.
+*/
+
#include <assert.h>
#include "vtest.h"
Modified: trunk/memcheck/tests/vbit-test/ternary.c
==============================================================================
--- trunk/memcheck/tests/vbit-test/ternary.c (original)
+++ trunk/memcheck/tests/vbit-test/ternary.c Tue Sep 22 08:21:50 2015
@@ -1,5 +1,29 @@
/* -*- mode: C; c-basic-offset: 3; -*- */
+/*
+ This file is part of MemCheck, a heavyweight Valgrind tool for
+ detecting memory errors.
+
+ Copyright (C) 2012-2015 Florian Krohm
+
+ This program is free software; you can redistribute it and/or
+ modify it under the terms of the GNU General Public License as
+ published by the Free Software Foundation; either version 2 of the
+ License, or (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful, but
+ WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+ 02111-1307, USA.
+
+ The GNU General Public License is contained in the file COPYING.
+*/
+
#include <assert.h>
#include "vtest.h"
Modified: trunk/memcheck/tests/vbit-test/unary.c
==============================================================================
--- trunk/memcheck/tests/vbit-test/unary.c (original)
+++ trunk/memcheck/tests/vbit-test/unary.c Tue Sep 22 08:21:50 2015
@@ -1,5 +1,29 @@
/* -*- mode: C; c-basic-offset: 3; -*- */
+/*
+ This file is part of MemCheck, a heavyweight Valgrind tool for
+ detecting memory errors.
+
+ Copyright (C) 2012-2015 Florian Krohm
+
+ This program is free software; you can redistribute it and/or
+ modify it under the terms of the GNU General Public License as
+ published by the Free Software Foundation; either version 2 of the
+ License, or (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful, but
+ WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+ 02111-1307, USA.
+
+ The GNU General Public License is contained in the file COPYING.
+*/
+
#include <assert.h>
#include "vtest.h"
Modified: trunk/memcheck/tests/vbit-test/util.c
==============================================================================
--- trunk/memcheck/tests/vbit-test/util.c (original)
+++ trunk/memcheck/tests/vbit-test/util.c Tue Sep 22 08:21:50 2015
@@ -1,5 +1,29 @@
/* -*- mode: C; c-basic-offset: 3; -*- */
+/*
+ This file is part of MemCheck, a heavyweight Valgrind tool for
+ detecting memory errors.
+
+ Copyright (C) 2012-2015 Florian Krohm
+
+ This program is free software; you can redistribute it and/or
+ modify it under the terms of the GNU General Public License as
+ published by the Free Software Foundation; either version 2 of the
+ License, or (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful, but
+ WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+ 02111-1307, USA.
+
+ The GNU General Public License is contained in the file COPYING.
+*/
+
#include <stdio.h> // fprintf
#include <stdlib.h> // exit
#include <assert.h> // assert
Modified: trunk/memcheck/tests/vbit-test/valgrind.c
==============================================================================
--- trunk/memcheck/tests/vbit-test/valgrind.c (original)
+++ trunk/memcheck/tests/vbit-test/valgrind.c Tue Sep 22 08:21:50 2015
@@ -1,5 +1,29 @@
/* -*- mode: C; c-basic-offset: 3; -*- */
+/*
+ This file is part of MemCheck, a heavyweight Valgrind tool for
+ detecting memory errors.
+
+ Copyright (C) 2012-2015 Florian Krohm
+
+ This program is free software; you can redistribute it and/or
+ modify it under the terms of the GNU General Public License as
+ published by the Free Software Foundation; either version 2 of the
+ License, or (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful, but
+ WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+ 02111-1307, USA.
+
+ The GNU General Public License is contained in the file COPYING.
+*/
+
#include <assert.h>
#include "memcheck.h" // VALGRIND_SET_VBITS
#include "vtest.h"
Modified: trunk/memcheck/tests/vbit-test/vbits.c
==============================================================================
--- trunk/memcheck/tests/vbit-test/vbits.c (original)
+++ trunk/memcheck/tests/vbit-test/vbits.c Tue Sep 22 08:21:50 2015
@@ -1,5 +1,29 @@
/* -*- mode: C; c-basic-offset: 3; -*- */
+/*
+ This file is part of MemCheck, a heavyweight Valgrind tool for
+ detecting memory errors.
+
+ Copyright (C) 2012-2015 Florian Krohm
+
+ This program is free software; you can redistribute it and/or
+ modify it under the terms of the GNU General Public License as
+ published by the Free Software Foundation; either version 2 of the
+ License, or (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful, but
+ WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+ 02111-1307, USA.
+
+ The GNU General Public License is contained in the file COPYING.
+*/
+
#include <stdio.h> // fprintf
#include <assert.h> // assert
#if defined(__APPLE__)
Modified: trunk/memcheck/tests/vbit-test/vbits.h
==============================================================================
--- trunk/memcheck/tests/vbit-test/vbits.h (original)
+++ trunk/memcheck/tests/vbit-test/vbits.h Tue Sep 22 08:21:50 2015
@@ -1,5 +1,29 @@
/* -*- mode: C; c-basic-offset: 3; -*- */
+/*
+ This file is part of MemCheck, a heavyweight Valgrind tool for
+ detecting memory errors.
+
+ Copyright (C) 2012-2015 Florian Krohm
+
+ This program is free software; you can redistribute it and/or
+ modify it under the terms of the GNU General Public License as
+ published by the Free Software Foundation; either version 2 of the
+ License, or (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful, but
+ WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+ 02111-1307, USA.
+
+ The GNU General Public License is contained in the file COPYING.
+*/
+
#ifndef VBITS_H
#define VBITS_H
Modified: trunk/memcheck/tests/vbit-test/vtest.h
==============================================================================
--- trunk/memcheck/tests/vbit-test/vtest.h (original)
+++ trunk/memcheck/tests/vbit-test/vtest.h Tue Sep 22 08:21:50 2015
@@ -1,5 +1,29 @@
/* -*- mode: C; c-basic-offset: 3; -*- */
+/*
+ This file is part of MemCheck, a heavyweight Valgrind tool for
+ detecting memory errors.
+
+ Copyright (C) 2012-2015 Florian Krohm
+
+ This program is free software; you can redistribute it and/or
+ modify it under the terms of the GNU General Public License as
+ published by the Free Software Foundation; either version 2 of the
+ License, or (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful, but
+ WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+ 02111-1307, USA.
+
+ The GNU General Public License is contained in the file COPYING.
+*/
+
#ifndef VTEST_H
#define VTEST_H
|
|
From: <sv...@va...> - 2015-09-22 07:04:36
|
Author: florian
Date: Tue Sep 22 08:04:25 2015
New Revision: 15671
Log:
Update TODO list.
Modified:
trunk/memcheck/tests/vbit-test/TODO
Modified: trunk/memcheck/tests/vbit-test/TODO
==============================================================================
--- trunk/memcheck/tests/vbit-test/TODO (original)
+++ trunk/memcheck/tests/vbit-test/TODO Tue Sep 22 08:04:25 2015
@@ -4,6 +4,3 @@
(2) Add support for IROps with vector operands.
(3) Test floating point operations with various rounding modes.
-
-(4) Iop_CmpORD32U and friends are not supported (ppc only)
-
|
|
From: <sv...@va...> - 2015-09-22 07:03:46
|
Author: florian
Date: Tue Sep 22 08:03:38 2015
New Revision: 15670
Log:
Break a few overly long lines.
Modified:
trunk/memcheck/tests/vbit-test/irops.c
trunk/memcheck/tests/vbit-test/main.c
Modified: trunk/memcheck/tests/vbit-test/irops.c
==============================================================================
--- trunk/memcheck/tests/vbit-test/irops.c (original)
+++ trunk/memcheck/tests/vbit-test/irops.c Tue Sep 22 08:03:38 2015
@@ -1126,7 +1126,8 @@
case Iop_D128toF64:
case Iop_D128toF128: {
int rc;
- /* These IROps require the Perform Floating Point Operation facility */
+ /* These IROps require the Perform Floating Point Operation
+ facility */
rc = system(S390X_FEATURES " s390x-pfpo");
// s390x_features returns 1 if feature does not exist
rc /= 256;
Modified: trunk/memcheck/tests/vbit-test/main.c
==============================================================================
--- trunk/memcheck/tests/vbit-test/main.c (original)
+++ trunk/memcheck/tests/vbit-test/main.c Tue Sep 22 08:03:38 2015
@@ -75,7 +75,7 @@
if (strcmp(argv[i], "-v") == 0) ++verbose;
else if (strcmp(argv[i], "--help") == 0) {
printf("\nvbit-test [ -v | --help ]\n");
- printf("\n\t-v verbose mode; show number of 1, 2, 3 and 4 operand tests\n");
+ printf("\n\t-v verbose mode; show number of tests\n");
printf("\n\t-v -v verbose mode; shows IROps being tested\n");
printf("\n\t-v -v -v verbose mode, extreme edition\n\n");
return 0;
@@ -151,8 +151,9 @@
}
if (verbose)
- printf("\nvbit-test ran %d unary, %d binary, %d ternary and %d qernary tests.\n",
- num_unary_tests, num_binary_tests, num_ternary_tests,
- num_qernary_tests);
+ printf("\nvbit-test ran %d unary, %d binary, %d ternary and"
+ " %d qernary tests.\n\n",
+ num_unary_tests, num_binary_tests, num_ternary_tests,
+ num_qernary_tests);
return 0;
}
|
|
From: <sv...@va...> - 2015-09-21 21:46:54
|
Author: carll
Date: Mon Sep 21 22:46:46 2015
New Revision: 3194
Log:
Fix, Add support for the Power PC Program Priority Register
Commit r3189 had a typo in it. In function LibVEX_GuestPPC64_initialise()
the value of vex_state->guest_PSPB is initialized to 0x0. The intention was
for it to be initialized to 0x100. This commit fixes the typo.
The original commit message:
Added the Program Priority Register (PPR), support to read and write it
via the mfspr and mtspr instructions as well as the special OR instruction
No Op instructions. The setting of the PPR is dependent on the value in
the Problem State Priority Boost register. Basic support for this register
was added. Not all of the PSPB register functionality was added.
This patch fixes bugzilla 352769.
Modified:
trunk/priv/guest_ppc_helpers.c
Modified: trunk/priv/guest_ppc_helpers.c
==============================================================================
--- trunk/priv/guest_ppc_helpers.c (original)
+++ trunk/priv/guest_ppc_helpers.c Mon Sep 21 22:46:46 2015
@@ -694,7 +694,7 @@
vex_state->guest_TFIAR = 0;
vex_state->guest_TEXASR = 0;
vex_state->guest_PPR = 0x4ULL << 50; // medium priority
- vex_state->guest_PSPB = 0x00; // an arbitrary non-zero value to start with
+ vex_state->guest_PSPB = 0x100; // an arbitrary non-zero value to start with
}
|
|
From: <sv...@va...> - 2015-09-21 20:38:09
|
Author: florian
Date: Mon Sep 21 21:38:02 2015
New Revision: 15669
Log:
In ML_(am_clientise) give the template segment the correct
address range.
Modified:
branches/ASPACEM_TWEAKS/coregrind/m_aspacemgr/aspacemgr-segments.c
Modified: branches/ASPACEM_TWEAKS/coregrind/m_aspacemgr/aspacemgr-segments.c
==============================================================================
--- branches/ASPACEM_TWEAKS/coregrind/m_aspacemgr/aspacemgr-segments.c (original)
+++ branches/ASPACEM_TWEAKS/coregrind/m_aspacemgr/aspacemgr-segments.c Mon Sep 21 21:38:02 2015
@@ -1415,6 +1415,8 @@
ML_(am_add_segment) will take care of everything. */
NSegment tmp = *seg;
+ tmp.start = start;
+ tmp.end = start + len - 1;
switch (seg->kind) {
case SkFileV: tmp.kind = SkFileC; break;
case SkAnonV: tmp.kind = SkAnonC; break;
|
Author: florian
Date: Mon Sep 21 21:31:29 2015
New Revision: 15668
Log:
Remove unused include directives from priv_aspacemgr.h
Adjust up source files as needed.
Fix a few function parameter types.
Add ML_(am_write).
Modified:
branches/ASPACEM_TWEAKS/coregrind/m_aspacemgr/aspacemgr-common.c
branches/ASPACEM_TWEAKS/coregrind/m_aspacemgr/aspacemgr-dot.c
branches/ASPACEM_TWEAKS/coregrind/m_aspacemgr/aspacemgr-linux.c
branches/ASPACEM_TWEAKS/coregrind/m_aspacemgr/aspacemgr-segments.c
branches/ASPACEM_TWEAKS/coregrind/m_aspacemgr/aspacemgr-segnames.c
branches/ASPACEM_TWEAKS/coregrind/m_aspacemgr/priv_aspacemgr.h
branches/ASPACEM_TWEAKS/coregrind/m_aspacemgr/unit-test/stubs.c
Modified: branches/ASPACEM_TWEAKS/coregrind/m_aspacemgr/aspacemgr-common.c
==============================================================================
--- branches/ASPACEM_TWEAKS/coregrind/m_aspacemgr/aspacemgr-common.c (original)
+++ branches/ASPACEM_TWEAKS/coregrind/m_aspacemgr/aspacemgr-common.c Mon Sep 21 21:31:29 2015
@@ -37,7 +37,14 @@
************************************************************* */
#include "priv_aspacemgr.h"
-#include "config.h"
+#include "pub_core_vki.h" // VKI_PAGE_SIZE
+#include "pub_core_libcbase.h" // VG_IS_PAGE_ALIGNED
+#include "pub_core_libcassert.h" // VG_(exit_now)
+#include "pub_core_syscall.h" // VG_(do_syscallN)
+#include "pub_core_vkiscnums.h" // system call numbers
+#include "pub_core_debuglog.h" // VG_(debugLog)
+#include "pub_core_options.h" // VG_(clo_valgrind_stacksize)
+#include "config.h" // HAVE_REMAP
/*-----------------------------------------------------------------*/
@@ -93,7 +100,6 @@
return sr_Res(sres);
}
-
//--------------------------------------------------------------
// A simple sprintf implementation, so as to avoid dependence on
// m_libcprint.
@@ -281,18 +287,24 @@
return res;
}
-Int ML_(am_read) ( Int fd, void* buf, Int count)
+Int ML_(am_read) ( Int fd, void* buf, SizeT count)
{
SysRes res = VG_(do_syscall3)(__NR_read, fd, (UWord)buf, count);
return sr_isError(res) ? -1 : sr_Res(res);
}
+Int ML_(am_write) ( Int fd, const void *buf, SizeT count)
+{
+ SysRes res = VG_(do_syscall3)(__NR_write, fd, (UWord)buf, count);
+ return sr_isError(res) ? -1 : sr_Res(res);
+}
+
void ML_(am_close) ( Int fd )
{
(void)VG_(do_syscall1)(__NR_close, fd);
}
-Int ML_(am_readlink)(const HChar* path, HChar* buf, UInt bufsiz)
+Int ML_(am_readlink)(const HChar* path, HChar* buf, SizeT bufsiz)
{
SysRes res;
# if defined(VGP_arm64_linux)
@@ -350,7 +362,7 @@
return False;
}
-Bool ML_(am_resolve_filename) ( Int fd, /*OUT*/HChar* buf, Int nbuf )
+Bool ML_(am_resolve_filename)( Int fd, /*OUT*/HChar* buf, SizeT nbuf )
{
#if defined(VGO_linux)
Int i;
Modified: branches/ASPACEM_TWEAKS/coregrind/m_aspacemgr/aspacemgr-dot.c
==============================================================================
--- branches/ASPACEM_TWEAKS/coregrind/m_aspacemgr/aspacemgr-dot.c (original)
+++ branches/ASPACEM_TWEAKS/coregrind/m_aspacemgr/aspacemgr-dot.c Mon Sep 21 21:31:29 2015
@@ -34,6 +34,9 @@
Function ML_(am_write_dot) is the single entry point here. */
#include "priv_aspacemgr.h"
+#include "pub_core_vki.h" // VKI_O_CREAT
+#include "pub_core_debuglog.h" // VG_(debugLog)
+
/* Output a character. Characters are written to a buffer which is flushed
when full or when C is the NUL character. */
@@ -43,7 +46,7 @@
static UInt num_char;
if (num_char == sizeof buf || c == '\0') {
- VG_(do_syscall3)(__NR_write, *(Int *)p, (UWord)buf, num_char);
+ ML_(am_write)(*(Int *)p, buf, num_char);
num_char = 0;
}
if (c != '\0') buf[num_char++] = c;
Modified: branches/ASPACEM_TWEAKS/coregrind/m_aspacemgr/aspacemgr-linux.c
==============================================================================
--- branches/ASPACEM_TWEAKS/coregrind/m_aspacemgr/aspacemgr-linux.c (original)
+++ branches/ASPACEM_TWEAKS/coregrind/m_aspacemgr/aspacemgr-linux.c Mon Sep 21 21:31:29 2015
@@ -39,7 +39,13 @@
************************************************************* */
#include "priv_aspacemgr.h"
-#include "config.h"
+#include "pub_core_libcbase.h" // VG_(strcmp), etc
+#include "pub_core_vki.h" // VKI_PROT_EXEC, etc.
+#include "pub_core_debuglog.h" // VG_(debugLog)
+#include "pub_core_options.h" // VG_(clo_sanity_level)
+#include "pub_core_syscall.h" // SysRes
+#include "config.h" // HAVE_REMAP
+
/*-----------------------------------------------------------------*/
/*--- ---*/
@@ -559,29 +565,22 @@
a discrepancy is detected, but does not abort the system. Returned
Bool is False if a discrepancy was found. */
-Bool VG_(am_do_sync_check) ( const HChar* fn,
- const HChar* file, Int line )
+Bool VG_(am_do_sync_check)( const HChar* fn, const HChar* file, Int line )
{
sync_check_ok = True;
- if (0)
- VG_(debugLog)(0,"aspacem", "do_sync_check %s:%d\n", file,line);
- parse_procselfmaps( sync_check_mapping_callback,
- sync_check_gap_callback );
+ parse_procselfmaps( sync_check_mapping_callback, sync_check_gap_callback );
+
if (!sync_check_ok) {
- VG_(debugLog)(0,"aspacem",
- "sync check at %s:%d (%s): FAILED\n",
+ VG_(debugLog)(0,"aspacem", "do_sync_check at %s:%d (%s): FAILED\n",
file, line, fn);
VG_(debugLog)(0,"aspacem", "\n");
# if 0
- {
- HChar buf[100]; // large enough
- VG_(am_show_nsegments)(0,"post syncheck failure");
- VG_(sprintf)(buf, "/bin/cat /proc/%d/maps", VG_(getpid)());
- VG_(system)(buf);
- }
+ HChar buf[100]; // large enough
+ VG_(am_show_nsegments)(0, "post do_sync_check failure");
+ ML_(am_sprintf)(buf, "/bin/cat /proc/%d/maps", ML_(am_getpid)());
+ VG_(system)(buf);
# endif
-
}
return sync_check_ok;
}
Modified: branches/ASPACEM_TWEAKS/coregrind/m_aspacemgr/aspacemgr-segments.c
==============================================================================
--- branches/ASPACEM_TWEAKS/coregrind/m_aspacemgr/aspacemgr-segments.c (original)
+++ branches/ASPACEM_TWEAKS/coregrind/m_aspacemgr/aspacemgr-segments.c Mon Sep 21 21:31:29 2015
@@ -45,6 +45,10 @@
*/
#include "priv_aspacemgr.h"
+#include "pub_core_vki.h" // VKI_PAGE_SIZE
+#include "pub_core_libcbase.h" // VG_IS_PAGE_ALIGNED
+#include "pub_core_debuglog.h" // VG_(debugLog)
+
#ifdef ASPACEMGR_UNIT_TEST
/* Remove the alignment test so we can have segments with intervals that
Modified: branches/ASPACEM_TWEAKS/coregrind/m_aspacemgr/aspacemgr-segnames.c
==============================================================================
--- branches/ASPACEM_TWEAKS/coregrind/m_aspacemgr/aspacemgr-segnames.c (original)
+++ branches/ASPACEM_TWEAKS/coregrind/m_aspacemgr/aspacemgr-segnames.c Mon Sep 21 21:31:29 2015
@@ -114,8 +114,11 @@
So we leave it as is until a use case comes up that needs something better.
*/
-#include "pub_core_basics.h" // types
#include "priv_aspacemgr.h"
+#include "pub_core_basics.h" // types
+#include "pub_core_libcbase.h" // VG_(strlen)
+#include "pub_core_debuglog.h" // VG_(debugLog)
+
// A few constants.
enum {
Modified: branches/ASPACEM_TWEAKS/coregrind/m_aspacemgr/priv_aspacemgr.h
==============================================================================
--- branches/ASPACEM_TWEAKS/coregrind/m_aspacemgr/priv_aspacemgr.h (original)
+++ branches/ASPACEM_TWEAKS/coregrind/m_aspacemgr/priv_aspacemgr.h Mon Sep 21 21:31:29 2015
@@ -37,25 +37,7 @@
minimal set of imports. */
#include "pub_core_basics.h" // types
-#include "pub_core_vkiscnums.h" // system call numbers
-#include "pub_core_vki.h" // VKI_PAGE_SIZE, VKI_MREMAP_MAYMOVE,
- // VKI_MREMAP_FIXED, vki_stat64
-
-#include "pub_core_debuglog.h" // VG_(debugLog)
-
-#include "pub_core_libcbase.h" // VG_(strlen), VG_(strcmp), VG_(strncpy)
- // VG_IS_PAGE_ALIGNED
- // VG_PGROUNDDN, VG_PGROUNDUP
-
-#include "pub_core_libcassert.h" // VG_(exit_now)
-
-#include "pub_core_syscall.h" // VG_(do_syscallN)
- // VG_(mk_SysRes_Error)
- // VG_(mk_SysRes_Success)
-
-#include "pub_core_options.h" // VG_(clo_sanity_level)
-
-#include "pub_core_aspacemgr.h" // self
+#include "pub_core_aspacemgr.h" // NSegment
/* --------------- Implemented in aspacemgr-common.c ---------------*/
@@ -111,26 +93,25 @@
extern SysRes ML_(am_open) ( const HChar* pathname, Int flags, Int mode );
extern void ML_(am_close) ( Int fd );
-extern Int ML_(am_read) ( Int fd, void* buf, Int count);
-extern Int ML_(am_readlink) ( const HChar* path, HChar* buf, UInt bufsiz );
+extern Int ML_(am_read) ( Int fd, void* buf, SizeT count);
+extern Int ML_(am_readlink) ( const HChar* path, HChar* buf, SizeT bufsiz );
extern Int ML_(am_fcntl) ( Int fd, Int cmd, Addr arg );
+extern Int ML_(am_write) ( Int fd, const void *buf, SizeT count);
/* Get the dev, inode and mode info for a file descriptor, if
possible. Returns True on success. */
-extern
Bool ML_(am_get_fd_d_i_m)( Int fd,
/*OUT*/ULong* dev,
/*OUT*/ULong* ino, /*OUT*/UInt* mode );
-extern
-Bool ML_(am_resolve_filename) ( Int fd, /*OUT*/HChar* buf, Int nbuf );
+Bool ML_(am_resolve_filename) ( Int fd, /*OUT*/HChar* buf, SizeT nbuf );
void ML_(am_show_len_concisely)( /*OUT*/HChar *buf, Addr start, Addr end );
/* ------ Implemented separately in aspacemgr-linux.c ------ */
/* Do a sanity check (/proc/self/maps sync check) */
-extern void ML_(am_do_sanity_check)( void );
+void ML_(am_do_sanity_check)( void );
/* ------ Implemented in aspacemgr-segnames.c ------ */
Modified: branches/ASPACEM_TWEAKS/coregrind/m_aspacemgr/unit-test/stubs.c
==============================================================================
--- branches/ASPACEM_TWEAKS/coregrind/m_aspacemgr/unit-test/stubs.c (original)
+++ branches/ASPACEM_TWEAKS/coregrind/m_aspacemgr/unit-test/stubs.c Mon Sep 21 21:31:29 2015
@@ -30,6 +30,7 @@
#include "pub_core_libcbase.h"
#include "pub_core_debuglog.h"
#include "pub_core_libcassert.h"
+#include "pub_core_syscall.h"
#include <stdarg.h>
#include <stdio.h>
#include <string.h>
@@ -180,7 +181,7 @@
return (SysRes){};
}
-Int ML_(am_read)( Int fd, void* buf, Int count )
+Int ML_(am_read)( Int fd, void* buf, SizeT count )
{
assert(0);
return 1;
@@ -201,7 +202,7 @@
assert(0);
}
-Bool ML_(am_resolve_filename)( Int fd, /*OUT*/HChar *buf, Int nbuf )
+Bool ML_(am_resolve_filename)( Int fd, /*OUT*/HChar *buf, SizeT nbuf )
{
assert(0);
return 1;
|
|
From: Rhys K. <rhy...@gm...> - 2015-09-21 13:17:39
|
Hello C D, Thanks for testing the Valgrind pre-release on your OS X hardware. At presently, I'm inclined to say that OS X 10.6 systems are unlikely to get much developer priority. I have development environments setup as far back as OS X 10.7 that I routinely test with. There is no guarantee that 10.6 and earlier will work with Valgrind 3.11 I'm afraid. This situation might change in future, but with further passage of time it is likely the user-driven demand will reduce as well. I am happy that it has passed basic smoke tests for you on 10.8. Regards, Rhys On 21 September 2015 at 22:30, C D <mac...@ya...> wrote: > > A test tarball is available at> http://valgrind.org/downloads/valgrind-3.11.0.TEST1.tar.bz2 <http://valgrind.org/downloads/valgrind-3.11.0.TEST1.tar.bz2> > > (md5 = 6a858b4a1e98db8c82bc6bc9c760873b) > > > > Please test it on systems that are important for you and report any failures > > (and successes!). > > Thanks! And sorry for the possibly wrong format of this answer. > > * Build success (at least "./configure;make") on Mac OS 10.8.5. > > * Build failure on Mac OS 10.6.8: > > $ make > [...] > link_tool_exe_darwin: /usr/bin/ld -static -arch i386 -macosx_version_min 10.5 -o memcheck-x86-darwin -u __start -e __start -image_base 0x38000000 -stack_addr 0x34000000 -stack_size 0x800000 memcheck_x86_darwin-mc_leakcheck.o memcheck_x86_darwin-mc_malloc_wrappers.o memcheck_x86_darwin-mc_main.o memcheck_x86_darwin-mc_translate.o memcheck_x86_darwin-mc_machine.o memcheck_x86_darwin-mc_errors.o ../coregrind/libcoregrind-x86-darwin.a ../VEX/libvex-x86-darwin.a > /usr/bin/ld_classic: Undefined symbols: > ___clzdi2 > ___ctzdi2 > make[3]: *** [memcheck-x86-darwin] Error 1 > make[2]: *** [all-recursive] Error 1 > make[1]: *** [all-recursive] Error 1 > make: *** [all] Error 2 > $ uname -a > Darwin io.local 10.8.0 Darwin Kernel Version 10.8.0: Tue Jun 7 16:33:36 PDT 2011; root:xnu-1504.15.3~1/RELEASE_I386 i386 > $ gcc --version|head -1 > i686-apple-darwin10-gcc-4.2.1 (GCC) 4.2.1 (Apple Inc. build 5666) (dot 3) > $ > > > > ------------------------------------------------------------------------------ > > _______________________________________________ > Valgrind-developers mailing list > Val...@li... > https://lists.sourceforge.net/lists/listinfo/valgrind-developers > > |
|
From: C D <mac...@ya...> - 2015-09-21 12:30:17
|
> A test tarball is available at > http://valgrind.org/downloads/valgrind-3.11.0.TEST1.tar.bz2 > (md5 = 6a858b4a1e98db8c82bc6bc9c760873b) > > Please test it on systems that are important for you and report any failures > (and successes!). Thanks! And sorry for the possibly wrong format of this answer. * Build success (at least "./configure;make") on Mac OS 10.8.5. * Build failure on Mac OS 10.6.8: $ make [...] link_tool_exe_darwin: /usr/bin/ld -static -arch i386 -macosx_version_min 10.5 -o memcheck-x86-darwin -u __start -e __start -image_base 0x38000000 -stack_addr 0x34000000 -stack_size 0x800000 memcheck_x86_darwin-mc_leakcheck.o memcheck_x86_darwin-mc_malloc_wrappers.o memcheck_x86_darwin-mc_main.o memcheck_x86_darwin-mc_translate.o memcheck_x86_darwin-mc_machine.o memcheck_x86_darwin-mc_errors.o ../coregrind/libcoregrind-x86-darwin.a ../VEX/libvex-x86-darwin.a /usr/bin/ld_classic: Undefined symbols: ___clzdi2 ___ctzdi2 make[3]: *** [memcheck-x86-darwin] Error 1 make[2]: *** [all-recursive] Error 1 make[1]: *** [all-recursive] Error 1 make: *** [all] Error 2 $ uname -a Darwin io.local 10.8.0 Darwin Kernel Version 10.8.0: Tue Jun 7 16:33:36 PDT 2011; root:xnu-1504.15.3~1/RELEASE_I386 i386 $ gcc --version|head -1 i686-apple-darwin10-gcc-4.2.1 (GCC) 4.2.1 (Apple Inc. build 5666) (dot 3) $ |
|
From: <sv...@va...> - 2015-09-21 11:00:59
|
Author: sewardj
Date: Mon Sep 21 12:00:52 2015
New Revision: 15667
Log:
Make version numbers correct.
Modified:
branches/VALGRIND_3_11_BRANCH/NEWS
Modified: branches/VALGRIND_3_11_BRANCH/NEWS
==============================================================================
--- branches/VALGRIND_3_11_BRANCH/NEWS (original)
+++ branches/VALGRIND_3_11_BRANCH/NEWS Mon Sep 21 12:00:52 2015
@@ -399,8 +399,8 @@
n-i-bz Fix incorrect sizeof expression in syswrap-xen.c reported by Coverity
n-i-bz In VALGRIND_PRINTF write out thread name, if any, to xml
-(3.10.1.TEST1: 8 September 2015, vex r3187, valgrind r15646)
-(3.10.1.TEST2: 21 September 2015, vex r3193, valgrind r15666)
+(3.11.0.TEST1: 8 September 2015, vex r3187, valgrind r15646)
+(3.11.0.TEST2: 21 September 2015, vex r3193, valgrind r15667)
|
|
From: <sv...@va...> - 2015-09-21 10:42:16
|
Author: sewardj
Date: Mon Sep 21 11:42:07 2015
New Revision: 15666
Log:
--> 3.10.1.TEST2
Modified:
branches/VALGRIND_3_11_BRANCH/NEWS
branches/VALGRIND_3_11_BRANCH/configure.ac
Modified: branches/VALGRIND_3_11_BRANCH/NEWS
==============================================================================
--- branches/VALGRIND_3_11_BRANCH/NEWS (original)
+++ branches/VALGRIND_3_11_BRANCH/NEWS Mon Sep 21 11:42:07 2015
@@ -400,6 +400,7 @@
n-i-bz In VALGRIND_PRINTF write out thread name, if any, to xml
(3.10.1.TEST1: 8 September 2015, vex r3187, valgrind r15646)
+(3.10.1.TEST2: 21 September 2015, vex r3193, valgrind r15666)
Modified: branches/VALGRIND_3_11_BRANCH/configure.ac
==============================================================================
--- branches/VALGRIND_3_11_BRANCH/configure.ac (original)
+++ branches/VALGRIND_3_11_BRANCH/configure.ac Mon Sep 21 11:42:07 2015
@@ -8,7 +8,7 @@
##------------------------------------------------------------##
# Process this file with autoconf to produce a configure script.
-AC_INIT([Valgrind],[3.11.0.TEST1],[val...@li...])
+AC_INIT([Valgrind],[3.11.0.TEST2],[val...@li...])
AC_CONFIG_SRCDIR(coregrind/m_main.c)
AC_CONFIG_HEADERS([config.h])
AM_INIT_AUTOMAKE([foreign subdir-objects])
|
|
From: <sv...@va...> - 2015-09-21 10:08:18
|
Author: sewardj
Date: Mon Sep 21 11:08:11 2015
New Revision: 15665
Log:
Update for recent merges from trunk.
Modified:
branches/VALGRIND_3_11_BRANCH/NEWS
Modified: branches/VALGRIND_3_11_BRANCH/NEWS
==============================================================================
--- branches/VALGRIND_3_11_BRANCH/NEWS (original)
+++ branches/VALGRIND_3_11_BRANCH/NEWS Mon Sep 21 11:08:11 2015
@@ -386,6 +386,9 @@
352130 helgrind reports false races for printfs using mempcpy on FILE* state
352284 s390: Conditional jump depends on uninitialised value(s) in vfprintf
352320 arm64 crash on none/tests/nestedfs
+352765 Vbit test fails on Power 6
+352768 The mbar instruction is missing from the Power PC support
+352769 Power PC program priority register (PPR) is not supported
n-i-bz Provide implementations of certain compiler builtins to support
compilers that may not provide those
n-i-bz Old STABS code is still being compiled, but never used. Remove it.
|
|
From: <sv...@va...> - 2015-09-21 10:03:39
|
Author: sewardj
Date: Mon Sep 21 11:03:31 2015
New Revision: 3193
Log:
Merge, from trunk, r3190 (Add support for the Power PC mbar instruction; bug 352768)
Modified:
branches/VEX_3_11_BRANCH/ (props changed)
branches/VEX_3_11_BRANCH/priv/guest_ppc_toIR.c
Modified: branches/VEX_3_11_BRANCH/priv/guest_ppc_toIR.c
==============================================================================
--- branches/VEX_3_11_BRANCH/priv/guest_ppc_toIR.c (original)
+++ branches/VEX_3_11_BRANCH/priv/guest_ppc_toIR.c Mon Sep 21 11:03:31 2015
@@ -6369,6 +6369,7 @@
UInt b11to25 = IFIELD(theInstr, 11, 15);
UChar flag_L = ifieldRegDS(theInstr);
UInt b11to20 = IFIELD(theInstr, 11, 10);
+ UInt M0 = IFIELD(theInstr, 11, 5);
UChar rD_addr = ifieldRegDS(theInstr);
UChar rS_addr = rD_addr;
UChar rA_addr = ifieldRegA(theInstr);
@@ -6399,12 +6400,20 @@
/* X-Form */
case 0x1F:
switch (opc2) {
- case 0x356: // eieio (Enforce In-Order Exec of I/O, PPC32 p394)
- if (b11to25 != 0 || b0 != 0) {
- vex_printf("dis_memsync(ppc)(eiei0,b11to25|b0)\n");
- return False;
+ case 0x356: // eieio or mbar (Enforce In-Order Exec of I/O, PPC32 p394)
+ if (M0 == 0) {
+ if (b11to20 != 0 || b0 != 0) {
+ vex_printf("dis_memsync(ppc)(eieio,b11to20|b0)\n");
+ return False;
+ }
+ DIP("eieio\n");
+ } else {
+ if (b11to20 != 0 || b0 != 0) {
+ vex_printf("dis_memsync(ppc)(mbar,b11to20|b0)\n");
+ return False;
+ }
+ DIP("mbar %d\n", M0);
}
- DIP("eieio\n");
/* Insert a memory fence, just to be on the safe side. */
stmt( IRStmt_MBE(Imbe_Fence) );
break;
|
|
From: <sv...@va...> - 2015-09-21 10:01:50
|
Author: sewardj
Date: Mon Sep 21 11:01:43 2015
New Revision: 3192
Log:
Merge, from trunk, r3189 (Add support for the Power PC Program Priority Register; bug 352769)
Modified:
branches/VEX_3_11_BRANCH/ (props changed)
branches/VEX_3_11_BRANCH/priv/guest_ppc_helpers.c
branches/VEX_3_11_BRANCH/priv/guest_ppc_toIR.c
branches/VEX_3_11_BRANCH/pub/libvex_guest_ppc32.h
branches/VEX_3_11_BRANCH/pub/libvex_guest_ppc64.h
Modified: branches/VEX_3_11_BRANCH/priv/guest_ppc_helpers.c
==============================================================================
--- branches/VEX_3_11_BRANCH/priv/guest_ppc_helpers.c (original)
+++ branches/VEX_3_11_BRANCH/priv/guest_ppc_helpers.c Mon Sep 21 11:01:43 2015
@@ -521,6 +521,8 @@
vex_state->guest_IP_AT_SYSCALL = 0;
vex_state->guest_SPRG3_RO = 0;
+ vex_state->guest_PPR = 0x4ULL << 50; // medium priority
+ vex_state->guest_PSPB = 0x100; // an arbitrary non-zero value to start with
vex_state->padding1 = 0;
vex_state->padding2 = 0;
@@ -691,6 +693,8 @@
vex_state->guest_TFHAR = 0;
vex_state->guest_TFIAR = 0;
vex_state->guest_TEXASR = 0;
+ vex_state->guest_PPR = 0x4ULL << 50; // medium priority
+ vex_state->guest_PSPB = 0x00; // an arbitrary non-zero value to start with
}
Modified: branches/VEX_3_11_BRANCH/priv/guest_ppc_toIR.c
==============================================================================
--- branches/VEX_3_11_BRANCH/priv/guest_ppc_toIR.c (original)
+++ branches/VEX_3_11_BRANCH/priv/guest_ppc_toIR.c Mon Sep 21 11:01:43 2015
@@ -288,6 +288,8 @@
#define OFFB_TEXASR offsetofPPCGuestState(guest_TEXASR)
#define OFFB_TEXASRU offsetofPPCGuestState(guest_TEXASRU)
#define OFFB_TFIAR offsetofPPCGuestState(guest_TFIAR)
+#define OFFB_PPR offsetofPPCGuestState(guest_PPR)
+#define OFFB_PSPB offsetofPPCGuestState(guest_PSPB)
/*------------------------------------------------------------*/
@@ -438,6 +440,14 @@
PPC_GST_TFIAR, // Transactional Failure Instruction Address Register
PPC_GST_TEXASR, // Transactional EXception And Summary Register
PPC_GST_TEXASRU, // Transactional EXception And Summary Register Upper
+ PPC_GST_PPR, // Program Priority register
+ PPC_GST_PPR32, // Upper 32-bits of Program Priority register
+ PPC_GST_PSPB, /* Problem State Priority Boost register, Note, the
+ * register is initialized to a non-zero value. Currently
+ * Valgrind is not supporting the register value to
+ * automatically decrement. Could be added later if
+ * needed.
+ */
PPC_GST_MAX
} PPC_GST;
@@ -2747,6 +2757,15 @@
case PPC_GST_TFIAR:
return IRExpr_Get( OFFB_TFIAR, ty );
+ case PPC_GST_PPR:
+ return IRExpr_Get( OFFB_PPR, ty );
+
+ case PPC_GST_PPR32:
+ return unop( Iop_64HIto32, IRExpr_Get( OFFB_PPR, ty ) );
+
+ case PPC_GST_PSPB:
+ return IRExpr_Get( OFFB_PSPB, ty );
+
default:
vex_printf("getGST(ppc): reg = %u", reg);
vpanic("getGST(ppc)");
@@ -2926,6 +2945,95 @@
vassert( ty_src == Ity_I64 );
stmt( IRStmt_Put( OFFB_TFHAR, src ) );
break;
+
+ case PPC_GST_PPR32:
+ case PPC_GST_PPR:
+ {
+ /* The Program Priority Register (PPR) stores the priority in
+ * bits [52:50]. The user setable priorities are:
+ *
+ * 001 very low
+ * 010 low
+ * 011 medium low
+ * 100 medium
+ * 101 medium high
+ *
+ * If the argument is not between 0b001 and 0b100 the priority is set
+ * to 0b100. The priority can only be set to 0b101 if the the Problem
+ * State Boost Register is non-zero. The value of the PPR is not
+ * changed if the input is not valid.
+ */
+
+ IRTemp not_valid = newTemp(Ity_I64);
+ IRTemp has_perm = newTemp(Ity_I64);
+ IRTemp new_src = newTemp(Ity_I64);
+ IRTemp PSPB_val = newTemp(Ity_I64);
+ IRTemp value = newTemp(Ity_I64);
+
+ vassert(( ty_src == Ity_I64 ) || ( ty_src == Ity_I32 ));
+ assign( PSPB_val, binop( Iop_32HLto64,
+ mkU32( 0 ),
+ IRExpr_Get( OFFB_PSPB, Ity_I32 ) ) );
+ if( reg == PPC_GST_PPR32 ) {
+ vassert( ty_src == Ity_I32 );
+ assign( value, binop( Iop_32HLto64,
+ mkU32(0),
+ binop( Iop_And32,
+ binop( Iop_Shr32, src, mkU8( 18 ) ),
+ mkU32( 0x7 ) ) ) );
+ } else {
+ vassert( ty_src == Ity_I64 );
+ assign( value, binop( Iop_And64,
+ binop( Iop_Shr64, src, mkU8( 50 ) ),
+ mkU64( 0x7 ) ) );
+ }
+ assign( has_perm,
+ binop( Iop_And64,
+ unop( Iop_1Sto64,
+ binop( Iop_CmpEQ64,
+ mkexpr( PSPB_val ),
+ mkU64( 0 ) ) ),
+ unop( Iop_1Sto64,
+ binop( Iop_CmpEQ64,
+ mkU64( 0x5 ),
+ mkexpr( value ) ) ) ) );
+ assign( not_valid,
+ binop( Iop_Or64,
+ unop( Iop_1Sto64,
+ binop( Iop_CmpEQ64,
+ mkexpr( value ),
+ mkU64( 0 ) ) ),
+ unop( Iop_1Sto64,
+ binop( Iop_CmpLT64U,
+ mkU64( 0x5 ),
+ mkexpr( value ) ) ) ) );
+ assign( new_src,
+ binop( Iop_Or64,
+ binop( Iop_And64,
+ unop( Iop_Not64,
+ mkexpr( not_valid ) ),
+ src ),
+ binop( Iop_And64,
+ mkexpr( not_valid ),
+ binop( Iop_Or64,
+ binop( Iop_And64,
+ mkexpr( has_perm),
+ binop( Iop_Shl64,
+ mkexpr( value ),
+ mkU8( 50 ) ) ),
+ binop( Iop_And64,
+ IRExpr_Get( OFFB_PPR, ty ),
+ unop( Iop_Not64,
+ mkexpr( has_perm )
+ ) ) ) ) ) );
+
+ /* make sure we only set the valid bit field [52:50] */
+ stmt( IRStmt_Put( OFFB_PPR,
+ binop( Iop_And64,
+ mkexpr( new_src ),
+ mkU64( 0x1C000000000000) ) ) );
+ break;
+ }
default:
vex_printf("putGST(ppc): reg = %u", reg);
vpanic("putGST(ppc)");
@@ -7131,6 +7239,18 @@
DIP("mfspr r%u (TEXASRU)\n", rD_addr);
putIReg( rD_addr, getGST( PPC_GST_TEXASRU) );
break;
+ case 0x9F: // 159
+ DIP("mfspr r%u (PSPB)\n", rD_addr);
+ putIReg( rD_addr, getGST( PPC_GST_PSPB) );
+ break;
+ case 0x380: // 896
+ DIP("mfspr r%u (PPR)\n", rD_addr);
+ putIReg( rD_addr, getGST( PPC_GST_PPR) );
+ break;
+ case 0x382: // 898
+ DIP("mfspr r%u (PPR)32\n", rD_addr);
+ putIReg( rD_addr, getGST( PPC_GST_PPR32) );
+ break;
case 0x100:
DIP("mfvrsave r%u\n", rD_addr);
putIReg( rD_addr, mkWidenFrom32(ty, getGST( PPC_GST_VRSAVE ),
@@ -7287,6 +7407,18 @@
DIP("mtspr r%u (TEXASR)\n", rS_addr);
putGST( PPC_GST_TEXASR, mkexpr(rS) );
break;
+ case 0x9F: // 159
+ DIP("mtspr r%u (PSPB)\n", rS_addr);
+ putGST( PPC_GST_PSPB, mkexpr(rS) );
+ break;
+ case 0x380: // 896
+ DIP("mtspr r%u (PPR)\n", rS_addr);
+ putGST( PPC_GST_PPR, mkexpr(rS) );
+ break;
+ case 0x382: // 898
+ DIP("mtspr r%u (PPR32)\n", rS_addr);
+ putGST( PPC_GST_PPR32, mkexpr(rS) );
+ break;
default:
vex_printf("dis_proc_ctl(ppc)(mtspr,SPR)(%u)\n", SPR);
return False;
Modified: branches/VEX_3_11_BRANCH/pub/libvex_guest_ppc32.h
==============================================================================
--- branches/VEX_3_11_BRANCH/pub/libvex_guest_ppc32.h (original)
+++ branches/VEX_3_11_BRANCH/pub/libvex_guest_ppc32.h Mon Sep 21 11:01:43 2015
@@ -241,11 +241,12 @@
/* 1360 */ ULong guest_TFHAR; // Transaction Failure Handler Address Register
/* 1368 */ ULong guest_TEXASR; // Transaction EXception And Summary Register
/* 1376 */ ULong guest_TFIAR; // Transaction Failure Instruction Address Register
- /* 1384 */ UInt guest_TEXASRU; // Transaction EXception And Summary Register Upper
-
+ /* 1384 */ ULong guest_PPR; // Program Priority register
+ /* 1392 */ UInt guest_TEXASRU; // Transaction EXception And Summary Register Upper
+ /* 1396 */ UInt guest_PSPB; // Problem State Priority Boost register
/* Padding to make it have an 16-aligned size */
- /* 1388 */ UInt padding2;
-
+ /* 1400 */ UInt padding2;
+ /* 1404 */ UInt padding3;
}
VexGuestPPC32State;
Modified: branches/VEX_3_11_BRANCH/pub/libvex_guest_ppc64.h
==============================================================================
--- branches/VEX_3_11_BRANCH/pub/libvex_guest_ppc64.h (original)
+++ branches/VEX_3_11_BRANCH/pub/libvex_guest_ppc64.h Mon Sep 21 11:01:43 2015
@@ -282,12 +282,14 @@
/* 1656 */ ULong guest_TFHAR; // Transaction Failure Handler Address Register
/* 1664 */ ULong guest_TEXASR; // Transaction EXception And Summary Register
/* 1672 */ ULong guest_TFIAR; // Transaction Failure Instruction Address Register
- /* 1680 */ UInt guest_TEXASRU; // Transaction EXception And Summary Register Upper
+ /* 1680 */ ULong guest_PPR; // Program Priority register
+ /* 1688 */ UInt guest_TEXASRU; // Transaction EXception And Summary Register Upper
+ /* 1692 */ UInt guest_PSPB; // Problem State Priority Boost register
/* Padding to make it have an 16-aligned size */
- /* 1684 */ UInt padding1;
- /* 1688 */ UInt padding2;
- /* 1692 */ UInt padding3;
+ /* 1696 UInt padding1; currently not needed */
+ /* 1700 UInt padding2; currently not needed */
+ /* 1708 UInt padding3; currently not needed */
}
VexGuestPPC64State;
|
|
From: <sv...@va...> - 2015-09-21 09:59:43
|
Author: sewardj
Date: Mon Sep 21 10:59:36 2015
New Revision: 3191
Log:
Merge, from trunk, r3188
(ppc: The functions dis_dfp_fmt_conv and dis_dfp_exponent_test
should only be executed in case DFP is supported.)
Modified:
branches/VEX_3_11_BRANCH/ (props changed)
branches/VEX_3_11_BRANCH/priv/guest_ppc_toIR.c
Modified: branches/VEX_3_11_BRANCH/priv/guest_ppc_toIR.c
==============================================================================
--- branches/VEX_3_11_BRANCH/priv/guest_ppc_toIR.c (original)
+++ branches/VEX_3_11_BRANCH/priv/guest_ppc_toIR.c Mon Sep 21 10:59:36 2015
@@ -19172,6 +19172,7 @@
case 0x322: // POWER 7 inst, dcffix - DFP convert from fixed
if (!allow_VX)
goto decode_failure;
+ if (!allow_DFP) goto decode_noDFP;
if (dis_dfp_fmt_conv( theInstr ))
goto decode_success;
goto decode_failure;
@@ -19598,6 +19599,7 @@
goto decode_success;
goto decode_failure;
case 0xA2: // dtstexq - DFP Test exponent Quad
+ if (!allow_DFP) goto decode_noDFP;
if (dis_dfp_exponent_test( theInstr ) )
goto decode_success;
goto decode_failure;
|
|
From: <sv...@va...> - 2015-09-21 09:57:36
|
Author: sewardj
Date: Mon Sep 21 10:57:29 2015
New Revision: 15664
Log:
Merge, from trunk, r15655,6,7 (Followup to r14908 (BZ #342603))
Modified:
branches/VALGRIND_3_11_BRANCH/ (props changed)
branches/VALGRIND_3_11_BRANCH/coregrind/m_syswrap/syswrap-linux.c
Modified: branches/VALGRIND_3_11_BRANCH/coregrind/m_syswrap/syswrap-linux.c
==============================================================================
--- branches/VALGRIND_3_11_BRANCH/coregrind/m_syswrap/syswrap-linux.c (original)
+++ branches/VALGRIND_3_11_BRANCH/coregrind/m_syswrap/syswrap-linux.c Mon Sep 21 10:57:29 2015
@@ -6862,11 +6862,10 @@
PRE_MEM_READ("ioctl(VKI_I2C_SMBUS).i2c_smbus_ioctl_data.command",
(Addr)&vkis->command, sizeof(vkis->command));
/* i2c_smbus_write_quick hides its value in read_write, so
- this variable can hava a different meaning */
+ this variable can have a different meaning */
/* to make matters worse i2c_smbus_write_byte stores its
value in command */
- if ( ! (((vkis->size == VKI_I2C_SMBUS_QUICK)
- && (vkis->command == VKI_I2C_SMBUS_QUICK)) ||
+ if ( ! ((vkis->size == VKI_I2C_SMBUS_QUICK) ||
((vkis->size == VKI_I2C_SMBUS_BYTE)
&& (vkis->read_write == VKI_I2C_SMBUS_WRITE)))) {
/* the rest uses the byte array to store the data,
@@ -6884,7 +6883,7 @@
case VKI_I2C_SMBUS_I2C_BLOCK_BROKEN:
case VKI_I2C_SMBUS_BLOCK_PROC_CALL:
case VKI_I2C_SMBUS_I2C_BLOCK_DATA:
- size = vkis->data->block[0];
+ size = 1 + vkis->data->block[0];
break;
default:
size = 0;
@@ -9388,14 +9387,11 @@
struct vki_i2c_smbus_ioctl_data *vkis
= (struct vki_i2c_smbus_ioctl_data *) ARG3;
/* i2c_smbus_write_quick hides its value in read_write, so
- this variable can hava a different meaning */
- /* to make matters worse i2c_smbus_write_byte stores its
- value in command */
+ this variable can have a different meaning */
if ((vkis->read_write == VKI_I2C_SMBUS_READ)
|| (vkis->size == VKI_I2C_SMBUS_PROC_CALL)
|| (vkis->size == VKI_I2C_SMBUS_BLOCK_PROC_CALL)) {
- if ( ! ((vkis->size == VKI_I2C_SMBUS_QUICK)
- && (vkis->command == VKI_I2C_SMBUS_QUICK))) {
+ if ( ! (vkis->size == VKI_I2C_SMBUS_QUICK)) {
UInt size;
switch(vkis->size) {
case VKI_I2C_SMBUS_BYTE:
@@ -9410,7 +9406,7 @@
case VKI_I2C_SMBUS_I2C_BLOCK_BROKEN:
case VKI_I2C_SMBUS_BLOCK_PROC_CALL:
case VKI_I2C_SMBUS_I2C_BLOCK_DATA:
- size = vkis->data->block[0];
+ size = 1 + vkis->data->block[0];
break;
default:
size = 0;
|