794 Commits

Author SHA1 Message Date
Julian Seward
ea762eae30 Oops, missed out of r5724.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5725
2006-03-08 13:24:21 +00:00
Julian Seward
a8587eef99 Regression test for memcheck's SET/GET_VBITS client requests.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5724
2006-03-08 13:21:07 +00:00
Julian Seward
aee8146a06 Reinstate the SET/GET_VBITS client requests.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5723
2006-03-08 13:20:09 +00:00
Julian Seward
eedadc5fb3 get_abit_and_vbyte/get_abit can be a significant bottleneck when
painting/checking huge numbers of bytes resulting from client check
requests.  Inlining them helps significantly.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5710
2006-03-03 21:02:18 +00:00
Julian Seward
25ff562b43 Apparently on SLES9 the dynamic linker is called (soname'd) ld64.so.1.
Add a corresponding strcmp redirect.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5650
2006-02-14 21:55:11 +00:00
Julian Seward
aa35c50723 Extend stack-permissions-change fast-case machinery to handle +/- 112,
128, 144 and 160.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5640
2006-02-12 15:42:20 +00:00
Julian Seward
aafec91eed Fix minor anomaly pointed out by icc9.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5627
2006-02-10 11:57:17 +00:00
Julian Seward
501fa0ca99 Get rid of general case in mkLazy3 and instead add new cases as they appear.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5621
2006-02-09 03:25:06 +00:00
Julian Seward
32a7eb402d Track vex r1573 (introduction of 4-arg IR primops for ppc fmadd/fmsub).
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5619
2006-02-08 19:32:02 +00:00
Julian Seward
c2a48e3498 This causes problems on setups where ld.so is mapped at just over 1M:
it zeroes out that area (as a result of one of the mmaps) and the
program consequently goes into an infinite loop.  Change the map sizes
to just one page to avoid that.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5616
2006-02-06 23:22:31 +00:00
Julian Seward
4fc858a562 Test program aimed at exercising x87 insns a bit on amd64.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5613
2006-02-06 04:49:58 +00:00
Julian Seward
c63a2f2e3b Add a check for fsincos.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5610
2006-02-04 15:43:14 +00:00
Julian Seward
b8904fc241 Yet more x86 instruction tests, mostly aimed at wierd/transcendental
x87 insns.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5609
2006-02-04 15:26:11 +00:00
Julian Seward
3cee6256f4 Tidy up a couple more x86-related primops following rounding changes.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5608
2006-02-04 15:25:23 +00:00
Julian Seward
19bcf4be02 Followup to r5605: fixes for x86
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5607
2006-02-03 22:55:04 +00:00
Julian Seward
5163ea2aed * Track introduction of IR ternary primops and rounding modes, at least as
to the extent needed to make ppc32 work.

* As a result, remove the replacements for glibc's floor/ceil fns on 
  ppc32/64, since vex can now correctly simulate the real ones.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5605
2006-02-03 16:12:27 +00:00
Julian Seward
72dd07b7ef Change the number of client request args from 4 to 5 as that may
be useful in future.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5603
2006-02-01 14:59:42 +00:00
Julian Seward
7ade90ed8d Track vex r1553 (addition of Iop_Est8FRecip, case Iop_Est5FRSqrt)
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5596
2006-01-27 15:11:31 +00:00
Julian Seward
a8be862b0f Test program to check the behaviour of a bunch of FP functions.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5590
2006-01-24 00:40:35 +00:00
Julian Seward
bb6217e7a1 Use perf/fbench as a simple FP test too. This is a modified copy, not a symlink.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5588
2006-01-23 03:36:40 +00:00
Julian Seward
0a19390e1d Use the bz2 test in perf/ as a regression-test, just as a moderately
complex integer program which exercises Vex a bit.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5585
2006-01-22 16:44:35 +00:00
Julian Seward
e05481ea7a Wibble
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5574
2006-01-20 16:47:20 +00:00
Julian Seward
83c10ad5b7 Make amd64 function wrapping work again following recent changes.
Includes expected outputs for wrap8 for the non ppc64-linux case.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5570
2006-01-20 15:17:20 +00:00
Julian Seward
6af183ac21 Changes to make function wrapping work better on ppc64-linux:
- when recording the non-redirected address in guest_NRADDR, also
  snapshot the current R2 value, as that will be needed to run the
  original safely

- As a consequence, the original-function information extracted by
  VALGRIND_GET_ORIG_FN is different on ppc64-linux (2 words) from
  all other platforms (1 word).  So change the type of it from
  void* to a new type OrigFn which can be defined differently for
  each platform.

- Change the CALL_FN_* macros for ppc64-linux to save/restore
  R2 values appropriately.

- ppc64-linux: detect overflow/underflow of the redirect stack
  and bring Valgrind to a halt if this happens

- Update VG_CLREQ_SZB for ppc32/64 (was out of date).





git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5569
2006-01-20 14:31:57 +00:00
Julian Seward
de99f0aaeb More function wrapping tests.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5568
2006-01-20 14:21:28 +00:00
Julian Seward
26587144d3 Track line number changes.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5565
2006-01-19 04:40:35 +00:00
Julian Seward
7cc6a0d482 More __libc_start_main -> "(below_main)" changes.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5564
2006-01-19 04:33:39 +00:00
Julian Seward
79ed27280a Update with new expected outputs.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5563
2006-01-19 03:57:06 +00:00
Julian Seward
49e7f0baa1 Suppressions-tests fixes.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5562
2006-01-19 03:56:33 +00:00
Julian Seward
dc5d273309 Fixes to track the "(below main)" change.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5561
2006-01-19 03:55:54 +00:00
Julian Seward
e83b876384 Don't try sys_sigprocmask on ppc64-linux.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5560
2006-01-19 03:55:01 +00:00
Julian Seward
a7e7378dae getcontext() seems to be unimplemented on glibc-2.3.3 on ppc64-linux.
Handle that eventuality.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5559
2006-01-19 03:53:53 +00:00
Julian Seward
aaacb37226 Clever handling of partially defined equality does not work on
ppc32/64 at the moment.  Make this test handle that whilst still
testing the facility on x86/amd64.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5558
2006-01-19 03:52:19 +00:00
Julian Seward
0307628a86 This was segfaulting on ppc64-linux, even natively. These changes
stop it doing that.  Am not convinced this is a good fix -- I don't
really understand how this program works.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5557
2006-01-19 03:50:48 +00:00
Julian Seward
70c82ce292 Make a bit less nonsensical on 64-bit platforms.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5556
2006-01-19 03:48:47 +00:00
Julian Seward
8a00ed8174 To reduce the endless nuisance of multiple different names for "the
frame below main()" screwing up the testsuite, change all known
incarnations of said into a single name, "(below main)".



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5547
2006-01-18 04:20:04 +00:00
Julian Seward
0789d0e5a1 Make these behave correctly on ppc64 ELF.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5546
2006-01-18 04:17:18 +00:00
Julian Seward
b4628a7314 Valgrind-side handling (fast case) for the ppc64 ELF stack redzone.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5545
2006-01-18 04:16:27 +00:00
Julian Seward
f0d678baab These files all speak about instrumentation functions.
Instrumentation functions now take a callback closure structure
(VgCallbackClosure*), so this commit changes the signatures
accordingly.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5535
2006-01-17 02:06:39 +00:00
Julian Seward
6c04df88c8 Increase size of the largest guest state handled.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5532
2006-01-17 01:58:24 +00:00
Julian Seward
f9a9e03c7a Merge in function wrapping support from the FNWRAP branch. That
branch hereby becomes inactive.  This currently breaks everything
except x86; fixes for amd64/ppc32 to follow.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5520
2006-01-12 12:32:32 +00:00
Julian Seward
5666b3322d Make this test 64-bit clean.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5505
2006-01-07 22:33:45 +00:00
Julian Seward
cc9a4e788c Fix a casting bug in the LOADV8 slow (misaligned) case spotted by Nick.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5500
2006-01-05 14:09:46 +00:00
Julian Seward
db09b4e6a9 Build fix for oset_test following recent build system hackery.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5497
2006-01-04 04:23:30 +00:00
Julian Seward
dd3b4bf6f2 amd64-linux adjustments as a followup to r5493.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5494
2006-01-04 02:55:03 +00:00
Julian Seward
32f134b8c1 Somewhat rehash the biarch-build machinery so as to (1) formalise the
distinction between primary and secondary build targets, and (2) make
it independent of the default behaviour of gcc (iow, what gcc does
when you specify neither -m32 nor -m64).

As a result, an out-of-the-box build on ppc64-linux now builds a
system which is basically for 64-bit PowerPC, but also has the ability
to run 32-bit ppc-linux binaries (exactly the same arrangement as you
get when building on amd64-linux).

There are various twists and turns.  multiple-architectures.txt is
updated all the gory details.

This will break amd64 builds until such time as
<tool>/tests/{amd64,x86}/Makefile.am are fixed up (shortly).



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5493
2006-01-04 01:20:28 +00:00
Julian Seward
79580b7fae Make this work on SSE1-only machines.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5469
2006-01-01 18:26:40 +00:00
Julian Seward
c9ce29cc18 Also do sse memory overrun tests on x86.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5467
2006-01-01 15:22:16 +00:00
Julian Seward
80bbb1aa75 Add a test program which checks for memory overruns in the SSE insn
decoder.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5466
2006-01-01 14:27:04 +00:00
Nicholas Nethercote
cda6b9e79b Update for recent change to OSet interface.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5437
2005-12-25 06:30:34 +00:00