use remote-utils facilities for baud_rate
[deliverable/binutils-gdb.git] / gdb / elfread.c
index e7b338f615b0ce1894869df6d32f15ebb580eb6b..aefb678545cb45f8707538cf9e04af691e29d14b 100644 (file)
@@ -20,12 +20,14 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.  */
 
 #include "defs.h"
 #include "bfd.h"
+#include <time.h> /* For time_t in libbfd.h.  */
 #include "libbfd.h"            /* For bfd_elf_find_section */
 #include "libelf.h"
 #include "symtab.h"
 #include "symfile.h"
 #include "objfiles.h"
 #include "buildsym.h"
+#include "stabsread.h"
 #include "gdb-stabs.h"
 #include "complaints.h"
 #include <string.h>
@@ -277,6 +279,14 @@ elf_symtab_read (abfd, addr, objfile)
                    {
                      ms_type = mst_text;
                    }
+                 else if (sym->name[0] == '.' && sym->name[1] == 'L')
+                   /* Looks like a compiler-generated label.  Skip it.
+                      The assembler should be skipping these (to keep
+                      executables small), but apparently with gcc on the
+                      delta m88k SVR4, it loses.  So to have us check too
+                      should be harmless (but I encourage people to fix this
+                      in the assembler instead of adding checks here).  */
+                   continue;
                  else
                    {
                      ms_type = mst_file_text;
@@ -378,7 +388,7 @@ elf_symtab_read (abfd, addr, objfile)
                  continue;             /* Skip this symbol. */
                }
              /* Pass symbol size field in via BFD.  FIXME!!!  */
-             size = ((elf32_symbol_type *) sym) -> internal_elf_sym.st_size;
+             size = ((elf_symbol_type *) sym) -> internal_elf_sym.st_size;
              record_minimal_symbol_and_info ((char *) sym -> name, symaddr,
                                              ms_type, (PTR) size, objfile);
            }
This page took 0.023379 seconds and 4 git commands to generate.