OpenCores
URL https://opencores.org/ocsvn/openrisc_2011-10-31/openrisc_2011-10-31/trunk

Subversion Repositories openrisc_2011-10-31

[/] [openrisc/] [trunk/] [gnu-src/] [gdb-6.8/] [bfd/] [elf32-v850.c] - Diff between revs 157 and 225

Go to most recent revision | Show entire file | Details | Blame | View Log

Rev 157 Rev 225
Line 1... Line 1...
/* V850-specific support for 32-bit ELF
/* V850-specific support for 32-bit ELF
   Copyright 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
   Copyright 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
   2006, 2007 Free Software Foundation, Inc.
   2006, 2007, 2008, 2009  Free Software Foundation, Inc.
 
 
   This file is part of BFD, the Binary File Descriptor library.
   This file is part of BFD, the Binary File Descriptor library.
 
 
   This program is free software; you can redistribute it and/or modify
   This program is free software; you can redistribute it and/or modify
   it under the terms of the GNU General Public License as published by
   it under the terms of the GNU General Public License as published by
Line 50... Line 50...
  bfd *dynobj;
  bfd *dynobj;
  Elf_Internal_Shdr *symtab_hdr;
  Elf_Internal_Shdr *symtab_hdr;
  struct elf_link_hash_entry **sym_hashes;
  struct elf_link_hash_entry **sym_hashes;
  const Elf_Internal_Rela *rel;
  const Elf_Internal_Rela *rel;
  const Elf_Internal_Rela *rel_end;
  const Elf_Internal_Rela *rel_end;
  asection *sreloc;
 
  enum v850_reloc_type r_type;
  enum v850_reloc_type r_type;
  int other = 0;
  int other = 0;
  const char *common = NULL;
  const char *common = NULL;
 
 
  if (info->relocatable)
  if (info->relocatable)
Line 66... Line 65...
#endif
#endif
 
 
  dynobj = elf_hash_table (info)->dynobj;
  dynobj = elf_hash_table (info)->dynobj;
  symtab_hdr = &elf_tdata (abfd)->symtab_hdr;
  symtab_hdr = &elf_tdata (abfd)->symtab_hdr;
  sym_hashes = elf_sym_hashes (abfd);
  sym_hashes = elf_sym_hashes (abfd);
  sreloc = NULL;
 
 
 
  rel_end = relocs + sec->reloc_count;
  rel_end = relocs + sec->reloc_count;
  for (rel = relocs; rel < rel_end; rel++)
  for (rel = relocs; rel < rel_end; rel++)
    {
    {
      unsigned long r_symndx;
      unsigned long r_symndx;
Line 1680... Line 1678...
                      (input_bfd, symtab_hdr->sh_link, sym->st_name));
                      (input_bfd, symtab_hdr->sh_link, sym->st_name));
              if (name == NULL || *name == '\0')
              if (name == NULL || *name == '\0')
                name = bfd_section_name (input_bfd, sec);
                name = bfd_section_name (input_bfd, sec);
            }
            }
 
 
          switch (r)
          switch ((int) r)
            {
            {
            case bfd_reloc_overflow:
            case bfd_reloc_overflow:
              if (! ((*info->callbacks->reloc_overflow)
              if (! ((*info->callbacks->reloc_overflow)
                     (info, (h ? &h->root : NULL), name, howto->name,
                     (info, (h ? &h->root : NULL), name, howto->name,
                      (bfd_vma) 0, input_bfd, input_section,
                      (bfd_vma) 0, input_bfd, input_section,
Line 2095... Line 2093...
    }
    }
 
 
  return TRUE;
  return TRUE;
}
}
 
 
static bfd_boolean
static int
v850_elf_link_output_symbol_hook (struct bfd_link_info *info ATTRIBUTE_UNUSED,
v850_elf_link_output_symbol_hook (struct bfd_link_info *info ATTRIBUTE_UNUSED,
                                  const char *name ATTRIBUTE_UNUSED,
                                  const char *name ATTRIBUTE_UNUSED,
                                  Elf_Internal_Sym *sym,
                                  Elf_Internal_Sym *sym,
                                  asection *input_sec,
                                  asection *input_sec,
                                  struct elf_link_hash_entry *h ATTRIBUTE_UNUSED)
                                  struct elf_link_hash_entry *h ATTRIBUTE_UNUSED)
Line 2122... Line 2120...
     linker is cleaning up after ourselves.  */
     linker is cleaning up after ourselves.  */
 
 
  sym->st_other &= ~(V850_OTHER_SDA | V850_OTHER_ZDA | V850_OTHER_TDA
  sym->st_other &= ~(V850_OTHER_SDA | V850_OTHER_ZDA | V850_OTHER_TDA
                     | V850_OTHER_ERROR);
                     | V850_OTHER_ERROR);
 
 
  return TRUE;
  return 1;
}
}
 
 
static bfd_boolean
static bfd_boolean
v850_elf_section_from_shdr (bfd *abfd,
v850_elf_section_from_shdr (bfd *abfd,
                            Elf_Internal_Shdr *hdr,
                            Elf_Internal_Shdr *hdr,

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.