-#define bfd_pef_bfd_discard_group bfd_generic_discard_group
-#define bfd_pef_bfd_link_hash_table_create _bfd_generic_link_hash_table_create
-#define bfd_pef_bfd_link_hash_table_free _bfd_generic_link_hash_table_free
-#define bfd_pef_bfd_link_add_symbols _bfd_generic_link_add_symbols
-#define bfd_pef_bfd_link_just_syms _bfd_generic_link_just_syms
-#define bfd_pef_bfd_final_link _bfd_generic_final_link
-#define bfd_pef_bfd_link_split_section _bfd_generic_link_split_section
-#define bfd_pef_get_section_contents_in_window _bfd_generic_get_section_contents_in_window
-
-static void bfd_pef_print_symbol PARAMS ((bfd *, PTR, asymbol *, bfd_print_symbol_type));
-static void bfd_pef_convert_architecture PARAMS ((unsigned long, enum bfd_architecture *, unsigned long *));
-static bfd_boolean bfd_pef_mkobject PARAMS ((bfd *));
-static int bfd_pef_parse_traceback_table PARAMS ((bfd *, asection *, unsigned char *, size_t, size_t, asymbol *, FILE *));
-static const char *bfd_pef_section_name PARAMS ((bfd_pef_section *));
-static unsigned long bfd_pef_section_flags PARAMS ((bfd_pef_section *));
-static asection *bfd_pef_make_bfd_section PARAMS ((bfd *, bfd_pef_section *));
-static int bfd_pef_read_header PARAMS ((bfd *, bfd_pef_header *));
-static const bfd_target *bfd_pef_object_p PARAMS ((bfd *));
-static int bfd_pef_parse_traceback_tables PARAMS ((bfd *, asection *, unsigned char *, size_t, long *, asymbol **));
-static int bfd_pef_parse_function_stub PARAMS ((bfd *, unsigned char *, size_t, unsigned long *));
-static int bfd_pef_parse_function_stubs PARAMS ((bfd *, asection *, unsigned char *, size_t, unsigned char *, size_t, unsigned long *, asymbol **));
-static long bfd_pef_parse_symbols PARAMS ((bfd *, asymbol **));
-static long bfd_pef_count_symbols PARAMS ((bfd *));
-static long bfd_pef_get_symtab_upper_bound PARAMS ((bfd *));
-static long bfd_pef_canonicalize_symtab PARAMS ((bfd *, asymbol **));
-static asymbol *bfd_pef_make_empty_symbol PARAMS ((bfd *));
-static void bfd_pef_get_symbol_info PARAMS ((bfd *, asymbol *, symbol_info *));
-static int bfd_pef_sizeof_headers PARAMS ((bfd *, bfd_boolean));
-static int bfd_pef_xlib_read_header PARAMS ((bfd *, bfd_pef_xlib_header *));
-static int bfd_pef_xlib_scan PARAMS ((bfd *, bfd_pef_xlib_header *));
-static const bfd_target *bfd_pef_xlib_object_p PARAMS ((bfd *));
-
-static void
-bfd_pef_print_symbol (abfd, afile, symbol, how)
- bfd *abfd;
- PTR afile;
- asymbol *symbol;
- bfd_print_symbol_type how;
-{
- FILE *file = (FILE *) afile;
-
- switch (how)
- {
- case bfd_print_symbol_name:
- fprintf (file, "%s", symbol->name);
- break;
- default:
- bfd_print_symbol_vandf (abfd, (PTR) file, symbol);
- fprintf (file, " %-5s %s", symbol->section->name, symbol->name);
- if (strncmp (symbol->name, "__traceback_", strlen ("__traceback_")) == 0)
- {
- char *buf = alloca (symbol->udata.i);
- size_t offset = symbol->value + 4;
- size_t len = symbol->udata.i;
- int ret;
-
- bfd_get_section_contents (abfd, symbol->section, buf, offset, len);
- ret = bfd_pef_parse_traceback_table (abfd, symbol->section, buf,
- len, 0, NULL, file);
- if (ret < 0)
- fprintf (file, " [ERROR]");
- }
- }
-}
-
-static void
-bfd_pef_convert_architecture (architecture, type, subtype)
- unsigned long architecture;
- enum bfd_architecture *type;
- unsigned long *subtype;
-{
- const unsigned long ARCH_POWERPC = 0x70777063; /* 'pwpc' */
- const unsigned long ARCH_M68K = 0x6d36386b; /* 'm68k' */
-
- *subtype = bfd_arch_unknown;
- *type = bfd_arch_unknown;
-
- if (architecture == ARCH_POWERPC)
- *type = bfd_arch_powerpc;
- else if (architecture == ARCH_M68K)
- *type = bfd_arch_m68k;
-}
-
-static bfd_boolean
-bfd_pef_mkobject (abfd)
- bfd *abfd ATTRIBUTE_UNUSED;
-{
- return TRUE;
-}
+#define bfd_pef_bfd_discard_group bfd_generic_discard_group
+#define bfd_pef_section_already_linked _bfd_generic_section_already_linked
+#define bfd_pef_bfd_define_common_symbol bfd_generic_define_common_symbol
+#define bfd_pef_bfd_link_hide_symbol _bfd_generic_link_hide_symbol
+#define bfd_pef_bfd_define_start_stop bfd_generic_define_start_stop
+#define bfd_pef_bfd_link_hash_table_create _bfd_generic_link_hash_table_create
+#define bfd_pef_bfd_link_add_symbols _bfd_generic_link_add_symbols
+#define bfd_pef_bfd_link_just_syms _bfd_generic_link_just_syms
+#define bfd_pef_bfd_copy_link_hash_symbol_type \
+ _bfd_generic_copy_link_hash_symbol_type
+#define bfd_pef_bfd_final_link _bfd_generic_final_link
+#define bfd_pef_bfd_link_split_section _bfd_generic_link_split_section
+#define bfd_pef_get_section_contents_in_window _bfd_generic_get_section_contents_in_window
+#define bfd_pef_bfd_link_check_relocs _bfd_generic_link_check_relocs