mirror of
https://github.com/darlinghq/darling-gdb.git
synced 2024-11-28 14:30:48 +00:00
* gdbarch.sh: Document the return_value method. Explain that
the FUNCTYPE parameter might be NULL. * gdbarch.h: Regenerated. * sparc-tdep.c (sparc32_push_dummy_code): Do not pass the function type when calling using_struct_return, as this is unnecessary on this target.
This commit is contained in:
parent
266b05cf76
commit
ea42b34a37
@ -1,3 +1,12 @@
|
|||||||
|
2008-04-29 Joel Brobecker <brobecker@adacore.com>
|
||||||
|
|
||||||
|
* gdbarch.sh: Document the return_value method. Explain that
|
||||||
|
the FUNCTYPE parameter might be NULL.
|
||||||
|
* gdbarch.h: Regenerated.
|
||||||
|
* sparc-tdep.c (sparc32_push_dummy_code): Do not pass the function
|
||||||
|
type when calling using_struct_return, as this is unnecessary
|
||||||
|
on this target.
|
||||||
|
|
||||||
2008-04-28 Joel Brobecker <brobecker@adacore.com>
|
2008-04-28 Joel Brobecker <brobecker@adacore.com>
|
||||||
|
|
||||||
* terminal.h (create_tty_session): Fix return type.
|
* terminal.h (create_tty_session): Fix return type.
|
||||||
|
@ -360,9 +360,16 @@ typedef CORE_ADDR (gdbarch_integer_to_address_ftype) (struct gdbarch *gdbarch, s
|
|||||||
extern CORE_ADDR gdbarch_integer_to_address (struct gdbarch *gdbarch, struct type *type, const gdb_byte *buf);
|
extern CORE_ADDR gdbarch_integer_to_address (struct gdbarch *gdbarch, struct type *type, const gdb_byte *buf);
|
||||||
extern void set_gdbarch_integer_to_address (struct gdbarch *gdbarch, gdbarch_integer_to_address_ftype *integer_to_address);
|
extern void set_gdbarch_integer_to_address (struct gdbarch *gdbarch, gdbarch_integer_to_address_ftype *integer_to_address);
|
||||||
|
|
||||||
/* It has been suggested that this, well actually its predecessor,
|
/* Return the return-value convention that will be used by FUNCTYPE
|
||||||
should take the type/value of the function to be called and not the
|
to return a value of type VALTYPE. FUNCTYPE may be NULL in which
|
||||||
return type. This is left as an exercise for the reader. */
|
case the return convention is computed based only on VALTYPE.
|
||||||
|
|
||||||
|
If READBUF is not NULL, extract the return value and save it in this buffer.
|
||||||
|
|
||||||
|
If WRITEBUF is not NULL, it contains a return value which will be
|
||||||
|
stored into the appropriate register. This can be used when we want
|
||||||
|
to force the value returned by a function (see the "return" command
|
||||||
|
for instance). */
|
||||||
|
|
||||||
extern int gdbarch_return_value_p (struct gdbarch *gdbarch);
|
extern int gdbarch_return_value_p (struct gdbarch *gdbarch);
|
||||||
|
|
||||||
|
@ -470,10 +470,16 @@ f:CORE_ADDR:pointer_to_address:struct type *type, const gdb_byte *buf:type, buf:
|
|||||||
f:void:address_to_pointer:struct type *type, gdb_byte *buf, CORE_ADDR addr:type, buf, addr::unsigned_address_to_pointer::0
|
f:void:address_to_pointer:struct type *type, gdb_byte *buf, CORE_ADDR addr:type, buf, addr::unsigned_address_to_pointer::0
|
||||||
M:CORE_ADDR:integer_to_address:struct type *type, const gdb_byte *buf:type, buf
|
M:CORE_ADDR:integer_to_address:struct type *type, const gdb_byte *buf:type, buf
|
||||||
|
|
||||||
# It has been suggested that this, well actually its predecessor,
|
# Return the return-value convention that will be used by FUNCTYPE
|
||||||
# should take the type/value of the function to be called and not the
|
# to return a value of type VALTYPE. FUNCTYPE may be NULL in which
|
||||||
# return type. This is left as an exercise for the reader.
|
# case the return convention is computed based only on VALTYPE.
|
||||||
|
#
|
||||||
|
# If READBUF is not NULL, extract the return value and save it in this buffer.
|
||||||
|
#
|
||||||
|
# If WRITEBUF is not NULL, it contains a return value which will be
|
||||||
|
# stored into the appropriate register. This can be used when we want
|
||||||
|
# to force the value returned by a function (see the "return" command
|
||||||
|
# for instance).
|
||||||
M:enum return_value_convention:return_value:struct type *functype, struct type *valtype, struct regcache *regcache, gdb_byte *readbuf, const gdb_byte *writebuf:functype, valtype, regcache, readbuf, writebuf
|
M:enum return_value_convention:return_value:struct type *functype, struct type *valtype, struct regcache *regcache, gdb_byte *readbuf, const gdb_byte *writebuf:functype, valtype, regcache, readbuf, writebuf
|
||||||
|
|
||||||
m:CORE_ADDR:skip_prologue:CORE_ADDR ip:ip:0:0
|
m:CORE_ADDR:skip_prologue:CORE_ADDR ip:ip:0:0
|
||||||
|
@ -388,8 +388,7 @@ sparc32_push_dummy_code (struct gdbarch *gdbarch, CORE_ADDR sp,
|
|||||||
*bp_addr = sp - 4;
|
*bp_addr = sp - 4;
|
||||||
*real_pc = funcaddr;
|
*real_pc = funcaddr;
|
||||||
|
|
||||||
if (using_struct_return (SYMBOL_TYPE (find_pc_function (funcaddr)),
|
if (using_struct_return (NULL, value_type))
|
||||||
value_type))
|
|
||||||
{
|
{
|
||||||
gdb_byte buf[4];
|
gdb_byte buf[4];
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user