+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.
* 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
+ (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.
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