aboutsummaryrefslogtreecommitdiff
path: root/gdb/gdbarch.c
diff options
context:
space:
mode:
authorTankut Baris Aktemur <tankut.baris.aktemur@intel.com>2019-12-20 17:43:06 +0100
committerTankut Baris Aktemur <tankut.baris.aktemur@intel.com>2019-12-20 17:43:06 +0100
commite35000a7f8be021459102751db7e0b7e2868b57e (patch)
treeaa3a333c82cf88c9d3e542142cddca842f7898d2 /gdb/gdbarch.c
parentb4b49dcbff6b437fa8b4e2fc0c3f27b457f11310 (diff)
downloadgdb-e35000a7f8be021459102751db7e0b7e2868b57e.zip
gdb-e35000a7f8be021459102751db7e0b7e2868b57e.tar.gz
gdb-e35000a7f8be021459102751db7e0b7e2868b57e.tar.bz2
gdb: recognize new DWARF attributes: defaulted, deleted, calling conv.
Extend GDB's internal representation of types to include the DW_AT_calling_convention, DW_AT_defaulted, and DW_AT_deleted attributes that were introduced in DWARF5. These attributes will be helpful in a future patch about infcall'ing functions with call-by-value parameters. GDB will use the attributes to decide whether the type of a call-by-value parameter is implicitly pass-by-reference. gdb/ChangeLog: 2019-12-20 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com> * dwarf2read.c (dwarf2_add_member_fn): Read the DW_AT_defaulted and DW_AT_deleted attributes of a function. (read_structure_type): Read the DW_AT_calling_convention attribute of a type. (is_valid_DW_AT_defaulted): New function. (is_valid_DW_AT_calling_convention_for_type): New function. * gdbtypes.h: Include dwarf2.h. (struct fn_field)<defaulted>: New field to store the DW_AT_defaulted attribute. (struct fn_field)<is_deleted>: New field to store the DW_AT_deleted attribute. (struct cplus_struct_type)<calling_convention>: New field to store the DW_AT_calling_convention attribute. (TYPE_FN_FIELD_DEFAULTED): New macro. (TYPE_FN_FIELD_DELETED): New macro. (TYPE_CPLUS_CALLING_CONVENTION): New macro. * gdbtypes.c (dump_fn_fieldlists): Update for the changes made to the .h file. (print_cplus_stuff): Likewise. Change-Id: I54192f363115b78ec7435a8563b73fcace420765
Diffstat (limited to 'gdb/gdbarch.c')
0 files changed, 0 insertions, 0 deletions