Fix restore_rt() getter's inline asm not to clobber the x86-64 red zone

Using "call" in x86-64 inline asm without adjusting the stack pointer
for the 128 byte red zone isn't valid, because it would clobber the
red zone.

This use of "call" comes from the x86-32 version, but it's not
necessary on x86-64 where we can use %rip-relative addressing.

Also relax output constraint from using %rax ('=a') to using any
register ('=r'); the stricter constraint wasn't necessary before.

BUG=none
TEST=none

Review URL: https://codereview.chromium.org/23072035

git-svn-id: http://linux-syscall-support.googlecode.com/svn/trunk@23 829466d3-f3f5-3ae4-62ad-de35cf9bba21
Change prctl() syscall wrapper to take prctl()'s full set of arguments

The Linux man page documents prctl() as taking upto 5 arguments:

       int prctl(int option, unsigned long arg2, unsigned long arg3,
                 unsigned long arg4, unsigned long arg5);

For example, PR_SET_SECCOMP with SECCOMP_MODE_FILTER takes a third
argument, and so isn't usable without this change.

BUG=none
TEST=none

Review URL: https://codereview.chromium.org/23137020

git-svn-id: http://linux-syscall-support.googlecode.com/svn/trunk@24 829466d3-f3f5-3ae4-62ad-de35cf9bba21