| Index: gdb/m68k-tdep.c
|
| diff --git a/gdb/m68k-tdep.c b/gdb/m68k-tdep.c
|
| index ee72026e479c21ecde52c46ff9827fb8924781c1..b1e2cd4ace99d9e96e23171c7fca107a8239223e 100644
|
| --- a/gdb/m68k-tdep.c
|
| +++ b/gdb/m68k-tdep.c
|
| @@ -403,7 +403,7 @@ m68k_reg_struct_return_p (struct gdbarch *gdbarch, struct type *type)
|
| from WRITEBUF into REGCACHE. */
|
|
|
| static enum return_value_convention
|
| -m68k_return_value (struct gdbarch *gdbarch, struct type *func_type,
|
| +m68k_return_value (struct gdbarch *gdbarch, struct value *function,
|
| struct type *type, struct regcache *regcache,
|
| gdb_byte *readbuf, const gdb_byte *writebuf)
|
| {
|
| @@ -438,7 +438,7 @@ m68k_return_value (struct gdbarch *gdbarch, struct type *func_type,
|
| }
|
|
|
| static enum return_value_convention
|
| -m68k_svr4_return_value (struct gdbarch *gdbarch, struct type *func_type,
|
| +m68k_svr4_return_value (struct gdbarch *gdbarch, struct value *function,
|
| struct type *type, struct regcache *regcache,
|
| gdb_byte *readbuf, const gdb_byte *writebuf)
|
| {
|
| @@ -477,7 +477,7 @@ m68k_svr4_return_value (struct gdbarch *gdbarch, struct type *func_type,
|
| if (code == TYPE_CODE_STRUCT && TYPE_NFIELDS (type) == 1)
|
| {
|
| type = check_typedef (TYPE_FIELD_TYPE (type, 0));
|
| - return m68k_svr4_return_value (gdbarch, func_type, type, regcache,
|
| + return m68k_svr4_return_value (gdbarch, function, type, regcache,
|
| readbuf, writebuf);
|
| }
|
|
|
| @@ -854,7 +854,6 @@ m68k_skip_prologue (struct gdbarch *gdbarch, CORE_ADDR start_pc)
|
| {
|
| struct m68k_frame_cache cache;
|
| CORE_ADDR pc;
|
| - int op;
|
|
|
| cache.locals = -1;
|
| pc = m68k_analyze_prologue (gdbarch, start_pc, (CORE_ADDR) -1, &cache);
|
| @@ -1051,6 +1050,16 @@ m68k_get_longjmp_target (struct frame_info *frame, CORE_ADDR *pc)
|
| }
|
|
|
|
|
| +/* This is the implementation of gdbarch method
|
| + return_in_first_hidden_param_p. */
|
| +
|
| +static int
|
| +m68k_return_in_first_hidden_param_p (struct gdbarch *gdbarch,
|
| + struct type *type)
|
| +{
|
| + return 0;
|
| +}
|
| +
|
| /* System V Release 4 (SVR4). */
|
|
|
| void
|
| @@ -1236,6 +1245,8 @@ m68k_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
|
| /* Function call & return. */
|
| set_gdbarch_push_dummy_call (gdbarch, m68k_push_dummy_call);
|
| set_gdbarch_return_value (gdbarch, m68k_return_value);
|
| + set_gdbarch_return_in_first_hidden_param_p (gdbarch,
|
| + m68k_return_in_first_hidden_param_p);
|
|
|
|
|
| /* Disassembler. */
|
|
|