diff options
author | Nathan Sidwell <nathan@codesourcery.com> | 2006-07-13 09:30:46 +0000 |
---|---|---|
committer | Nathan Sidwell <nathan@codesourcery.com> | 2006-07-13 09:30:46 +0000 |
commit | b510a33566118e78d9d4b3616dfc928ec398bb7c (patch) | |
tree | 6a1ab46dc8cc95d715d8953c633a49c5ace855ec /gdb/m68k-tdep.c | |
parent | 99a71e0e002c9f762a7fb3e333d61abfc8078473 (diff) | |
download | gdb-b510a33566118e78d9d4b3616dfc928ec398bb7c.tar.gz |
* m68k-tdep.c (m68k_frame_align): New.
(m68k_gdbarch_init): Set frame_align here.
Diffstat (limited to 'gdb/m68k-tdep.c')
-rw-r--r-- | gdb/m68k-tdep.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/gdb/m68k-tdep.c b/gdb/m68k-tdep.c index 1ddd652a917..168eef1cb32 100644 --- a/gdb/m68k-tdep.c +++ b/gdb/m68k-tdep.c @@ -413,6 +413,16 @@ m68k_svr4_return_value (struct gdbarch *gdbarch, struct type *type, } +/* Always align the frame to a 4-byte boundary. This is required on + coldfire and harmless on the rest. */ + +static CORE_ADDR +m68k_frame_align (struct gdbarch *gdbarch, CORE_ADDR sp) +{ + /* Align the stack to four bytes. */ + return sp & ~3; +} + static CORE_ADDR m68k_push_dummy_call (struct gdbarch *gdbarch, struct value *function, struct regcache *regcache, CORE_ADDR bp_addr, int nargs, @@ -1155,6 +1165,7 @@ m68k_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches) /* Stack grows down. */ set_gdbarch_inner_than (gdbarch, core_addr_lessthan); + set_gdbarch_frame_align (gdbarch, m68k_frame_align); set_gdbarch_believe_pcc_promotion (gdbarch, 1); set_gdbarch_decr_pc_after_break (gdbarch, 2); |