summaryrefslogtreecommitdiff
path: root/gdb/i386-tdep.c
diff options
context:
space:
mode:
authorAndreas Schwab <schwab@suse.de>2003-10-06 21:58:20 +0000
committerAndreas Schwab <schwab@suse.de>2003-10-06 21:58:20 +0000
commit141382fbd405d86ee1f10b2a95a1d5f1d7ae32a3 (patch)
tree64ab63e542f6e4e0bcda0fc1a3fed33e56a1eeee /gdb/i386-tdep.c
parent7e87ef3710c8856a9a6b67c68846e2eca707f09e (diff)
downloadgdb-141382fbd405d86ee1f10b2a95a1d5f1d7ae32a3.tar.gz
* i386-tdep.c (i386_analyze_frame_setup): Also handle xorl/subl
with %eax.
Diffstat (limited to 'gdb/i386-tdep.c')
-rw-r--r--gdb/i386-tdep.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/gdb/i386-tdep.c b/gdb/i386-tdep.c
index 27f3d272e5c..d2baa75404b 100644
--- a/gdb/i386-tdep.c
+++ b/gdb/i386-tdep.c
@@ -499,12 +499,14 @@ i386_analyze_frame_setup (CORE_ADDR pc, CORE_ADDR current_pc,
xorl %ebx, %ebx
xorl %ecx, %ecx
xorl %edx, %edx
+ xorl %eax, %eax
and the equivalent
subl %ebx, %ebx
subl %ecx, %ecx
subl %edx, %edx
+ subl %eax, %eax
Make sure we only skip these instructions if we later see the
`movl %esp, %ebp' that actually sets up the frame. */
@@ -516,6 +518,7 @@ i386_analyze_frame_setup (CORE_ADDR pc, CORE_ADDR current_pc,
case 0xdb: /* %ebx */
case 0xc9: /* %ecx */
case 0xd2: /* %edx */
+ case 0xc0: /* %eax */
skip += 2;
break;
default: