Stop GDB mis-aligning the stack when doing inferior function calls.
authorAndrew Cagney <cagney@redhat.com>
Wed, 9 Feb 2000 04:46:47 +0000 (04:46 +0000)
committerAndrew Cagney <cagney@redhat.com>
Wed, 9 Feb 2000 04:46:47 +0000 (04:46 +0000)
gdb/ChangeLog
gdb/config/d10v/tm-d10v.h
gdb/d10v-tdep.c

index 29de17d34c71e2c8a1ba09b55c58657fa98f3bbc..e037f8398d8a743422079389045b79aa3d8e58fd 100644 (file)
@@ -1,3 +1,10 @@
+Wed Feb  9 01:14:54 2000  Andrew Cagney  <cagney@amy.cygnus.com>
+
+       * config/d10v/tm-d10v.h (NO_EXTRA_ALIGNMENT_NEEDED): Define.
+       * config/d10v/tm-d10v.h (STACK_ALIGN): Define.
+       (d10v_stack_align): Declare.
+       * d10v-tdep.c (d10v_stack_align): Define.
+
 1999-08-23  J.T. Conklin  <jtc@redback.com>
 
         * top.c (remote_timeout): Change default to 2.  Add comment
index e2fe383d28f4466a0cccf1cf22e578d04a657c62..a0eb3dcf3e15e48735fb536b7ab066f642788692 100644 (file)
@@ -24,3 +24,8 @@
 
 extern int d10v_register_sim_regno (int reg);
 #define REGISTER_SIM_REGNO(NR) d10v_register_sim_regno((NR))
+
+extern CORE_ADDR d10v_stack_align (CORE_ADDR size);
+#define STACK_ALIGN(SIZE) (d10v_stack_align (SIZE))
+
+#define NO_EXTRA_ALIGNMENT_NEEDED 1
index 68afb8c7d88cb0e440ec985d1f5f6c2498d68fd9..cfd70b0878e3f79ce37db65f6234b60c3552279a 100644 (file)
@@ -104,6 +104,11 @@ d10v_frame_chain_valid (chain, frame)
   return ((chain) != 0 && (frame) != 0 && (frame)->pc > IMEM_START);
 }
 
+CORE_ADDR
+d10v_stack_align (CORE_ADDR len)
+{
+  return (len + 1) & ~1;
+}
 
 /* Should we use EXTRACT_STRUCT_VALUE_ADDRESS instead of
    EXTRACT_RETURN_VALUE?  GCC_P is true if compiled with gcc