PR binutils/14475:
[deliverable/binutils-gdb.git] / gas / ecoff.c
index a3413caa99e388e9436e030187dd0b814a3af32e..348f98eb72b5aa78268983ddb9038c53f172ea23 100644 (file)
@@ -1,6 +1,6 @@
 /* ECOFF debugging support.
    Copyright 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-   2003, 2004, 2005, 2006, 2007, 2008, 2009
+   2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012
    Free Software Foundation, Inc.
    Contributed by Cygnus Support.
    This file was put together by Ian Lance Taylor <ian@cygnus.com>.  A
@@ -37,7 +37,7 @@
 #include "coff/internal.h"
 #include "coff/symconst.h"
 #include "aout/stab_gnu.h"
-
+#include "filenames.h"
 #include "safe-ctype.h"
 
 /* Why isn't this in coff/sym.h?  */
@@ -1506,6 +1506,16 @@ ecoff_symbol_new_hook (symbolS *symbolP)
   obj->ecoff_symbol = NULL;
   obj->ecoff_extern_size = 0;
 }
+
+void
+ecoff_symbol_clone_hook (symbolS *newsymP, symbolS *orgsymP)
+{
+  OBJ_SYMFIELD_TYPE *n, *o;
+
+  n = symbol_get_obj (newsymP);
+  o = symbol_get_obj (orgsymP);
+  memcpy (n, o, sizeof *n);
+}
 \f
 /* Add a page to a varray object.  */
 
@@ -1745,7 +1755,7 @@ add_ecoff_symbol (const char *str,        /* symbol name */
              ty = add_aux_sym_tir (&last_func_type_info,
                                    hash_no,
                                    &cur_file_ptr->thash_head[0]);
-
+             (void) ty;
 /* This seems to be unnecessary.  I'm not even sure what it is
  * intended to do.  It's from mips-tfile.
  *           if (last_func_sym_value != (symbolS *) NULL)
@@ -2247,7 +2257,7 @@ add_file (const char *file_name, int indx ATTRIBUTE_UNUSED, int fake)
        fil_ptr = fil_ptr->next_file)
     {
       if (first_ch == fil_ptr->name[0]
-         && strcmp (file_name, fil_ptr->name) == 0
+         && filename_cmp (file_name, fil_ptr->name) == 0
          && fil_ptr->fdr.fMerge)
        {
          cur_file_ptr = fil_ptr;
@@ -2315,7 +2325,7 @@ add_file (const char *file_name, int indx ATTRIBUTE_UNUSED, int fake)
 void
 ecoff_new_file (const char *name, int appfile ATTRIBUTE_UNUSED)
 {
-  if (cur_file_ptr != NULL && strcmp (cur_file_ptr->name, name) == 0)
+  if (cur_file_ptr != NULL && filename_cmp (cur_file_ptr->name, name) == 0)
     return;
   add_file (name, 0, 0);
 
@@ -3579,12 +3589,12 @@ ecoff_frob_symbol (symbolS *sym)
          but with the name .scommon.  */
       if (scom_section.name == NULL)
        {
-         scom_section = bfd_com_section;
+         scom_section = *bfd_com_section_ptr;
          scom_section.name = ".scommon";
          scom_section.output_section = &scom_section;
          scom_section.symbol = &scom_symbol;
          scom_section.symbol_ptr_ptr = &scom_section.symbol;
-         scom_symbol = *bfd_com_section.symbol;
+         scom_symbol = *bfd_com_section_ptr->symbol;
          scom_symbol.name = ".scommon";
          scom_symbol.section = &scom_section;
        }
@@ -4066,7 +4076,7 @@ ecoff_build_symbols (const struct ecoff_debug_swap *backend,
                            sc = sc_Bss;
                          else if (strcmp (segname, ".sbss") == 0)
                            sc = sc_SBss;
-                         else if (seg == &bfd_abs_section)
+                         else if (seg == bfd_abs_section_ptr)
                            sc = sc_Abs;
                          else
                            {
@@ -5190,7 +5200,7 @@ ecoff_generate_asm_lineno (void)
   as_where (&filename, &lineno);
 
   if (current_stabs_filename == (char *) NULL
-      || strcmp (current_stabs_filename, filename))
+      || filename_cmp (current_stabs_filename, filename))
     add_file (filename, 0, 1);
 
   list = allocate_lineno_list ();
This page took 0.024229 seconds and 4 git commands to generate.