diff options
author | Cl?ment Chigot <clement.chigot@atos.net> | 2021-04-22 12:28:50 +0100 |
---|---|---|
committer | Nick Clifton <nickc@redhat.com> | 2021-04-22 12:28:50 +0100 |
commit | b11b2969a9a507d9e42c8029cfeb06b9bc41fceb (patch) | |
tree | 3137d85d940c2357e5f0ecaf383dce391b97d395 /binutils | |
parent | d018cd835ccdbfcfbc1e144a836974a9b9c385b6 (diff) | |
download | gdb-b11b2969a9a507d9e42c8029cfeb06b9bc41fceb.zip gdb-b11b2969a9a507d9e42c8029cfeb06b9bc41fceb.tar.gz gdb-b11b2969a9a507d9e42c8029cfeb06b9bc41fceb.tar.bz2 |
Harmonize and improve auxiliary entries support for XCOFF
bfd/ChangeLog:
* coff-rs6000.c (_bfd_xcoff_swap_aux_in): Add errors for
unsupported storage class or auxialiry entries.
Improve and adapt to new aux structures.
Add C_DWARF support.
(_bfd_xcoff_swap_aux_out): Likewise.
* coff64-rs6000.c (_bfd_xcoff64_swap_aux_in): Likewise.
(_bfd_xcoff64_swap_aux_out): Likewise.
binutils/ChangeLog:
* od-xcoff.c (dump_xcoff32_symbols): Adapt to new
aux structures.
include/ChangeLog:
* coff/internal.h (union internal_auxent):
Add x_sect structure.
* coff/rs6000.h (union external_auxent): Rework to
match official documentation.
* coff/rs6k64.h (union external_auxent): Likewise.
(_AUX_SECT): New define.
Diffstat (limited to 'binutils')
-rw-r--r-- | binutils/ChangeLog | 5 | ||||
-rw-r--r-- | binutils/od-xcoff.c | 10 |
2 files changed, 10 insertions, 5 deletions
diff --git a/binutils/ChangeLog b/binutils/ChangeLog index e15d036..9a1fd5d 100644 --- a/binutils/ChangeLog +++ b/binutils/ChangeLog @@ -1,3 +1,8 @@ +2021-04-22 Clément Chigot <clement.chigot@atos.net> + + * od-xcoff.c (dump_xcoff32_symbols): Adapt to new + aux structures. + 2021-04-21 Nick Lott <nick.lott@gmail.com> PR 27672 diff --git a/binutils/od-xcoff.c b/binutils/od-xcoff.c index f0d566b..0226450 100644 --- a/binutils/od-xcoff.c +++ b/binutils/od-xcoff.c @@ -838,13 +838,13 @@ dump_xcoff32_symbols (bfd *abfd, struct xcoff_dump *data) { /* Function aux entry (Do not translate). */ printf (" exptr: %08x fsize: %08x lnnoptr: %08x endndx: %u\n", - (unsigned)bfd_h_get_32 (abfd, aux->x_sym.x_tagndx), + (unsigned)bfd_h_get_32 (abfd, aux->x_fcn.x_exptr), (unsigned)bfd_h_get_32 - (abfd, aux->x_sym.x_misc.x_fsize), + (abfd, aux->x_fcn.x_fsize), (unsigned)bfd_h_get_32 - (abfd, aux->x_sym.x_fcnary.x_fcn.x_lnnoptr), + (abfd, aux->x_fcn.x_lnnoptr), (unsigned)bfd_h_get_32 - (abfd, aux->x_sym.x_fcnary.x_fcn.x_endndx)); + (abfd, aux->x_fcn.x_endndx)); } else if (j == 1 || (j == 0 && s->sym.numaux == 1)) { @@ -899,7 +899,7 @@ dump_xcoff32_symbols (bfd *abfd, struct xcoff_dump *data) case C_FCN: printf (" lnno: %u\n", (unsigned)bfd_h_get_16 - (abfd, aux->x_sym.x_misc.x_lnsz.x_lnno)); + (abfd, aux->x_sym.x_lnno)); break; default: /* Do not translate - generic field name. */ |