used for coff-go32-exe (coff-stgo32.c). */
bool _bfd_go32_mkobject (bfd *);
void _bfd_go32_swap_scnhdr_in (bfd *, void *, void *);
-unsigned int _bfd_go32_swap_scnhdr_out (bfd *, void *, void *);
+unsigned int _bfd_go32_swap_scnhdr_out (bfd *, void *, void *, const asection *);
#define coff_mkobject _bfd_go32_mkobject
#define coff_SWAP_scnhdr_in _bfd_go32_swap_scnhdr_in
}
unsigned int
-_bfd_go32_swap_scnhdr_out (bfd * abfd, void * in, void * out)
+_bfd_go32_swap_scnhdr_out (bfd *abfd, void *in, void *out,
+ const asection *section ATTRIBUTE_UNUSED)
{
struct internal_scnhdr *scnhdr_int = (struct internal_scnhdr *) in;
SCNHDR *scnhdr_ext = (SCNHDR *) out;
filehdr.f_symptr = scnhdr.s_relptr + scnhdr.s_nreloc * RELSZ;
bfd_coff_swap_filehdr_out (abfd, &filehdr, filehdr_ext);
- bfd_coff_swap_scnhdr_out (abfd, &scnhdr, scnhdr_ext);
+ bfd_coff_swap_scnhdr_out (abfd, &scnhdr, scnhdr_ext, NULL);
bool ret = true;
if (bfd_write (filehdr_ext, FILHSZ, abfd) != FILHSZ
|| bfd_write (scnhdr_ext, SCNHSZ, abfd) != SCNHSZ
/* Defined in coff-go32.c. */
bool _bfd_go32_mkobject (bfd *);
void _bfd_go32_swap_scnhdr_in (bfd *, void *, void *);
-unsigned int _bfd_go32_swap_scnhdr_out (bfd *, void *, void *);
+unsigned int _bfd_go32_swap_scnhdr_out (bfd *, void *, void *, const asection *);
#define COFF_CHECK_FORMAT go32exe_check_format
#define COFF_WRITE_CONTENTS go32exe_write_object_contents
filehdr.f_symptr = data_scnhdr.s_relptr + data_scnhdr.s_nreloc * RELSZ;
bfd_coff_swap_filehdr_out (abfd, &filehdr, filehdr_ext);
- bfd_coff_swap_scnhdr_out (abfd, &text_scnhdr, &scnhdr_ext[SCNHSZ * 0]);
- bfd_coff_swap_scnhdr_out (abfd, &data_scnhdr, &scnhdr_ext[SCNHSZ * 1]);
- bfd_coff_swap_scnhdr_out (abfd, &bss_scnhdr, &scnhdr_ext[SCNHSZ * 2]);
+ bfd_coff_swap_scnhdr_out (abfd, &text_scnhdr, &scnhdr_ext[SCNHSZ * 0], NULL);
+ bfd_coff_swap_scnhdr_out (abfd, &data_scnhdr, &scnhdr_ext[SCNHSZ * 1], NULL);
+ bfd_coff_swap_scnhdr_out (abfd, &bss_scnhdr, &scnhdr_ext[SCNHSZ * 2], NULL);
bool ret = true;
if (bfd_write (filehdr_ext, FILHSZ, abfd) != FILHSZ
|| bfd_write (scnhdr_ext, 3 * SCNHSZ, abfd) != 3 * SCNHSZ
. (bfd *, void *, void *);
.
. unsigned int (*_bfd_coff_swap_scnhdr_out)
-. (bfd *, void *, void *);
+. (bfd *, void *, void *, const asection *);
.
. unsigned int _bfd_filhsz;
. unsigned int _bfd_aoutsz;
.#define bfd_coff_swap_sym_out(abfd, i,o) \
. ((coff_backend_info (abfd)->_bfd_coff_swap_sym_out) (abfd, i, o))
.
-.#define bfd_coff_swap_scnhdr_out(abfd, i,o) \
-. ((coff_backend_info (abfd)->_bfd_coff_swap_scnhdr_out) (abfd, i, o))
+.#define bfd_coff_swap_scnhdr_out(abfd, i, o, sec) \
+. ((coff_backend_info (abfd)->_bfd_coff_swap_scnhdr_out) (abfd, i, o, sec))
.
.#define bfd_coff_swap_filehdr_out(abfd, i,o) \
. ((coff_backend_info (abfd)->_bfd_coff_swap_filehdr_out) (abfd, i, o))
SCNHDR buff;
bfd_size_type amt = bfd_coff_scnhsz (abfd);
- if (bfd_coff_swap_scnhdr_out (abfd, §ion, &buff) == 0
+ if (bfd_coff_swap_scnhdr_out (abfd, §ion, &buff, current) == 0
|| bfd_write (& buff, amt, abfd) != amt)
return false;
}
scnhdr.s_nlnno = current->target_index;
scnhdr.s_flags = STYP_OVRFLO;
amt = bfd_coff_scnhsz (abfd);
- if (bfd_coff_swap_scnhdr_out (abfd, &scnhdr, &buff) == 0
+ if (bfd_coff_swap_scnhdr_out (abfd, &scnhdr, &buff, current) == 0
|| bfd_write (& buff, amt, abfd) != amt)
return false;
}
ATTRIBUTE_UNUSED
static unsigned int
-coff_swap_scnhdr_out (bfd * abfd, void * in, void * out)
+coff_swap_scnhdr_out (bfd * abfd, void * in, void * out,
+ const asection *section ATTRIBUTE_UNUSED)
{
struct internal_scnhdr *scnhdr_int = (struct internal_scnhdr *) in;
SCNHDR *scnhdr_ext = (SCNHDR *) out;
section.s_flags = ecoff_sec_to_styp_flags (current->name,
current->flags);
- if (bfd_coff_swap_scnhdr_out (abfd, (void *) §ion, buff) == 0
+ if (bfd_coff_swap_scnhdr_out (abfd, (void *) §ion, buff, current) == 0
|| bfd_write (buff, scnhsz, abfd) != scnhsz)
goto error_return;
(bfd *, void *, void *);
unsigned int (*_bfd_coff_swap_scnhdr_out)
- (bfd *, void *, void *);
+ (bfd *, void *, void *, const asection *);
unsigned int _bfd_filhsz;
unsigned int _bfd_aoutsz;
#define bfd_coff_swap_sym_out(abfd, i,o) \
((coff_backend_info (abfd)->_bfd_coff_swap_sym_out) (abfd, i, o))
-#define bfd_coff_swap_scnhdr_out(abfd, i,o) \
- ((coff_backend_info (abfd)->_bfd_coff_swap_scnhdr_out) (abfd, i, o))
+#define bfd_coff_swap_scnhdr_out(abfd, i, o, sec) \
+ ((coff_backend_info (abfd)->_bfd_coff_swap_scnhdr_out) (abfd, i, o, sec))
#define bfd_coff_swap_filehdr_out(abfd, i,o) \
((coff_backend_info (abfd)->_bfd_coff_swap_filehdr_out) (abfd, i, o))
unsigned _bfd_XXi_swap_lineno_out (bfd *, void *, void *);
void _bfd_XXi_swap_aouthdr_in (bfd *, void *, void *);
unsigned _bfd_XXi_swap_aouthdr_out (bfd *, void *, void *);
-unsigned _bfd_XXi_swap_scnhdr_out (bfd *, void *, void *);
+unsigned _bfd_XXi_swap_scnhdr_out (bfd *, void *, void *, const asection *);
bool _bfd_XX_print_private_bfd_data_common (bfd *, void *);
bool _bfd_XX_bfd_copy_private_bfd_data_common (bfd *, bfd *);
void _bfd_XX_get_symbol_info (bfd *, asymbol *, symbol_info *);
}
unsigned int
-_bfd_XXi_swap_scnhdr_out (bfd * abfd, void * in, void * out)
+_bfd_XXi_swap_scnhdr_out (bfd * abfd, void * in, void * out,
+ const asection *section ATTRIBUTE_UNUSED)
{
struct internal_scnhdr *scnhdr_int = (struct internal_scnhdr *) in;
SCNHDR *scnhdr_ext = (SCNHDR *) out;