4978 Commits

Author SHA1 Message Date
Julian Seward
e2430de731 Print a marginally more helpful error message if UME (ELF loading) fails.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6444
2006-12-27 05:18:33 +00:00
Julian Seward
ebaac7e259 Regtest for bug 137714 (x86 MASKMOVQ/MASKMOVDQU insns)
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6443
2006-12-27 04:35:52 +00:00
Julian Seward
ac99d46578 Handle new primop Iop_SarN8x8 introduced in vex r1702.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6441
2006-12-27 01:16:58 +00:00
Julian Seward
464242e102 Fix #134207 (pkg-config output contains @VG_PLATFORM@).
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6439
2006-12-26 04:50:12 +00:00
Julian Seward
b6eda63357 Update
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6434
2006-12-26 04:09:33 +00:00
Julian Seward
7d86c76605 Update, and make first attempt at deciding which bugs to fix for 3.2.2.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6420
2006-12-25 23:32:41 +00:00
Nicholas Nethercote
a2760304c1 Add a NEWS item about Vex type/function name changes.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6419
2006-12-24 07:54:19 +00:00
Nicholas Nethercote
cadc28816d Split the thread_runstate event into two, start_client_code and
stop_client_code, which is a bit clearer and easier to work with.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6418
2006-12-24 07:51:17 +00:00
Julian Seward
009697dfe4 Always ensure that the output buffer is zero-terminated, even if it is
already full.  (Nick N)



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6417
2006-12-24 03:02:18 +00:00
Julian Seward
1083ded7e2 Non-functional commit: track IR renaming in vex r1689.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6416
2006-12-24 02:24:11 +00:00
Julian Seward
74dbfd0a8b Update.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6415
2006-12-24 02:21:49 +00:00
Josef Weidendorfer
3f6a706d72 Callgrind: Throttle calls CLG_(run_thread) after r6413
After the change in r6413, CLG_(run_thread) is called a
lot more often, increasing the polling overhead to check
for a callgrind command file (created by callgrind_control
for controlling a callgrind run in an interactive way).
This reduces the calls to only be done every 5000 BBs,
which gives a similar polling frequency as before.
 


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6414
2006-12-23 23:11:20 +00:00
Julian Seward
806c8b17b3 Change the core-tool interface 'thread_run' event to be more useful:
- Rename the event to 'thread_runstate'.

- Add arguments: pass also a boolean indicating whether the thread
  is running or stopping, and a 64-bit int showing how many blocks
  overall have run, so tools can make a rough estimate of workload.

  The boolean allows tools to see threads starting and stopping.
  Prior to this, de-schedule events were invisible to tools.

- Call the callback (hand the event to tools) just before client
  code is run, and again immediately after it stops running.  This
  should give correct sequencing w.r.t posting of thread creation/
  destruction events.

In order to make callgrind work without complex changes, I added a
simple impedance-matching function 'clg_thread_runstate_callback' 
which hands thread-run events onwards to CLG_(thread_run).

Use this new 'thread_runstate' with care: it will be called before
and after every translation, which means it will be called ~500k
times in a startup of firefox.  So the callback needs to be fast.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6413
2006-12-23 01:21:12 +00:00
Julian Seward
bcb9689067 Use standard pthread mutexes instead of spinlocks. Not all distros
support spinlocks, it appears.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6412
2006-12-18 17:53:13 +00:00
Tom Hughes
141bfac9cf Add support for some USB ioctls. Based on patches from Jon Burgess and
Marcus Meissner in bugs #136059 and #138896.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6411
2006-12-18 16:48:10 +00:00
Tom Hughes
69c8af5179 Improve prctl support - based on patch from Eric Pouech in bug #138627.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6410
2006-12-18 15:22:46 +00:00
Julian Seward
34198cf597 Rename VG_(get_lwp_tid) to VG_(lwpid_to_vgtid).
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6409
2006-12-17 19:36:06 +00:00
Julian Seward
a96416a3e2 A naming-only change: rename VG_(set_running) to VG_(acquire_BigLock)
and VG_(set_sleeping) to VG_(release_BigLock).  And some other minor
renamings to the thread locking stuff, to make it easier to follow.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6408
2006-12-17 18:58:55 +00:00
Julian Seward
c8ecd6a81f Add locking so this produces repeatable results (Bart Van Assche).
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6407
2006-12-17 17:40:06 +00:00
Julian Seward
0cc651608a Add missing case, apparently not very popular :-)
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6406
2006-12-17 14:20:31 +00:00
Julian Seward
e9b8a2cd36 64-bit followup to r6404: fix and simplify the inline assembly, so it
works right when compiled by gcc-4.1.0.  Also add a new flag, -A, to
test all available instructions.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6405
2006-12-16 14:25:04 +00:00
Julian Seward
6a8ac7c1e9 Fix and simplify the inline assembly, so it works right when compiled
by gcc-4.1.0.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6404
2006-12-16 05:00:38 +00:00
Julian Seward
f290b3f904 Fix version.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6403
2006-12-16 04:58:59 +00:00
Nicholas Nethercote
d162731a2c Completely overhauled the internals of Memcheck's error handling. All the
different error kinds were reusing the same struct for storing their
details.  Each one used some but not all the fields, and the AddrInfo was
similar, and it was very confusing.

So I changed MC_Error and AddrInfo to be tagged unions, like Vex's IRExpr and
IRStmt types.  The resulting code is a little more verbose but much easier
to understand.  I also split up several error kinds, which also made things
simpler.  The user-visible behaviour is identical except for a couple of
very minor things that I've documented in the NEWS file for the 3.3.0
release.

Ideally I'd get rid of the Addr and Char* fields in the core Error type,
which are not always used, and do them similarly within tools.  But that
would require changing the core/tool interface, so I'm leaving it for the
moment.




git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6402
2006-12-16 00:54:12 +00:00
Nicholas Nethercote
52dfe4cb39 Remove defunct constant.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6401
2006-12-15 04:37:25 +00:00
Nicholas Nethercote
21dee9ebc3 Make VG_STREQ return True or False, rather than any integer.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6400
2006-12-14 03:29:18 +00:00
Nicholas Nethercote
033e3bd4e9 Removed the unused pthread_model and thread_model modules.
Mostly commented out the unused stuff relating to ThreadErrs and MutexErrs,
which no longer exist.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6399
2006-12-14 02:55:58 +00:00
Nicholas Nethercote
b1ca5a2804 Remove some very old and incorrect info in the headers.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6398
2006-12-14 00:28:50 +00:00
Julian Seward
bd211db8f5 Include missing files in tarball.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6397
2006-12-13 14:35:03 +00:00
Julian Seward
dfa95416d2 Fix error in aix zeropage handling.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6396
2006-12-13 03:16:40 +00:00
Julian Seward
043bf89f2a Minor tidying for regtests on AIX.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6395
2006-12-12 01:38:15 +00:00
Julian Seward
b650be145e Fix various regtests, mostly by adding 64-bit outputs.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6394
2006-12-11 03:23:41 +00:00
Julian Seward
8961a73ab5 Update expected output.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6393
2006-12-11 02:19:16 +00:00
Julian Seward
1d56e9ddad On SuSE 10.1 (amd64) fd 4 seems to be open at process start. Close it
so as to get consistent test results.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6392
2006-12-11 01:12:18 +00:00
Julian Seward
52cf6ff843 Tidy fd-leak stuff a bit.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6391
2006-12-11 01:11:02 +00:00
Julian Seward
b0c6a889c2 Update a couple of expected outputs.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6390
2006-12-11 00:19:28 +00:00
Julian Seward
62d6f5c373 Fix 'make html-docs' and 'make print-docs'.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6389
2006-12-10 02:59:16 +00:00
Julian Seward
c9d6e1c3af Update.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6388
2006-12-10 02:58:27 +00:00
Julian Seward
508ef80b0d Fix installation of libmpiwrap.so on the primary platform.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6387
2006-12-10 02:26:50 +00:00
Julian Seward
99eb8260a2 Get rid of the use of explicit register variables in the ppc32-linux
magic macros.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6386
2006-12-08 21:29:46 +00:00
Dirk Mueller
1ef58269c7 rename as _SOURCES is a reserved keywoard and breaks with newer
auto*foo: 
Makefile.am:110: variable `VEX_PRIMARY_SOURCES' is defined but no
program or
Makefile.am:110: library has `VEX_PRIMARY' as canonic name (possible
typo)


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6384
2006-12-07 15:31:57 +00:00
Julian Seward
18f9d5c215 Update some expected outputs following r6382. There may be more ..
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6383
2006-12-06 18:53:07 +00:00
Julian Seward
80a670f93c Fix confusing and contradictory "Rerun with ..." messages printed at
the end of MC_(do_detect_memory_leaks).  This causes various leak
regression tests to fail; will fix shortly.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6382
2006-12-06 18:05:54 +00:00
Julian Seward
b6c6c4de07 Update.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6381
2006-12-06 17:39:16 +00:00
Julian Seward
abce15a799 Only read $HOME/.valgrindrc if HOME is actually set.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6380
2006-12-06 17:38:32 +00:00
Nicholas Nethercote
59cdea4c78 Add a regression test, courtesy of Bart Van Assche.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6379
2006-12-06 06:32:37 +00:00
Julian Seward
34a8fb5292 Fix suppression-matching bogon (Paul Floyd).
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6378
2006-12-06 03:36:24 +00:00
Julian Seward
771e4abcc9 When generating suppressions, remember to Z-demangle function names,
since the suppression-matching machinery does the same.  Not doing so
causes auto-generated suppressions involving Z-mangled fn names to not
work.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6377
2006-12-06 03:35:38 +00:00
Julian Seward
5246f753ff When failing, fail a bit more informatively.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6376
2006-12-01 18:48:56 +00:00
Julian Seward
d1034ee415 When being an 'inner valgrind' on 64-bit platforms, ensure the stack
is allocated below the magic 32G mark as it would be normally.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6375
2006-12-01 02:35:02 +00:00