X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=bfd%2Fnlm32-sparc.c;h=cfd4b9e010d916f5b1b494c731e3abc336127d2f;hb=ffc2605c41d026cf5710704848b7c3b1cdbdcf49;hp=e973d42a7bebd3b983dc5258e67f0bb942a1cca2;hpb=0f867abe4ab1bf1b680a54d930736b5180ecb7ab;p=binutils-gdb.git diff --git a/bfd/nlm32-sparc.c b/bfd/nlm32-sparc.c index e973d42a7be..cfd4b9e010d 100644 --- a/bfd/nlm32-sparc.c +++ b/bfd/nlm32-sparc.c @@ -1,12 +1,11 @@ /* Support for 32-bit SPARC NLM (NetWare Loadable Module) - Copyright 1993, 1994, 2000, 2001, 2002, 2003 - Free Software Foundation, Inc. + Copyright (C) 1993-2017 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. 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, @@ -16,10 +15,11 @@ 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ + Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, + MA 02110-1301, USA. */ -#include "bfd.h" #include "sysdep.h" +#include "bfd.h" #include "libbfd.h" #define ARCH_SIZE 32 @@ -29,115 +29,78 @@ #include "libnlm.h" -static bfd_boolean nlm_sparc_read_reloc - PARAMS ((bfd *, nlmNAME(symbol_type) *, asection **, arelent *)); -static bfd_boolean nlm_sparc_write_reloc - PARAMS ((bfd *, asection *, arelent *)); -static bfd_boolean nlm_sparc_mangle_relocs - PARAMS ((bfd *, asection *, const PTR, bfd_vma, bfd_size_type)); -static bfd_boolean nlm_sparc_read_import - PARAMS ((bfd *, nlmNAME(symbol_type) *)); -static bfd_boolean nlm_sparc_write_import - PARAMS ((bfd *, asection *, arelent *)); -static bfd_boolean nlm_sparc_write_external - PARAMS ((bfd *, bfd_size_type, asymbol *, struct reloc_and_sec *)); -static bfd_boolean nlm_sparc_write_export - PARAMS ((bfd *, asymbol *, bfd_vma)); - enum reloc_type - { - R_SPARC_NONE = 0, - R_SPARC_8, R_SPARC_16, R_SPARC_32, - R_SPARC_DISP8, R_SPARC_DISP16, R_SPARC_DISP32, - R_SPARC_WDISP30, R_SPARC_WDISP22, - R_SPARC_HI22, R_SPARC_22, - R_SPARC_13, R_SPARC_LO10, - R_SPARC_GOT10, R_SPARC_GOT13, R_SPARC_GOT22, - R_SPARC_PC10, R_SPARC_PC22, - R_SPARC_WPLT30, - R_SPARC_COPY, - R_SPARC_GLOB_DAT, R_SPARC_JMP_SLOT, - R_SPARC_RELATIVE, - R_SPARC_UA32, - R_SPARC_max - }; - -#if 0 -static const char *const reloc_type_names[] = - { - "R_SPARC_NONE", - "R_SPARC_8", "R_SPARC_16", "R_SPARC_32", - "R_SPARC_DISP8", "R_SPARC_DISP16", "R_SPARC_DISP32", - "R_SPARC_WDISP30", "R_SPARC_WDISP22", - "R_SPARC_HI22", "R_SPARC_22", - "R_SPARC_13", "R_SPARC_LO10", - "R_SPARC_GOT10", "R_SPARC_GOT13", "R_SPARC_GOT22", - "R_SPARC_PC10", "R_SPARC_PC22", - "R_SPARC_WPLT30", - "R_SPARC_COPY", - "R_SPARC_GLOB_DAT", "R_SPARC_JMP_SLOT", - "R_SPARC_RELATIVE", - "R_SPARC_UA32", - }; -#endif +{ + R_SPARC_NONE = 0, + R_SPARC_8, R_SPARC_16, R_SPARC_32, + R_SPARC_DISP8, R_SPARC_DISP16, R_SPARC_DISP32, + R_SPARC_WDISP30, R_SPARC_WDISP22, + R_SPARC_HI22, R_SPARC_22, + R_SPARC_13, R_SPARC_LO10, + R_SPARC_GOT10, R_SPARC_GOT13, R_SPARC_GOT22, + R_SPARC_PC10, R_SPARC_PC22, + R_SPARC_WPLT30, + R_SPARC_COPY, + R_SPARC_GLOB_DAT, R_SPARC_JMP_SLOT, + R_SPARC_RELATIVE, + R_SPARC_UA32, + R_SPARC_max +}; static reloc_howto_type nlm32_sparc_howto_table[] = - { - HOWTO (R_SPARC_NONE, 0,0, 0,FALSE,0,complain_overflow_dont, 0,"R_SPARC_NONE", FALSE,0,0x00000000,TRUE), - HOWTO (R_SPARC_8, 0,0, 8,FALSE,0,complain_overflow_bitfield,0,"R_SPARC_8", FALSE,0,0x000000ff,TRUE), - HOWTO (R_SPARC_16, 0,1,16,FALSE,0,complain_overflow_bitfield,0,"R_SPARC_16", FALSE,0,0x0000ffff,TRUE), - HOWTO (R_SPARC_32, 0,2,32,FALSE,0,complain_overflow_bitfield,0,"R_SPARC_32", FALSE,0,0xffffffff,TRUE), - HOWTO (R_SPARC_DISP8, 0,0, 8,TRUE, 0,complain_overflow_signed, 0,"R_SPARC_DISP8", FALSE,0,0x000000ff,TRUE), - HOWTO (R_SPARC_DISP16, 0,1,16,TRUE, 0,complain_overflow_signed, 0,"R_SPARC_DISP16", FALSE,0,0x0000ffff,TRUE), - HOWTO (R_SPARC_DISP32, 0,2,32,TRUE, 0,complain_overflow_signed, 0,"R_SPARC_DISP32", FALSE,0,0x00ffffff,TRUE), - HOWTO (R_SPARC_WDISP30, 2,2,30,TRUE, 0,complain_overflow_signed, 0,"R_SPARC_WDISP30", FALSE,0,0x3fffffff,TRUE), - HOWTO (R_SPARC_WDISP22, 2,2,22,TRUE, 0,complain_overflow_signed, 0,"R_SPARC_WDISP22", FALSE,0,0x003fffff,TRUE), - HOWTO (R_SPARC_HI22, 10,2,22,FALSE,0,complain_overflow_dont, 0,"R_SPARC_HI22", FALSE,0,0x003fffff,TRUE), - HOWTO (R_SPARC_22, 0,2,22,FALSE,0,complain_overflow_bitfield,0,"R_SPARC_22", FALSE,0,0x003fffff,TRUE), - HOWTO (R_SPARC_13, 0,2,13,FALSE,0,complain_overflow_bitfield,0,"R_SPARC_13", FALSE,0,0x00001fff,TRUE), - HOWTO (R_SPARC_LO10, 0,2,10,FALSE,0,complain_overflow_dont, 0,"R_SPARC_LO10", FALSE,0,0x000003ff,TRUE), - HOWTO (R_SPARC_GOT10, 0,2,10,FALSE,0,complain_overflow_bitfield,0,"R_SPARC_GOT10", FALSE,0,0x000003ff,TRUE), - HOWTO (R_SPARC_GOT13, 0,2,13,FALSE,0,complain_overflow_bitfield,0,"R_SPARC_GOT13", FALSE,0,0x00001fff,TRUE), - HOWTO (R_SPARC_GOT22, 10,2,22,FALSE,0,complain_overflow_bitfield,0,"R_SPARC_GOT22", FALSE,0,0x003fffff,TRUE), - HOWTO (R_SPARC_PC10, 0,2,10,FALSE,0,complain_overflow_bitfield,0,"R_SPARC_PC10", FALSE,0,0x000003ff,TRUE), - HOWTO (R_SPARC_PC22, 0,2,22,FALSE,0,complain_overflow_bitfield,0,"R_SPARC_PC22", FALSE,0,0x003fffff,TRUE), - HOWTO (R_SPARC_WPLT30, 0,0,00,FALSE,0,complain_overflow_dont, 0,"R_SPARC_WPLT30", FALSE,0,0x00000000,TRUE), - HOWTO (R_SPARC_COPY, 0,0,00,FALSE,0,complain_overflow_dont, 0,"R_SPARC_COPY", FALSE,0,0x00000000,TRUE), - HOWTO (R_SPARC_GLOB_DAT,0,0,00,FALSE,0,complain_overflow_dont, 0,"R_SPARC_GLOB_DAT",FALSE,0,0x00000000,TRUE), - HOWTO (R_SPARC_JMP_SLOT,0,0,00,FALSE,0,complain_overflow_dont, 0,"R_SPARC_JMP_SLOT",FALSE,0,0x00000000,TRUE), - HOWTO (R_SPARC_RELATIVE,0,0,00,FALSE,0,complain_overflow_dont, 0,"R_SPARC_RELATIVE",FALSE,0,0x00000000,TRUE), - HOWTO (R_SPARC_UA32, 0,0,00,FALSE,0,complain_overflow_dont, 0,"R_SPARC_UA32", FALSE,0,0x00000000,TRUE), +{ + HOWTO (R_SPARC_NONE, 0,3, 0,FALSE,0,complain_overflow_dont, 0,"R_SPARC_NONE", FALSE,0,0x00000000,TRUE), + HOWTO (R_SPARC_8, 0,0, 8,FALSE,0,complain_overflow_bitfield,0,"R_SPARC_8", FALSE,0,0x000000ff,TRUE), + HOWTO (R_SPARC_16, 0,1,16,FALSE,0,complain_overflow_bitfield,0,"R_SPARC_16", FALSE,0,0x0000ffff,TRUE), + HOWTO (R_SPARC_32, 0,2,32,FALSE,0,complain_overflow_bitfield,0,"R_SPARC_32", FALSE,0,0xffffffff,TRUE), + HOWTO (R_SPARC_DISP8, 0,0, 8,TRUE, 0,complain_overflow_signed, 0,"R_SPARC_DISP8", FALSE,0,0x000000ff,TRUE), + HOWTO (R_SPARC_DISP16, 0,1,16,TRUE, 0,complain_overflow_signed, 0,"R_SPARC_DISP16", FALSE,0,0x0000ffff,TRUE), + HOWTO (R_SPARC_DISP32, 0,2,32,TRUE, 0,complain_overflow_signed, 0,"R_SPARC_DISP32", FALSE,0,0x00ffffff,TRUE), + HOWTO (R_SPARC_WDISP30, 2,2,30,TRUE, 0,complain_overflow_signed, 0,"R_SPARC_WDISP30", FALSE,0,0x3fffffff,TRUE), + HOWTO (R_SPARC_WDISP22, 2,2,22,TRUE, 0,complain_overflow_signed, 0,"R_SPARC_WDISP22", FALSE,0,0x003fffff,TRUE), + HOWTO (R_SPARC_HI22, 10,2,22,FALSE,0,complain_overflow_dont, 0,"R_SPARC_HI22", FALSE,0,0x003fffff,TRUE), + HOWTO (R_SPARC_22, 0,2,22,FALSE,0,complain_overflow_bitfield,0,"R_SPARC_22", FALSE,0,0x003fffff,TRUE), + HOWTO (R_SPARC_13, 0,2,13,FALSE,0,complain_overflow_bitfield,0,"R_SPARC_13", FALSE,0,0x00001fff,TRUE), + HOWTO (R_SPARC_LO10, 0,2,10,FALSE,0,complain_overflow_dont, 0,"R_SPARC_LO10", FALSE,0,0x000003ff,TRUE), + HOWTO (R_SPARC_GOT10, 0,2,10,FALSE,0,complain_overflow_bitfield,0,"R_SPARC_GOT10", FALSE,0,0x000003ff,TRUE), + HOWTO (R_SPARC_GOT13, 0,2,13,FALSE,0,complain_overflow_bitfield,0,"R_SPARC_GOT13", FALSE,0,0x00001fff,TRUE), + HOWTO (R_SPARC_GOT22, 10,2,22,FALSE,0,complain_overflow_bitfield,0,"R_SPARC_GOT22", FALSE,0,0x003fffff,TRUE), + HOWTO (R_SPARC_PC10, 0,2,10,FALSE,0,complain_overflow_bitfield,0,"R_SPARC_PC10", FALSE,0,0x000003ff,TRUE), + HOWTO (R_SPARC_PC22, 0,2,22,FALSE,0,complain_overflow_bitfield,0,"R_SPARC_PC22", FALSE,0,0x003fffff,TRUE), + HOWTO (R_SPARC_WPLT30, 0,0,00,FALSE,0,complain_overflow_dont, 0,"R_SPARC_WPLT30", FALSE,0,0x00000000,TRUE), + HOWTO (R_SPARC_COPY, 0,0,00,FALSE,0,complain_overflow_dont, 0,"R_SPARC_COPY", FALSE,0,0x00000000,TRUE), + HOWTO (R_SPARC_GLOB_DAT,0,0,00,FALSE,0,complain_overflow_dont, 0,"R_SPARC_GLOB_DAT",FALSE,0,0x00000000,TRUE), + HOWTO (R_SPARC_JMP_SLOT,0,0,00,FALSE,0,complain_overflow_dont, 0,"R_SPARC_JMP_SLOT",FALSE,0,0x00000000,TRUE), + HOWTO (R_SPARC_RELATIVE,0,0,00,FALSE,0,complain_overflow_dont, 0,"R_SPARC_RELATIVE",FALSE,0,0x00000000,TRUE), + HOWTO (R_SPARC_UA32, 0,0,00,FALSE,0,complain_overflow_dont, 0,"R_SPARC_UA32", FALSE,0,0x00000000,TRUE), }; /* Read a NetWare sparc reloc. */ struct nlm32_sparc_reloc_ext - { - unsigned char offset[4]; - unsigned char addend[4]; - unsigned char type[1]; - unsigned char pad1[3]; - }; +{ + unsigned char offset[4]; + unsigned char addend[4]; + unsigned char type[1]; + unsigned char pad1[3]; +}; static bfd_boolean -nlm_sparc_read_reloc (abfd, sym, secp, rel) - bfd *abfd; - nlmNAME(symbol_type) *sym ATTRIBUTE_UNUSED; - asection **secp; - arelent *rel; +nlm_sparc_read_reloc (bfd *abfd, + nlmNAME (symbol_type) *sym ATTRIBUTE_UNUSED, + asection **secp, + arelent *rel) { bfd_vma val, addend; - unsigned int index; + unsigned int howto_index; unsigned int type; struct nlm32_sparc_reloc_ext tmp_reloc; - asection *code_sec, *data_sec; + asection *code_sec; if (bfd_bread (&tmp_reloc, (bfd_size_type) 12, abfd) != 12) return FALSE; code_sec = bfd_get_section_by_name (abfd, NLM_CODE_NAME); - data_sec = bfd_get_section_by_name (abfd, NLM_INITIALIZED_DATA_NAME); - *secp = code_sec; val = bfd_get_32 (abfd, tmp_reloc.offset); @@ -148,18 +111,19 @@ nlm_sparc_read_reloc (abfd, sym, secp, rel) rel->addend = addend; rel->howto = NULL; - for (index = 0; - index < sizeof (nlm32_sparc_howto_table) / sizeof (reloc_howto_type); - index++) - if (nlm32_sparc_howto_table[index].type == type) + for (howto_index = 0; + howto_index < sizeof (nlm32_sparc_howto_table) / sizeof (reloc_howto_type); + howto_index++) + if (nlm32_sparc_howto_table[howto_index].type == type) { - rel->howto = &nlm32_sparc_howto_table[index]; + rel->howto = &nlm32_sparc_howto_table[howto_index]; break; } #ifdef DEBUG - fprintf (stderr, "%s: address = %08lx, addend = %08lx, type = %d, howto = %08lx\n", - __FUNCTION__, rel->address, rel->addend, type, rel->howto); + fprintf (stderr, "%s: address = %08lx, addend = %08lx, type = %u, howto = %p\n", + __FUNCTION__, (unsigned long) rel->address, + (unsigned long) rel->addend, type, rel->howto); #endif return TRUE; @@ -168,22 +132,19 @@ nlm_sparc_read_reloc (abfd, sym, secp, rel) /* Write a NetWare sparc reloc. */ static bfd_boolean -nlm_sparc_write_reloc (abfd, sec, rel) - bfd *abfd; - asection *sec; - arelent *rel; +nlm_sparc_write_reloc (bfd * abfd, asection * sec, arelent * rel) { bfd_vma val; struct nlm32_sparc_reloc_ext tmp_reloc; - unsigned int index; + unsigned int howto_index; int type = -1; reloc_howto_type *tmp; - for (index = 0; - index < sizeof (nlm32_sparc_howto_table) / sizeof (reloc_howto_type); - index++) + for (howto_index = 0; + howto_index < sizeof (nlm32_sparc_howto_table) / sizeof (reloc_howto_type); + howto_index++) { - tmp = &nlm32_sparc_howto_table[index]; + tmp = &nlm32_sparc_howto_table[howto_index]; if (tmp->rightshift == rel->howto->rightshift && tmp->size == rel->howto->size @@ -211,15 +172,12 @@ nlm_sparc_write_reloc (abfd, sec, rel) segment. This offset is the section vma, adjusted by the vma of the lowest section in that segment, plus the address of the relocation. */ -#if 0 - val = bfd_get_section_vma (abfd, (*rel->sym_ptr_ptr)->section) + rel->address; -#else val = bfd_get_section_vma (abfd, sec) + rel->address; -#endif #ifdef DEBUG - fprintf (stderr, "%s: val = %08lx, addend = %08lx, type = %d\n", - __FUNCTION__, val, rel->addend, rel->howto->type); + fprintf (stderr, "%s: val = %08lx, addend = %08lx, type = %u\n", + __FUNCTION__, (unsigned long) val, (unsigned long) rel->addend, + rel->howto->type); #endif bfd_put_32 (abfd, val, tmp_reloc.offset); bfd_put_32 (abfd, rel->addend, tmp_reloc.addend); @@ -235,12 +193,11 @@ nlm_sparc_write_reloc (abfd, sec, rel) SPARC relocs. */ static bfd_boolean -nlm_sparc_mangle_relocs (abfd, sec, data, offset, count) - bfd *abfd ATTRIBUTE_UNUSED; - asection *sec ATTRIBUTE_UNUSED; - const PTR data ATTRIBUTE_UNUSED; - bfd_vma offset ATTRIBUTE_UNUSED; - bfd_size_type count ATTRIBUTE_UNUSED; +nlm_sparc_mangle_relocs (bfd *abfd ATTRIBUTE_UNUSED, + asection *sec ATTRIBUTE_UNUSED, + const void * data ATTRIBUTE_UNUSED, + bfd_vma offset ATTRIBUTE_UNUSED, + bfd_size_type count ATTRIBUTE_UNUSED) { return TRUE; } @@ -248,9 +205,7 @@ nlm_sparc_mangle_relocs (abfd, sec, data, offset, count) /* Read a NetWare sparc import record. */ static bfd_boolean -nlm_sparc_read_import (abfd, sym) - bfd *abfd; - nlmNAME(symbol_type) *sym; +nlm_sparc_read_import (bfd *abfd, nlmNAME (symbol_type) *sym) { struct nlm_relent *nlm_relocs; /* Relocation records for symbol. */ bfd_size_type rcount; /* Number of relocs. */ @@ -260,14 +215,13 @@ nlm_sparc_read_import (abfd, sym) /* First, read in the number of relocation entries for this symbol. */ - if (bfd_bread ((PTR) temp, (bfd_size_type) 4, abfd) != 4) + if (bfd_bread (temp, (bfd_size_type) 4, abfd) != 4) return FALSE; rcount = bfd_get_32 (abfd, temp); /* Next, read in the length of the symbol. */ - - if (bfd_bread ((PTR) &symlength, (bfd_size_type) sizeof (symlength), abfd) + if (bfd_bread (& symlength, (bfd_size_type) sizeof (symlength), abfd) != sizeof (symlength)) return FALSE; sym -> symbol.the_bfd = abfd; @@ -276,7 +230,6 @@ nlm_sparc_read_import (abfd, sym) return FALSE; /* Then read in the symbol. */ - if (bfd_bread (name, (bfd_size_type) symlength, abfd) != symlength) return FALSE; name[symlength] = '\0'; @@ -286,9 +239,7 @@ nlm_sparc_read_import (abfd, sym) sym -> symbol.section = bfd_und_section_ptr; /* Next, start reading in the relocs. */ - - nlm_relocs = ((struct nlm_relent *) - bfd_alloc (abfd, rcount * sizeof (struct nlm_relent))); + nlm_relocs = bfd_alloc (abfd, rcount * sizeof (struct nlm_relent)); if (!nlm_relocs) return FALSE; sym -> relocs = nlm_relocs; @@ -308,10 +259,7 @@ nlm_sparc_read_import (abfd, sym) } static bfd_boolean -nlm_sparc_write_import (abfd, sec, rel) - bfd *abfd; - asection *sec; - arelent *rel; +nlm_sparc_write_import (bfd * abfd, asection * sec, arelent * rel) { char temp[4]; asection *code, *data, *bss, *symsec; @@ -325,21 +273,21 @@ nlm_sparc_write_import (abfd, sec, rel) if (symsec == code) base = 0; else if (symsec == data) - base = bfd_section_size (abfd, code); + base = code->size; else if (symsec == bss) - base = bfd_section_size (abfd, code) + bfd_section_size (abfd, data); + base = code->size + data->size; else base = 0; #ifdef DEBUG - fprintf (stderr, "%s: <%x, 1>\n\t", - __FUNCTION__, base + (*rel->sym_ptr_ptr)->value); + fprintf (stderr, "%s: <%lx, 1>\n\t", + __FUNCTION__, (unsigned long) (base + (*rel->sym_ptr_ptr)->value)); #endif bfd_put_32 (abfd, base + (*rel->sym_ptr_ptr)->value, temp); - if (bfd_bwrite ((PTR) temp, (bfd_size_type) 4, abfd) != 4) + if (bfd_bwrite (temp, (bfd_size_type) 4, abfd) != 4) return FALSE; bfd_put_32 (abfd, (bfd_vma) 1, temp); - if (bfd_bwrite ((PTR) temp, (bfd_size_type) 4, abfd) != 4) + if (bfd_bwrite (temp, (bfd_size_type) 4, abfd) != 4) return FALSE; if (! nlm_sparc_write_reloc (abfd, sec, rel)) return FALSE; @@ -349,11 +297,10 @@ nlm_sparc_write_import (abfd, sec, rel) /* Write out an external reference. */ static bfd_boolean -nlm_sparc_write_external (abfd, count, sym, relocs) - bfd *abfd; - bfd_size_type count; - asymbol *sym; - struct reloc_and_sec *relocs; +nlm_sparc_write_external (bfd *abfd, + bfd_size_type count, + asymbol *sym, + struct reloc_and_sec *relocs) { unsigned int i; bfd_byte len; @@ -370,26 +317,21 @@ nlm_sparc_write_external (abfd, count, sym, relocs) return FALSE; for (i = 0; i < count; i++) - { - if (! nlm_sparc_write_reloc (abfd, relocs[i].sec, relocs[i].rel)) - return FALSE; - } + if (! nlm_sparc_write_reloc (abfd, relocs[i].sec, relocs[i].rel)) + return FALSE; return TRUE; } static bfd_boolean -nlm_sparc_write_export (abfd, sym, value) - bfd *abfd; - asymbol *sym; - bfd_vma value; +nlm_sparc_write_export (bfd * abfd, asymbol * sym, bfd_vma value) { bfd_byte len; bfd_byte temp[4]; #ifdef DEBUG - fprintf (stderr, "%s: <%x, %d, %s>\n", - __FUNCTION__, value, strlen (sym->name), sym->name); + fprintf (stderr, "%s: <%lx, %u, %s>\n", + __FUNCTION__, (unsigned long) value, strlen (sym->name), sym->name); #endif bfd_put_32 (abfd, value, temp); len = strlen (sym->name); @@ -408,29 +350,29 @@ nlm_sparc_write_export (abfd, sym, value) #include "nlmswap.h" static const struct nlm_backend_data nlm32_sparc_backend = - { - "NetWare SPARC Module \032", - sizeof (Nlm32_sparc_External_Fixed_Header), - 0, /* optional_prefix_size */ - bfd_arch_sparc, - 0, - FALSE, - 0, /* backend_object_p */ - 0, /* write_prefix_func */ - nlm_sparc_read_reloc, - nlm_sparc_mangle_relocs, - nlm_sparc_read_import, - nlm_sparc_write_import, - 0, /* set_public_section */ - 0, /* get_public_offset */ - nlm_swap_fixed_header_in, - nlm_swap_fixed_header_out, - nlm_sparc_write_external, - nlm_sparc_write_export - }; +{ + "NetWare SPARC Module \032", + sizeof (Nlm32_sparc_External_Fixed_Header), + 0, /* Optional_prefix_size. */ + bfd_arch_sparc, + 0, + FALSE, + 0, /* Backend_object_p. */ + 0, /* Write_prefix_func. */ + nlm_sparc_read_reloc, + nlm_sparc_mangle_relocs, + nlm_sparc_read_import, + nlm_sparc_write_import, + 0, /* Set_public_section. */ + 0, /* Get_public_offset. */ + nlm_swap_fixed_header_in, + nlm_swap_fixed_header_out, + nlm_sparc_write_external, + nlm_sparc_write_export +}; #define TARGET_BIG_NAME "nlm32-sparc" -#define TARGET_BIG_SYM nlmNAME(sparc_vec) +#define TARGET_BIG_SYM sparc_nlm32_vec #define TARGET_BACKEND_DATA & nlm32_sparc_backend #include "nlm-target.h"