X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=gdb%2Fmipsread.c;h=6e39538e952d1ce53123f3d6e077b6d53f361227;hb=60db1b8565060f4bd2287b060ea9724c93289982;hp=cbfa9cc03c9a5ec0d501088589604e96e1fd90c8;hpb=da6580e59c5c2c5dda086f9c407688e79377e49e;p=deliverable%2Fbinutils-gdb.git diff --git a/gdb/mipsread.c b/gdb/mipsread.c index cbfa9cc03c..6e39538e95 100644 --- a/gdb/mipsread.c +++ b/gdb/mipsread.c @@ -1,6 +1,6 @@ /* Read a symbol table in MIPS' format (Third-Eye). - Copyright (C) 1986-2018 Free Software Foundation, Inc. + Copyright (C) 1986-2020 Free Software Foundation, Inc. Contributed by Alessandro Forin (af@cs.cmu.edu) at CMU. Major work by Per Bothner, John Gilmore and Ian Lance Taylor at Cygnus Support. @@ -28,6 +28,7 @@ #include "symtab.h" #include "objfiles.h" #include "stabsread.h" +#include "mdebugread.h" #include "coff/sym.h" #include "coff/internal.h" @@ -42,7 +43,6 @@ static void read_alphacoff_dynamic_symtab (minimal_symbol_reader &, - struct section_offsets *, struct objfile *objfile); /* Initialize anything that needs initializing when a completely new @@ -75,7 +75,7 @@ mipscoff_symfile_read (struct objfile *objfile, symfile_add_flags symfile_flags) process it and define symbols accordingly. */ if (!((*ecoff_backend (abfd)->debug_swap.read_debug_info) - (abfd, (asection *) NULL, &ecoff_data (abfd)->debug_info))) + (abfd, NULL, &ecoff_data (abfd)->debug_info))) error (_("Error reading symbol table: %s"), bfd_errmsg (bfd_get_error ())); mdebug_build_psymtabs (reader, objfile, &ecoff_backend (abfd)->debug_swap, @@ -83,7 +83,7 @@ mipscoff_symfile_read (struct objfile *objfile, symfile_add_flags symfile_flags) /* Add alpha coff dynamic symbols. */ - read_alphacoff_dynamic_symtab (reader, objfile->section_offsets, objfile); + read_alphacoff_dynamic_symtab (reader, objfile); /* Install any minimal symbols that have been collected as the current minimal symbols for this objfile. */ @@ -173,7 +173,6 @@ alphacoff_locate_sections (bfd *ignore_abfd, asection *sectp, void *sip) static void read_alphacoff_dynamic_symtab (minimal_symbol_reader &reader, - struct section_offsets *section_offsets, struct objfile *objfile) { bfd *abfd = objfile->obfd; @@ -199,10 +198,10 @@ read_alphacoff_dynamic_symtab (minimal_symbol_reader &reader, || si.dyninfo_sect == NULL || si.got_sect == NULL) return; - gdb::byte_vector sym_sec (bfd_get_section_size (si.sym_sect)); - gdb::byte_vector str_sec (bfd_get_section_size (si.str_sect)); - gdb::byte_vector dyninfo_sec (bfd_get_section_size (si.dyninfo_sect)); - gdb::byte_vector got_sec (bfd_get_section_size (si.got_sect)); + gdb::byte_vector sym_sec (bfd_section_size (si.sym_sect)); + gdb::byte_vector str_sec (bfd_section_size (si.str_sect)); + gdb::byte_vector dyninfo_sec (bfd_section_size (si.dyninfo_sect)); + gdb::byte_vector got_sec (bfd_section_size (si.got_sect)); if (!bfd_get_section_contents (abfd, si.sym_sect, sym_sec.data (), (file_ptr) 0, sym_sec.size ())) @@ -380,8 +379,9 @@ static const struct sym_fns ecoff_sym_fns = &psym_functions }; +void _initialize_mipsread (); void -_initialize_mipsread (void) +_initialize_mipsread () { add_symtab_fns (bfd_target_ecoff_flavour, &ecoff_sym_fns); }