/* BFD back-end for IBM RS/6000 "XCOFF64" files.
- Copyright 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007
+ Copyright 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
Free Software Foundation, Inc.
Written Clinton Popetz.
Contributed by Cygnus Support.
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
- the Free Software Foundation; either version 2 of the License, or
+ the Free Software Foundation; either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. */
+ Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
+ MA 02110-1301, USA. */
#include "sysdep.h"
#include "bfd.h"
#define coff_swap_reloc_out xcoff64_swap_reloc_out
#define NO_COFF_RELOCS
+#ifndef bfd_pe_print_pdata
+#define bfd_pe_print_pdata NULL
+#endif
+
#include "coffcode.h"
/* For XCOFF64, the effective width of symndx changes depending on
file_ptr sym_base;
unsigned long reloc_size = 0;
unsigned long lnno_size = 0;
- bfd_boolean long_section_names;
asection *text_sec = ((void *) 0);
asection *data_sec = ((void *) 0);
asection *bss_sec = ((void *) 0);
if (bfd_seek (abfd, scn_base, SEEK_SET) != 0)
return FALSE;
- long_section_names = FALSE;
for (current = abfd->sections; current != NULL; current = current->next)
{
struct internal_scnhdr section;
LINESZ,
FILNMLEN,
TRUE, /* _bfd_coff_long_filenames */
- FALSE, /* _bfd_coff_long_section_names */
+ XCOFF_NO_LONG_SECTION_NAMES, /* _bfd_coff_long_section_names */
3, /* _bfd_coff_default_section_alignment_power */
TRUE, /* _bfd_coff_force_symnames_in_strings */
4, /* _bfd_coff_debug_string_prefix_length */
coff_print_aux,
dummy_reloc16_extra_cases,
dummy_reloc16_estimate,
- NULL, /* bfd_coff_sym_is_global */
+ NULL, /* bfd_coff_symbol_classification */
coff_compute_section_file_positions,
NULL, /* _bfd_coff_start_final_link */
xcoff64_ppc_relocate_section,
NULL, /* _bfd_coff_adjust_symndx */
_bfd_generic_link_add_one_symbol,
coff_link_output_has_begun,
- coff_final_link_postscript
+ coff_final_link_postscript,
+ NULL /* print_pdata. */
},
0x01EF, /* magic number */
LINESZ,
FILNMLEN,
TRUE, /* _bfd_coff_long_filenames */
- FALSE, /* _bfd_coff_long_section_names */
+ XCOFF_NO_LONG_SECTION_NAMES, /* _bfd_coff_long_section_names */
3, /* _bfd_coff_default_section_alignment_power */
TRUE, /* _bfd_coff_force_symnames_in_strings */
4, /* _bfd_coff_debug_string_prefix_length */
NULL, /* _bfd_coff_adjust_symndx */
_bfd_generic_link_add_one_symbol,
coff_link_output_has_begun,
- coff_final_link_postscript
+ coff_final_link_postscript,
+ NULL /* print_pdata. */
},
U64_TOCMAGIC, /* magic number */