+2002-11-04 Danny Smith <dannysmith@users.sourceforge.net>
+
+ * config/obj-coff.c (obj-coff-section): Set SEC_DATA and
+ SEC_LOAD flags for sections marked as 's'.
+
+2002-11-01 Alan Modra <amodra@bigpond.net.au>
+
+ * write.c (TC_FORCE_RELOCATION_SUB_ABS): Default to zero.
+ (TC_FORCE_RELOCATION_SUB_LOCAL): Likewise when DIFF_EXPR_OK.
+ * doc/internals.texi (TC_FORCE_RELOCATION_SUB_ABS): Document changed
+ default.
+
+ * dep-in.sed: Fix typo.
+
+2002-10-30 Daniel Jacobowitz <drow@mvista.com>
+
+ * configure.in: Update ARM CPU patterns.
+ * configure: Regenerated.
+
+2002-10-29 Daniel Jacobowitz <drow@mvista.com>
+
+ * itbl-lex.l: Use #include <> for generated headers.
+ * itbl-ops.c: Likewise.
+
+2002-10-28 Daniel Jacobowitz <drow@mvista.com>
+
+ * doc/gasp.texi: Fix typo in deprecation note.
+
+2002-10-23 Nick Clifton <nickc@redhat.com>
+
+ * config/tc-arm.c (tc_gen_reloc): Allow an absolute reference to
+ _GLOBAL_TABLE_OFFSET_ to be converted into a GOT reloc.
+
+2002-10-23 Hans-Peter Nilsson <hp@bitrange.com>
+
+ * config/tc-mmix.h (mmix_frob_file_before_adjust): Don't declare.
+ (tc_frob_file_before_adjust): Don't define.
+ * config/tc-mmix.c (mmix_frob_local_reloc): Remove unused
+ function.
+ (mmix_frob_file_before_adjust): Remove ineffective function.
+
+2002-10-23 Hans-Peter Nilsson <hp@axis.com>
+
+ * config/tc-cris.c (SIMPLE_EXPR): New macro.
+ (cris_relax_frag): New function.
+ (md_estimate_size_before_relax) <case ENCODE_RELAX
+ (STATE_BASE_PLUS_DISP_PREFIX, STATE_UNDF)>: Pass on unresolved
+ expressions that will become absolute expressions to relaxation.
+ (md_convert_frag) <case ENCODE_RELAX (STATE_BASE_PLUS_DISP_PREFIX,
+ STATE_WORD)>: Expect only absolute expressions. Use the symbol
+ value, not distance to symbol.
+ <case ENCODE_RELAX (STATE_BASE_PLUS_DISP_PREFIX, STATE_BYTE)>:
+ Ditto. Correct placement of fixup.
+ (md_assemble): Use SIMPLE_EXPR when dissecting expressions.
+ (gen_bdap): Ditto.
+ * config/tc-cris.h (cris_relax_frag): Declare.
+ (md_relax_frag): Define.
+
+2002-10-22 Alan Modra <amodra@bigpond.net.au>
+
+ * config/obj-elf.c (special_sections): Use correct types for init
+ array sections.
+ (obj_elf_change_section): Don't mess with init array section type.
+
+2002-10-21 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/tc-mips.c (mips_need_elf_addend_fixup): Return true
+ for relocs against symbols in a merged section.
+
+2002-10-18 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/tc-mips.c (md_begin): Add $fcc registers to the symbol
+ table as register names.
+
+2002-10-18 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/tc-s390.c (md_parse_option): Set s390_arch_size to 32
+ for option -m31.
+
+2002-10-18 Svein E. Seldal <Svein.Seldal@solidas.com>
+
+ * expr.c (operand): Add support for n.nn flonums.
+
+2002-10-17 Johannes Stezenbach <js@convergence.de>
+
+ * itbl-parse.y (entry): Provide empty action.
+
+2002-10-16 Alan Modra <amodra@bigpond.net.au>
+
+ * configure.in (BFDVER_H): Set and subst.
+ * dep-in.sed: Replace bfdver.h with $(BFDVER_H).
+ * Makefile.am: Run "make dep-am".
+ (BFDVER_H): Define.
+ * configure: Regenerate.
+ * Makefile.in: Regenerate.
+ * doc/Makefile.in: Regenerate.
+
+2002-10-15 Alan Modra <amodra@bigpond.net.au>
+
+ * config/tc-i386.h (EXTERN_FORCE_RELOC): Define.
+ (MD_APPLY_SYM_VALUE): Define for PE too.
+
+2002-10-14 Alan Modra <amodra@bigpond.net.au>
+
+ * Makefile.am: Run "make dep-am".
+ (CPU_OBJ_VALID): sh64 coff is invalid.
+ * as.c: #include "bfdver.h".
+ * Makefile.in: Regenerate.
+ * config.in: Regenerate.
+
+2002-10-14 Momchil Velikov <velco@fadata.bg>
+
+ * config/tc-v850.c (CHECK_): Remove token pasting operator.
+
+2002-10-14 Richard Sandiford <rsandifo@redhat.com>
+
+ * configure.in (mips64vr-elf, mips64vrel-elf): New config.
+ * configure: Regenerate.
+
+2002-10-13 Eric Christopher <echristo@redhat.com>
+ Alexandre Oliva <aoliva@redhat.com>
+
+ * config/tc-mips.c (s_gpdword): New function.
+ (mips_pseudo_table): Add .gpdword.
+ (mips_need_elf_addend_fixup): never for NEWABI.
+ (md_apply_fix3): Don't mark BFD_RELOC64 after GPREL16 or
+ GPREL32 as done.
+ (s_cpadd): Generate .cpadd on NEWABI.
+
+2002-10-12 Elias Athanasopoulos <eathan@otenet.gr>
+
+ * config/tc-ppc.c (ppc_cleanup): Make 'i' unsigned int.
+
+2002-10-12 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/tc-mips.h (mips_relax_frag): Take segment as argument.
+ (md_relax_frag): Adjust macro.
+ * config/tc-mips.c (mips_relax_branch): New variable.
+ (RELAX_BRANCH_ENCODE, RELAX_BRANCH_P, RELAX_BRANCH_LIKELY,
+ RELAX_BRANCH_LINK, RELAX_BRANCH_TOOBAR): New.
+ (RELAX_MIPS16_P): Adjust.
+ (append_insn): Emit branch to non-constant in a frag_var if
+ branch-relaxation is desirable and possible.
+ (OPTION_RELAX_BRANCH, OPTION_NO_RELAX_BRANCH): New options.
+ (OPTION_ELF_BASE): Adjust.
+ (md_parse_option): Handle new options.
+ (md_apply_fix3): Update comment on EMBEDDED_PIC conditional
+ branch relaxation.
+ (relaxed_branch_length): New function.
+ (md_estimate_size_before_relax): Handle branch frags.
+ (mips_relax_frag): Likewise.
+ (md_convert_frag): Handle branch frags. Warn if branch is
+ relaxed.
+
+2002-10-11 Kaz Kojima <kkojima@rr.iij4u.or.jp>
+
+ * config/tc-sh.c (sh_force_relocation): Make sure TLS relocs get
+ emitted.
+ (md_apply_fix3): Add TLS relocs.
+ (sh_parse_name): Support @TLSGD, @TLSLDM, @GOTTPOFF, @TPOFF and
+ @DTPOFF.
+
+2002-10-11 Michel Six <msix@ccr.jussieu.fr>
+ Alan Modra <amodra@bigpond.net.au>
+
+ * config/tc-i386.c (output_jump): Set fx_signed for loop/jcxz.
+ (md_estimate_size_before_relax): Likewise for 8 bit branches.
+
+Thu Oct 10 14:31:30 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * config/tc-sh.c (assemble_ppi): Initialize reg_x / reg_y / reg_n
+ inside loop.
+
+2002-10-09 Richard Shann <richard.shann@superh.com>
+ Stephen Clarke <stephen.clarke@superh.com>
+
+ * config/tc-sh64.c (sh64_target_format): Add support for sh64
+ Linux environment.
+
+2002-10-03 Kaz Kojima <kkojima@rr.iij4u.or.jp>
+
+ * contig/tc-sh.c (sh_local_pcrel): New.
+ (sh_force_relocation): Use sh_local_pcrel.
+ (md_pcrel_from_section): Check the relocation type whether it
+ should be resolved locally. Use S_FORCE_RELOC.
+
+2002-10-01 Alan Modra <amodra@bigpond.net.au>
+
+ * config/tc-mips.h (TC_FORCE_RELOCATION_SUB_SAME): Define.
+ (TC_FORCE_RELOCATION): Tidy arg.
+
+2002-09-30 Gavin Romig-Koch <gavin@redhat.com>
+ Ken Raeburn <raeburn@cygnus.com>
+ Aldy Hernandez <aldyh@redhat.com>
+ DJ Delorie <dj@redhat.com>
+ Michael Meissner <meissner@redhat.com>
+ Eric Christopher <echristo@redhat.com>
+ Richard Sandiford <rsandifo@redhat.com>
+
+ * doc/c-mips.texi: Add entries for -march=vr4120,vr4130,vr4181,
+ vr5400 and vr5500. Add entry for -mfix-vr4122-bugs.
+ * config/tc-mips.c (CPU_HAS_DROR, CPU_HAS_ROR): New macros.
+ (hilo_interlocks): True for CPU_VR5500.
+ (gpr_interlocks, cop_interlocks): True for CPU_VR5400 and CPU_VR5500.
+ (mips_fix_vr4122_bugs): New.
+ (append_insn): Work around 4122 errors if mips_fix_vr4122_bugs.
+ (mips_emit_delays): Likewise.
+ (macro2) [M_DROLI]: Use dror or dror32 if CPU_HAS_DROR.
+ [M_ROLI]: Likewise ror if CPU_HAS_ROR.
+ (validate_mips_insn, mips_ip): Handle '[', ']', 'e' and '%'.
+ (OPTION_FIX_VR4122, OPTION_NO_FIX_VR4122): New options.
+ (md_longopts): Add -mfix-vr4122-bugs and -no-mfix-vr4122-bugs.
+ (OPTION_ELF_BASE): Bump.
+ (md_parse_option): Handle the new options.
+ (mips_cpu_info_table): Add entries for vr4120, vr4130, vr4181,
+ vr5400 and vr5500.
+
+2002-09-29 H.J. Lu <hjl@gnu.org>
+
+ * config/tc-mips.c (md_apply_fix3): Subtract the symbol value
+ twice if howto->pcrel_offset is true.
+
+2002-09-28 Matt Thomas <matt@3am-software.com>
+ Jason Thorpe <thorpej@wasabisystems.com>
+
+ * config/tc-vax.c (md_estimate_size_before_relax): Only try to
+ convert undefined references to GOT32/PLT32 if PIC code is
+ requested. Fix comment.
+
+2002-09-27 Kaz Kojima <kkojima@rr.iij4u.or.jp>
+
+ * config/tc-sh.c (sh_force_relocation): Return 0 for
+ some PC relative relocations when not relaxing.
+
+2002-09-26 Jakub Jelinek <jakub@redhat.com>
+
+ * config/tc-i386.c (tc_i386_fix_adjustable): Add x86-64 TLS relocs.
+ Define them if not BFD_ASSEMBLER.
+ (lex_got): Handle @tlsgd, @dtpoff and @tpoff in 64-bit mode, add
+ @tlsld.
+ (md_apply_fix3): No addend for BFD_RELOC_X86_64_TLSGD,
+ BFD_RELOC_X86_64_TLSLD and BFD_RELOC_X86_64_GOTTPOFF.
+ (tc_gen_reloc): Handle x86-64 TLS relocs.
+
+2002-09-27 Alan Modra <amodra@bigpond.net.au>
+
+ * config/tc-avr.c (md_apply_fix3): Reinstate code handling pcrel
+ fixups to current or absolute section.
+
+2002-09-26 Jim Wilson <wilson@redhat.com>
+
+ * config/tc-v850.c (v850_offset): Use frag_var instead of frag_now_fix
+ and frag_more.
+
+2002-09-26 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
+
+ * config/tc-mips.c (CPU_HAS_MIPS16): Add mips-lsi-elf as MIPS16
+ capable configuration.
+ (macro_build): Check for MIPS16 capability, not for actual MIPS16 code
+ generation.
+ (mips_ip): Likewise.
+
+2002-09-26 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
+
+ * config/tc-mips.c (append_insn): Fix jump overflow check.
+
+2002-09-24 Alan Modra <amodra@bigpond.net.au>
+
+ * config/tc-i386.c (process_operands): Warn about "lea" segment
+ overrides.
+
+2002-09-22 Mark Elbrecht <snowball3@softhome.net>
+
+ * write.c: Delete set_segment_vma and prototype. Update all callers.
+
+2002-09-21 Alan Modra <amodra@bigpond.net.au>
+
+ * config/tc-i386.c (md_apply_fix3): Replace S_IS_EXTERNAL,
+ S_IS_WEAK etc. with S_FORCE_RELOC call. Correct comment.
+ Rename "fseg" to "sym_seg".
+ * Makefile.am: Run "make dep-am".
+ * Makefile.in: Regenerate.
+ * doc/Makefile.in: Regenerate.
+
+2002-09-20 Nick Clifton <nickc@redhat.com>
+
+ * symbols.c (colon): Do not allow symbols to be created in the
+ absolute section if WORKING_DOT_WORD is not defined and
+ new_broken_words would require a new frag to be created.
+
+2002-09-20 Alan Modra <amodra@bigpond.net.au>
+
+ * expr.c (expr): Simplify foo-foo here.
+ (clean_up_expression): Remove O_subtract code.
+
+ * write.h (struct fix): Add fx_dot_value.
+ (dot_value): Declare.
+ * write.c (dot_value): New var.
+ (fix_new_internal): Save dot_value as fx_dot_value.
+ (fixup_segment): Adjust fx_offset using fx_dot_value.
+ * expr.c (expr): Update dot_value.
+
+2002-09-19 Jakub Jelinek <jakub@redhat.com>
+
+ * config/tc-i386.c (tc_i386_fix_adjustable): Handle
+ BFD_RELOC_386_TLS_IE and BFD_RELOC_386_TLS_GOTIE.
+ (BFD_RELOC_386_TLS_IE, BFD_RELOC_386_TLS_GOTIE): Define to 0
+ if not defined.
+ (lex_got): Handle @GOTNTPOFF and @INDNTPOFF.
+ (md_apply_fix3, tc_gen_reloc): Handle BFD_RELOC_386_TLS_IE and
+ BFD_RELOC_386_TLS_GOTIE.
+
+2002-09-19 Richard Henderson <rth@redhat.com>
+
+ * config/tc-alpha.c (md_pcrel_from): Only adjust special for
+ branch type relocs.
+ (alpha_force_relocation): Don't special-case branch type relocs.
+
+2002-09-19 Nick Clifton <nickc@redhat.com>
+
+ * config/tc-m68k.c (select_control_regs): Handle situation where
+ architecture has not yet been selected.
+
+2002-09-18 Chris Demetriou <cgd@broadcom.com>
+
+ * config/tc-mips.c (IS_SEXT_32BIT_NUM): Move closer to top of file.
+ (IS_SEXT_16BIT_NUM): New macro.
+ (macro_build_ldst_constoffset): New function, to build a set of
+ instructions to do a load or store from a constant offset relative
+ to a given register.
+ (macro, s_cprestore): Use macro_build_ldst_constoffset to implement
+ .cprestore pseudo-op.
+
+2002-09-18 Chris Demetriou <cgd@broadcom.com>
+
+ * config/tc-mips.c (md_apply_fix3): Just return for BFD_RELOC_8.
+
+2002-09-18 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
+
+ * config/tc-mips.c (s_change_section): Fix parsing. Code cleanup.
+
+2002-09-17 Stan Cox <scox@redhat.com>
+
+ * tc-mips.c (load_address): Use BFD_RELOC_MIPS_GOT_DISP for newabi.
+ (macro): Likewise for la. Likewise for ld.
+ (mips_after_parse_args): Make -xgot optional, not the default.
+ (md_apply_fix3): Allow composite relocation to set up gp.
+ (tc_gen_reloc): Allow relaxing for newabi.
+ Relax R_MIPS_CALL16 to R_MIPS_GOT_PAGE/R_MIPS_GOT_OFST if local.
+ Relax R_MIPS_GOT16/R_MIPS_LO16 to R_MIPS_GOT_DISP if local.
+
+2002-09-17 Nick Clifton <nickc@redhat.com>
+
+ * config/tc-arm.c (md_apply_fix3): Note that an implemented
+ BFD_RELOC_ARM_IMMEDIATE has been done.
+ (tc_gen_reloc): Do not issue reloc number of unimplemented
+ BFD_RELOC_ARM_IMMEDIATE and BFD_RELOC_ARM_OFFSET_IMM relocs -
+ their name is already in the error message - plus remove them
+ from the default case.
+
+ * config/tc-arm.c (do_ldmstm): Warn about unpredictable
+ behavior of instructions.
+
+2002-09-17 Svein E. Seldal <Svein.Seldal@solidas.com>
+
+ * config/tc-tic4x.c: Add function declarations and ATTRIBUTE_UNUSED.
+ Convert functions to K&R format.
+
2002-09-17 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
* config/tc-mips.c (pdr_seg): Define only for ELF.
2002-09-05 Jeff Law <law@redhat.com>
- * config/tc-hppa.c (md_apply_fix3): Don't set fx_done for
- marker relocations such as ENTRY/EXIT.
- * config/tc-hppa.h (MD_APPLY_SYM_VALUE): Definition applies
- to both OBJ_ELF and OBJ_SOM.
+ * config/tc-hppa.c (md_apply_fix3): Don't set fx_done for
+ marker relocations such as ENTRY/EXIT.
+ * config/tc-hppa.h (MD_APPLY_SYM_VALUE): Definition applies
+ to both OBJ_ELF and OBJ_SOM.
2002-09-05 Alan Modra <amodra@bigpond.net.au>
(shmedia_md_convert_frag): Handle non-PC-relative UNDEF_MOVI
and MOVI_16.
(shmedia_md_estimate_size_before_relax): Remove redundant
- blocks. Set fragP->fr_var even if relaxation type unchanged.
+ blocks. Set fragP->fr_var even if relaxation type unchanged.
Retain UNDEF_MOVI until expression decays to number.
2002-01-24 Alexandre Oliva <aoliva@redhat.com>
* config/tc-sh64.c (shmedia_init_reloc): Handle new SHmedia PIC
(shmedia_frob_file_before_adjust): Ditto.
(shmedia_md_apply_fix) <case BFD_RELOC_SH_IMM_MEDLOW16>: Cast mask
to valueT to remove signedness.
- (shmedia_md_convert_frag): Add parameter final. Rename parameter
+ (shmedia_md_convert_frag): Add parameter final. Rename parameter
headers to output_bfd. Do not evaluate symbols if final is false;
do emit fixups.
(shmedia_md_estimate_size_before_relax) <case C (MOVI_IMM_32,
UNDEF_MOVI) et al>: If symbol cannot be modified to be PC-relative
to the current frag, call shmedia_md_convert_frag to emit fixups
- and make frag_wane neutralize the frag. Update comments.
+ and make frag_wane neutralize the frag. Update comments.
* config/tc-sh.c (md_convert_frag): Change caller of
shmedia_md_convert_frag.
2001-01-06 Hans-Peter Nilsson <hpn@cygnus.com>
(shmedia_check_limits): Fix range check being off-by-one for PTA.
* config/tc-sh.c: Ditto. Add proper comments to #ifdef/#ifndef
wrappers.
- (SH64PCREL16_F): Increment for proper max-PTA handling. Update
+ (SH64PCREL16_F): Increment for proper max-PTA handling. Update
comment.
(SH64PCREL16_M, MOVI_16_M): Correct range thinko.
(SH64PCREL48_M, MOVI_48_M): Similar; don't count in length of
(sh64_expand, sh64_pt32): New variables.
(shmedia_init_reloc): Handle BFD_RELOC_SH_PT_16.
(shmedia_md_apply_fix): Hold original fixP->fx_r_type in
- orig_fx_r_type. Change SHMEDIA_BFD_RELOC_PT into
+ orig_fx_r_type. Change SHMEDIA_BFD_RELOC_PT into
BFD_RELOC_SH_PT_16. Handle BFD_RELOC_SH_PT_16 as pc-relative.
<resolved previously-pc-relative relocs>: Handle
SHMEDIA_BFD_RELOC_PT and BFD_RELOC_SH_PT_16.
(shmedia_md_pcrel_from_section): ...here.
(shmedia_md_apply_fix): Handle fixups for 16-bit operands that has
turned completely resolved. Adjust relocation type for 16-bit
- immediate operands that has turned PC-relative. Adjust back for
+ immediate operands that has turned PC-relative. Adjust back for
MD_PCREL_FROM_SECTION being applied twice.
(shmedia_md_convert_frag): Always emit reloc for expression with
global or weak symbol. Handle relaxation result for PC-relative
(shmedia_build_Mytes): CSE &operands->operands[j] into variable
opjp.
<case A_IMMS16>: Fix typo for initial minor relaxation type of
- MOVI expansion. If X_op_symbol of the immediate expression is
+ MOVI expansion. If X_op_symbol of the immediate expression is
set, make an expression symbol for the argument to frag_var.
* config/tc-sh.c (MOVI_IMM_32_PCREL, MOVI_IMM_64_PCREL): New
relaxations.
(sh64_adjust_symtab): For remaining datalabel symbols, set to
undefined and set STT_DATALABEL.
(sh64_frob_label): Initialize TC symbol field.
- (sh64_consume_datalabel): Actually implement semantics. New
+ (sh64_consume_datalabel): Actually implement semantics. New
parameter operandf, call it instead of expression.
(sh64_exclude_symbol): New.
* config/tc-sh64.h (md_parse_name): Pass on the function operand