X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=bfd%2Faoutx.h;h=e343f991a59c475ade4f687613be54360891ffbd;hb=a1cd6a8fe3b1744a39e4743933ee788b69752235;hp=f1aae0e86845cc2814695009860ff1b86599bde5;hpb=7898dedac0f0bd75d7363d13427c4a1e72b66f66;p=deliverable%2Fbinutils-gdb.git diff --git a/bfd/aoutx.h b/bfd/aoutx.h index f1aae0e868..e343f991a5 100644 --- a/bfd/aoutx.h +++ b/bfd/aoutx.h @@ -139,6 +139,7 @@ static boolean translate_to_native_sym_flags static void adjust_o_magic PARAMS ((bfd *, struct internal_exec *)); static void adjust_z_magic PARAMS ((bfd *, struct internal_exec *)); static void adjust_n_magic PARAMS ((bfd *, struct internal_exec *)); +reloc_howto_type * NAME(aout,reloc_type_lookup) PARAMS ((bfd *, bfd_reloc_code_real_type)); /* SUBSECTION @@ -776,11 +777,11 @@ NAME(aout,machine_type) (arch, machine, unknown) case bfd_mach_mips4650: case bfd_mach_mips8000: case bfd_mach_mips10000: + case bfd_mach_mips12000: case bfd_mach_mips16: - case bfd_mach_mips32: - case bfd_mach_mips32_4k: + case bfd_mach_mipsisa32: case bfd_mach_mips5: - case bfd_mach_mips64: + case bfd_mach_mipsisa64: case bfd_mach_mips_sb1: /* FIXME: These should be MIPS3, MIPS4, MIPS16, MIPS32, etc. */ arch_flags = M_MIPS2; @@ -1005,10 +1006,14 @@ adjust_z_magic (abfd, execp) } if (abdp && abdp->zmagic_mapped_contiguous) { - text_pad = (obj_datasec(abfd)->vma - - obj_textsec(abfd)->vma - - obj_textsec(abfd)->_raw_size); - obj_textsec(abfd)->_raw_size += text_pad; + asection * text = obj_textsec (abfd); + asection * data = obj_datasec (abfd); + + text_pad = data->vma - (text->vma + text->_raw_size); + /* Only pad the text section if the data + section is going to be placed after it. */ + if (text_pad > 0) + text->_raw_size += text_pad; } obj_datasec(abfd)->filepos = (obj_textsec(abfd)->filepos + obj_textsec(abfd)->_raw_size); @@ -2548,7 +2553,7 @@ NAME(aout,get_symtab_upper_bound) (abfd) return (bfd_get_symcount (abfd)+1) * (sizeof (aout_symbol_type *)); } - alent * +alent * NAME(aout,get_lineno) (ignore_abfd, ignore_symbol) bfd *ignore_abfd ATTRIBUTE_UNUSED; asymbol *ignore_symbol ATTRIBUTE_UNUSED; @@ -2584,8 +2589,8 @@ NAME(aout,get_symbol_info) (ignore_abfd, symbol, ret) } void -NAME(aout,print_symbol) (ignore_abfd, afile, symbol, how) - bfd *ignore_abfd ATTRIBUTE_UNUSED; +NAME(aout,print_symbol) (abfd, afile, symbol, how) + bfd *abfd; PTR afile; asymbol *symbol; bfd_print_symbol_type how; @@ -2606,7 +2611,7 @@ NAME(aout,print_symbol) (ignore_abfd, afile, symbol, how) { CONST char *section_name = symbol->section->name; - bfd_print_symbol_vandf((PTR)file,symbol); + bfd_print_symbol_vandf (abfd, (PTR)file, symbol); fprintf (file," %-5s %04x %02x %02x", section_name, @@ -4341,6 +4346,7 @@ aout_link_write_symbols (finfo, input_bfd) switch (discard) { case discard_none: + case discard_sec_merge: break; case discard_l: if ((type & N_STAB) == 0