| OLD | NEW | 
|     1 /* SPU specific support for 32-bit ELF |     1 /* SPU specific support for 32-bit ELF | 
|     2  |     2  | 
|     3    Copyright 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. |     3    Copyright 2006, 2007, 2008, 2009, 2010, 2011, 2012 | 
 |     4    Free Software Foundation, Inc. | 
|     4  |     5  | 
|     5    This file is part of BFD, the Binary File Descriptor library. |     6    This file is part of BFD, the Binary File Descriptor library. | 
|     6  |     7  | 
|     7    This program is free software; you can redistribute it and/or modify |     8    This program is free software; you can redistribute it and/or modify | 
|     8    it under the terms of the GNU General Public License as published by |     9    it under the terms of the GNU General Public License as published by | 
|     9    the Free Software Foundation; either version 3 of the License, or |    10    the Free Software Foundation; either version 3 of the License, or | 
|    10    (at your option) any later version. |    11    (at your option) any later version. | 
|    11  |    12  | 
|    12    This program is distributed in the hope that it will be useful, |    13    This program is distributed in the hope that it will be useful, | 
|    13    but WITHOUT ANY WARRANTY; without even the implied warranty of |    14    but WITHOUT ANY WARRANTY; without even the implied warranty of | 
| (...skipping 1404 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  1418       len = 8 + sizeof (".ovl_call.") - 1; |  1419       len = 8 + sizeof (".ovl_call.") - 1; | 
|  1419       if (h != NULL) |  1420       if (h != NULL) | 
|  1420         len += strlen (h->root.root.string); |  1421         len += strlen (h->root.root.string); | 
|  1421       else |  1422       else | 
|  1422         len += 8 + 1 + 8; |  1423         len += 8 + 1 + 8; | 
|  1423       add = 0; |  1424       add = 0; | 
|  1424       if (irela != NULL) |  1425       if (irela != NULL) | 
|  1425         add = (int) irela->r_addend & 0xffffffff; |  1426         add = (int) irela->r_addend & 0xffffffff; | 
|  1426       if (add != 0) |  1427       if (add != 0) | 
|  1427         len += 1 + 8; |  1428         len += 1 + 8; | 
|  1428       name = bfd_malloc (len); |  1429       name = bfd_malloc (len + 1); | 
|  1429       if (name == NULL) |  1430       if (name == NULL) | 
|  1430         return FALSE; |  1431         return FALSE; | 
|  1431  |  1432  | 
|  1432       sprintf (name, "%08x.ovl_call.", g->ovl); |  1433       sprintf (name, "%08x.ovl_call.", g->ovl); | 
|  1433       if (h != NULL) |  1434       if (h != NULL) | 
|  1434         strcpy (name + 8 + sizeof (".ovl_call.") - 1, h->root.root.string); |  1435         strcpy (name + 8 + sizeof (".ovl_call.") - 1, h->root.root.string); | 
|  1435       else |  1436       else | 
|  1436         sprintf (name + 8 + sizeof (".ovl_call.") - 1, "%x:%x", |  1437         sprintf (name + 8 + sizeof (".ovl_call.") - 1, "%x:%x", | 
|  1437                  dest_sec->id & 0xffffffff, |  1438                  dest_sec->id & 0xffffffff, | 
|  1438                  (int) ELF32_R_SYM (irela->r_info) & 0xffffffff); |  1439                  (int) ELF32_R_SYM (irela->r_info) & 0xffffffff); | 
| (...skipping 3449 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  4888               if (!info->callbacks->undefined_symbol (info, |  4889               if (!info->callbacks->undefined_symbol (info, | 
|  4889                                                       h->root.root.string, |  4890                                                       h->root.root.string, | 
|  4890                                                       input_bfd, |  4891                                                       input_bfd, | 
|  4891                                                       input_section, |  4892                                                       input_section, | 
|  4892                                                       rel->r_offset, err)) |  4893                                                       rel->r_offset, err)) | 
|  4893                 return FALSE; |  4894                 return FALSE; | 
|  4894             } |  4895             } | 
|  4895           sym_name = h->root.root.string; |  4896           sym_name = h->root.root.string; | 
|  4896         } |  4897         } | 
|  4897  |  4898  | 
|  4898       if (sec != NULL && elf_discarded_section (sec)) |  4899       if (sec != NULL && discarded_section (sec)) | 
|  4899         RELOC_AGAINST_DISCARDED_SECTION (info, input_bfd, input_section, |  4900         RELOC_AGAINST_DISCARDED_SECTION (info, input_bfd, input_section, | 
|  4900 »       »       »       »       »        rel, relend, howto, contents); |  4901 »       »       »       »       »        rel, 1, relend, howto, 0, contents); | 
|  4901  |  4902  | 
|  4902       if (info->relocatable) |  4903       if (info->relocatable) | 
|  4903         continue; |  4904         continue; | 
|  4904  |  4905  | 
|  4905       /* Change "a rt,ra,rb" to "ai rt,ra,0". */ |  4906       /* Change "a rt,ra,rb" to "ai rt,ra,0". */ | 
|  4906       if (r_type == R_SPU_ADD_PIC |  4907       if (r_type == R_SPU_ADD_PIC | 
|  4907           && h != NULL |  4908           && h != NULL | 
|  4908           && !(h->def_regular || ELF_COMMON_DEF_P (h))) |  4909           && !(h->def_regular || ELF_COMMON_DEF_P (h))) | 
|  4909         { |  4910         { | 
|  4910           bfd_byte *loc = contents + rel->r_offset; |  4911           bfd_byte *loc = contents + rel->r_offset; | 
| (...skipping 561 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  5472  |  5473  | 
|  5473 #define elf_backend_additional_program_headers  spu_elf_additional_program_heade
      rs |  5474 #define elf_backend_additional_program_headers  spu_elf_additional_program_heade
      rs | 
|  5474 #define elf_backend_modify_segment_map          spu_elf_modify_segment_map |  5475 #define elf_backend_modify_segment_map          spu_elf_modify_segment_map | 
|  5475 #define elf_backend_modify_program_headers      spu_elf_modify_program_headers |  5476 #define elf_backend_modify_program_headers      spu_elf_modify_program_headers | 
|  5476 #define elf_backend_post_process_headers        spu_elf_post_process_headers |  5477 #define elf_backend_post_process_headers        spu_elf_post_process_headers | 
|  5477 #define elf_backend_fake_sections               spu_elf_fake_sections |  5478 #define elf_backend_fake_sections               spu_elf_fake_sections | 
|  5478 #define elf_backend_special_sections            spu_elf_special_sections |  5479 #define elf_backend_special_sections            spu_elf_special_sections | 
|  5479 #define bfd_elf32_bfd_final_link                spu_elf_final_link |  5480 #define bfd_elf32_bfd_final_link                spu_elf_final_link | 
|  5480  |  5481  | 
|  5481 #include "elf32-target.h" |  5482 #include "elf32-target.h" | 
| OLD | NEW |