* gdb.arch/amd64-pseudo.c (main): Mark registers that the testsuite

changes as clobbered (e.g., amd64-dword.exp) so gcc doesn't try to
	use them.
This commit is contained in:
Doug Evans 2012-11-01 17:53:05 +00:00
parent ff826ef3e2
commit c207c6da70
2 changed files with 22 additions and 0 deletions

View File

@ -1,3 +1,9 @@
2012-11-01 Doug Evans <dje@google.com>
* gdb.arch/amd64-pseudo.c (main): Mark registers that the testsuite
changes as clobbered (e.g., amd64-dword.exp) so gcc doesn't try to
use them.
2012-10-31 Andrew Burgess <aburgess@broadcom.com>
PR cli/14772

View File

@ -63,6 +63,14 @@ main (int argc, char **argv)
: "r8", "r9", "r10", "r11", "r12", "r13", "r14", "r15");
asm ("nop"); /* second breakpoint here */
/* amd64-dword.exp writes eax-edi here.
Tell gcc they're clobbered so it doesn't try to keep "data" in
one of them. */
asm (""
: /* no outputs */
: /* no inputs */
: "eax", "ebx", "ecx", "edx", "esi", "edi");
asm ("mov %%eax, 0(%0)\n\t"
"mov %%ebx, 4(%0)\n\t"
"mov %%ecx, 8(%0)\n\t"
@ -74,6 +82,14 @@ main (int argc, char **argv)
: "eax", "ebx", "ecx", "edx", "esi", "edi");
asm ("nop"); /* third breakpoint here */
/* amd64-dword.exp writes r8-r15 here.
Tell gcc they're clobbered so it doesn't try to keep "data" in
one of them. */
asm (""
: /* no outputs */
: /* no inputs */
: "r8", "r9", "r10", "r11", "r12", "r13", "r14", "r15");
asm ("mov %%r8d, 24(%0)\n\t"
"mov %%r9d, 28(%0)\n\t"
"mov %%r10d, 32(%0)\n\t"