i#37: Add controlled ptrace injection on Linux

This adds an "-attach <pid>" option to drrun_exe on Linux and a
dr_inject_use_ptrace() routine to drinjectlib.  Full targeted injection
is not tested or supported yet; this is just the basis of the ptrace
implementation.

Review URL: https://codereview.appspot.com/6874052

git-svn-id: https://dynamorio.googlecode.com/svn/trunk@1877 49cc7528-f6fd-11dd-9d1a-b59b2e1864b6
i#62 part 1: port DRgui to x64

Ports DRgui to x64.

As part of this I found and fixed subtle x64 memory overwrite errors in
several libutil routines.

Switches to using intra-session shared memory, which avoids needing to be
admin to use the shared stats.

git-svn-id: https://dynamorio.googlecode.com/svn/trunk@1878 49cc7528-f6fd-11dd-9d1a-b59b2e1864b6
fixes issue 62

Port the stats sample to x64.

In collaboration with DRgui, switches to using intra-session shared memory
(to avoid requiring admin).  Also changes the shared memory layout for
Windows.

Greatly simplified the stats sample by using Windows API routines directly
rather than the Native API.  DR's new redirection makes this just as
transparent as it was before (well, once we get kernel32 not being loaded
at all w/ no un-redirected imports).

git-svn-id: https://dynamorio.googlecode.com/svn/trunk@1879 49cc7528-f6fd-11dd-9d1a-b59b2e1864b6
fixes issue 1067

Fix instr_is_floating() to consider multimedia instrs.

Add instr_is_floating_ex() to return the type of fp ops: whether a state,
move, convert, or math operation.

Use in the stats sample to more properly measure flops.

git-svn-id: https://dynamorio.googlecode.com/svn/trunk@1880 49cc7528-f6fd-11dd-9d1a-b59b2e1864b6
fixed unit_tests failure
fixed but that pre-commit suite fails to list unit_tests failure in summary

git-svn-id: https://dynamorio.googlecode.com/svn/trunk@1881 49cc7528-f6fd-11dd-9d1a-b59b2e1864b6
Fix release VPS build failure in linux injector

instrlist_disassemble() is only available in DEBUG, INTERNAL, or
CLIENT_INTERFACE builds.

Also move instrlist_disassemble() from arch_exports.h to disassemble.h.
This seemed consistent with instr_disassemble() and opnd_disassemble()
and won't affect the generated API headers.

Review URL: https://codereview.appspot.com/7305050

git-svn-id: https://dynamorio.googlecode.com/svn/trunk@1882 49cc7528-f6fd-11dd-9d1a-b59b2e1864b6
fixes issue 1071

Remove extra space causing EncodePointer to not be redirected

git-svn-id: https://dynamorio.googlecode.com/svn/trunk@1883 49cc7528-f6fd-11dd-9d1a-b59b2e1864b6
i#1063: implement redirect_CreatePipe

git-svn-id: https://dynamorio.googlecode.com/svn/trunk@1884 49cc7528-f6fd-11dd-9d1a-b59b2e1864b6
i#1063: implement redirect_DeleteFile{A,W}

Added a real nt_delete_file() and implemented redirect_DeleteFile{A,W}
using it.

git-svn-id: https://dynamorio.googlecode.com/svn/trunk@1885 49cc7528-f6fd-11dd-9d1a-b59b2e1864b6
i#1063: redirect {G,S}etLastError()

Added a unit test, including setup for kernel32_misc tests in general.

Also replaced the invocation of priv_SetLastError() from the private
kernel32 with the DR-internal set_last_error() to reduce dependencies
on having a private kernel32 lib around, for i#1070.

git-svn-id: https://dynamorio.googlecode.com/svn/trunk@1886 49cc7528-f6fd-11dd-9d1a-b59b2e1864b6
i#1063: advapi32 routines

Added advapi32 redirection infrastructure.

Implemented redirect_RegCloseKey(), redirect_RegOpenKeyEx{A,W}(),
and redirect_RegQueryValueEx{A,W}().

Added unit tests for these routines.

git-svn-id: https://dynamorio.googlecode.com/svn/trunk@1887 49cc7528-f6fd-11dd-9d1a-b59b2e1864b6
i#1063: implement DuplicateHandle and DeviceIoControl

git-svn-id: https://dynamorio.googlecode.com/svn/trunk@1888 49cc7528-f6fd-11dd-9d1a-b59b2e1864b6
i#1073: Initialize prop_idx elements to -1 in handle_execve()

This fixes a UMR regression introduced in r1661.

Fixes issue 1073.

Review URL: https://codereview.appspot.com/7303073

git-svn-id: https://dynamorio.googlecode.com/svn/trunk@1889 49cc7528-f6fd-11dd-9d1a-b59b2e1864b6
Merge branch 'master' into native-exec-stubs
asserts and commments.