OSDN Git Service

* i386-tdep.c (i386_analyze_stack_align): Add comment.
authorJoel Brobecker <brobecker@gnat.com>
Fri, 5 Jan 2007 16:40:48 +0000 (16:40 +0000)
committerJoel Brobecker <brobecker@gnat.com>
Fri, 5 Jan 2007 16:40:48 +0000 (16:40 +0000)
gdb/ChangeLog
gdb/i386-tdep.c

index 1c3aa31..d1112fb 100644 (file)
@@ -1,5 +1,9 @@
 2007-01-05  Joel Brobecker  <brobecker@adacore.com>
 
+       * i386-tdep.c (i386_analyze_stack_align): Add comment.
+
+2007-01-05  Joel Brobecker  <brobecker@adacore.com>
+
        * NEWS: Add entries for new catch commands.
 
 2006-02-05  Joel Brobecker  <brobecker@adacore.com>
index cd52bf6..de7e226 100644 (file)
@@ -497,6 +497,10 @@ static CORE_ADDR
 i386_analyze_stack_align (CORE_ADDR pc, CORE_ADDR current_pc,
                          struct i386_frame_cache *cache)
 {
+  /* The register used by the compiler to perform the stack re-alignment 
+     is, in order of preference, either %ecx, %edx, or %eax.  GCC should
+     never use %ebx as it always treats it as callee-saved, whereas
+     the compiler can only use caller-saved registers.  */
   static const gdb_byte insns_ecx[10] = { 
     0x8d, 0x4c, 0x24, 0x04,    /* leal  4(%esp), %ecx */
     0x83, 0xe4, 0xf0,          /* andl  $-16, %esp */