OLD | NEW |
1 /* Infineon XC16X-specific support for 16-bit ELF. | 1 /* Infineon XC16X-specific support for 16-bit ELF. |
2 Copyright 2006, 2007, 2009, 2010 Free Software Foundation, Inc. | 2 Copyright 2006, 2007, 2009, 2010, 2012 Free Software Foundation, Inc. |
3 Contributed by KPIT Cummins Infosystems | 3 Contributed by KPIT Cummins Infosystems |
4 | 4 |
5 This file is part of BFD, the Binary File Descriptor library. | 5 This file is part of BFD, the Binary File Descriptor library. |
6 | 6 |
7 This program is free software; you can redistribute it and/or modify | 7 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 | 8 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 | 9 the Free Software Foundation; either version 3 of the License, or |
10 (at your option) any later version. | 10 (at your option) any later version. |
11 | 11 |
12 This program is distributed in the hope that it will be useful, | 12 This program is distributed in the hope that it will be useful, |
(...skipping 361 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
374 else | 374 else |
375 { | 375 { |
376 bfd_boolean unresolved_reloc, warned; | 376 bfd_boolean unresolved_reloc, warned; |
377 | 377 |
378 RELOC_FOR_GLOBAL_SYMBOL (info, input_bfd, input_section, rel, | 378 RELOC_FOR_GLOBAL_SYMBOL (info, input_bfd, input_section, rel, |
379 r_symndx, symtab_hdr, sym_hashes, | 379 r_symndx, symtab_hdr, sym_hashes, |
380 h, sec, relocation, | 380 h, sec, relocation, |
381 unresolved_reloc, warned); | 381 unresolved_reloc, warned); |
382 } | 382 } |
383 | 383 |
384 if (sec != NULL && elf_discarded_section (sec)) | 384 if (sec != NULL && discarded_section (sec)) |
385 { | 385 { |
386 /* For relocs against symbols from removed linkonce sections, | 386 /* For relocs against symbols from removed linkonce sections, |
387 or sections discarded by a linker script, we just want the | 387 or sections discarded by a linker script, we just want the |
388 section contents cleared. Avoid any special processing. */ | 388 section contents cleared. Avoid any special processing. */ |
389 reloc_howto_type *howto; | 389 reloc_howto_type *howto; |
390 howto = xc16x_reloc_type_lookup (input_bfd, r_type); | 390 howto = xc16x_reloc_type_lookup (input_bfd, r_type); |
391 RELOC_AGAINST_DISCARDED_SECTION (info, input_bfd, input_section, | 391 RELOC_AGAINST_DISCARDED_SECTION (info, input_bfd, input_section, |
392 » » » » » rel, relend, howto, contents); | 392 » » » » » rel, 1, relend, howto, 0, contents); |
393 } | 393 } |
394 | 394 |
395 if (info->relocatable) | 395 if (info->relocatable) |
396 continue; | 396 continue; |
397 | 397 |
398 elf32_xc16x_final_link_relocate (r_type, input_bfd, output_bfd, | 398 elf32_xc16x_final_link_relocate (r_type, input_bfd, output_bfd, |
399 input_section, | 399 input_section, |
400 contents, rel->r_offset, | 400 contents, rel->r_offset, |
401 relocation, rel->r_addend, | 401 relocation, rel->r_addend, |
402 info, sec, h == NULL); | 402 info, sec, h == NULL); |
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
468 #define elf_backend_object_p elf32_xc16x_object_p | 468 #define elf_backend_object_p elf32_xc16x_object_p |
469 #define elf_backend_can_gc_sections 1 | 469 #define elf_backend_can_gc_sections 1 |
470 #define bfd_elf32_bfd_reloc_type_lookup xc16x_reloc_type_lookup | 470 #define bfd_elf32_bfd_reloc_type_lookup xc16x_reloc_type_lookup |
471 #define bfd_elf32_bfd_reloc_name_lookup xc16x_reloc_name_lookup | 471 #define bfd_elf32_bfd_reloc_name_lookup xc16x_reloc_name_lookup |
472 #define elf_info_to_howto elf32_xc16x_info_to_howto | 472 #define elf_info_to_howto elf32_xc16x_info_to_howto |
473 #define elf_info_to_howto_rel elf32_xc16x_info_to_howto | 473 #define elf_info_to_howto_rel elf32_xc16x_info_to_howto |
474 #define elf_backend_relocate_section elf32_xc16x_relocate_section | 474 #define elf_backend_relocate_section elf32_xc16x_relocate_section |
475 #define elf_backend_rela_normal 1 | 475 #define elf_backend_rela_normal 1 |
476 | 476 |
477 #include "elf32-target.h" | 477 #include "elf32-target.h" |
OLD | NEW |