mips32: Fix typo.

Fix some typo error and some errors in tests that was discovered while running Valgrind on MIPS/Android.
In some cases initial FCSR value wasn't being set properly.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13746 a5019735-40e9-0310-863c-91ae7b9d1cf9
Minor tweak in the vgdb instructions output by valgrind:
to make copy/paste and then editing the command easier,
put the --pid=3393 at the end of the instruction output by valgrind.

So, in gdb command history, one can just recuperate the previous target
command in the history and more easily change the pid.
I.e. have:

target remote | /home/philippe/valgrind/refactor_vgdb/Inst/lib/valgrind/../../bin/vgdb --vgdb-prefix=truc --pid=3393

instead of

target remote | /home/philippe/valgrind/refactor_vgdb/Inst/lib/valgrind/../../bin/vgdb --pid=3393 --vgdb-prefix=truc 



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13747 a5019735-40e9-0310-863c-91ae7b9d1cf9
Minor tweak in the VG_(poll) syscall and callers: have a way to show
the error in case the poll syscall unexpectedly fails.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13748 a5019735-40e9-0310-863c-91ae7b9d1cf9
mips32/mips64: Suppress race condition error.

On MIPS architecture helgrind is showing race condition error in printf if
the printf is first time called from the child thread. If we call printf 
from the main for the first time we will suppress this error on mips.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13749 a5019735-40e9-0310-863c-91ae7b9d1cf9
mips32: update ignore list.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13750 a5019735-40e9-0310-863c-91ae7b9d1cf9
Bump the version number on the trunk.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13751 a5019735-40e9-0310-863c-91ae7b9d1cf9
drd: Follow-up for r13749

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13752 a5019735-40e9-0310-863c-91ae7b9d1cf9
NEWS entry for resolved bug 328100 XABORT not implemented (VEX r2800).

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13753 a5019735-40e9-0310-863c-91ae7b9d1cf9
Add testcase for bug 328100 XABORT not implemented (VEX r2800).

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13754 a5019735-40e9-0310-863c-91ae7b9d1cf9
Announce fix for BZ #328455.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13755 a5019735-40e9-0310-863c-91ae7b9d1cf9
drd/tests/std_atomic: Add

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13756 a5019735-40e9-0310-863c-91ae7b9d1cf9
Select expensive add/sub/cmp interpretations for blocks containing
Iop_GetMSBs8x16, since the presence of those usually implies PMOVMSKB
instructions in the block, which can mean "inlined string operations".
Reduces the noise level a lot in some icc12 -O2 generated sequences.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13757 a5019735-40e9-0310-863c-91ae7b9d1cf9
Bug 328711 valgrind.1 manpage "memcheck options" section is badly generated

Add missing para tags inside listitems. (Miroslav Franc, mfranc@redhat.com)

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13758 a5019735-40e9-0310-863c-91ae7b9d1cf9
Following svn r13758 (bug 328711), some further similar fixes, 


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13759 a5019735-40e9-0310-863c-91ae7b9d1cf9
Implement gdbsrv "v.info stats" command giving statistics for valgrind core + tools

* addition of VG_(needs_print_stats) in pub_tool_tooliface.h
* use the above in memcheck and helgrind
* output valgrind stats and calls print_stats in server.c



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13760 a5019735-40e9-0310-863c-91ae7b9d1cf9
mips32/64: Add extra suppression for mips32/64.

After the thread is detached not all thread memory is freed. This memory (dtv-dynamic thread vector)
can be used by the main thread. There are two types of run-time handling of TLS.
Difference is in the position of memory. It can be either before the thread pointer or
after the thread pointer.
Taken form the document http://www.akkadia.org/drepper/tls.pdf:
"Variant I for the thread-local storage data structures were developed
as part of the IA-64 ABI. Being brand-new, compatibility was no issue. The thread
register for thread t is denoted by tpt. It points to a Thread Control Block (TCB) which
contains at offset zero a pointer to the dynamic thread vector dtvt for the thread.

Variant II has a similar structure. The only difference is that the thread pointer
points to a Thread Control Block of unspecified size and content. Somewhere the TCB
contains a pointer to the dynamic thread vector but it is not specified where. This is
under control of the run-time environment and the pointer must not be assumed to be
directly accessible; compilers are not allowed to emit code which directly access the
dtvt."

Because of this we have two types of error when the program ends:
possibly lost, and definitely lost.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13761 a5019735-40e9-0310-863c-91ae7b9d1cf9
Fix 325714  Empty vgcore but RLIMIT_CORE is big enough (too big)

Use ULong rather than UInt for coredump file size.

Tested manually by
  ulimit -c 4294967296
  ./vg-in-place ./gdbserver_tests/gone abort
valgrind creates vgcore.xxxxx unusable by GDB.

With the fix, GDB can read the core dump.

Patch from  Romain Geissler



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13762 a5019735-40e9-0310-863c-91ae7b9d1cf9
Callgrind: support printing stats via vgdb

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13763 a5019735-40e9-0310-863c-91ae7b9d1cf9
have massif printing its stats for v.info stats 


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13764 a5019735-40e9-0310-863c-91ae7b9d1cf9
Fix drd assert failure for monitor cmd execution when all threads blocked in syscall

When all threads are blocked in a syscall, DRD_(thread_get_running_tid)()
returns (or can return?) a "valid" DrdThreadId (probably the last one
that was running ?).
However, in such a situation, VG_(get_running_tid)() returns 0 (as effectively
there is no thread running).

This discrepancy (drd_tid "valid" and "vg_tid" invalid) can (probably) only
happen with gdb monitor commands, as a thread can (normally) execute a
client request only when it is running.

However, vgdb can "force" the invocation of the gdb monitor client request,
even if no thread is running.
In such a case, the assert should not verify that drd_tid and vg_tid are
consistent.

To reproduce the problem:
  ./vg-in-place --tool=drd sleep 60
and in another window:
  ./coregrind/vgdb help
which then gives
  ...
  drd: drd_clientreq.c:84 (handle_client_request): Assertion 'DRD_(VgThreadIdToDrdThreadId)(vg_tid) == drd_tid' failed.
  ==4208==    at 0x3801DE1D: report_and_quit (m_libcassert.c:260)
  ==4208==    by 0x3801E034: vgPlain_assert_fail (m_libcassert.c:340)
  ==4208==    by 0x380026CC: handle_client_request (drd_clientreq.c:84)
  ==4208==    by 0x3806EE8F: handle_gdb_monitor_command (server.c:490)
  ==4208==    by 0x3806F07A: handle_query (server.c:580)
  ==4208==    by 0x3806FDB2: server_main (server.c:915)
  ==4208==    by 0x3806B01C: call_gdbserver (m_gdbserver.c:706)
  ==4208==    by 0x3806B8F2: vgPlain_invoke_gdbserver (m_gdbserver.c:892)
  ...




git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13765 a5019735-40e9-0310-863c-91ae7b9d1cf9