Julian Seward
eeb7eaa4e1
Set fpscr back to a known state after running generated code (64-bit mode).
...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5615
2006-02-06 05:31:37 +00:00
Julian Seward
017ed68f63
Set fpscr back to a known state after running generated code.
...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5614
2006-02-06 05:14: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
f553d268a7
Regtest for a double -> unsigned int conversion that xlc generates
...
inline, which requires observing rounding modes properly for fadd.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5612
2006-02-06 04:20:51 +00:00
Julian Seward
412cd357f6
Add a program for checking behaviour of ppc floating point insns in
...
the presence of different rounding modes. This should really be a ppc
regression test, but the output is so large (~30MB) that the
.stdout.exp file would be unviably large.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5611
2006-02-06 04:19:30 +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
4c5b33c685
Followup to r5605: fixes for ppc64
...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5606
2006-02-03 19:14:33 +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
Robert Walsh
d896e4d592
Update ignores.
...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5604
2006-02-02 05:53:44 +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
b63b719779
Bring these tests into operation.
...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5602
2006-01-29 18:18:18 +00:00
Julian Seward
bb023d7227
Add test cases for soem FX (general-purpose) and GX (graphics) optional insns.
...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5601
2006-01-29 17:08:58 +00:00
Julian Seward
e8d296348a
Add configure flags --enable-only64bit and --enable-only32bit with
...
subvert the biarch build system, something that is sometimes
convenient to do.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5600
2006-01-28 18:39:09 +00:00
Julian Seward
1e0aac8d52
Check lsw/stsw insns in 64-bit mode.
...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5599
2006-01-28 17:08:23 +00:00
Julian Seward
9045ab4f72
Un-break ppc32 following recent hw-capabilities hackery.
...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5598
2006-01-27 21:52:39 +00:00
Julian Seward
25da9f5432
Track vex r1555 (Change the way Vex represents architecture variants
...
into something more flexible.)
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5597
2006-01-27 21:23:23 +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
bd0a65919b
Get rid of some will-never-be-used redirections -- names which are in
...
libstdc++ but which are not (C++) mangled.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5595
2006-01-26 18:04:46 +00:00
Julian Seward
6a00071217
ppc32-linux: enable __NR_statfs
...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5594
2006-01-26 14:25:51 +00:00
Julian Seward
c4e98cbd7f
Ensure -Wdeclaration-after-statement gets through to vex-land.
...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5593
2006-01-25 02:58:28 +00:00
Julian Seward
173f8a2b35
Don't build the Altivec constant tables unless Altivec instruction
...
tests have been requested.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5592
2006-01-24 18:50:38 +00:00
Julian Seward
cb8adb0480
Vex can't simulate floor() or ceil() correctly on ppc32/64 from
...
glibc-2.3.4 onwards, so just replace the functions with the older
glibc implementation. This is an ugly kludge.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5591
2006-01-24 01:01:17 +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
da90c31368
Enable message-queue syscalls.
...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5589
2006-01-23 04:34:22 +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
f6738169ca
Fix profiling dispatcher.
...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5587
2006-01-23 00:09:07 +00:00
Julian Seward
03788036db
Comment-only changes.
...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5586
2006-01-22 20:12:45 +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
a402acd78e
rm unneeded headers
...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5584
2006-01-22 15:51:49 +00:00
Julian Seward
488f5569a6
Two unrelated changes:
...
- create an IMark at the start of the IR for the ppc64 magic return stub
as cachegrind will barf if it doesn't find one in a BB
- ppc64: for the same reason that _NRADDR is set to zero at the start of
redirect block which is a function replacement entry (as opposed to a
function wrapper entry), also set _NRADDR_GPR2 to zero.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5583
2006-01-22 01:15:36 +00:00
Julian Seward
72341b358b
Index the BB_info table by redirected guest address, not
...
non-redirected guest address. This is a small but significant change
needed to make function wrapping work. The problem is that with
function wrapping two different translations are associated with the
non-redirected address (of a wrapped function entry point), and so
cachegrind asserts. Whereas the redirected guest addresses reflect
the reality of only one translation associated with each address. So
use them instead.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5582
2006-01-22 01:12:51 +00:00
Julian Seward
f3f3f2b8ad
rm 'inline' - produces too many complaints with -Winline
...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5581
2006-01-22 01:10:12 +00:00
Julian Seward
afe2b7671f
Get rid of compiler warnings.
...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5580
2006-01-22 01:09:37 +00:00
Julian Seward
15519cf976
Test to check that cachegrind's BB_info management system isn't
...
confused by function wrapping.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5579
2006-01-22 01:08:40 +00:00
Julian Seward
13838f264c
Update.
...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5578
2006-01-21 03:47:44 +00:00
Julian Seward
c53cdd12af
Handle __NR_madvise.
...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5577
2006-01-20 21:46:03 +00:00
Julian Seward
0297c5e469
ppc64-linux: compute the correct initial program counter and tocptr
...
when the interpreter is loaded at a different address than what it
asked for.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5576
2006-01-20 21:45:36 +00:00
Julian Seward
3db74cde05
Yet another possible output, due to trivial differences in backtraces.
...
This is getting rediculous. We need a better way to compare
backtraces in regression test outputs.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5575
2006-01-20 16:48:31 +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
332b20ecef
Make fn wrapping work again on ppc32-linux.
...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5573
2006-01-20 16:46:34 +00:00
Julian Seward
91b378ce8f
Forgot to svn add this.
...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5572
2006-01-20 15:55:21 +00:00
Julian Seward
e6ffa0ee09
x86 function wrapping fixes.
...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5571
2006-01-20 15:46:46 +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
03d7993176
- Make this work on systems where the stack is non executable:
...
put the to-be-modified insns in an mmap'd page
- Clarify init_function a bit (does not change what it does)
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5567
2006-01-19 17:44:38 +00:00
Julian Seward
5958641f7d
Wibble.
...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5566
2006-01-19 05:01:28 +00:00