740 Commits

Author SHA1 Message Date
Julian Seward
a69e308075 Add more test cases for VCMPSS, and reenable disabled tests for VCMPSD
and VEXTRACTF128, now that the implementation has been fixed.  Current
status that all so-far implemented AVX instructions are tested by this
file, and none have any detectable failures.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12588
2012-05-27 13:52:54 +00:00
Julian Seward
61a307a9d4 Add tests for all AVX instructions implemented so far.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12587
2012-05-27 08:26:49 +00:00
Julian Seward
3845d28914 Update.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12583
2012-05-25 15:53:37 +00:00
Julian Seward
acec6c29cb Update.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12582
2012-05-25 13:51:33 +00:00
Julian Seward
9ae8554368 Update.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12580
2012-05-24 21:07:16 +00:00
Julian Seward
0bdcee8722 Update.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12577
2012-05-23 11:40:03 +00:00
Julian Seward
dce19a2d07 Update.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12576
2012-05-22 10:50:19 +00:00
Julian Seward
8ebb8c30e5 Add initial support for Intel AVX instructions (Valgrind side).
Tracker bug is #273475.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12569
2012-05-21 10:18:10 +00:00
Florian Krohm
29f8d3cb83 Add a few testcases that exercise the s390_calculate_icc helper.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12561
2012-05-12 00:05:14 +00:00
Philippe Waroquiers
0ea6d36f1d fix 219156 support static malloc or alternate malloc lib (e.g. tcmalloc) with new option --soname-synonyms
* pub_tool_redir.h : define the prefix to be used for "soname synonym"
  place holder
* vg_replace_malloc.c : define synonym place holder for malloc related
  functions
* m_redir.c : when detecting a soname synonym place holder redir spec, search
  in clo_soname_synonyms if there is a synonym pattern.
  If yes, replace the soname pattern. If not, ignore the redir spec.
* various files: implement or document the new clo --soname-synonyms
* new test memcheck/tests/static_malloc.vgtest



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12559
2012-05-11 19:33:46 +00:00
Julian Seward
52df50db1b Add DFP test cases that accidentally missed in r12546.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12547
2012-05-01 19:51:07 +00:00
Julian Seward
6e0e5e15c5 Test cases for POWER Power Decimal Floating Point (DFP) test class,
test group and test exponent instructions dtstdc, dtstdcq, dtstdg,
dtstdgq, dtstex and dtstexq.  Bug #298862.  (Carl Love,
carll@us.ibm.com and Maynard Johnson, maynardj@us.ibm.com)



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12546
2012-04-29 20:20:16 +00:00
Julian Seward
72eb6b7a7e POWER Processor decimal floating point instruction support, part 3 --
test cases.  (Carl Love, carll@us.ibm.com).  Bug 298080.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12541
2012-04-23 11:22:05 +00:00
Philippe Waroquiers
f05d0d0969 patch fixing 297991: mmap changing a file descriptor current position
Bug caused by the following problem:
for each mmap, Valgrind reads the 1st 1024 bytes to detect
if this is an mmap-ed file containing debug info to decode.

Reading this 1Kb is done with VG_(pread). VG_(pread) should be
the equivalent of syscall pread but on linux, it is implemented as
a seek+read. 

The patch implements VG_(pread) in terms of the underlying pread syscall.

Test mmap_fcntl_bug.c completed to also verify the fd current position
before and after the mmap. 

tested on linux x86/amd64/ppc32/ppc64/s390.
(not tested on Darwin)
(manually tested on arm-android)



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12504
2012-04-13 23:07:29 +00:00
Julian Seward
30c38b554a Add symlinks that were missed out from r12500 due to last-minute SVN
snafus.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12501
2012-04-12 17:35:15 +00:00
Julian Seward
9c1af9b09a POWER Processor decimal floating point instruction support: part 2
(bug #297497) (Carl Love, carll@us.ibm.com) (Valgrind side, mostly
tests)



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12500
2012-04-12 17:28:57 +00:00
Julian Seward
cfd1bdd20b Add a test re conversions of QNaNs between 64- and 80-bit FP
formats.  Related to Mozilla bug #738117.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12497
2012-04-11 07:12:32 +00:00
Julian Seward
d2ca761361 Initial support for POWER Processor decimal floating point
instruction support -- VEX side changes.  See #295221.

This patch adds test cases.  Also adds some minor Memcheck
instrumentation tweaks necessitated by the IR changes.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12476
2012-04-02 10:22:05 +00:00
Julian Seward
6e2edeb9bb rlimit64_nofile won't build on Darwin, so don't try.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12465
2012-03-27 10:03:56 +00:00
Philippe Waroquiers
12633f0117 Modify none/tests/execve.c so to avoid infinite loop with --trace-children=yes
With --trace-children=yes, none/test/execve exec ve forever.

This avoids an infinite loop when running outer on inner regression
tests (for which --trace-children=yes is mandatory for the outer).



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12440
2012-03-11 20:47:41 +00:00
Florian Krohm
f41f7ad456 Fix a testcase. Constraint was incorrect allowing r0 to be used
for the EX insn. Patch by Christian Borntraeger (borntraeger@de.ibm.com).


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12417
2012-03-05 23:12:47 +00:00
Bart Van Assche
d5ba78f638 none/tests/mq.c: Fix a copy-paste bug
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12413
2012-03-02 09:57:14 +00:00
Tom Hughes
35cc294c29 Handle prlimit64 the same way we do getrlimit and setrlimit, with
some requests trapped and handled by valgrind.

Patch from Matthias Schwarzott via BZ#294047.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12411
2012-03-01 13:42:18 +00:00
Julian Seward
7d0b1685f1 Add test cases for MPSADBW. See #294048.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12395
2012-02-21 11:03:38 +00:00
Julian Seward
48d927757d Add test cases for PHMINPOSUW (SSE 4.1). See #287301.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12390
2012-02-16 22:02:47 +00:00
Julian Seward
2ef374fd74 Add test cases for 16 bit PCMPxSTRx variants. See #293754.
(Eliot Moss, moss@cs.umass.edu)


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12389
2012-02-16 15:24:17 +00:00
Florian Krohm
ea211346f8 Use LC_ALL=C for a controlled environment.
Patch by zzam@gentoo.org. Fixes #294055.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12386
2012-02-15 03:57:27 +00:00
Philippe Waroquiers
913ae97e07 * fix Bug 290655 - Add support for AESKEYGENASSIST instruction
(Valgrind part : test for AES instructions (AESKEYGENASSIST, AESIMC,
  AESENC, AESENCLAST, AESDEC, AESDECLAST).



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12384
2012-02-14 21:35:46 +00:00
Tom Hughes
74eb6fb3b4 Add support for process_vm_readv and process_vm_writev system calls.
Patch from Lénaïc Huard to fix BZ#292995.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12374
2012-02-10 09:39:37 +00:00
Florian Krohm
6874ede370 Add testcases for TR, TRE, TRTT, TROT, TRTO insns.
Fixes #273114. Patch by Divya Vyas (divyvyas@linux.vnet.ibm.com).


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12368
2012-02-04 17:16:40 +00:00
Bart Van Assche
045137d886 none/tests/x86/bug125959-x86 language conformance fix: do not trigger signed integer overflow. Fixes #292628.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12358
2012-01-28 14:20:30 +00:00
Florian Krohm
4b9b13911c Add support for the s390's TROO insn. These are the valgrind bits.
Detect ETF2 enhancement facility using STFLE. Add testcases.
Patch by Divya Vyas (divyvyas@linux.vnet.ibm.com) with
modifications. Partial fix of #273114


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12335
2012-01-15 21:02:44 +00:00
Florian Krohm
b8466723cd Beef up VG_(strerror) to provide correct messages for the
errno codes in asm-generic/errno-base.h (on linux). 
The error strings were obtained by calling strerror natively in
Linux. 
Extend vki-linux.h accordingly. vki-darwin.h already had
those errno codes.
Add testcase. This fixes #287858.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12316
2011-12-24 21:50:53 +00:00
Philippe Waroquiers
e52f0e1de0 * none/tests/linux/mremap3.vgtest : new test
mremap3.c based on testcase provided by Jan Engelhardt
* coregrind/m_syswrap/syswrap-generic.c
  - The two 'no-thrash checks' that were introduced to fix bug #129866
    were (probably) broken when adress space manager was reworked.
    The new VG_(am_get_advisory_client_simple) returns NULL for a free
    segment, but the check was based on checking not NULL and then
    that the state is free.
    => replaces these two local checks by a call to the new
    am Bool VG_(am_covered_by_single_free_segment) function.

* coregrind/pub_core_aspacemgr.h
  coregrind/m_aspacemgr/aspacemgr-linux.c
  - new function Bool VG_(am_covered_by_single_free_segment)



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12314
2011-12-22 13:25:58 +00:00
Philippe Waroquiers
c523185b76 fix 286270 VG_(env_remove_valgrind_env_stuff)
rev 12001 has introduced a regression in VG_(env_remove_valgrind_env_stuff):
to avoid modifying a possibly read-only env string, the string is duplicated,
and the copy is modified. However, mash_env_column modifies the string
"in-place". The modified string was not put back in the env (and could not,
because the src string is only partially copied).

This means that the valgrind preload strings were not cleaned up and
when a 32 bit executable execs a 64 bits (or vice versa: 64 bit execs 32 bits),
LD_PRELOAD contains both the 32 bits and 64 bits versions of Valgrind
vgpreload.... => ld.so then gives an error msg, as it can't preload either
the 32 or the 64 bits version.


The patch fixes this by duplicating the whole env string, and passing
to mash_colon_env a pointer to the correct offset in the whole env string.
The duplicated string is replacing the original entry in envp.

This patch adds two regression tests : none/tests/allexec32 and 
none/tests/allexec64. On a bi-arch valgrind, these will be 32bits and 64 bits
executables, exec-ing each other. On a single arch, one will be a symlink
to the other (to avoid different .exp files, and still test exec).



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12287
2011-12-11 16:29:43 +00:00
Bart Van Assche
908268e4a0 Add command-line option --fair-sched=[no|yes|try]. Use --fair-sched=try
when running the annotate_hbefore regression test. Closes #270006.

To do: update manual.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12280
2011-12-08 16:14:59 +00:00
Florian Krohm
2a7aef3ada Remove unneeded prerequisites in testcases.
Followup to r11693.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12253
2011-10-29 04:02:34 +00:00
Florian Krohm
974b65ba65 Include insn_pclmulqdq.def in tarball.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12252
2011-10-29 03:39:56 +00:00
Florian Krohm
b798dacb8c Fix the configure test for ssse3 support. GCC needs -msse or it
will reject the xmm7 clobber in the code snippet.
Fix the prereqs for the ssse3 tests. It is possible that hardware
supports ssse3 but the tool chain does not. So we need to have the
testcase executable as a prerequisite.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12251
2011-10-28 21:37:19 +00:00
Julian Seward
084b7cb10b Fix #284384 (clang 3.1 -Wunused-value warnings in valgrind.h,
memcheck.h) by changing a bunch of VALGRIND_DO_CLIENT_REQUEST_EXPR
into VALGRIND_DO_CLIENT_REQUEST_STMT for cases where the return value
of the former would be unused.  (Bart Van Assche, bart.vanassche@gmail.com)



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12226
2011-10-24 13:21:57 +00:00
Julian Seward
fc489f1101 Don't break fcntl locks when program does mmap. #280965.
(Rusty Russell, rusty@rustcorp.com.au)

tdb uses fcntl locks and mmap, and some of the tests fail under valgrind. 
strace showed valgrind opening the tdb file, reading 1024 bytes, then closing
it.  This is not allowed: POSIX says if you open and close a file, all fcntl
locks on it are dropped (insane, yes).

Finally got around to hacking the source to track this down: di_notify_mmap is
doing the damage.  The simplest fix was to hand in an optional fd for it to
use, then have it do pread.

I had to fix your pread; surely this should seek back even if the platform
doesn't have pread support?



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12224
2011-10-24 08:53:03 +00:00
Florian Krohm
b70e46e295 Remove pth_specific.c which is unused.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12219
2011-10-23 14:34:52 +00:00
Julian Seward
f8b558a185 Update expected outputs following update of copyright dates.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12208
2011-10-23 08:24:43 +00:00
Julian Seward
c96096ab24 Update all copyright dates, from 20xy-2010 to 20xy-2011.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12206
2011-10-23 07:32:08 +00:00
Florian Krohm
f163321692 Adapt the faultstatus.c testcase to work properly on systems with larger
page size. E.g. ppc64 running SLES 11 has 64k pages.
Patch by Maynard Johnson (maynardj@us.ibm.com) with small modification
to minimize source code changes. Fixes bugzilla #283709.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12183
2011-10-21 02:32:49 +00:00
Bart Van Assche
a38ef2312e Remove filter_int because not used anywhere
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12178
2011-10-20 16:06:51 +00:00
Julian Seward
cfe0e65b27 Add (well, actually, enable existing) test cases for Thumb2 ROR
(register) encoding T2.  See #284472.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12176
2011-10-20 12:43:16 +00:00
Julian Seward
6c7425309e Add test cases for PCMPxSTRx case 0x38. See #273318.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12168
2011-10-19 20:17:50 +00:00
Julian Seward
ac3ebc6ca3 Add test cases for PMULUDQ and PCMPEQQ. Duh -- in future, add test
cases at the end, since adding in the middle changes the random
data used for all tests that follow, and makes the diff huge.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12166
2011-10-19 15:26:36 +00:00
Bart Van Assche
15fb871467 Add empty-exe regression test to the distribution tarball
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12153
2011-10-14 09:31:04 +00:00