Julian Seward
cb3fbb46d7
The amd64-linux unwinder rejects stacks of smaller than 512 bytes as
...
bogus, and produces essentially useless traces from them. With
gcc-4.4 and later, some valid thread stacks really are smaller than
this. Hence change the limit down to 256 bytes. Investigated by
Evgeniy Stepanov, eugeni.stepanov@gmail.com .
See bug 243270 comment 21.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11403
2010-10-06 22:45:18 +00:00
Julian Seward
797fe272f2
amd64-linux: add suitable CFI annotations so that unwinding through
...
the CALL_FN_*_* macros works more reliably. This is all very fiddly
and is described in a large comment in valgrind.h. Fixes #243270 .
(Evgeniy Stepanov, eugeni.stepanov@gmail.com )
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11402
2010-10-06 22:07:06 +00:00
Bart Van Assche
e6ad90d0da
ppc/jm-insns.c: Use proper integer types.
...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11401
2010-10-06 16:13:17 +00:00
Julian Seward
878207ebb9
Define VKI_SHMLBA for all supported Linux targets, thereby unbreaking
...
the breakage created by r11399. Part of #222545 .
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11400
2010-10-06 15:55:59 +00:00
Julian Seward
566a25cf7e
Make client sys_shmat work properly on arm-linux by taking into
...
account rounding requirements to SHMLBA. Modified version of a patch
by Kirill Batuzov, batuzovk@ispras.ru . This fixes the main bug in
#222545 . Temporarily breaks the build on all other platforms though.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11399
2010-10-06 15:24:39 +00:00
Julian Seward
12dd8bd181
get_shm_size(): pass VKI_IPC_64 to our shmctl call if it is available,
...
except on amd64-linux. This fixes a secondary problem discussed
in bug 222545. (Kirill Batuzov, batuzovk@ispras.ru )
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11398
2010-10-06 12:59:44 +00:00
Julian Seward
c72198e061
When opening an mmaped file to see if it's an ELF file that we should
...
read debuginfo from, use VKI_O_LARGEFILE, so as to ensure the open
succeeds for large files on 32-bit systems. Fixes #234064 .
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11397
2010-10-06 11:38:01 +00:00
Julian Seward
b01f20803e
Handle mq_* syscalls. Fixes #243884 . (David Fenger, dkfenger@gmail.com)
...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11396
2010-10-06 11:25:29 +00:00
Tom Hughes
f4ef177f4f
When a memory block changes from unreachable to possibly or definitely
...
reachable, or from possibly reachable to definitely reachable, rescan
it so that any blocks it points to are also upgraded. Fixes #206600 .
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11395
2010-10-04 20:55:21 +00:00
Julian Seward
669d87bcc1
Support sys_readahead on Linux.
...
(Sean Bartell, wingedtachikoma@gmail.com ) Fixes #247894 .
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11394
2010-10-04 20:03:27 +00:00
Josef Weidendorfer
540efd6718
Make sure that string buffers for cost arrays are large enough.
...
17 64bit values fit into 512 bytes (but not 256...).
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11393
2010-10-04 19:17:21 +00:00
Julian Seward
6414ba16e6
callgrind/main.c, finish(): 'Char buf[RESULTS_BUF_LEN]' can be overrun in
...
some cases. Increase RESULTS_BUF_LEN accordingly.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11392
2010-10-03 12:35:03 +00:00
Julian Seward
f5e67f801d
Make readdwarf.c big endianess safe to enable unwinding on big endian
...
systems. (Christian Borntraeger, borntraeger@de.ibm.com ). Fixes
#248893 .
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11391
2010-09-30 15:11:01 +00:00
Julian Seward
d4a4b32e72
Don't assert when doing origin tracking for d16-31, f32-63
...
or q0-15.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11390
2010-09-29 21:40:44 +00:00
Julian Seward
7fe3927ff5
Test cases for amd64 PCLMULDQ (Emmanuel Thome, Emmanuel.Thome@gmail.com).
...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11389
2010-09-28 19:59:47 +00:00
Julian Seward
4d88144c11
When origin tracking, handle the new %RFLAGS.ACFLAG guest state
...
component introduced in vex r2050. See #249943 .
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11388
2010-09-28 16:00:11 +00:00
Julian Seward
5f4ff74809
Add proper dependencies for pub/libvex_guest_offsets.h (Florian Krohm,
...
britzel@acm.org ). Fixes #246888 .
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11387
2010-09-28 15:09:47 +00:00
Julian Seward
552292d206
Add test cases for CMPXCHG reg, reg on amd64. (Vince Weaver,
...
vince@csl.cornell.edu ). See #246311 .
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11386
2010-09-28 14:58:03 +00:00
Julian Seward
5725aecb7a
Add test cases for amd64 ADC Iv, eAX and SBB Iv, eAX (Jakub Jelinek,
...
jakub@redhat.com ). See #211410 .
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11385
2010-09-28 14:39:39 +00:00
Tom Hughes
00ae2c5c8c
Calling VG_(am_relocate_nooverlap_client) will destroy the descriptor
...
for the old segment so we need to save the permissions from it before
the call so that we can use them when notifying tools of the new space
afterwards, or we will notify them of the wrong permissions.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11384
2010-09-27 15:08:34 +00:00
Nicholas Nethercote
fd11394abf
Speed up the --cache-sim=no case.
...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11383
2010-09-27 02:20:38 +00:00
Nicholas Nethercote
3f6bcea6aa
In Cachegrind, allow --cache-sim=no --branch-sim=no. Sometimes just getting
...
instruction counts is useful.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11382
2010-09-27 01:04:20 +00:00
Julian Seward
b132b8b282
Add tests for all encodings of REV and REV16 in both ARM and Thumb mode.
...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11381
2010-09-26 00:51:12 +00:00
Julian Seward
d1853b294d
Add tests for ORN (immediate) and ORN (register).
...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11380
2010-09-25 22:07:01 +00:00
Julian Seward
82792e19c7
Test for RBIT in ARM mode.
...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11379
2010-09-24 23:51:42 +00:00
Julian Seward
70a3472d66
Partially make this work on arm-linux (for 32-bit incs), so as to give
...
a proper test for LDREX/STREX.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11378
2010-09-24 23:51:17 +00:00
Julian Seward
0bb6f49531
On arm-linux, add r7 to the set of registers that the CFI unwinder
...
knows how to unwind. This is important when unwinding Thumb code
the CFA is often stated as being at some offset from r7.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11377
2010-09-23 22:05:59 +00:00
Julian Seward
4953c95227
DW_CFA_advance_loc{,1,2,4} fail to multiply the delta by
...
code_alignment_factor, thereby assuming it is 1. This happens to be
OK on amd64-linux and s390x-linux because it really is 1, but on
arm-linux it is 2, and hence the boundaries between code-unwind areas
are simply wrong after any of DW_CFA_advance_loc{,1,2,4} are
processed. This patch provides the obvious fix.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11376
2010-09-23 13:24:48 +00:00
Julian Seward
0bfbb21837
arm-linux: zero out the least significant bit of R15 that we
...
ptrace into the child, so as to be a legitimate instruction
address in both ARM and Thumb mode.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11375
2010-09-23 11:02:48 +00:00
Julian Seward
9258157b08
Add VFP test cases, as per bug 244493 comment 1. Minorly cleaned up
...
version of a patch by (Dmitry Zhurikhin, zhur@ispras.ru )
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11374
2010-09-23 01:26:06 +00:00
Julian Seward
06d2a1e039
Enable --track-origins on ARM code which accesses CPSR.GE3/2/1/0.
...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11373
2010-09-22 22:27:41 +00:00
Julian Seward
0bbcbaab63
Add more test cases for {U,S}{ADD,SUB}16.
...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11372
2010-09-22 01:00:06 +00:00
Julian Seward
93a35b014f
Handle new 32-bit SIMD integer primops introduced in vex r2037.
...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11371
2010-09-22 00:58:51 +00:00
Julian Seward
f63ccaefa1
Add test cases for SSUB8 and UHADD8.
...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11370
2010-09-21 09:05:20 +00:00
Julian Seward
1701d0550d
Add tests for new insns in vex r2033 (SADD16, SSUB16, SASX, SMLAWB, SMLAWT)
...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11369
2010-09-20 22:54:25 +00:00
Bart Van Assche
75ac57dc3a
Made timerfd-syscall test more robust by improving the time rounding algorithm.
...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11368
2010-09-19 17:21:31 +00:00
Bart Van Assche
3169936a1b
Fixed a typo.
...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11367
2010-09-19 17:16:39 +00:00
Bart Van Assche
e7b5c2eb6e
memcheck/tests/linux/timerfd-syscall: send output to stderr instead of stdout.
...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11366
2010-09-19 17:13:53 +00:00
Bart Van Assche
ecb0c51747
DRD: avoid unaligned reads.
...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11365
2010-09-19 11:14:31 +00:00
Bart Van Assche
006b3b1228
PowerPC: added expected output files for memcheck/tests/varinfo[1-6], based
...
on a patch supplied by Maynard Johnson. See also #247526 .
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11364
2010-09-18 13:34:23 +00:00
Bart Van Assche
94e48485ec
PowerPC: corrected expected output for memcheck/tests/origin5-bz2. Patch
...
supplied by Maynard Johnson -- see also #247526 .
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11363
2010-09-18 10:45:27 +00:00
Bart Van Assche
921d72acf4
Follow-up for r11360.
...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11362
2010-09-18 09:37:07 +00:00
Bart Van Assche
4b91ff3b67
Build 32-bit exp-bbv tests as 32-bit. Patch supplied by Maynard Johnson
...
(see also #247526 ).
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11361
2010-09-18 08:40:52 +00:00
Bart Van Assche
d4a0dd3995
Skip exp-ptrcheck regression tests on PowerPC and ARM. Based on a patch by
...
Maynard Johnson -- see also #247526 .
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11360
2010-09-18 08:34:33 +00:00
Bart Van Assche
3dac272dff
Made power6_bcmp testcases pass - patch from Maynard Johnson. Closes #250777 .
...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11359
2010-09-18 08:10:28 +00:00
Bart Van Assche
235c2a8df3
PowerPC, Altivec: avoid using typedefs in combination with the vector keyword.
...
Patch by Maynard Johnson (see also #247526 ).
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11358
2010-09-14 15:33:00 +00:00
Bart Van Assche
e8063b7b3f
Added configure test that checks whether the assembler supports the SSE4a instruction lzcnt.
...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11357
2010-09-14 10:53:57 +00:00
Bart Van Assche
2382e79f3d
Avoid triggering AM_CFLAGS / AM_CXXFLAGS redefinition warnings.
...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11356
2010-09-13 17:44:51 +00:00
Bart Van Assche
c6cf2bb4ff
Restored original code for other compilers than ppc gcc 4.3.0 such that at least one test invokes ANNOTATE_UNPROTECTED_READ().
...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11355
2010-09-13 17:44:10 +00:00
Bart Van Assche
04c016c63b
Second and last gcc 4.3.2 PowePC workaround.
...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11354
2010-09-11 10:07:56 +00:00