* config/tc-s390.h (TC_FORCE_RELOCATION): Always emit relocations
[binutils-gdb.git] / gas / ChangeLog
index 249070eeda5591219a1c2219ff287516fab33661..b6b9191c7f2c36ed4b800d8e564a3fe7db94de56 100644 (file)
@@ -1,3 +1,275 @@
+2001-06-06  Martin Schwidefsky <schwidefsky@de.ibm.com>
+
+       * config/tc-s390.h (TC_FORCE_RELOCATION): Always emit relocations
+       BFD_RELOC_VTABLE_INHERIT and BFD_RELOC_VTABLE_ENTRY.
+
+2001-06-06  Alan Modra  <amodra@bigpond.net.au>
+
+       * config/tc-i386.c (md_assemble): Handle Pentium4 branch hints.
+       <JumpByte, JumpDword insn output>: Remove dead code.
+
+2001-06-06  Tracy Kuhrt <Tracy.Kuhrt@microchip.com>
+
+       * as.c (parse_args): Correct option name "listing-lhs-width2".
+
+2001-06-05  Nick Clifton  <nickc@cambridge.redhat.com>
+
+       * symbols.c (S_SET_EXTERNAL): Do not override a section symbol's
+       status.
+
+2001-05-30  Richard Henderson  <rth@redhat.com>
+
+       * read.c (emit_leb128_expr): Call md_cons_align.
+
+2001-05-28  Jeff Sturm  <jsturm@one-point.com>
+
+       * config/tc-sparc.c (md_apply_fix3): Handle BFD_RELOC_SPARC_UA16,
+       BFD_RELOC_SPARC_UA32 and BFD_RELOC_SPARC_UA64.
+       (tc_gen_reloc): Likewise.
+       (sparc_cons_align): Don't clear sparc_no_align_cons.
+       (cons_fix_new_sparc): Substitute BFD_RELOC_SPARC_UA{16|32|64} for 
+       BFD_RELOC_{16|32|64} iff sparc_no_align_cons is set.
+
+2001-05-27  Alan Modra  <amodra@one.net.au>
+
+       * write.c (relax_segment <rs_space>): Check the section of a
+       symbol to determine whether it is absolute rather than comparing
+       its frag against zero_address_frag as listings play tricks with
+       frags.
+
+       * config/tc-m68k.c (md_assemble): Ensure variable part of frag is
+       allocated in the same chunk as the fixed part.
+
+2001-05-26  Alan Modra  <amodra@one.net.au>
+
+       * write.c (relax_segment <rs_space>): Calculate growth using
+       addresses before stretch.  Prevent repeated error messages.
+       From Peter Jakubek  <pjak@snafu.de>
+       Use as_bad_where and as_warn_where to pinpoint errors.
+
+2001-05-25  Alan Modra  <amodra@one.net.au>
+
+       * symbols.c (resolve_symbol_value): Always set segment, even when
+       not finalizing symbol value.
+
+       * config/obj-ieee.c (write_object_file): Set finalize_syms.
+       * config/obj-coff.c (write_object_file): Likewise.
+       * (size_section): Remove rs_space assert as fr_symbol is no longer
+       removed.
+       (fill_section): Likewise.
+
+       * configure.in: Replace linuxoldld with linux*oldld.
+       * configure: Regenerate.
+
+       From 2.11 branch 2001-03-30  Richard Henderson  <rth@redhat.com>
+       * config/tc-i386.c (md_convert_frag): Don't die on local symbols
+       that have been finalized.
+
+       * symbols.c (resolve_symbol_value): Clear sy_resolving before
+       taking exit_dont_set_value.
+
+       * write.c (relax_segment <rs_space>): Don't zap fr_symbol when
+       relaxing.
+
+2000-05-24  Tom Rix <trix@redhat.com>
+
+       * config/obj-coff.c : (add_lineno) xcoff allows negative line
+       numbers
+       * config/tc-ppc.c (ppc_stabx) : fix generated symbol
+       
+2001-05-24  Alan Modra  <amodra@one.net.au>
+
+       * write.c (write_object_file): Set finalize_syms = 1 before
+       size_seg is called.
+
+2001-05-23  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
+
+       * config/tc-mips.c (ISA_HAS_64BIT_REGS): Add ISA_MIPS64 as 64 bit
+       architecture, remove erraneous ISA_MIPS32.
+       (md_show_usage): Add MIPS r12k support.
+       (mips_cpu_info_table): Add MIPS r12k support.
+       
+2001-05-22  Alan Modra  <amodra@one.net.au>
+
+       * config/tc-arc.c (md_assemble): Use is_end_of_line instead of
+       testing for NULs.
+
+       * symbols.c (resolve_symbol_value): Remove "finalize" param,
+       instead use finalize_syms directly.  Don't treat expressions
+       specially with regard to finalize_syms.  Update calls to self.
+       (resolve_local_symbol): Update call to resolve_symbol_value.
+       (S_GET_VALUE): Likewise.  Return resolve_symbol_value if
+       !finalize_syms.
+       * symbols.h (resolve_symbol_value): Update prototype.
+       * config/obj-aout.c (obj_crawl_symbol_chain): Update call
+       to resolve_symbol_value.
+       * config/obj-bout.c (obj_crawl_symbol_chain): Likewise.
+       * config/obj-coff.c (do_relocs_for): Likewise.
+       (yank_symbols): Likewise.
+       (fixup_segment): Likewise.
+       * config/obj-vms.c (obj_crawl_symbol_chain): Likewise.
+       * config/tc-mips.c (md_convert_frag): Likewise.
+       * config/tc-ppc.c (ppc_frob_symbol): Likewise.
+       (ppc_fix_adjustable): Likewise.
+       * dwarf2dbg.c (dwarf2dbg_estimate_size_before_relax): Likewise.
+       (dwarf2dbg_convert_frag): Likewise.
+       * ehopt.c (eh_frame_estimate_size_before_relax): Likewise.
+       (eh_frame_convert_frag): Likewise.
+       * expr.c (make_expr_symbol): Likewise.
+       * write.c (adjust_reloc_syms): Likewise.
+       (write_object_file): Likewise.
+       (relax_segment): Likewise.
+       (fixup_segment): Likewise.
+       (finalize_syms): Init to zero, and update comment.
+       (write_object_file): Set finalize_syms to 1 rather than 2.
+       * doc/internals.texi (sy_value): Mention finalize_syms.
+       (S_GET_VALUE): Remove restriction on when S_GET_VALUE can be called.
+
+       * config/tc-m68k.c (relaxable_symbol): Only treat external symbols
+       as relaxable if embedded system, make weak syms non-relaxable.
+       Move definition..
+       (tc_m68k_fix_adjustable): ..so it can be used here.
+       (md_apply_fix_2): Sign extend without conditional.
+
+       * config/tc-v850.c: Update copyright.
+
+2001-05-16  Jeff Johnston  <jjohnstn@redhat.com>
+
+        * cgen.c (gas_cgen_tc_gen_reloc): Changed error message when
+        howto entry is not found.
+
+2001-05-15  Alexandre Oliva  <aoliva@redhat.com>
+
+       * config/tc-mn10300.c (mn10300_force_relocation): Don't
+       optimize differences between symbols in code sections to
+       constants.
+       (mn10300_fix_adjustable): Don't adjust to section+offset
+       relocations pointing at symbols in code sections.
+
+2001-05-16  Alan Modra  <amodra@one.net.au>
+
+       * config/tc-arc.c (md_assemble): Correct dwarf2_emit_insn param
+       for 8 byte insns.
+       * config/tc-i386.c (md_assemble): Call dwarf2_emit_insn before
+       opcodes are output rather than after.  Delete insn_size.
+       * config/tc-v850.c (md_assemble): Similarly, but delete
+       total_insn_size.
+
+2001-05-14  Richard Henderson  <rth@redhat.com>
+
+       * ehopt.c (eh_frame_convert_frag): Fix missed subtype adjustment
+       last change.
+
+2001-05-14  Richard Henderson  <rth@redhat.com>
+
+       * ehopt.c (get_cie_info): Rename from eh_frame_code_alignment;
+       also collect whether to expect an FDE augmentation.
+       (check_eh_frame): Rewrite as a state machine.  Track where in
+       an FDE we are located, skip any augmentation.
+       (eh_frame_estimate_size_before_relax): Get code alignment from
+       the fragment subtype.
+       (eh_frame_relax_frag, eh_frame_convert_frag): Likewise.
+       * read.c (emit_leb128_expr): Call check_eh_frame.
+
+2001-05-14  Alexandre Oliva  <aoliva@redhat.com>
+
+       * config/tc-mn10300.c (md_assemble): Anchor dwarf2 line info
+       before a relaxable insns.
+
+2001-05-13  Alexandre Oliva  <aoliva@redhat.com>
+
+       * config/tc-mn10300.c (tc_gen_reloc): Don't reject differences
+       between symbols if the base symbol is in the current section;
+       emit a PC-relative relocation instead.
+
+2001-05-12  Peter Targett  <peter.targett@arccores.com>
+
+       * config/tc-arc.c: Update copyright and tidy source comments.
+       (md_pseudo_table): Add directive .cpu back as an alias for
+       .option.  Add .file and .line for dwarf2 support.
+       (arc_mach_type): Make bfd_mach_arc_6 default.
+       (md_longopts): Add entry 'pre-v6' representing old command line
+       option when assembling for 'arc5' core versions.
+       (md_parse_option): Make OPTION_ARC same as OPTION_ARC6, for new
+       default behaviour.
+       (arc_code_symbol): Make symbol value for @h30 fixup expression
+       equal to O_constant.
+       (md_assemble): Call dwarf2_emit_insn.
+       Include "dwarf2dbg2.h".  Formatting fixes throughout file.
+       * config/tc-arc.h (DWARF2_LINE_MIN_INSN_LENGTH): Define.
+       * doc/c-arc.texi (ARC_CORE_DEFAULT): Update to new default.
+
+2001-05-11  Jakub Jelinek  <jakub@redhat.com>
+
+       * config/tc-ia64.c (special_linkonce_name): New.
+       (make_unw_section): Map .gnu.linkonce.t.FOO text section into
+       .gnu.linkonce.ia64unw{,i}.FOO.
+       (ia64_elf_section_type): Handle .gnu.linkonce.ia64unw{,i}.FOO.
+       (dot_endp): Add comment about it.
+
+2001-05-11  Nick Clifton  <nickc@cambridge.redhat.com>
+
+       * config/tc-arm.c (arm_handle_align): When truncating an aligned 
+       block, ensure that the low order bits of the alignment are
+       preserved.
+
+2001-05-10  Alan Modra  <amodra@one.net.au>
+
+       * config/obj-vms.c (obj_crawl_symbol_chain): Don't take address of
+       symbol_next.
+
+       * config/tc-fr30.c (md_estimate_size_before_relax): Return size of
+       current variable part of frag.
+       * config/tc-m32r.c (md_estimate_size_before_relax): Likewise.
+       * config/tc-openrisc.c (md_estimate_size_before_relax): Likewise.
+       * config/tc-m68hc11.c (RELAX_STATE): Define.
+       (RELAX_LENGTH): Define.
+       (md_estimate_size_before_relax): Handle non-relaxable cases
+       separately from relaxable cases for clarity, and return correct
+       size for multi-pass relaxation.
+       * config/tc-tahoe.c (RELAX_LENGTH): Correct.
+       (md_estimate_size_before_relax): As for tc-m68hc11.c.
+       (md_convert_frag): Remove "length_code".
+       * config/tc-vax.c (RELAX_STATE): Define.
+       (RELAX_LENGTH): Define.
+       (md_relax_table): Add missing entry.
+       (md_estimate_size_before_relax): As for tc-m68hc11.c.
+       (md_convert_frag): Remove "length_code".
+       * config/tc-ns32k.c (md_estimate_size_before_relax): Simplify and
+       don't bother setting fr_var.  Return correct size for multi-pass
+       relaxation.
+       * config/tc-v850.c (md_estimate_size_before_relax): Rewrite.
+       (md_convert_frag): Don't bother clearing fr_var.
+       (md_pseudo_table): Correct initialization.
+       * config/tc-h8500.c (md_convert_frag): Don't bother clearing fr_var.
+       (md_estimate_size_before_relax): No need to set fr_var.
+       * config/tc-mcore.c (md_convert_frag): Don't bother clearing fr_var.
+       (md_estimate_size_before_relax): No need to set fr_var.
+
+2001-05-09  Richard Henderson  <rth@redhat.com>
+
+       * config/tc-ia64.c (generate_unwind_image): Align the fragment
+       beginning a function's unwind info block.
+
+2001-05-09  Alexandre Oliva  <aoliva@redhat.com>
+
+       * config/tc-mn10300.c (md_apply_fix3): Accept PC-relative relocs.
+
+2001-05-08  Andreas Schwab  <schwab@suse.de>
+
+       * config/tc-m68k.c: Instead of replacing -1 by 64 in assignment to
+       fx_pcrel_adjust explicitly sign extend when reading it.
+
+2001-05-08  Alan Modra  <amodra@one.net.au>
+
+       * config/tc-m68k.c (md_estimate_size_before_relax): Set fr_var
+       from md_relax_table, and combine some switch cases.
+
+2001-05-06  Alexandre Oliva  <aoliva@redhat.com>
+
+       * config/tc-mn10300.c (md_assemble): Subtract operand->shift
+       from offset in non-pcrel operands too.
+
 2001-05-06  Nick Clifton  <nickc@cambridge.redhat.com>
 
        * config/tc-arm.h (MAX_MEM_FOR_RS_ALIGN_CODE): Define.