gdb: x86: fix x32 builds with inline asm

We need to cast the pointer up to 64bits so that the push works on x32
targets.  For 64bit targets, this makes no difference.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
This commit is contained in:
Mike Frysinger 2013-01-08 19:38:51 +00:00
parent a3251895a6
commit bdad418017
2 changed files with 7 additions and 1 deletions

View File

@ -1,3 +1,8 @@
2012-01-08 Mike Frysinger <vapier@gentoo.org>
* common/linux-ptrace.c (linux_ptrace_test_ret_to_nx) [__x86_64__]:
Cast return_address to 64bits.
2013-01-08 Hui Zhu <hui_zhu@mentor.com>
* printcmd.c: Remove define of function output_command.

View File

@ -114,7 +114,8 @@ linux_ptrace_test_ret_to_nx (void)
".globl linux_ptrace_test_ret_to_nx_instr;"
"linux_ptrace_test_ret_to_nx_instr:"
"ret"
: : "r" (return_address) : "%rsp", "memory");
: : "r" ((uint64_t) (uintptr_t) return_address)
: "%rsp", "memory");
#else
# error "!__i386__ && !__x86_64__"
#endif