[patch/rfc:rfa:doco] Deprecate extract_struct_value_address

Andrew Cagney cagney@gnu.org
Mon Jan 26 20:46:00 GMT 2004


> Hello,
> 
> Ref: [rfc] Struct return values
> http://sources.redhat.com/ml/gdb/2004-01/msg00123.html
> 
> This deprecates the existing extract_struct_value_address, clearing the way for a replacement such as extract_returned_value_address.
> 
> As the comments note, other than the 32-bit SPARC, no ABI has so far been identified that allows for the robust implementation of an extract struct-convention return-value's address method.  Further, a quick glance through the remaining extract methods suggests that they too are broken - the're all trying to extract the return-value from a register and typical ABIs don't guarentee that the return-value address register is preserved across function calls.
> 
> The patch also adds a bunch of comments to core-GDB to [hopefully] point the way to the required changes needed to make the 32-bit SPARC ABIs case work.  I don't have a SPARC handy so MarkK, over to you :-/
> 
> Comments?  I'll give this part a week.

I've checked this in.

Andrew


> 2004-01-17  Andrew Cagney  <cagney@redhat.com>
> 
> 	* gdbarch.sh (EXTRACT_STRUCT_VALUE_ADDRESS): Deprecate.  Add
> 	comments mentioning extract_returned_value_address.
> 	* infcmd.c (print_return_value): Update.  Add comments on
> 	extract_returned_value_address.
> 	* stack.c (return_command): Add comments on
> 	extract_returned_value_address.
> 	* values.c: Update comment.
> 	* m32r-tdep.c: Update comment.
> 	* sparc-tdep.c: Update comment.
> 	* ia64-tdep.c (ia64_use_struct_convention): Update comment.
> 	* xstormy16-tdep.c (xstormy16_gdbarch_init): Update.
> 	* sh64-tdep.c (sh64_gdbarch_init): Update.
> 	* sh-tdep.c (sh_gdbarch_init): Update.
> 	* s390-tdep.c (s390_gdbarch_init): Update.
> 	* rs6000-tdep.c (rs6000_gdbarch_init): Update.
> 	* m68klinux-tdep.c (m68k_linux_init_abi): Update.
> 	* m68k-tdep.c (m68k_gdbarch_init): Update.
> 	* m68hc11-tdep.c (m68hc11_gdbarch_init): Update.
> 	* m32r-tdep.c (m32r_gdbarch_init): Update.
> 	* ia64-tdep.c (ia64_gdbarch_init): Update.
> 	* h8300-tdep.c (h8300_gdbarch_init): Update.
> 	* frv-tdep.c (frv_gdbarch_init): Update.
> 	* arm-tdep.c (arm_gdbarch_init): Update.
> 	* alpha-tdep.c (alpha_gdbarch_init): Update.
> 
> Index: doc/ChangeLog
> 2004-01-17  Andrew Cagney  <cagney@redhat.com>
> 
> 	* gdbint.texinfo (Target Architecture Definition): Rename
> 	EXTRACT_STRUCT_VALUE_ADDRESS to
> 	DEPRECATED_EXTRACT_STRUCT_VALUE_ADDRESS.
> 	




More information about the Gdb-patches mailing list