adbcfa7f132ae199a73e4c4ccbaf80ed3da6c484
[binutils-gdb.git] / gas / ChangeLog
1 2002-10-21 Richard Sandiford <rsandifo@redhat.com>
2
3 * config/tc-mips.c (mips_need_elf_addend_fixup): Return true
4 for relocs against symbols in a merged section.
5
6 2002-10-18 Alexandre Oliva <aoliva@redhat.com>
7
8 * config/tc-mips.c (md_begin): Add $fcc registers to the symbol
9 table as register names.
10
11 2002-10-18 Ulrich Weigand <uweigand@de.ibm.com>
12
13 * config/tc-s390.c (md_parse_option): Set s390_arch_size to 32
14 for option -m31.
15
16 2002-10-18 Svein E. Seldal <Svein.Seldal@solidas.com>
17
18 * expr.c (operand): Add support for n.nn flonums.
19
20 2002-10-17 Johannes Stezenbach <js@convergence.de>
21
22 * itbl-parse.y (entry): Provide empty action.
23
24 2002-10-16 Alan Modra <amodra@bigpond.net.au>
25
26 * configure.in (BFDVER_H): Set and subst.
27 * dep-in.sed: Replace bfdver.h with $(BFDVER_H).
28 * Makefile.am: Run "make dep-am".
29 (BFDVER_H): Define.
30 * configure: Regenerate.
31 * Makefile.in: Regenerate.
32 * doc/Makefile.in: Regenerate.
33
34 2002-10-15 Alan Modra <amodra@bigpond.net.au>
35
36 * config/tc-i386.h (EXTERN_FORCE_RELOC): Define.
37 (MD_APPLY_SYM_VALUE): Define for PE too.
38
39 2002-10-14 Alan Modra <amodra@bigpond.net.au>
40
41 * Makefile.am: Run "make dep-am".
42 (CPU_OBJ_VALID): sh64 coff is invalid.
43 * as.c: #include "bfdver.h".
44 * Makefile.in: Regenerate.
45 * config.in: Regenerate.
46
47 2002-10-14 Momchil Velikov <velco@fadata.bg>
48
49 * config/tc-v850.c (CHECK_): Remove token pasting operator.
50
51 2002-10-14 Richard Sandiford <rsandifo@redhat.com>
52
53 * configure.in (mips64vr-elf, mips64vrel-elf): New config.
54 * configure: Regenerate.
55
56 2002-10-13 Eric Christopher <echristo@redhat.com>
57 Alexandre Oliva <aoliva@redhat.com>
58
59 * config/tc-mips.c (s_gpdword): New function.
60 (mips_pseudo_table): Add .gpdword.
61 (mips_need_elf_addend_fixup): never for NEWABI.
62 (md_apply_fix3): Don't mark BFD_RELOC64 after GPREL16 or
63 GPREL32 as done.
64 (s_cpadd): Generate .cpadd on NEWABI.
65
66 2002-10-12 Elias Athanasopoulos <eathan@otenet.gr>
67
68 * config/tc-ppc.c (ppc_cleanup): Make 'i' unsigned int.
69
70 2002-10-12 Alexandre Oliva <aoliva@redhat.com>
71
72 * config/tc-mips.h (mips_relax_frag): Take segment as argument.
73 (md_relax_frag): Adjust macro.
74 * config/tc-mips.c (mips_relax_branch): New variable.
75 (RELAX_BRANCH_ENCODE, RELAX_BRANCH_P, RELAX_BRANCH_LIKELY,
76 RELAX_BRANCH_LINK, RELAX_BRANCH_TOOBAR): New.
77 (RELAX_MIPS16_P): Adjust.
78 (append_insn): Emit branch to non-constant in a frag_var if
79 branch-relaxation is desirable and possible.
80 (OPTION_RELAX_BRANCH, OPTION_NO_RELAX_BRANCH): New options.
81 (OPTION_ELF_BASE): Adjust.
82 (md_parse_option): Handle new options.
83 (md_apply_fix3): Update comment on EMBEDDED_PIC conditional
84 branch relaxation.
85 (relaxed_branch_length): New function.
86 (md_estimate_size_before_relax): Handle branch frags.
87 (mips_relax_frag): Likewise.
88 (md_convert_frag): Handle branch frags. Warn if branch is
89 relaxed.
90
91 2002-10-11 Kaz Kojima <kkojima@rr.iij4u.or.jp>
92
93 * config/tc-sh.c (sh_force_relocation): Make sure TLS relocs get
94 emitted.
95 (md_apply_fix3): Add TLS relocs.
96 (sh_parse_name): Support @TLSGD, @TLSLDM, @GOTTPOFF, @TPOFF and
97 @DTPOFF.
98
99 2002-10-11 Michel Six <msix@ccr.jussieu.fr>
100 Alan Modra <amodra@bigpond.net.au>
101
102 * config/tc-i386.c (output_jump): Set fx_signed for loop/jcxz.
103 (md_estimate_size_before_relax): Likewise for 8 bit branches.
104
105 Thu Oct 10 14:31:30 2002 J"orn Rennecke <joern.rennecke@superh.com>
106
107 * config/tc-sh.c (assemble_ppi): Initialize reg_x / reg_y / reg_n
108 inside loop.
109
110 2002-10-09 Richard Shann <richard.shann@superh.com>
111 Stephen Clarke <stephen.clarke@superh.com>
112
113 * config/tc-sh64.c (sh64_target_format): Add support for sh64
114 Linux environment.
115
116 2002-10-03 Kaz Kojima <kkojima@rr.iij4u.or.jp>
117
118 * contig/tc-sh.c (sh_local_pcrel): New.
119 (sh_force_relocation): Use sh_local_pcrel.
120 (md_pcrel_from_section): Check the relocation type whether it
121 should be resolved locally. Use S_FORCE_RELOC.
122
123 2002-10-01 Alan Modra <amodra@bigpond.net.au>
124
125 * config/tc-mips.h (TC_FORCE_RELOCATION_SUB_SAME): Define.
126 (TC_FORCE_RELOCATION): Tidy arg.
127
128 2002-09-30 Gavin Romig-Koch <gavin@redhat.com>
129 Ken Raeburn <raeburn@cygnus.com>
130 Aldy Hernandez <aldyh@redhat.com>
131 DJ Delorie <dj@redhat.com>
132 Michael Meissner <meissner@redhat.com>
133 Eric Christopher <echristo@redhat.com>
134 Richard Sandiford <rsandifo@redhat.com>
135
136 * doc/c-mips.texi: Add entries for -march=vr4120,vr4130,vr4181,
137 vr5400 and vr5500. Add entry for -mfix-vr4122-bugs.
138 * config/tc-mips.c (CPU_HAS_DROR, CPU_HAS_ROR): New macros.
139 (hilo_interlocks): True for CPU_VR5500.
140 (gpr_interlocks, cop_interlocks): True for CPU_VR5400 and CPU_VR5500.
141 (mips_fix_vr4122_bugs): New.
142 (append_insn): Work around 4122 errors if mips_fix_vr4122_bugs.
143 (mips_emit_delays): Likewise.
144 (macro2) [M_DROLI]: Use dror or dror32 if CPU_HAS_DROR.
145 [M_ROLI]: Likewise ror if CPU_HAS_ROR.
146 (validate_mips_insn, mips_ip): Handle '[', ']', 'e' and '%'.
147 (OPTION_FIX_VR4122, OPTION_NO_FIX_VR4122): New options.
148 (md_longopts): Add -mfix-vr4122-bugs and -no-mfix-vr4122-bugs.
149 (OPTION_ELF_BASE): Bump.
150 (md_parse_option): Handle the new options.
151 (mips_cpu_info_table): Add entries for vr4120, vr4130, vr4181,
152 vr5400 and vr5500.
153
154 2002-09-29 H.J. Lu <hjl@gnu.org>
155
156 * config/tc-mips.c (md_apply_fix3): Subtract the symbol value
157 twice if howto->pcrel_offset is true.
158
159 2002-09-28 Matt Thomas <matt@3am-software.com>
160 Jason Thorpe <thorpej@wasabisystems.com>
161
162 * config/tc-vax.c (md_estimate_size_before_relax): Only try to
163 convert undefined references to GOT32/PLT32 if PIC code is
164 requested. Fix comment.
165
166 2002-09-27 Kaz Kojima <kkojima@rr.iij4u.or.jp>
167
168 * config/tc-sh.c (sh_force_relocation): Return 0 for
169 some PC relative relocations when not relaxing.
170
171 2002-09-26 Jakub Jelinek <jakub@redhat.com>
172
173 * config/tc-i386.c (tc_i386_fix_adjustable): Add x86-64 TLS relocs.
174 Define them if not BFD_ASSEMBLER.
175 (lex_got): Handle @tlsgd, @dtpoff and @tpoff in 64-bit mode, add
176 @tlsld.
177 (md_apply_fix3): No addend for BFD_RELOC_X86_64_TLSGD,
178 BFD_RELOC_X86_64_TLSLD and BFD_RELOC_X86_64_GOTTPOFF.
179 (tc_gen_reloc): Handle x86-64 TLS relocs.
180
181 2002-09-27 Alan Modra <amodra@bigpond.net.au>
182
183 * config/tc-avr.c (md_apply_fix3): Reinstate code handling pcrel
184 fixups to current or absolute section.
185
186 2002-09-26 Jim Wilson <wilson@redhat.com>
187
188 * config/tc-v850.c (v850_offset): Use frag_var instead of frag_now_fix
189 and frag_more.
190
191 2002-09-26 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
192
193 * config/tc-mips.c (CPU_HAS_MIPS16): Add mips-lsi-elf as MIPS16
194 capable configuration.
195 (macro_build): Check for MIPS16 capability, not for actual MIPS16 code
196 generation.
197 (mips_ip): Likewise.
198
199 2002-09-26 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
200
201 * config/tc-mips.c (append_insn): Fix jump overflow check.
202
203 2002-09-24 Alan Modra <amodra@bigpond.net.au>
204
205 * config/tc-i386.c (process_operands): Warn about "lea" segment
206 overrides.
207
208 2002-09-22 Mark Elbrecht <snowball3@softhome.net>
209
210 * write.c: Delete set_segment_vma and prototype. Update all callers.
211
212 2002-09-21 Alan Modra <amodra@bigpond.net.au>
213
214 * config/tc-i386.c (md_apply_fix3): Replace S_IS_EXTERNAL,
215 S_IS_WEAK etc. with S_FORCE_RELOC call. Correct comment.
216 Rename "fseg" to "sym_seg".
217 * Makefile.am: Run "make dep-am".
218 * Makefile.in: Regenerate.
219 * doc/Makefile.in: Regenerate.
220
221 2002-09-20 Nick Clifton <nickc@redhat.com>
222
223 * symbols.c (colon): Do not allow symbols to be created in the
224 absolute section if WORKING_DOT_WORD is not defined and
225 new_broken_words would require a new frag to be created.
226
227 2002-09-20 Alan Modra <amodra@bigpond.net.au>
228
229 * expr.c (expr): Simplify foo-foo here.
230 (clean_up_expression): Remove O_subtract code.
231
232 * write.h (struct fix): Add fx_dot_value.
233 (dot_value): Declare.
234 * write.c (dot_value): New var.
235 (fix_new_internal): Save dot_value as fx_dot_value.
236 (fixup_segment): Adjust fx_offset using fx_dot_value.
237 * expr.c (expr): Update dot_value.
238
239 2002-09-19 Jakub Jelinek <jakub@redhat.com>
240
241 * config/tc-i386.c (tc_i386_fix_adjustable): Handle
242 BFD_RELOC_386_TLS_IE and BFD_RELOC_386_TLS_GOTIE.
243 (BFD_RELOC_386_TLS_IE, BFD_RELOC_386_TLS_GOTIE): Define to 0
244 if not defined.
245 (lex_got): Handle @GOTNTPOFF and @INDNTPOFF.
246 (md_apply_fix3, tc_gen_reloc): Handle BFD_RELOC_386_TLS_IE and
247 BFD_RELOC_386_TLS_GOTIE.
248
249 2002-09-19 Richard Henderson <rth@redhat.com>
250
251 * config/tc-alpha.c (md_pcrel_from): Only adjust special for
252 branch type relocs.
253 (alpha_force_relocation): Don't special-case branch type relocs.
254
255 2002-09-19 Nick Clifton <nickc@redhat.com>
256
257 * config/tc-m68k.c (select_control_regs): Handle situation where
258 architecture has not yet been selected.
259
260 2002-09-18 Chris Demetriou <cgd@broadcom.com>
261
262 * config/tc-mips.c (IS_SEXT_32BIT_NUM): Move closer to top of file.
263 (IS_SEXT_16BIT_NUM): New macro.
264 (macro_build_ldst_constoffset): New function, to build a set of
265 instructions to do a load or store from a constant offset relative
266 to a given register.
267 (macro, s_cprestore): Use macro_build_ldst_constoffset to implement
268 .cprestore pseudo-op.
269
270 2002-09-18 Chris Demetriou <cgd@broadcom.com>
271
272 * config/tc-mips.c (md_apply_fix3): Just return for BFD_RELOC_8.
273
274 2002-09-18 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
275
276 * config/tc-mips.c (s_change_section): Fix parsing. Code cleanup.
277
278 2002-09-17 Stan Cox <scox@redhat.com>
279
280 * tc-mips.c (load_address): Use BFD_RELOC_MIPS_GOT_DISP for newabi.
281 (macro): Likewise for la. Likewise for ld.
282 (mips_after_parse_args): Make -xgot optional, not the default.
283 (md_apply_fix3): Allow composite relocation to set up gp.
284 (tc_gen_reloc): Allow relaxing for newabi.
285 Relax R_MIPS_CALL16 to R_MIPS_GOT_PAGE/R_MIPS_GOT_OFST if local.
286 Relax R_MIPS_GOT16/R_MIPS_LO16 to R_MIPS_GOT_DISP if local.
287
288 2002-09-17 Nick Clifton <nickc@redhat.com>
289
290 * config/tc-arm.c (md_apply_fix3): Note that an implemented
291 BFD_RELOC_ARM_IMMEDIATE has been done.
292 (tc_gen_reloc): Do not issue reloc number of unimplemented
293 BFD_RELOC_ARM_IMMEDIATE and BFD_RELOC_ARM_OFFSET_IMM relocs -
294 their name is already in the error message - plus remove them
295 from the default case.
296
297 * config/tc-arm.c (do_ldmstm): Warn about unpredictable
298 behavior of instructions.
299
300 2002-09-17 Svein E. Seldal <Svein.Seldal@solidas.com>
301
302 * config/tc-tic4x.c: Add function declarations and ATTRIBUTE_UNUSED.
303 Convert functions to K&R format.
304
305 2002-09-17 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
306
307 * config/tc-mips.c (pdr_seg): Define only for ELF.
308 (s_change_section): Remove unused variable. Don't use for nonELF.
309
310 2002-09-17 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
311
312 * config/obj-elf.c (obj_elf_change_section): Move prototype to
313 obj-elf.h
314 * config/obj-elf.h (obj_elf_change_section): Likewise.
315
316 2002-09-16 Elias Athanasopoulos <eathan@otenet.gr>
317
318 * dwarf2dbg.c (out_debug_abbrev): Add support for the DW_AT_name field.
319 (out_debug_info): Likewise.
320
321 2002-09-16 Bruno Haible <bruno@clisp.org>
322
323 * config/tc-i386.h (ELF_TARGET_FORMAT): New macro.
324 (TARGET_FORMAT): Use ELF_TARGET_FORMAT instead of "elf32-i386".
325 * config/tc-i386.c (i386_target_format): Likewise.
326 * config/tc-alpha.h (ELF_TARGET_FORMAT): New macro.
327 (TARGET_FORMAT): Use ELF_TARGET_FORMAT instead of "elf64-alpha".
328
329 2002-09-13 Nick Clifton <nickc@redhat.com>
330
331 * config/tc-ppc.c (md_assemble): Do not count FAKE operands
332 when deciding if any operands have been skipped.
333
334 2002-09-11 Nick Clifton <nickc@redhat.com>
335
336 * NEWS: New TI port supports both C4x and C3x series of DSPs.
337
338 * po/tr.po: Updated Turkish translation.
339
340 2002-09-11 Jakub Jelinek <jakub@redhat.com>
341
342 * config/tc-i386.c (md_apply_fix3): Allow addend for
343 BFD_RELOC_386_TLS_LDO_32, BFD_RELOC_386_TLS_LE and
344 BFD_RELOC_386_TLS_LE_32.
345
346 2002-09-05 Jeff Law <law@redhat.com>
347
348 * config/tc-hppa.c (md_apply_fix3): Don't set fx_done for
349 marker relocations such as ENTRY/EXIT.
350 * config/tc-hppa.h (MD_APPLY_SYM_VALUE): Definition applies
351 to both OBJ_ELF and OBJ_SOM.
352
353 2002-09-05 Alan Modra <amodra@bigpond.net.au>
354
355 * doc/internals.texi (md_apply_fix3): Expand.
356 (TC_VALIDATE_FIX, TC_FORCE_RELOCATION, TC_FORCE_RELOCATION_ABS,
357 TC_FORCE_RELOCATION_LOCAL, TC_FORCE_RELOCATION_SUB_SAME,
358 TC_FORCE_RELOCATION_SUB_ABS, TC_FORCE_RELOCATION_SUB_LOCAL,
359 TC_VALIDATE_FIX_SUB, MD_APPLY_SYM_VALUE, S_FORCE_RELOC,
360 EXTERN_FORCE_RELOC): Document.
361 (TC_HANDLES_FX_DONE, obj_fix_adjustable): Remove.
362 * as.h: Don't include struc-symbol.h for arc.
363 (IS_ELF): Define.
364 * cgen.c (gas_cgen_md_apply_fix3): Remove *valP fudges and code to
365 subtract absolute symbol.
366 * obj.h (struct format_ops): Add frob_file_before_fix.
367 * subsegs.c (section_symbol): Set BSF_SECTION_SYM flag.
368 * symbols.c (S_FORCE_RELOC): New function.
369 * symbols.h (S_FORCE_RELOC): Declare.
370 * write.c (TC_FORCE_RELOCATION): Change default.
371 (TC_FORCE_RELOCATION_ABS): Define.
372 (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
373 (TC_FORCE_RELOCATION_LOCAL): Define this instead.
374 (TC_FORCE_RELOCATION_SECTION): Don't define.
375 (TC_FORCE_RELOCATION_SUB_SAME): Define this instead.
376 (TC_FORCE_RELOCATION_SUB_ABS): Define.
377 (TC_FORCE_RELOCATION_SUB_LOCAL): Define.
378 (TC_VALIDATE_FIX_SUB): Define.
379 (TC_FIX_ADJUSTABLE): Don't define.
380 (MD_APPLY_SYM_VALUE): Define this instead.
381 (abs_section_sym): New variable.
382 (adjust_reloc_syms): Use S_FORCE_RELOC. Remove obj_fix_adjustable
383 call. Don't symbol_mark_used_in_reloc here. Simplify link_once tests.
384 Don't put the absolute section sym on fixups here.
385 (fix_segment): New function.
386 (write_relocs): Don't call fixup_segment from here.
387 (write_object_file): Instead call tc_frob_file_before_fix,
388 obj_frob_file_before_fix, and fix_segment prior to symbol table code.
389 Don't output the absolute section symbol.
390 (fixup_segment): Rewrite.
391 * write.h (abs_section_sym): Declare.
392 * config/obj-aout.c (obj_aout_frob_file_before_fix): Rename from
393 obj_aout_frob_file.
394 (aout_format_ops): Adjust to suit.
395 * config/obj-aout.h (obj_frob_file): Don't define.
396 (obj_frob_file_before_fix): Define.
397 (obj_aout_frob_file_before_fix): Rename from obj_aout_frob_file.
398 (S_FORCE_RELOC): Define.
399 * config/obj-bout.h (S_FORCE_RELOC): Define.
400 * config/obj-coff.c (coff_format_ops): Init new field.
401 * config/obj-coff.h: Formatting fixes.
402 (obj_sec_sym_ok_for_reloc): Define.
403 (S_FORCE_RELOC): Define.
404 * config/obj-ecoff.c (ecoff_frob_file_before_fix): Split out ..
405 (ecoff_frob_file): .. from here.
406 (ecoff_format_ops): Add new function.
407 * config/obj-ecoff.h (ecoff_frob_file_before_fix): Declare.
408 (obj_frob_file_before_fix): Define.
409 * config/obj-elf.c (elf_format_ops): Init new field.
410 * config/obj-elf.h (obj_sec_sym_ok_for_reloc): Expand comment.
411 * config/obj-ieee.h: Formatting fixes.
412 (S_FORCE_RELOC): Define.
413 * config/obj-multi.h (obj_frob_file_before_fix): Define.
414 * config/obj-vms.h (S_FORCE_RELOC): Define.
415 * config/tc-alpha.c (md_apply_fix3): Correct GPDISP comment.
416 (alpha_force_relocation): Use S_FORCE_RELOC, and don't return 0
417 for BFD_RELOC_32 and BFD_RELOC_64.
418 (alpha_fix_adjustable): Remove extern and weak tests.
419 (alpha_before_fix): Rename from alpha_adjust_symtab.
420 (alpha_adjust_relocs): Rename from alpha_adjust_symtab_relocs.
421 * config/tc-alpha.h (struct fix, struct alpha_reloc_tag): Declare.
422 (TC_VALIDATE_FIX): Tweak param name.
423 (TC_FORCE_RELOCATION, tc_fix_adjustable): Likewise.
424 (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
425 (TC_FORCE_RELOCATION_LOCAL): Define this instead.
426 (MD_APPLY_SYM_VALUE): Define.
427 (tc_adjust_symtab): Don't define.
428 (alpha_adjust_symtab): Don't declare.
429 (tc_frob_file_before_fix): Define.
430 (alpha_before_fix): Declare.
431 (TC_INIT_FIX_DATA): Tweak param names.
432 * config/tc-arc.c: Include "struc-symbol.h".
433 (md_pcrel_from): Remove undefined sym fudge.
434 (md_apply_fix3): Remove *valP fudges and code to subtract abs sym.
435 Don't set fx_addnumber.
436 (tc_gen_reloc): Remove spurious fx_addnumber comment.
437 * config/tc-arc.h (MD_APPLY_SYM_VALUE): Define.
438 (EXTERN_FORCE_RELOC): Define.
439 * config/tc-arm.c (md_apply_fix3 <case BFD_RELOC_ARM_GOTPC>): Remove.
440 (tc_gen_reloc): Fudge ARM_GOTPC addend.
441 (arm_validate_fix): Return void.
442 (arm_fix_adjustable <elf version>): Remove extern and weak tests.
443 Add plt and got reloc tests.
444 (arm_force_relocation): Call S_FORCE_RELOC.
445 * config/tc-arm.h (struct fix): Forward declare.
446 (TC_VALIDATE_FIX): No longer set add_symbolP.
447 (arm_validate_fix): Adjust declaration.
448 (TC_FORCE_RELOCATION <pe version): Call S_FORCE_RELOC.
449 (TC_FORCE_RELOCATION): Tweak param name.
450 (TC_INIT_FIX_DATA): Likewise.
451 (obj_fix_adjustable): Don't define.
452 (tc_fix_adjustable): Call arm_fix_adjustable.
453 (TC_FIX_ADJUSTABLE): Don't define.
454 (MD_APPLY_SYM_VALUE): Define.
455 (EXTERN_FORCE_RELOC): Define.
456 (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
457 (TC_FORCE_RELOCATION_LOCAL): Define this instead.
458 * config/tc-avr.c (md_apply_fix3): Don't cast valP pointer type.
459 Remove *valP fudges and code to subtract abs sym. Don't set
460 fx_addnumber.
461 * config/tc-avr.h: Formatting.
462 (EXTERN_FORCE_RELOC): Define.
463 (MD_APPLY_SYM_VALUE): Define.
464 * config/tc-cris.c (tc_gen_reloc): Don't use fx_addnumber.
465 (md_apply_fix3): Remove code to subtract abs sym.
466 (md_cris_force_relocation): Update comment. Call S_FORCE_RELOC.
467 * config/tc-cris.h (TC_FORCE_RELOCATION): Tweak param name.
468 (IS_CRIS_PIC_RELOC, tc_fix_adjustable): Likewise.
469 (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
470 (TC_FORCE_RELOCATION_LOCAL): Define this instead.
471 (tc_fix_adjustable): Remove extern, weak tests.
472 * config/tc-d10v.c (tc_gen_reloc): Don't fiddle address of
473 BFD_RELOC_VTABLE_INHERIT relocs. Don't use fx_addnumber.
474 (md_apply_fix3): Don't cast valP pointer type. Remove *valP fudges
475 and code to subtract abs sym.
476 (d10v_fix_adjustable): Remove extern, weak, SEC_MERGE tests.
477 (d10v_force_relocation): Call S_FORCE_RELOC.
478 * config/tc-d10v.h: Don't include write.h.
479 (struct fix): Instead, forward declare.
480 (MD_PCREL_FROM_SECTION): Tweak param names.
481 (md_pcrel_from_section): Use "struct fix" instead of "fixS".
482 (d10v_fix_adjustable): Likewise.
483 (obj_fix_adjustable): Don't define.
484 (tc_fix_adjustable): Define.
485 (TC_FORCE_RELOCATION): Tweak param name.
486 (MD_APPLY_SYM_VALUE): Define.
487 (EXTERN_FORCE_RELOC): Define.
488 * config/tc-d30v.c (tc_gen_reloc): Don't use fx_addnumber.
489 (md_apply_fix3): Don't cast valP pointer type. Remove *valP fudges
490 and code to subtract abs sym.
491 * config/tc-d30v.h: Don't include write.h.
492 (struct fix): Instead, forward declare.
493 (MD_PCREL_FROM_SECTION): Tweak param names.
494 (md_pcrel_from_section): Use "struct fix" instead of "fixS".
495 (MD_APPLY_SYM_VALUE): Define.
496 (EXTERN_FORCE_RELOC): Define.
497 * config/tc-dlx.c (md_dlx_force_relocation): Call S_FORCE_RELOC.
498 (md_dlx_fix_adjustable): Don't test for NULL fx_addsy.
499 (md_apply_fix3): No need to test fx_pcrel before setting fx_done.
500 (tc_gen_reloc): Don't fiddle with BFD_RELOC_VTABLE_INHERIT relocs.
501 Adjust the address for BFD_RELOC_VTABLE_ENTRY, not the addend.
502 Don't use fx_addnumber.
503 * config/tc-dlx.h: Don't include write.h.
504 (md_convert_frag): We're not alpha twice over.
505 (EXTERN_FORCE_RELOC): Define.
506 (obj_fix_adjustable): Don't define.
507 (tc_fix_adjustable): Define.
508 (TC_FIX_ADJUSTABLE): Don't define.
509 (MD_APPLY_SYM_VALUE): Define.
510 (LOCAL_LABELS_DOLLAR): Undef always.
511 * config/tc-fr30.c (fr30_force_relocation): Call S_FORCE_RELOC.
512 (fr30_fix_adjustable): Remove extern, weak tests.
513 * config/tc-fr30.h (MD_APPLY_SYM_VALUE): Define.
514 (obj_fix_adjustable): Don't define.
515 (tc_fix_adjustable): Define.
516 (struct fix): Forward declare.
517 (MD_PCREL_FROM_SECTION): Tweak param name. Remove duplicate.
518 * config/tc-frv.c (frv_force_relocation): Call S_FORCE_RELOC.
519 (frv_fix_adjustable): Don't do extern, weak tests.
520 * config/tc-frv.h (MD_APPLY_SYM_VALUE): Define.
521 (TC_FIX_ADJUSTABLE): Don't define.
522 (obj_fix_adjustable): Don't define.
523 (tc_fix_adjustable): Define.
524 (struct fix): Forward declare.
525 (MD_PCREL_FROM_SECTION): Tweak param name. Remove duplicate.\
526 * config/tc-h8300.c (md_apply_fix3): Don't cast valP pointer type.
527 * config/tc-h8300.h (struct fix): Forward declare.
528 (EXTERN_FORCE_RELOC): Define.
529 * config/tc-hppa.c (md_apply_fix3): Remove subtraction of sym value.
530 (hppa_fix_adjustable): Don't test extern or weak. Don't
531 symbol_mark_used_in_reloc.
532 (hppa_force_relocation): Use S_FORCE_RELOC instead of S_IS_EXTERNAL
533 and S_IS_WEAK.
534 * config/tc-hppa.h (EXTERN_FORCE_RELOC): Define
535 (TC_FORCE_RELOCATION, TC_INIT_FIX_DATA): Tweak param name.
536 (TC_FORCE_RELOCATION_SECTION): Don't define.
537 (MD_APPLY_SYM_VALUE): Define.
538 * config/tc-i370.c (md_apply_fix3): Remove *valP fudges and code
539 to subtract abs sym.
540 * config/tc-i370.h: Remove ifdef OBJ_ELF tests.
541 (MD_APPLY_SYM_VALUE): Define.
542 (MD_PCREL_FROM_SECTION): Tweak param name.
543 * config/tc-i386.c (tc_i386_fix_adjustable): Remove weak, extern tests.
544 (md_apply_fix3): Test fx_addsy, not fx_pcrel.
545 (i386_force_relocation): New function.
546 * config/tc-i386.h (TC_COFF_FIX2RTYPE): Tweak param name.
547 (TC_VALIDATE_FIX): Likewise.
548 (TC_FIX_ADJUSTABLE): Don't define.
549 (MD_APPLY_SYM_VALUE): Define.
550 (TC_FORCE_RELOCATION <elf version>): Call i386_force_relocation.
551 (i386_force_relocation): Declare.
552 (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
553 (TC_FORCE_RELOCATION_LOCAL): Define this instead.
554 (TC_FORCE_RELOCATION <coff version>): Call S_FORCE_RELOC.
555 * config/tc-i860.c (md_apply_fix3): Don't cast valP pointer type.
556 * config/tc-i860.h (MD_APPLY_SYM_VALUE): Define.
557 (EXTERN_FORCE_RELOC): Define.
558 * config/tc-i960.c (reloc_callj): Remove declaration. Return false.
559 (md_apply_fix3): Don't cast valP pointer type. Move code here from
560 old fixup_segment. No need to test fx_pcrel before setting fx_done.
561 (i960_validate_fix): Remove add_symbolPP arg and add_symbolP macro.
562 Use fx_addsy instead of add_symbolP, as_bad_where instead of as_bad.
563 Remove #if 0 code. Invert return boolean.
564 * config/tc-i960.h (TC_COUNT_RELOC): Tweak param name.
565 (TC_COFF_FIX2RTYPE, TC_ADJUST_RELOC_COUNT, TC_VALIDATE_FIX): Likewise.
566 (tc_headers_hook, tc_coff_fix2rtype): Remove declaration.
567 (tc_coff_sizemachdep): Prototype.
568 (i960_handle_align): Likewise.
569 (i960_validate_fix): Adjust declaration.
570 (reloc_callj): Likewise.
571 (EXTERN_FORCE_RELOC): Define.
572 (TC_FORCE_RELOCATION_SUB_SAME): Define.
573 (TC_FORCE_RELOCATION_ABS): Define.
574 (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
575 (TC_FORCE_RELOCATION_LOCAL): Define this instead.
576 (TC_FIX_ADJUSTABLE): Don't define.
577 (MD_APPLY_SYM_VALUE): Define.
578 * config/tc-ia64.c (ia64_force_relocation): Call S_FORCE_RELOC.
579 * config/tc-ia64.h (MD_APPLY_SYM_VALUE): Define.
580 (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
581 (TC_FORCE_RELOCATION_LOCAL): Define this instead.
582 * config/tc-ip2k.c (ip2k_force_relocation): Call S_FORCE_RELOC.
583 * config/tc-ip2k.h (MD_APPLY_FIX3): Don't define.
584 (MD_APPLY_SYM_VALUE): Define.
585 (EXTERN_FORCE_RELOC): Define.
586 (TC_FORCE_RELOCATION): Tweak param name.
587 * config/tc-m32r.c (m32r_force_relocation): Call S_FORCE_RELOC.
588 (m32r_fix_adjustable): Don't test extern, weak.
589 * config/tc-m32r.h (MD_PCREL_FROM_SECTION): Tweak param name.
590 (MD_APPLY_SYM_VALUE): Define.
591 (obj_fix_adjustable): Don't define.
592 (tc_fix_adjustable): Define.
593 (tc_frob_file): Don't define.
594 (tc_frob_file_before_fix): Define.
595 (EXTERN_FORCE_RELOC): Define.
596 * config/tc-m68hc11.c (tc_gen_reloc): Set addend to zero. Adjust
597 BFD_RELOC_VTABLE_ENTRY address.
598 (tc_m68hc11_force_relocation): Call S_FORCE_RELOC.
599 (tc_m68hc11_fix_adjustable): Don't test relaxable_symbol.
600 (md_apply_fix3): Remove *valP fudges and code to subtract abs sym.
601 Remove duplicated fx_done code.
602 * config/tc-m68hc11.h (MD_APPLY_SYM_VALUE): Define.
603 (EXTERN_FORCE_RELOC): Define.
604 * config/tc-m68k.c (tc_m68k_fix_adjustable): Don't test
605 relaxable_symbol.
606 * config/tc-m68k.h (TC_COFF_FIX2RTYPE): Tweak param name.
607 (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
608 (TC_FIX_ADJUSTABLE): Don't define.
609 (EXTERN_FORCE_RELOC): Define.
610 (MD_APPLY_SYM_VALUE): Define.
611 (TC_FORCE_RELOCATION): Call S_FORCE_RELOC.
612 * config/tc-mcore.c (md_apply_fix3): Don't cast valP pointer type.
613 Remove fx_addsy tests.
614 (mcore_force_relocation): Call S_FORCE_RELOC.
615 (mcore_fix_adjustable): Don't test fx_addsy.
616 * config/tc-mcore.h (MD_PCREL_FROM_SECTION): Tweak param name.
617 (EXTERN_FORCE_RELOC): Define.
618 (obj_fix_adjustable): Don't define.
619 (tc_fix_adjustable): Define.
620 (MD_APPLY_SYM_VALUE): Define.
621 * config/tc-mips.c (enum mips_pic_level): Move to tc-mips.h.
622 (mips_pic): No longer static.
623 (mips_force_relocation): Call S_FORCE_RELOC.
624 (mips_fix_adjustable): Remove extern, weak tests.
625 * config/tc-mips.h (enum mips_pic_level): Declare.
626 (mips_pic): Declare.
627 (tc_frob_file): Don't define.
628 (tc_frob_file_before_fix): Define this instead.
629 (EXTERN_FORCE_RELOC): Define.
630 * config/tc-mmix.c (md_apply_fix3): Replace real_reg_section tests
631 with reg_section tests. Set fx_done instead of calling
632 symbol_clear_used_in_reloc on bad relocs.
633 (tc_gen_reloc): Zero fx_addsy on bad relocs.
634 (mmix_force_relocation): Remove weak sym test. Call S_FORCE_RELOC.
635 (mmix_adjust_symtab): Simplify list handling. Abort on any
636 nonsense.
637 * config/tc-mmix.h (tc_fix_adjustable): Remove weak tests. Check
638 BFD_RELOC_MMIX_LOCAL.
639 (tc_frob_symbol): Keep user defined syms in reg_section. Don't punt.
640 (EXTERN_FORCE_RELOC): Define.
641 (MD_PCREL_FROM_SECTION): Tweak param name.
642 (tc_frob_file): Don't define.
643 (tc_frob_file_before_fix): Define this instead.
644 * config/tc-mn10300.c (mn10300_force_relocation): Call S_FORCE_RELOC.
645 Remove SEC_CODE checks.
646 (mn10300_fix_adjustable): Remove extern and weak tests.
647 * config/tc-mn10300.h (EXTERN_FORCE_RELOC): Define.
648 (TC_FORCE_RELOCATION): Tweak param name.
649 (obj_fix_adjustable): Don't define.
650 (TC_FORCE_RELOCATION_SUB_SAME): Define to handle SEC_CODE.
651 * config/tc-ns32k.h (TC_FIX_DATA_PRINT): Tweak param name.
652 * config/tc-openrisc.c (openrisc_force_relocation): Call S_FORCE_RELOC.
653 (openrisc_fix_adjustable): Don't test fx_addsy.
654 * config/tc-openrisc.h (MD_APPLY_SYM_VALUE): Define.
655 (obj_fix_adjustable): Don't define.
656 (tc_fix_adjustable): Define this instead.
657 (MD_PCREL_FROM_SECTION): Remove duplicate. Tweak param name.
658 * config/tc-or32.c (md_apply_fix3): Don't cast valP pointer type.
659 (tc_gen_reloc): Don't fiddle with BFD_RELOC_VTABLE_INHERIT relocs.
660 Adjust the address for BFD_RELOC_VTABLE_ENTRY, not the addend.
661 * config/tc-or32.h (EXTERN_FORCE_RELOC): Define.
662 (MD_APPLY_SYM_VALUE): Define.
663 * config/tc-pj.c (md_apply_fix3): Don't cast valP pointer type.
664 Don't subtract symbol value.
665 * config/tc-pj.h (md_pcrel_from): Tweak param name.
666 (EXTERN_FORCE_RELOC): Define.
667 (TC_FORCE_RELOCATION): Call S_FORCE_RELOC.
668 (MD_APPLY_SYM_VALUE): Define.
669 (obj_fix_adjustable): Don't define.
670 (tc_fix_adjustable): Define this instead.
671 * config/tc-ppc.c (ppc_frob_symbol <coff version>): Ignore absolute
672 section sym.
673 (ppc_force_relocation <coff version>): Call S_FORCE_RELOC.
674 (ppc_force_relocation <elf version>): New.
675 (ppc_fix_adjustable <elf version>): Remove extern and weak tests.
676 (md_apply_fix3): Don't subtract symbol values for ELF. Update
677 comments. Don't subtract fx_subsy as that is already done.
678 * config/tc-ppc.h (tc_fix_adjustable): Tweak param name.
679 (MD_PCREL_FROM_SECTION): Likewise.
680 (TC_FORCE_RELOCATION): Define for both ELF and XCOFF as calling
681 ppc_force_relocation.
682 (TC_FORCE_RELOCATION_SECTION): Delete.
683 (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
684 (TC_FORCE_RELOCATION_LOCAL): Define this instead.
685 (MD_APPLY_SYM_VALUE): Define.
686 * config/tc-s390.c: #include "dwarf2dbg.h".
687 (s390_insn): Remove excess parens.
688 (tc_s390_fix_adjustable): Remove extern, weak, SEC_MERGE tests.
689 (tc_s390_force_relocation): Call S_FORCE_RELOC.
690 (md_apply_fix3): Add ATTRIBUTE_UNUSED on "seg". Abort when fx_subsy
691 non-NULL. Don't subtract off fx_addsy value.
692 * config/tc-s390.h (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
693 (TC_FORCE_RELOCATION, MD_PCREL_FROM_SECTION): Tweak param name.
694 (TC_FIX_ADJUSTABLE): Don't define.
695 (MD_APPLY_SYM_VALUE): Define.
696 * config/tc-sh.c (SWITCH_TABLE_CONS): Move to tc-sh.h.
697 (SWITCH_TABLE): Likewise.
698 (sh_force_relocation): Call S_FORCE_RELOC.
699 (sh_fix_adjustable): Remove "return 1" cases handled by the default.
700 Replace TC_RELOC_RTSYM_LOC_FIXUP with reloc type tests.
701 (md_apply_fix3 <case BFD_RELOC_32_PLT_PCREL>): Simplify,
702 fx_addnumber is zero on entry. Save val in fx_addnumber.
703 (tc_gen_reloc): Don't subtract fx_subsy.
704 * config/tc-sh.h (struct fix): Move.
705 (obj_fix_adjustable): Don't define.
706 (tc_fix_adjustable): Define this instead.
707 (TC_FIX_ADJUSTABLE): Don't define.
708 (MD_APPLY_SYM_VALUE): Define.
709 (SWITCH_TABLE_CONS): Define.
710 (SWITCH_TABLE): Define.
711 (TC_FORCE_RELOCATION_SUB_SAME): Define.
712 (TC_VALIDATE_FIX_SUB): Define.
713 (MD_PCREL_FROM_SECTION): Tweak param name.
714 (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
715 (TC_FORCE_RELOCATION_LOCAL): Define this instead.
716 (TC_FORCE_RELOCATION_SUB_ABS): Define.
717 * config/tc-sh64.h (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
718 (TC_FORCE_RELOCATION_LOCAL): Define this instead.
719 (TC_FORCE_RELOCATION_SUB_SAME): Define.
720 (TC_VALIDATE_FIX_SUB): Define.
721 (MD_PCREL_FROM_SECTION): Tweak param name.
722 * config/tc-sparc.c (md_apply_fix3): Don't subtract off symbol value.
723 (tc_gen_reloc): Use S_FORCE_RELOC.
724 (elf32_sparc_force_relocation): Call S_FORCE_RELOC.
725 * config/tc-sparc.h (TC_FORCE_RELOCATION <coff version>): Remove.
726 (TC_FORCE_RELOCATION_ABS): Define this instead.
727 (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
728 (TC_FORCE_RELOCATION_LOCAL): Define this instead.
729 (tc_fix_adjustable): Remove extern and weak tests. Use S_FORCE_RELOC.
730 (MD_APPLY_SYM_VALUE): Define.
731 (TC_FIX_DATA_PRINT): Tweak param name.
732 * config/tc-tic30.c (USE_STDOUT): Don't define.
733 (md_parse_option): Remove stupid debug code.
734 (tc_gen_reloc): Don't use fx_addnumber.
735 * config/tc-v850.c (v850_fix_adjustable): Remove extern and weak tests.
736 (v850_force_relocation): Remove weak test. Call S_FORCE_RELOC.
737 * config/tc-v850.h (obj_fix_adjustable): Don't define.
738 (tc_fix_adjustable): Define this instead.
739 (TC_FIX_ADJUSTABLE): Don't define.
740 (MD_APPLY_SYM_VALUE): Define this instead.
741 (TC_FORCE_RELOCATION, MD_PCREL_FROM_SECTION): Tweak param name.
742 * config/tc-vax.h (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
743 (TC_FIX_ADJUSTABLE): Don't define.
744 (MD_APPLY_SYM_VALUE): Define this instead.
745 (tc_fix_adjustable): Remove extern and weak tests.
746 * config/tc-w65.h (struct fix): Forward declare.
747 * config/tc-xstormy16.c (xstormy16_force_relocation): Call
748 S_FORCE_RELOC.
749 (xstormy16_fix_adjustable): Remove extern and weak tests. Don't
750 call xstormy16_force_relocation; Instead test for FPTR16 reloc.
751 (xstormy16_md_apply_fix3): Remove *valP fudges and code to subtract
752 absolute symbol.
753 * config/tc-xstormy16.h (MD_APPLY_FIX3): Don't define.
754 (MD_APPLY_SYM_VALUE): Define.
755 (obj_fix_adjustable): Don't define.
756 (tc_fix_adjustable): Define this instead.
757 (MD_PCREL_FROM_SECTION): Remove duplicate. Tweak param name.
758
759 2002-09-04 Alan Modra <amodra@bigpond.net.au>
760
761 * config/tc-ppc.c (ppc_frob_symbol): Formatting, warning fix.
762 (ppc_fix_adjustable <coff version>): Cleanup.
763
764 * config/tc-ppc.c (PPC_HIGHER, PPC_HIGHEST): Fix warning.
765 (md_parse_option): No -a64 without BFD64.
766 (ppc_set_cpu): Select appropriate cpu when ppc_obj64.
767 (ppc_arch): Use bfd_mach_rs6k for bfd_arch_rs6000.
768
769 2002-09-04 Nick Clifton <nickc@redhat.com>
770
771 * config/tc-ppc.c (md_begin): Do not insert non-BookE32
772 instructions into the hash table if the target cpu is the BookE32.
773
774 2002-08-31 Hans-Peter Nilsson <hp@bitrange.com>
775
776 * read.c (do_align): Use ATTRIBUTE_UNUSED_LABEL for label, not
777 ATTRIBUTE_UNUSED.
778
779 2000-08-28 Catherine Moore <clm@redhat.com>
780
781 * tc-v850.c (v850_relax): Declare.
782 (v850_longcode): New routine.
783 (v850_handle_align): New routine.
784 (md_pseudo_table): Add longcall and longjump.
785 (md_parse_option): Check for relax option.
786 (tc_gen_reloc): Handle BFD_RELOC_V850_LONGCALL,
787 BFD_RELOC_V850_LONGJUMP, and BFD_RELOC_V850_ALIGN.
788 (md_apply_fix3): Likewise.
789 (v850_force_relocation): Likewise.
790 (v850_comm): Change the current section.
791 (md_assemble): Ensure that the correct value is put in the
792 fixup.
793 (v850_sdata, v850_tdata, v850_zdata, v850_sbss, v850_tbss,
794 v850_zbss, v850_rosdata, v850_rozdata): Fix section book keeping.
795 Remove redundant v850ea support.
796 * tc-v850.h (HANDLE_ALIGN): Define.
797 (v850_handle_align): Declare.
798 * doc/c-v850.c: Document -mrelax, .longcall and .longjump.
799
800 2002-08-28 Svein E. Seldal <Svein.Seldal@solidas.com>
801
802 * configure.in: Add tic4x-coff* and c4x-coff*-coff-coff targets.
803 * configure: Regenerate.
804 * NEWS: Mention new port.
805
806 2002-08-28 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
807
808 * config/obj-coff.c: Add sdef definition.
809 * config/obj-coff.h: Add tic4x include file and set
810 target format.
811 * config/tc-tic4x.c: New file.
812 * config/tc-tic4x.h: New file.
813
814 2002-08-28 Alan Modra <amodra@bigpond.net.au>
815
816 * write.c (BFD_FAST_SECTION_FILL): Remove unused macro.
817 (TC_ADJUST_RELOC_COUNT): Tweak param name.
818 (TC_FORCE_RELOCATION, TC_FORCE_RELOCATION_SECTION): Likewise.
819 (TC_FIX_ADJUSTABLE, MD_PCREL_FROM_SECTION): Likewise.
820 (RELOC_ENUM): Define.
821 (fix_new_internal): Use RELOC_ENUM.
822 (fix_new, fix_new_exp): Likewise.
823 (adjust_reloc_syms): Comment. Remove unnecessary tests on sym != NULL.
824 Replace gotos with continue.
825 (write_relocs): Formatting. Avoid symbol loops in
826 RELOC_EXPANSION_POSSIBLE case too. Report bfd_reloc_outofrange
827 errors, and error number in other cases.
828 (fixup_segment): Remove param names from prototype. Rename
829 "this_segment_type" to "this_segment". Update linkrelax comment.
830 Remove "size, "place" and "where" local vars. Formatting. Update
831 "no symbol" comment. Remove #if 0 and #if 1.
832
833 * app.c (do_scrub_chars): Don't test IGNORE_NONSTANDARD_ESCAPES. Tidy.
834
835 2002-08-27 Alan Modra <amodra@bigpond.net.au>
836
837 * dwarf2dbg.c: Always include dwarf2dbg.h.
838 (dwarf2_directive_file): Adjust dummy version args.
839 * ecoff.c (ecoff_directive_weakext): Add ATTRIBUTE_UNUSED.
840 * expr.c (clean_up_expression <O_subtract>): Allow subtraction
841 when symbol values differ.
842 * read.c (do_align): Add ATTRIBUTE_UNUSED to label.
843 (pseudo_set <O_subtract>): Remove unnecessary segment test.
844 * config/obj-bout.c (obj_pseudo_table): Warning fix.
845
846 2002-08-26 Alan Modra <amodra@bigpond.net.au>
847
848 * config/tc-w65.c (md_section_align): Fix typo.
849 (md_parse_option): Return 0, not 1.
850
851 2002-08-22 Nick Clifton <nickc@redhat.com>
852
853 * doc/as.texinfo (Section): Note that if '@' is a comment
854 character then another symbol is used to prefix the section's
855 type.
856
857 2002-08-22 Christian Groessler <chris@groessler.org>
858
859 * config/tc-z8k.c (get_operands): Adjust ptr variable also in
860 "case 0" case.
861
862 2002-08-12 Graeme Peterson <gp@qnx.com>
863
864 * configure.in: Add support for sh-**-nto* target.
865 * configure: Regenerate.
866
867 2002-08-21 Nitin Gupta <niting@noida.hcltech.com>
868
869 * config/tc-h8300.h (TC_LINKRELAX_FIXUP): Define.
870
871 2002-08-21 Elena Zannoni <ezannoni@redhat.com>
872
873 * config/tc-ppc.c (ppc_cleanup): Do something only if format
874 is ELF.
875 (ppc_apuinfo_section_add): Define only if format is ELF.
876 (md_assemble): Emit APUinfo section only if format is ELF.
877 Fix formatting.
878
879 2002-08-21 Alan Modra <amodra@bigpond.net.au>
880
881 * config/tc-arc.c (md_pseudo_table <dwarf2_directive_file>): Cast.
882 * config/tc-frv.c: Likewise.
883 * config/tc-hppa.c: Likewise.
884 * config/tc-ia64.c: Likewise.
885 * config/tc-ip2k.c: Likewise.
886 * config/tc-m68hc11.c: Likewise.
887 * config/tc-m68k.c: Likewise.
888 * config/tc-mmix.c: Likewise.
889 * config/tc-mn10300.c: Likewise.
890 * config/tc-sh.c: Likewise.
891 * config/tc-sparc.c: Likewise.
892 * config/tc-v850.c: Likewise.
893
894 2002-08-20 Richard Sandiford <rsandifo@redhat.com>
895
896 * config/tc-mips.c (macro2): Implement rotates by zero using shifts
897 by zero.
898
899 2002-08-19 Elena Zannoni <ezannoni@redhat.com>
900
901 From matthew green <mrg@redhat.com>
902
903 * config/tc-ppc.c (PPC_OPCODE_CLASSIC): Enable this everywhere
904 PPC_OPCODE_PPC is, except for BookE architectures.
905 (md_parse_option): Add support for -mspe.
906 (md_show_usage): Add -mspe.
907 (md_parse_option): Add support for -me500 and
908 -me500x2 to generate code for Motorola e500 core complex.
909 (md_show_usage): Add -me500 and -me500x2.
910
911 (PPC_APUINFO_ISEL, PPC_APUINFO_PMR, PPC_APUINFO_RFMCI,
912 PPC_APUINFO_CACHELCK, PPC_APUINFO_SPE, PPC_APUINFO_EFS,
913 PPC_APUINFO_BRLOCK): New macros.
914
915 (ppc_cleanup): New function.
916 (ppc_apuinfo_section_add): New function.
917 (APUID): New macro.
918 (md_assemble): Collect info and write the APUinfo section.
919
920 * config/tc-ppc.h (md_cleanup): Define.
921 (ppc_cleanup): Export.
922 (ELF_TC_SPECIAL_SECTIONS): Add .PPC.EMB.apuinfo section.
923
924 2002-08-17 Stan Cox <scox@redhat.com>
925
926 * config/obj-elf.c (obj_elf_change_section): Make non-static.
927 config/tc-mips.c (s_change_section): New function to support
928 IRIX .section pseudo-op.
929
930 2002-08-16 Nick Clifton <nickc@redhat.com>
931
932 * config/tc-v850.c (md_assemble): Fix assembling of "callt 0x3f".
933
934 2002-08-15 Alexandre Oliva <aoliva@redhat.com>
935
936 * config/tc-mips.c (macro_build_jalr): Make sure we generate
937 the fix-up against on the right frag.
938 (s_cpsetup): Likewise. Parse third argument as expression, to
939 handle global symbols and forward/backward labels correctly.
940
941 2002-08-14 Nick Clifton <nickc@redhat.com>
942
943 * read.c (stringer): Catch attempts to create strings in the abs
944 section.
945
946 * config/tc-alpha.c: Fix compiling for COFF targets.
947 Some minor formatting tidyups.
948
949 2002-08-13 Stephane Carrez <stcarrez@nerim.fr>
950
951 * config/tc-m68hc11.h (MD_PCREL_FROM_SECTION): Remove.
952 (TC_HANDLES_FX_DONE): Define to let md_apply_fix3 set fx_done flag
953 according to the reloc.
954 (tc_fix_adjustable, tc_m68hc11_fix_adjustable): Define.
955 (TC_FORCE_RELOCATION): Define.
956 (tc_m68hc11_force_relocation): Declare.
957
958 * config/tc-m68hc11.c (md_pseudo_table): Add relax command.
959 (s_m68hc11_relax): New function for relax group.
960 (build_insn, build_jump_insn): Emit a M68HC11_RL_JUMP reloc at
961 beginning of jump instruction.
962 (md_pcrel_from): Rename from md_pcrel_from_section and fix
963 address computation.
964 (tc-gen_reloc): Update.
965 (md_estimate_size_before_relax): Create the BFD_RELOC_16_PCREL as
966 PC-relative fixup.
967 (tc_m68hc11_force_relocation): New function, handle new relocs.
968 (tc_m68hc11_fix_adjustable): New to make sure there are enough
969 reloc for the linker relax pass.
970 (md_apply_fix3): Handle M68HC11_RL_JUMP, M68HC11_RL_GROUP
971 and VTABLE relocs.
972
973 2002-08-13 Stephane Carrez <stcarrez@nerim.fr>
974
975 * config/tc-m68hc11.c (m68hc11_elf_final_processing): New function.
976 (md_pseudo_table): Add .mode, .far and .interrupt pseudo op.
977 (s_m68hc11_mode): New function for .mode pseudo op.
978 (s_m68hc11_mark_symbol): New function for .far and .interrupt
979 pseudo op.
980 * config/tc-m68hc11.h (elf_tc_final_processing): Define.
981 (m68hc11_elf_final_processing): Declare.
982
983 2002-08-13 Stephane Carrez <stcarrez@nerim.fr>
984
985 * config/tc-m68hc11.c (md_begin): Take into account additional
986 page operand for call instruction.
987 (print_opcode_format): Likewise.
988 (check_range): Likewise for page range checking.
989 (get_operand): Don't skip a possible comma in operands.
990 (fixup8): Generate BFD_RELOC_M68HC11_PAGE reloc.
991 (fixup16): Likwise with BFD_RELOC_M68HC11_LO16.
992 (fixup24): New to handle call reloc.
993 (build_insn): Handle missing page operand for call instruction.
994 (find): Likewise.
995 (md_apply_fix3): Take into account new relocs.
996 (get_operand): Fix the mode for indexed indirect addressing.
997 (build_indexed_byte): Fix post index byte for indexed indirect mode.
998
999 2002-08-12 Richard Sandiford <rsandifo@redhat.com>
1000
1001 * config/tc-mips.c (mips_ip): Don't work out the value of
1002 constant %hi()s here.
1003
1004 2002-08-10 Alan Modra <amodra@bigpond.net.au>
1005
1006 * config/tc-i386.c (tc_i386_fix_adjustable): Test OUTPUT_FLAVOR
1007 for ELF, and don't bother checking ELF relocs when non-ELF.
1008 (i386_immediate): Allow absolute_section expressions for aout.
1009 (i386_displacement): Likewise. Also test bfd_is_com_section.
1010 (md_estimate_size_before_relax): Test OUTPUT_FLAVOR for ELF.
1011 (md_apply_fix3): Hack for bfd_install_relocation when fx_pcrel,
1012 not when fx_addsy. Remove dead code.
1013
1014 2002-08-09 Graeme Peterson <gp@qnx.com>
1015
1016 * configure.in: Add support for ppc-*-nto* target.
1017 * configure: Regenerate.
1018
1019 2002-08-09 Alan Modra <amodra@bigpond.net.au>
1020
1021 * config/tc-i386.h: Reorganize.
1022
1023 2002-08-09 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
1024
1025 * config/tc-mips.c (macro): Handle a register plus a 16-bit
1026 immediate offset in "dla" and "la" expansions.
1027
1028 2002-08-09 Alan Modra <amodra@bigpond.net.au>
1029
1030 * configure.in: bfd_gas=yes for all i386 targets. Formatting.
1031 Remove "bfd_gas=yes" from target table when covered later.
1032 Consolidate some entries.
1033 * configure: Regenerate
1034
1035 2002-08-09 Jakub Jelinek <jakub@redhat.com>
1036
1037 * config/tc-i386.c (output_insn): Save frag_now and frag_now_fix ()
1038 at start of insn, pass it to output_disp and output_imm.
1039 (output_disp): Added arguments. If _GLOBAL_OFFSET_TABLE_ is seen
1040 in displacement for R_386_32 reloc, use R_386_GOTPC and compute
1041 properly addend.
1042 (output_imm): Added arguments. Compute properly addend for
1043 R_386_GOTPC.
1044 (md_apply_fix3): Remove R_386_GOTPC handling.
1045 * testsuite/gas/i386/gotpc.s: New.
1046 * testsuite/gas/i386/gotpc.d: New.
1047 * testsuite/gas/i386/i386.exp: Add gotpc test.
1048
1049 2002-08-06 George France <france@handhelds.org>
1050
1051 * config/tc-alpha.c (cpu_types): Enabled ev67, ev68, -m21264a
1052 and m21264b processor names and cpu types.
1053 * doc/c-alpha.texi: Documented new types.
1054
1055 2002-08-06 Alan Modra <amodra@bigpond.net.au>
1056
1057 * config/tc-ppc.c (md_apply_fix3): Adjust 16 bit XCOFF reloc offset.
1058
1059 2002-08-01 Richard Sandiford <rsandifo@redhat.com>
1060
1061 * config/tc-mips.c (tc_gen_reloc): Extend GP-relative addend
1062 handling to BFD_RELOC_MIPS16_GPREL.
1063
1064 2002-08-01 Nick Clifton <nickc@redhat.com>
1065
1066 * config/tc-arm.c (add_to_lit_pool): Ensure that offset to literal
1067 pool is computed using signed arithmetic so that proper sign
1068 extension is performed if X_add_number is a 64-bit integer.
1069
1070 2002-08-01 H.J. Lu <hjl@gnu.org>
1071 Daniel Jacobowitz <drow@mvista.com>
1072
1073 * dwarf2dbg.c (dwarf2_finish): Don't emit unreferenced
1074 .debug_line section unless it has line information.
1075
1076 2002-07-31 Ian Dall <ian@sibyl.beware.dropbear.id.au>
1077
1078 * config/tc-ns32k.h (md_pcrel_adjust): Supply prototype.
1079 * config/tc-ns32k.c (convert_iif, md_parse_option, md_show_usage):
1080 Allow default displacement size to be an option "--disp-size-default".
1081 (md_number_to_disp): Make error messages include value. Use %d to
1082 print integers, not %s.
1083 (fix_new_ns32k): Conditionally set fx_no_overflow so we don't
1084 get duplicate messages sometimes.
1085 (convert_iif): Grow frag to max possible instruction size. Avoid
1086 creating unnecessary fixes.
1087 (md_number_to_field) Add prototype.
1088 (encode_operand, parse, convert_iif, md_fix_pcrel_adjust): Add
1089 prototypes and make static.
1090 (struct addr_mode): Make mode and scaled_mode explicitly signed.
1091 (evaluate_expr): Use resultP argument instead of exprP global.
1092 (get_addr_mode): Quiten compiler warnings.
1093 (encode_operand): eliminate unused variables. Quiten compiler
1094 warnings. Eliminate nul character in format strings.
1095 (parse): argc is unsigned.
1096 (reloc): Type cast index to quieten compiler.
1097 (md_pcrel_adjust, md_apply_fix3): Remove unused variable.
1098 (md_convert_frag): Note unused parameters. Remove unused
1099 variables.
1100 (md_create_long_jump, md_create_short_jump,
1101 md_undefined_symbol_name, md_section_align, tc_gen_reloc): Note
1102 unused parameters.
1103
1104 2002-07-31 Nick Clifton <nickc@redhat.com>
1105
1106 * NEWS: Retroactively add entry for Lars Brinkhoff's contribution
1107 of the PDP-11 and 2.11BSD a.out support.
1108
1109 2002-07-31 Momchil Velikov <velco@fadata.bg>
1110
1111 * config/tc-v850.c (md_assemble): Fix range check for immediate
1112 operand.
1113
1114 2002-07-30 Chris Demetriou <cgd@broadcom.com>
1115
1116 * config/tc-mips.c (mips_cpu_info_table): Clean up entries related
1117 to Broadcom SB-1 core support.
1118
1119 2002-07-31 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1120
1121 * config/tc-mips.c (mips_target_format): Fix formatting.
1122 Add recognition of n32 ABI formats.
1123
1124 2002-07-30 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
1125
1126 * tc-mips.c (load_address): Don't clobber $at when loading a
1127 64-bit address in non-PIC code if noat is in effect.
1128 (macro): Likewise.
1129
1130 2002-07-30 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
1131
1132 * config/tc-mips.c (macro): Use codes 6 and 7 in trap instructions
1133 used in division/multiply macro expansions similarly to how they
1134 are used in the variants with break instructions.
1135 (macro2): Likewise.
1136
1137 2002-07-30 Graeme Peterson <gp@qnx.com>
1138
1139 * configure.in: Add support for arm-*-nto target.
1140 * configure: Regenerate.
1141
1142 2002-07-30 Nick Clifton <nickc@redhat.com>
1143
1144 * config/tc-arm.c (struct literal_pool): Add fields to allow
1145 multiple literal pools to be maintained.
1146 (find_literal_pool): New function.
1147 (find_or_make_literal_pool): New function.
1148 (add_to_literal_pool): Use find_or_make_literal_pool.
1149 (arm_s_text, arm_s_data, arm_s_section): Remove - no longer
1150 needed.
1151 (s_ltorg): Use find_literal_pool.
1152 (arm_cleanup): Dump all literal pools.
1153 * doc/c-arm.texi: Document new behaviour of only dumping literal
1154 pools upon request.
1155
1156 2002-07-26 Alan Modra <amodra@bigpond.net.au>
1157
1158 * config/tc-ppc.c (ppc_set_cpu): Use PPC_OPCODE_64 as the default
1159 rather than PPC_OPCODE_32 for powerpc64*.
1160
1161 2002-07-25 Nick Clifton <nickc@redhat.com>
1162
1163 * po/es.po: Updated Spanish translation.
1164 * po/fr.po: Updated French translation.
1165
1166 2002-07-25 Richard Sandiford <rsandifo@redhat.com>
1167
1168 * doc/c-mips.texi: Remove -mcpu. Document -mabi.
1169 * configure.in (MIPS_CPU_STRING_DEFAULT): New configuration macro.
1170 (USE_E_MIPS_ABI_O32, MIPS_DEFAULT_64BIT): New configuration macros.
1171 * configure, config.in: Regenerate.
1172 * config/tc-mips.c (file_mips_abi): Rename to mips_abi.
1173 (mips_set_options): Remove "abi" field.
1174 (mips_opts): Update accordingly. Replace all uses of mips_opts.abi
1175 with mips_abi.
1176 (mips_cpu): Remove.
1177 (mips_arch_string, mips_arch_info): New vars.
1178 (mips_tune_string, mips_tune_info): New vars.
1179 (ABI_NEEDS_32BIT_REGS, ABI_NEEDS_64BIT_REGS): New macros.
1180 (HAVE_32BIT_GPRS, HAVE_32BIT_FPRS): Don't check the ABI.
1181 (mips_isa_to_str, mips_cpu_to_str): Remove.
1182 (mips_ip): If the selected architecture is a generic ISA rather
1183 than a processor, only mention the ISA level in error messages.
1184 (OPTION_MCPU): Remove.
1185 (OPTION_FP64): New.
1186 (md_longopts): Add -mfp64, remove -mcpu.
1187 (mips_set_option_string): New fn.
1188 (md_parse_option): Make -mipsN update file_mips_isa rather than
1189 mips_opts.isa. Use mips_set_option_string to set -march or -mtune.
1190 Don't let -mgp32 and -mfp32 change the ABI.
1191 (show): Move to end of file. Constify string argument.
1192 (md_show_usage): Move to the end of the file. Read available
1193 architectures from mips_cpu_info_table.
1194 (mips_set_architecture): New fn.
1195 (mips_after_parse_args): Rework. Remove -mcpu handling. -mipsN
1196 is an alias for -march=mipsN. Don't change the ABI based on other
1197 flags. Infer the register size from the ABI as well as the
1198 architecture. Complain about more conflicting arguments.
1199 Unify logic with GCC.
1200 (s_mipsset): Don't change the ABI.
1201 (mips_elf_final_processing): Check USE_E_MIPS_ABI_O32.
1202 (mips_cpu_info_table): Remove Generic-MIPS* entries, keeping just
1203 "mipsN"-type entries. Remove entries that vary only in the
1204 manufacturer's prefix, or that have "000" replaced by "k".
1205 Remove TARGET_CPU entries. Make r2000 entry use CPU_R3000.
1206 (mips_strict_matching_cpu_name_p, mips_matching_cpu_name_p): New fns.
1207 (mips_parse_cpu): New fn.
1208 (mips_cpu_info_from_name, mips_cpu_info_from_cpu): Remove.
1209 (mips_cpu_info_from_isa): Minor formatting tweak.
1210
1211 2002-07-24 Nick Clifton <nickc@redhat.com>
1212
1213 * po/sv.po: Updated Swedish translation.
1214 * po/es.po: Updated Spanish translation.
1215
1216 2002-07-23 Alan Modra <amodra@bigpond.net.au>
1217
1218 * Makefile.am: Run "make dep-am".
1219 * Makefile.in: Regenerate.
1220 * doc/Makefile.in: Regenerate.
1221 * config.in: Regenerate.
1222 * po/POTFILES.in: Regenerate.
1223
1224 2002-07-23 Nick Clifton <nickc@redhat.com>
1225
1226 * po/fr.po: Updated French translation.
1227
1228 2002-07-23 Nick Clifton <nickc@redhat.com>
1229
1230 * CONTRIBUTORS: Ken Raeburn is no longer the maintainer for
1231 GAS.
1232
1233 2002-07-19 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1234
1235 * config/tc-mips.c (mips_need_elf_addend_fixup): Use S_IS_EXTERNAL
1236 instead of S_IS_EXTERN.
1237 (md_estimate_size_before_relax): Likewise.
1238 (mips_fix_adjustable): Likewise.
1239
1240 2002-07-19 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1241
1242 * config/tc-mips.c (mips_pic_level): Remove IRIX4_PIC.
1243
1244 2002-07-19 Miroslav Tichy <tichm9am@ss1000.ms.mff.cuni.cz>
1245 Nick Clifton <nickc@redhat.com>
1246
1247 * cond.c (s_ifdef): Treat a referenced but not yet defined
1248 symbol as if it were undefined, in exactly the same way as
1249 .equiv.
1250
1251 * doc/as.texinfo: Document that .ifdef, .ifndef and .equiv
1252 consider referenced bug not yet defined symbols to be
1253 undefined.
1254
1255 2002-07-18 Denis Chertykov <denisc@overta.ru>
1256 Frank Ch. Eigler <fche@redhat.com>
1257 Alan Lehotsky <alehotsky@cygnus.com>
1258 John Healy <jhealy@redhat.com>
1259 Jeff Johnston <jjohnstn@redhat.com>
1260
1261 * configure.in: Add ip2k configuraton.
1262 * configure: Regenerate.
1263 * Makefile.am: Add ip2k configuraton.
1264 * Makefile.in: Regenerate.
1265 * configure: Regenerate.
1266 * Makefile.in: Regenerate.
1267 * config/tc-ip2k.c: New file.
1268 * config/tc-ip2k.h: New files.
1269 * NEWS: Mention new support.
1270 * doc/Makefile.am (CPU_DOCS): Add c-ip2k.texi.
1271 * doc/Makefile.in: Regenerate.
1272 * doc/all.texi: Set IP2K
1273 * doc/as.texinfo: Add IP2K description.
1274 * doc/c-ip2k.texi: New file.
1275
1276 2002-07-19 Nick Clifton <nickc@cambridge.redhat.com>
1277
1278 * NEWS: Reformat to match style of other NEWS files.
1279
1280 2002-07-17 Jan Hubicka <jh@suse.cz>
1281
1282 * tc-i386.c (i386_align_code): Implement x86_64 neutral code fillers.
1283
1284 2002-07-16 Moritz Jodeit <moritz@jodeit.org>
1285
1286 * config/tc-z8k.c (build_bytes): Correct order of memset args.
1287
1288 2002-07-16 Nick Clifton <nickc@cambridge.redhat.com>
1289
1290 * NEWS: Add 'Changes in 2.13'.
1291
1292 2002-07-15 Matt Fredette <fredette@netbsd.org>
1293
1294 * config/tc-hppa.h (LABELS_WITHOUT_COLONS): Define if TE_NetBSD.
1295
1296 2002-07-12 Alan Modra <amodra@bigpond.net.au>
1297
1298 * config/tc-i386.c (process_suffix): Merge CODE_64BIT JumpByte
1299 case with non CODE_64BIT case. Don't warn on "qword ptr" if
1300 not CODE_64BIT.
1301
1302 2002-07-11 Alan Modra <amodra@bigpond.net.au>
1303
1304 * config/tc-ppc.c (ppc_elf_frob_symbol): Delete.
1305 (ppc_frob_file_before_adjust): New function.
1306 * config/tc-ppc.h (tc_frob_symbol): Don't define.
1307 (ppc_elf_frob_symbol): Don't declare.
1308 (tc_frob_file_before_adjust): Define.
1309 (ppc_frob_file_before_adjust): Declare.
1310
1311 * config/tc-ppc.c (md_pseudo_table): Warning fix.
1312 (ppc_cpu): Make it unsigned long to agree with struct powerpc_opcode
1313 flags.
1314 (ppc_size): Delete.
1315 (ppc_xcoff64): Rename to ppc_obj64.
1316 (md_parse_option <m>): Encode old ppc_size value in ppc_cpu.
1317 (ppc_set_cpu): Set PPC_OPCODE_32 too.
1318 (ppc_arch): Use ppc_obj64 instead of ppc_size to select bfd_mach_ppc64
1319 or bfd_mach_ppc.
1320 (ppc_target_format): Use ppc_obj64 to select format.
1321 (md_begin): Adjust for PPC_OPCODE_32/64 in ppc_cpu.
1322 (ppc_insert_operand): Use ppc_obj64 instead of ppc_size.
1323 (ppc_elf_suffix): Likewise. Don't depend on BFD_DEFAULT_TARGET_SIZE.
1324 (tc_frob_symbol): Likewise.
1325 (md_assemble): Use ppc_obj64 instead of ppc_size. Don't depend on
1326 BFD_DEFAULT_TARGET_SIZE.
1327 (ppc_tc): Likewise.
1328 (ppc_is_toc_sym): Likewise.
1329 (md_apply_fix3): Likewise.
1330 * config/tc-ppc.h (TC_FORCE_RELOCATION): Don't depend on
1331 BFD_DEFAULT_TARGET_SIZE.
1332 (ELF_TC_SPECIAL_SECTIONS): Likewise.
1333 (tc_frob_symbol): Likewise.
1334
1335 2002-07-09 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1336
1337 * config/tc-mips.c (macro_build): Handle MIPS16 insns.
1338 (mips_ip): Likewise.
1339
1340 2002-07-09 Alan Modra <amodra@bigpond.net.au>
1341
1342 * config/tc-i386.c (md_pseudo_table <file>): Warning fix.
1343 (BFD_RELOC_8, BFD_RELOC_8_PCREL): Define for non-BFD.
1344 (md_apply_fix3): Formatting. Remove redundant test.
1345 (tc_gen_reloc): Remove redundant code.
1346 (tc_i386_force_relocation): Delete. Movy body of function to..
1347 * config/tc-i386.h (TC_FORCE_RELOCATION): .. here.
1348
1349 2002-07-09 Federico G. Schwindt <fgsch@olimpo.com.br>
1350
1351 * configure.in: Add hppa-*-openbsd* target, change
1352 alpha*-*-openbsd* format to elf, and use elf for sparc-*-openbsd*
1353 with sparc64 cpu.
1354 * configure: Regenerate.
1355
1356 2002-07-08 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
1357
1358 * config/tc-mips.c (macro): Shift the 32-bit address range
1359 accessible with a lone "lui" down by 32768.
1360
1361 2002-07-08 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
1362
1363 * config/tc-mips.c (load_address): Use non-trapping "daddu"
1364 instead of "dadd" in address calculations.
1365 (macro): Likewise.
1366
1367 2002-07-08 Alan Modra <amodra@bigpond.net.au>
1368
1369 * config/tc-i386.c (process_suffix): Remove intel mode movsx and
1370 movzx fudges.
1371 (md_assemble): Instead, zap the suffix here.
1372
1373 2002-07-03 Nick Clifton <nickc@cambridge.redhat.com>
1374
1375 * NEWS: Remove next release number until the release is actually
1376 upon us.
1377
1378 2002-07-03 Alan Modra <amodra@bigpond.net.au>
1379
1380 * Makefile.am (check-DEJAGNU): Revert 2002-06-25 change.
1381 Run "make dep-am".
1382 * Makefile.in: Regenerate.
1383
1384 2002-07-02 Martin Schwidefsky <schwidefsky@de.ibm.com>
1385
1386 * config/tc-s390.c (tc_s390_fix_adjustable): Prevent any adjustment
1387 to symbols in merge sections, even non pc-relative ones.
1388
1389 2002-06-29 Stephane Carrez <stcarrez@nerim.fr>
1390
1391 * config/tc-m68hc11.h (m68hc11_listing_header): Fix warning.
1392
1393 2002-06-29 Stephane Carrez <stcarrez@nerim.fr>
1394
1395 * config/tc-m68hc11.h (ELF_TC_SPECIAL_SECTIONS): New sections
1396 .softregs and .eeprom.
1397
1398 2002-06-28 David O'Brien <obrien@FreeBSD.org>
1399
1400 * NEWS: Note the next release is 2.13.
1401
1402 2002-06-26 Nick Clifton <nickc@cambridge.redhat.com>
1403
1404 * po/tr.po: New translation imported.
1405
1406 2002-06-26 Elias Athanasopoulos <eathan@otenet.gr>
1407
1408 * ecoff.c: (get_tag): Replace strcpy with xstrdup.
1409 (ecoff_directive_def): Likewise.
1410 (ecoff_directive_tag): Likewise.
1411 * listing.c (file_info): Likewise.
1412 * hash.c (what): Likewise.
1413
1414 2002-06-25 H.J. Lu <hjl@gnu.org>
1415
1416 * Makefile.am (check-DEJAGNU): Set LC_ALL=C and export it.
1417 * Makefile.in: Regenerated.
1418
1419 2002-06-19 Dhananjay R. Deshpande <dhananjayd@kpit.com>
1420
1421 * config/tc-sh.c (get_specific): Revert 2002-05-01 change.
1422 (assemble_ppi): Generate warning if the same register is used
1423 twice as destination in the same padd / pmuls instruction.
1424
1425 2002-06-18 Dave Brolley <brolley@redhat.com>
1426
1427 From Catherine Moore, Michael Meissner, Richard Sandiford, Dave Brolley
1428 * po/POTFILES.in: Add tc-frv.c, tc-frv.h.
1429 * configure.in: Support frv-*-*.
1430 * Makefile.am (CPU_TYPES): Add frv.
1431 (TARGET_CPU_CFILES): Add tc-frv.c.
1432 (TARGET_CPU_HFILES): Add tc-frv.h.
1433 (DEPTC_frv_coff): New variable.
1434 (DEPTC_frv_elf): New variable.
1435 (DEPOBJ_frv_coff): New variable.
1436 (DEPOBJ_frv_elf): New variable.
1437 (DEP_frv_coff): New variable.
1438 (DEP_frv_elf): New variable.
1439 * tc-frv.c: New file.
1440 * tc-frv.h: New file.
1441
1442 2002-06-17 Catherine Moore <clm@redhat.com>
1443
1444 * config/obj-elf.h (TARGET_SYMBOL_FIELDS): Conditionally define.
1445
1446 2002-06-17 J"orn Rennecke <joern.rennecke@superh.com>
1447
1448 * config/tc-sh.c (assemble_ppi): Initialize reg_n.
1449
1450 2002-06-17 Tom Rix <trix@redhat.com>
1451
1452 * config/tc-i370.h (tc_comment_chars): Define for i370-elf.
1453
1454 2002-06-14 H.J. Lu <hjl@gnu.org>
1455 Daniel Jacobowitz <drow@mvista.com>
1456
1457 * dwarf2dbg.h (dwarf2_directive_file): Return char *.
1458 * dwarf2dbg.c (dwarf2_directive_file): Return filename.
1459 * config/tc-mips.c (s_mips_file): Call s_app_file_string
1460 and new_logical_line for the first .file directive.
1461 * read.c (s_app_file_string): New function.
1462 (s_app_file): Call it.
1463 * read.h (s_app_file_string): Add declaration.
1464
1465 2002-06-14 Daniel Jacobowitz <drow@mvista.com>
1466
1467 * configure.in: Remove MIPS_STABS_ELF.
1468 * configure: Regenerated.
1469 * config.in: Regenerated.
1470 * config/obj-elf.h (ECOFF_DEBUGGING): Define to mips_flag_mdebug
1471 for MIPS targets.
1472 * config/tc-mips.c (mips_pseudo_table): Remove #ifdef around
1473 ".extern".
1474 (pdr_seg): Declare unconditionally.
1475 (md_begin): Always generate .pdr unless ECOFF_DEBUGGING or not ELF.
1476 (s_mips_end): Likewise. Generate stabs function markers.
1477 (s_mips_ent): Generate stabs function markers.
1478 (s_mips_frame): Always generate .pdr unless ECOFF_DEBUGGING or not
1479 ELF.
1480 (s_mips_mask): Likewise.
1481 (mips_flag_mdebug): New.
1482 (md_longopts): Add "mdebug" and "no-mdebug".
1483 (md_parse_options): Add OPTION_MDEBUG and OPTION_NO_MDEBUG.
1484 (mips_after_parse_args): Set mips_flag_mdebug.
1485 * doc/as.texinfo: Add "-mdebug" and "-no-mdebug" for MIPS.
1486
1487 2002-06-13 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
1488
1489 * config/tc-mips.c (md_apply_fix3): Don't subtract the symbol's
1490 value twice for RELA relocations.
1491
1492 2002-06-12 Ben Elliston <bje@redhat.com>
1493
1494 * symbols.c (resolve_symbol_value): Initialise final_val.
1495
1496 * subsegs.c (subsegs_print_statistics): Cast frchp to void *.
1497
1498 2002-06-11 Tom Rix <trix@redhat.com>
1499
1500 * config/tc-ppc.c (ppc_subseg_align): Delete.
1501 (ppc_change_csect): Default csect align is 2.
1502 * config/tc-ppc.h (SUB_SEGMENT_ALIGN): Delete
1503
1504 2002-06-09 Marek Michalkiewicz <marekm@amelek.gda.pl>
1505
1506 * config/tc-avr.c (mcu_types): Update.
1507
1508 2002-06-08 Matt Thomas <matt@3am-software.com>
1509
1510 * configure.in (vax-*-netbsdelf*, vax-*-netbsdaout*)
1511 (vax-*-netbsd*): New targets.
1512 * configure: Regenerate.
1513 * config/aout_gnu.h (enum machine_type): Add M_VAX4K_NETBSD.
1514 * config/tc-vax.c: Add support for ELF and PIC.
1515 (flag_want_pic): New flag.
1516 (float_cons): Fix prototype.
1517 (md_apply_fix3): Adjust for BFD_ASSEMBLER.
1518 (md_assemble): Introduce a new is_absolute local, and use it
1519 rather than repeating the test. Make fatal errors actually
1520 fatal by using as_fatal as appropriate. Adjust for BFD_ASSEMBLER.
1521 Add support for ELF. Add support for PIC.
1522 (md_convert_frag): Adjust for BFD_ASSEMBLER.
1523 (tc_aout_fix_to_chars): Only include if OBJ_AOUT and not
1524 BFD_ASSEMBLER.
1525 (vax_reg_parse): Make the % register prefix mandatory for ELF,
1526 optional for a.out, and not allowed for VMS. Adjust all callers.
1527 (md_create_short_jump): Add ATTRIBUTE_UNUSED to unused arguments.
1528 (md_create_long_jump): Likewise.
1529 (md_undefined_symbol): Likewise.
1530 (md_section_align): Likewise.
1531 (md_shortopts): Allow -k and -K for ELF.
1532 (md_parse_option): Set flag_want_pic if -k or -K.
1533 (tc_headers_hook): New function if OBJ_AOUT and not BFD_ASSEMBLER.
1534 (tc_gen_reloc): New function if BFD_ASSEMBLER.
1535 * config/tc-vax.h (tc_headers_hook): Remove.
1536 (TARGET_FORMAT): Set according to object format and target
1537 environment.
1538 (BFD_ARCH, TARGET_ARCH): Define.
1539 (NO_RELOC): Adjust for BFD_ASSEMBLER.
1540 (TC_RELOC_RTSYM_LOC_FIXUP, TC_FIX_ADJUSTABLE)
1541 (tc_fix_adjustable): Define if BFD_ASSEMBLER.
1542 * config/vax-inst.h (VAX_JSB, VAX_CALLS, VAX_CALLG): Define.
1543
1544 2002-06-08 Alan Modra <amodra@bigpond.net.au>
1545
1546 * Makefile.am: Run "make dep-am".
1547 * Makefile.in: Regenerate.
1548
1549 * as.c: Replace CONST with const.
1550 * write.c: Likewise.
1551 * config/obj-coff.c: Likewise.
1552 * config/tc-a29k.c: Likewise.
1553 * config/tc-arm.c: Likewise.
1554 * config/tc-dlx.c: Likewise.
1555 * config/tc-h8300.c: Likewise.
1556 * config/tc-h8500.c: Likewise.
1557 * config/tc-i370.c: Likewise.
1558 * config/tc-i860.c: Likewise.
1559 * config/tc-i960.c: Likewise.
1560 * config/tc-m68hc11.c: Likewise.
1561 * config/tc-m68k.c: Likewise.
1562 * config/tc-m88k.c: Likewise.
1563 * config/tc-mcore.c: Likewise.
1564 * config/tc-mips.c: Likewise.
1565 * config/tc-ns32k.c: Likewise.
1566 * config/tc-pdp11.c: Likewise.
1567 * config/tc-pj.c: Likewise.
1568 * config/tc-s390.c: Likewise.
1569 * config/tc-sh.c: Likewise.
1570 * config/tc-sparc.c: Likewise.
1571 * config/tc-tahoe.c: Likewise.
1572 * config/tc-tic80.c: Likewise.
1573 * config/tc-v850.c: Likewise.
1574 * config/tc-vax.c: Likewise.
1575 * config/tc-w65.c: Likewise.
1576 * config/tc-z8k.c: Likewise.
1577
1578 2002-06-08 Daniel Jacobowitz <drow@mvista.com>
1579
1580 Based on patch from Matt Green:
1581 * config/obj-elf.h (ECOFF_DEBUGGING): Make configurable.
1582 * config/tc-mips.c (s_mips_file): Renamed from s_file.
1583 (s_mips_loc): New function.
1584 (mips_nonecoff_pseudo_table): Call them.
1585 (append_insn): Call dwarf2_emit_insn.
1586
1587 2002-06-08 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1588
1589 * config/tc-mips.c (mips_opts): Fix comment, all ASE fields are set
1590 to -1.
1591 (file_ase_mips16): New veriable.
1592 (mips_eabi64): Remove.
1593 (CPU_HAS_MIPS16): New define.
1594 (CPU_HAS_MDMX): Fix data type.
1595 (md_begin): Code cleanup. Use file_ase_mips16.
1596 (mips_elf_final_processing): Handle mips16 header flag.
1597 Handle EABI flag without intermediate variable.
1598
1599 2002-06-08 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1600
1601 * doc/as.texinfo: Update MIPS documentation.
1602
1603 2002-06-08 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1604
1605 * config/tc-mips.c: Add define for $zero register.
1606 (md_begin): Add $zero as alias name for $0.
1607 (insn_uses_reg): Use ZERO define.
1608 (mips_ip): Add $zero as alias name for $0.
1609 (mips16_ip): Likewise.
1610 (s_cplocal): Demand empty rest of input line.
1611 (tc_get_register): Likewise. Add support for $kt0, kt1 register
1612 names. Use ZERO define. Fix input_line_pointer progress.
1613
1614 2002-06-07 Alan Modra <amodra@bigpond.net.au>
1615
1616 * symbols.c: Replace CONST by const throughout.
1617 (symbol_find_exact): Split out from..
1618 (symbol_find_base): ..here.
1619 * symbols.h: Replace CONST by const throughout.
1620 (symbol_find_exact): Declare.
1621 * config/obj-elf.c: #include "struc-symbol.h".
1622 (elf_frob_file): If group name matches an exported symbol, use that
1623 symbol for the signature and ".group" as the section name.
1624
1625 2002-06-06 J"orn Rennecke <joern.rennecke@superh.com>
1626
1627 * config/tc-sh.c (parse_at): @(symbol,pc) is A_DISP_PC again,
1628 but warn about it.
1629 * testsuite/gas/sh/pcrel.s: Also test @(symbol,pc).
1630 * testsuite/gas/sh/pcrel.d: Update.
1631 * testsuite/gas/sh/pcrel.l: New file.
1632
1633 2002-06-06 Daniel Jacobowitz <drow@mvista.com>
1634
1635 * tc-mips.c (mips_after_parse_args): Always set mips_opts.ase_mips3d
1636 and mips_opts.ase_mdmx if they are uninitialized.
1637
1638 2002-06-06 John David Anglin <dave@hiauly1.hia.nrc.ca>
1639
1640 * gas/config/tc-hppa.c (pa_ip): Replace "L$0\001" with FAKE_LABEL_NAME.
1641 (hppa_force_relocation): Check if a stub just before the start symbol
1642 of the last call_info is reachable before forcing relocation. Fix
1643 typo.
1644
1645 2002-06-04 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
1646
1647 * config/tc-mips.c (mips_after_parse_args): New function.
1648 (md_begin): Move processing of defaults to mips_after_parse_args.
1649 config/tc-mips.h (md_after_parse_args): Define.
1650
1651 2002-06-04 Jason Thorpe <thorpej@wasabisystems.com>
1652
1653 * configure.in (sh5*): Set cpu_type to sh64 and endian to big.
1654 (sh5le*, sh64le*): Set cpu_type to sh64 and endian to little.
1655 (sh5*-*-netbsd*, sh64*-*-netbsd*): New targets.
1656 * configure: Regenerate.
1657 * config/tc-sh64.c (sh64_target_format): Add support for NetBSD
1658 environment.
1659
1660 2002-06-04 Jason Thorpe <thorpej@wasabisystems.com>
1661
1662 * config/tc-sh64.h (MD_PCREL_FROM_SECTION): Undef before redefining.
1663
1664 2002-06-04 Alan Modra <amodra@bigpond.net.au>
1665
1666 * config/obj-elf.c (obj_elf_change_section): Set and check elf
1667 linkonce flag. Print all warnings.
1668 (obj_elf_section): Parse ",comdat" for groups.
1669 (elf_frob_file): Set SEC_LINK_ONCE on COMDAT groups. Check
1670 consistency of comdat flag.
1671
1672 2002-06-02 Richard Henderson <rth@redhat.com>
1673
1674 * config/tc-alpha.c (alpha_adjust_symtab_relocs): Fix thinko
1675 with LITERALs without sequence numbers.
1676
1677 2002-06-01 Richard Henderson <rth@redhat.com>
1678
1679 * config/tc-alpha.c: Move LITUSE constants to "elf/alpha.h".
1680 Rename them LITUSE_ALPHA_*.
1681
1682 2002-05-31 Shrinivas Atre <ShrinivasA@kpit.com>
1683
1684 * config/tc-h8300.c (get_operand): Allow stm.l and ldm.l insns to
1685 accept parentheses enclosed register lists.
1686
1687 2002-05-31 Alan Modra <amodra@bigpond.net.au>
1688
1689 * Makefile.am: Run "make dep-am".
1690 * Makefile.in: Regenerate.
1691 * po/POTFILES.in: Regenerate.
1692
1693 2002-05-31 Graeme Peterson <gp@qnx.com>
1694
1695 * configure.in: Add i386-*-nto-qnx*.
1696 * configure: Regenerate.
1697
1698 2002-05-31 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1699
1700 * config/tc-mips.c (mips_ip): Use unsigned long values for
1701 warning output.
1702
1703 2002-05-31 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1704
1705 * config/tc-mips.c (s_cpsetup): Fix initialization of
1706 mips_cpreturn_register and mips_cpreturn_offset.
1707
1708 2002-05-31 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1709
1710 * config/tc-mips.c (s_cpsetup): Fix comment.
1711
1712 2002-05-31 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1713
1714 * config/tc-mips.c (md_begin): Add $ra as alias name for $31.
1715 (mips_ip): Likewise.
1716 (mips16_ip): Likewise.
1717 (tc_get_register): Likewise.
1718
1719 2002-05-30 Chris G. Demetriou <cgd@broadcom.com>
1720 Ed Satterthwaite <ehs@broadcom.com>
1721
1722 * config/tc-mips.c (mips_set_options): New "ase_mdmx" member.
1723 (mips_opts): Initialize "ase_mdmx" member.
1724 (file_ase_mdmx): New variable.
1725 (CPU_HAS_MDMX): New macro.
1726 (md_begin): Initialize mips_opts.ase_mdmx and file_ase_mdmx
1727 based on command line options and configuration defaults.
1728 (macro_build): Note in comment that use of MDMX in macros is
1729 not currently allowed.
1730 (validate_mips_insn): Add support for the "O", "Q", "X", "Y", and
1731 "Z" MDMX operand types.
1732 (mips_ip): Accept MDMX instructions if mips_opts.ase_mdmx is set,
1733 and add support for the "O", "Q", "X", "Y", and "Z" MDMX operand
1734 types.
1735 (OPTION_MDMX, OPTION_NO_MDMX, md_longopts, md_parse_option):
1736 Add support for "-mdmx" and "-no-mdmx" options.
1737 (OPTION_ELF_BASE): Move to accomodate new options.
1738 (s_mipsset): Support ".set mdmx" and ".set nomdmx".
1739 (mips_elf_final_processing): Set MDMX ASE ELF header flag if
1740 file_ase_mdmx was set.
1741 * doc/as.texinfo: Document -mdmx and -no-mdmx options.
1742 * doc/c-mips.texi: Likewise, and document ".set mdmx" and ".set
1743 nomdmx" directives.
1744
1745 2002-05-31 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1746
1747 * config/tc-mips.c (OPTION_NO_M7000_HILO_FIX): Rename to
1748 OPTION_MNO_7000_HILO_FIX. Add alternate "mno-fix7000"
1749 command line switch conforming to gcc conventions.
1750 * doc/c-mips.texi: Document -mno-fix7000 instead of no-mfix-7000.
1751
1752 2002-05-31 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1753
1754 * config/tc-mips.c (macro_build_jalr): New Function.
1755 (md_begin): NewABI uses big GOTs.
1756 (macro_build): Recognize BFD_RELOC_MIPS_GOT_DISP,
1757 BFD_RELOC_MIPS_GOT_PAGE, BFD_RELOC_MIPS_GOT_OFST as valid.
1758 (load_address): Add some NewABI PIC support.
1759 (macro): Likewise.
1760 (md_apply_fix): Special handling for BFD_RELOC_MIPS_JALR.
1761 (tc_gen_reloc): Don't encode NewABI vtables in REL relocations.
1762
1763 2002-05-31 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1764
1765 * config/tc-mips.c (load_address): Use mips_gp_register instead
1766 of hardcoded value. Remove dbl parameter, use HAVE_32BIT_ADDRESSES
1767 instead.
1768 (macro): Use mips_gp_register instead of hardcoded value.
1769
1770 2002-05-30 Richard Henderson <rth@redhat.com>
1771
1772 * expr.h (operatorT): Add O_md17..O_md32.
1773 * config/tc-alpha.c (O_lituse_tlsgd, O_lituse_tlsldm, O_tlsgd,
1774 O_tlsldm, O_gotdtprel, O_dtprelhi, O_dtprello, O_dtprel, O_gottprel,
1775 O_tprelhi, O_tprello, O_tprel): New.
1776 (USER_RELOC_P, alpha_reloc_op_tag, debug_exp): Include them.
1777 (DUMMY_RELOC_LITUSE_TLSGD, DUMMY_RELOC_LITUSE_TLSLDM): New.
1778 (LITUSE_TLSGD, LITUSE_TLSLDM): New.
1779 (struct alpha_reloc_tag): Add master, saw_tlsgd, saw_tlsld,
1780 saw_lu_tlsgd, saw_lu_tlsldm. Make multi_section_p a bit field.
1781 (md_apply_fix3): Handle TLS relocations.
1782 (alpha_force_relocation, alpha_fix_adjustable): Likewise.
1783 (alpha_adjust_symtab_relocs): Sort LITERAL relocs after the
1784 associated TLS reloc. Check lituse_tls relocs match up.
1785 (emit_insn): Handle TLS relocations.
1786 (ldX_op): Remove.
1787
1788 * doc/c-alpha.texi: Add docs for tls relocations.
1789
1790 2002-05-30 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1791
1792 * config/tc-mips.c (mips_gprel_offset): New variable.
1793 (s_gpvalue): Use it.
1794
1795 2002-05-30 Diego Novillo <dnovillo@redhat.com>
1796
1797 * gas/config/tc-d10v.c (check_resource_conflict): Only check
1798 write-write conflicts.
1799 (md_assemble): Reformat introductory comment.
1800 (parallel_ok): Prevent packing only if the first
1801 instruction cannot be packed.
1802
1803 2002-05-30 Jason Eckhardt <jle@redhat.com>
1804 Tom Rix <trix@redhat.com>
1805
1806 * config/tc-d10v.c (build_insn): Check for immediates.
1807
1808 2002-05-28 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1809
1810 * config/tc-mips.c: Replace GP in comments by $gp.
1811 (mips_big_got): Initialize.
1812 (mips_trap): Initialize.
1813 (load_address): Use mips_gp_register instead of hardcoded value.
1814 Remove dbl parameter, use HAVE_32BIT_ADDRESSES instead.
1815 (macro): Use mips_gp_register instead of hardcoded value.
1816 (macro2): Change load_address calls.
1817 (md_pcrel_from): Comment formatting.
1818 (s_cpload): Use mips_gp_register instead of hardcoded value.
1819 (s_cprestore): Likewise. Comment formatting.
1820 (s_gpword): Fix data type.
1821 (s_cpadd): Use mips_gp_register instead of hardcoded value.
1822 (nopic_need_relax): Replace GP in comments by $gp.
1823 (mips_elf_final_processing): Better comment.
1824
1825 2002-05-28 Kuang Hwa Lin <kuang@sbcglobal.net>
1826
1827 * configure.in: Add DLX configuraton
1828 * Makefile.am: Add DLX configuraton
1829 * configure: Regenerate.
1830 * Makefile.in: Regenerate.
1831 * config/tc-dlx.c: New file.
1832 * config/tc-dlx.h: New files.
1833 * NEWS: Mention new support.
1834
1835 2002-05-27 Nick Clifton <nickc@cambridge.redhat.com>
1836
1837 * config/obj-coff.c (write_object_file): Add missing semicolon.
1838
1839 2002-05-26 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1840
1841 * config/tc-mips.c (mips_emit_delays): Replace magic constant for RA
1842 by the define. Remove superfluous check of mips_opts.mips16.
1843 (append_insn): Likewise. Canonicalize variable increments.
1844 (macro_build): Canonicalize variable increments.
1845 (macro_build_lui): Likewise.
1846 (load_register): Likewise.
1847 (load_address): Move pointer initialization.
1848 (macro): Move pointer to a more local scope. Canonicalize variable
1849 increments. Better comments. Replace magic constant for RA by the
1850 define.
1851 (macro2): Replace magic constant for RA by the define. Canonicalize
1852 variable increments.
1853 (mips_ip): Canonicalize variable increments.
1854 (mips16_ip): Replace magic constant for RA by the define.
1855 (my_getSmallParser): Canonicalize variable increments/decrements.
1856 (my_getPercentOp): Likewise.
1857 (my_getSmallExpression): Likewise.
1858 (s_align): Likewise.
1859 (s_mipsset): Likewise.
1860 (s_cpsetup): Likewise.
1861 (s_insn): Remove superfluous check of mips_opts.mips16.
1862 (s_mips_stab): Likewise.
1863 (mips_handle_align): Canonicalize variable increments.
1864 (s_mips_ent): Likewise.
1865 (s_mips_end): Add comment.
1866
1867 2002-05-26 Jason Thorpe <thorpej@wasabisystems.com>
1868
1869 * configure.in: Use ns32k-*-netbsd* instead of ns32k-pc532-netbsd*.
1870 * configure: Regenerate.
1871
1872 2002-05-25 Alan Modra <amodra@bigpond.net.au>
1873
1874 * Makefile.am (OBJS): Depend on ansidecl.h and fopen-same.h.
1875 * Makefile.in: Regenerate.
1876 * dep-in.sed: Reorder to match OBJS in Makefile.am.
1877 * configure.in (ALL_OBJ_DEPS): Add symcat.h when need_bfd.
1878 * configure: Regenerate.
1879 * as.h: Use #include "" instead of <> for local header files.
1880 * flonum-konst.c: Likewise.
1881 * flonum-mult.c: Likewise.
1882 * gasp.c: Likewise.
1883 * listing.c: Likewise.
1884 * config/tc-ia64.h: Likewise.
1885 * config/tc-v850.h: Likewise.
1886
1887 2002-05-24 TAMURA Kent <kent@netbsd.org>
1888
1889 * configure.in: Add a target for i386-netbsdpe.
1890 * configure: Regenerate.
1891
1892 2002-05-23 Jakub Jelinek <jakub@redhat.com>
1893
1894 * config/obj-elf.c (elf_common): Renamed from obj_elf_common.
1895 (obj_elf_common): Call elf_common.
1896 (obj_elf_tls_common): New function.
1897 (elf_pseudo_tab): Support .tls_common.
1898 (special_sections): Add .tdata and .tbss.
1899 (obj_elf_change_section): Set SEC_THREAD_LOCAL for SHF_TLS
1900 sections.
1901 (obj_elf_parse_section_letters): Support T in section flags (SHF_TLS).
1902 (obj_elf_parse_section_letters): Include T in error message.
1903 * config/tc-ppc.c (ppc_section_letter): Likewise.
1904 * config/tc-alpha.c (alpha_elf_section_letter): Likewise.
1905 (tc_gen_reloc): Handle SEC_THREAD_LOCAL the same way as
1906 SEC_MERGE.
1907 * config/tc-sparc.c (md_apply_fix3): Likewise.
1908 * config/tc-i386.c (tc_i386_fix_adjustable): Add TLS relocs.
1909 Define them if not BFD_ASSEMBLER.
1910 (lex_got): Support @TLSGD, @TLSLDM, @GOTTPOFF, @TPOFF, @DTPOFF
1911 and @NTPOFF.
1912 (md_apply_fix3): Add TLS relocs.
1913 * config/tc-ia64.c (enum reloc_func): Add FUNC_DTP_MODULE,
1914 FUNC_DTP_RELATIVE, FUNC_TP_RELATIVE, FUNC_LT_DTP_MODULE,
1915 FUNC_LT_DTP_RELATIVE, FUNC_LT_TP_RELATIVE.
1916 (pseudo_func): Support @dtpmod(), @dtprel() and @tprel().
1917 (ia64_elf_section_letter): Include T in error message.
1918 (md_begin): Support TLS operators.
1919 (md_operand): Likewise.
1920 (ia64_gen_real_reloc_type): Support TLS relocs.
1921 * testsuite/gas/i386/tlspic.s: New file.
1922 * testsuite/gas/i386/tlsd.s: New file.
1923 * testsuite/gas/i386/tlsnopic.s: New file.
1924 * testsuite/gas/i386/tlsd.d: New file.
1925 * testsuite/gas/i386/tlsnopic.d: New file.
1926 * testsuite/gas/i386/tlspic.d: New file.
1927 * testsuite/gas/i386/i386.exp: Add tlsd, tlsnopic and tlspic tests.
1928 * testsuite/gas/ia64/tls.s: New file.
1929 * testsuite/gas/ia64/tls.d: New file.
1930 * testsuite/gas/ia64/ia64.exp: Add tls test.
1931 * write.c (adjust_reloc_syms): Don't change symbols in
1932 SEC_THREAD_LOCAL sections to STT_SECTION + addend.
1933
1934 2002-05-23 Nick Clifton <nickc@cambridge.redhat.com>
1935
1936 * config/tc-arm.c (md_apply_fix3): For the Thumb BLX reloc
1937 round the relocation up rather than down.
1938
1939 2002-05-23 Nick Clifton <nickc@cambridge.redhat.com>
1940
1941 * config/obj-coff.c (obj_coff_section): Silently ignore an 'a'
1942 flag.
1943 * doc/as.texinfo: Document that the COFF version of .section
1944 ignores the 'a' flag.
1945
1946 2002-05-23 Alan Modra <amodra@bigpond.net.au>
1947
1948 * config/tc-alpha.c (assemble_tokens): Protect use of
1949 ALPHA_RELOC_TABLE with #ifdef RELOC_OP_P.
1950
1951 * write.c (size_seg): Check adjustment to last frag.
1952 (SUB_SEGMENT_ALIGN): If HANDLE_ALIGN defined, pad out last frag to
1953 section alignment.
1954 * config/obj-coff.c (SUB_SEGMENT_ALIGN): Likewise.
1955 * config/obj-ieee.c (SUB_SEGMENT_ALIGN): Likewise.
1956 (write_object_file): Invoke md_do_align if available, and use
1957 frag_align_code on text sections.
1958 * config/obj-vms.h (SUB_SEGMENT_ALIGN): Now two args.
1959 * config/tc-m88k.h (SUB_SEGMENT_ALIGN): Likewise.
1960 * config/tc-ppc.h (SUB_SEGMENT_ALIGN): Likewise.
1961 * config/tc-sh.h (SUB_SEGMENT_ALIGN): Likewise.
1962 * config/tc-i386.h (SUB_SEGMENT_ALIGN): Likewise. Define for
1963 BFD_ASSEMBLER too.
1964
1965 2002-05-22 H.J. Lu <hjl@gnu.org>
1966
1967 * dwarf2dbg.c (dwarf2_directive_loc): Call listing_source_file
1968 for source file.
1969
1970 2002-05-22 Nick Clifton <nickc@cambridge.redhat.com>
1971
1972 * config/tc-arm.c (arm_s_section): Enable for COFF builds as well
1973 as ELF builds.
1974
1975 2002-05-22 H.J. Lu <hjl@gnu.org>
1976
1977 * dwarf2dbg.c (dwarf2_emit_insn): Emit only one line symbol
1978 for one .loc for compiler.
1979
1980 2002-05-22 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1981
1982 * config/tc-mips.c (macro): Relax warning, it's toot strict for
1983 embedded-PIC.
1984
1985 2002-05-22 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1986
1987 * config/tc-mips.c (macro2): Add 64 bit drol, dror macros.
1988 Optimize the rotate by zero case.
1989
1990 2002-05-21 Nick Clifton <nickc@cambridge.redhat.com>
1991
1992 * configure.in: Remove accidental enabling of bfd_gas=yes for
1993 sh-coff targets.
1994 * configure: Regenerate.
1995
1996 2002-05-18 Kazu Hirata <kazu@cs.umass.edu>
1997
1998 * app.c: Fix formatting.
1999 * as.c: Likewise.
2000 * ehopt.c: Likewise.
2001 * expr.c: Likewise.
2002 * input-file.c: Likewise.
2003 * listing.c: Likewise.
2004 * macro.h: Likewise.
2005 * stabs.c: Likewise.
2006 * symbols.c: Likewise.
2007
2008 2002-05-17 Alan Modra <amodra@bigpond.net.au>
2009
2010 * config/obj-generic.c: Delete file.
2011 * config/obj-generic.h: Likewise.
2012
2013 2002-05-16 Marek Michalkiewicz <marekm@amelek.gda.pl>
2014
2015 * config/tc-avr.c (mcu_types): Update for new devices.
2016
2017 2002-05-15 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
2018
2019 * config/tc-mips.c (macro): Warn about wrong la/dla use.
2020
2021 2002-05-15 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
2022
2023 * config/tc_mips.c (s_cpsetup): Fix completely bogus code which had
2024 worked sometimes by accident. Fix copy&paste comment.
2025
2026 2002-05-15 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
2027
2028 * config/tc-mips.c (md_begin): Fix .reginfo and .MIPS.option section
2029 alignment for NewABI. Let n32 use .reginfo. Remove useless casts.
2030 (mips_elf_final_processing): Let n32 use .reginfo.
2031
2032 2002-05-15 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
2033
2034 * config/tc-mips.c (append_insn): Fix too small range of variable.
2035
2036 2002-05-14 Nick Clifton <nickc@cambridge.redhat.com>
2037
2038 * config/tc-arm.c (arm_cleanup): Remove redundant call to
2039 listing_prev_line().
2040
2041 2002-05-13 Nick Clifton <nickc@cambridge.redhat.com>
2042
2043 * config/tc-arm.c (md_assemble): Remove redundant call to
2044 listing_prev().
2045
2046 * dwarf2dbg.c (dwarf2_emit_insn): Do not reset
2047 loc_directive_seen.
2048
2049 * stabs.c (s_stab_generic): Fix grammatical error in warning
2050 message.
2051
2052 2002-05-13 Alan Modra <amodra@bigpond.net.au>
2053
2054 * write.c (subsegs_finish): Don't specially align last subseg.
2055
2056 2002-05-11 Nick Clifton <nickc@cambridge.redhat.com>
2057
2058 * stabs.c (s_stab_generic): Warn about a description field that is
2059 too big.
2060
2061 * config/obj-coff.c: Fix compile time warnings when compiling
2062 without BFD_ASSEMBLER defined.
2063 Fix formatting.
2064
2065 * config/tc-sh.c (md_pcrel_from): Define for use with sh-hms
2066 target.
2067 (md_pcrel_from_section): Use md_pcrel_from().
2068
2069 2002-05-11 Bruno Haible <bruno@clisp.org>
2070
2071 * dwarf2dbg.c (dwarf2_emit_insn): Use the 'current' struct filled
2072 by dwarf2_directive_loc, instead of calling dwarf2_where.
2073
2074 2002-05-11 Kazu Hirata <kazu@cs.umass.edu>
2075
2076 * config/obj-coff.h: Fix formatting.
2077 * config/tc-mcore.c: Likewise.
2078 * config/tc-mn10300.c: Likewise.
2079 * config/tc-openrisc.c: Likewise.
2080 * config/tc-or32.c: Likewise.
2081 * config/tc-pdp11.c: Likewise.
2082 * config/tc-ppc.c: Likewise.
2083 * config/tc-ppc.h: Likewise.
2084 * config/tc-sh64.c: Likewise.
2085 * config/tc-sh.c: Likewise.
2086 * config/tc-tic54x.c: Likewise.
2087 * config/tc-xstormy16.c: Likewise.
2088 * config/tc-xstormy16.h: Likewise.
2089
2090 2002-05-09 Kazu Hirata <kazu@cs.umass.edu>
2091
2092 * config/obj-coff.c: Fix formatting.
2093 * config/obj-elf.c: Likewise.
2094 * config/tc-alpha.c: Likewise.
2095 * config/tc-arm.c: Likewise.
2096 * config/tc-d10v.c: Likewise.
2097 * config/tc-d30v.c: Likewise.
2098 * config/tc-h8300.c: Likewise.
2099 * config/tc-hppa.c: Likewise.
2100
2101 2002-05-09 Alan Modra <amodra@bigpond.net.au>
2102
2103 * config/tc-i386.c (md_estimate_size_before_relax) Don't lose
2104 reloc when no_cond_jump_promotion.
2105
2106 2002-05-08 Jim Wilson <wilson@redhat.com>
2107
2108 * config/tc-i960.c (md_estimate_size_before_relax): Return size of
2109 current variable part of frag.
2110
2111 2002-05-08 Kazu Hirata <kazu@cs.umass.edu>
2112
2113 * config/tc-mmix.c: Fix formatting.
2114 * config/tc-mmix.h: Likewise.
2115
2116 2002-05-08 Alan Modra <amodra@bigpond.net.au>
2117
2118 * configure: Regenerate.
2119
2120 2002-05-07 Kazu Hirata <kazu@cs.umass.edu>
2121
2122 * config/tc-m68k.c: Fix formatting.
2123
2124 2002-05-07 Federico G. Schwindt <fgsch@olimpo.com.br>
2125
2126 * Makefile.am: Honour DESTDIR.
2127 * Makefile.in: Regenerate.
2128
2129 2002-05-06 Kazu Hirata <kazu@cs.umass.edu>
2130
2131 * config/tc-ia64.c: Fix formatting.
2132 * config/tc-ia64.h: Likewise.
2133
2134 2002-05-04 Kazu Hirata <kazu@cs.umass.edu>
2135
2136 * config/tc-mips.c: Fix formatting.
2137 * config/tc-s390.c: Likewise.
2138 * config/tc-s390.h: Likewise.
2139
2140 2002-05-03 Alexandre Oliva <aoliva@redhat.com>
2141
2142 * config/tc-s390.c (md_gather_operands): Emit dwarf2 line-number
2143 information for instructions.
2144
2145 2002-05-02 Kazu Hirata <kazu@cs.umass.edu>
2146
2147 * as.h: Fix formatting.
2148 * cgen.c: Likewise.
2149 * cgen.h: Likewise.
2150 * dwarf2dbg.c: Likewise.
2151 * frags.h: Likewise.
2152 * gasp.c: Likewise.
2153 * macro.c: Likewise.
2154 * read.c: Likewise.
2155 * stabs.c: Likewise.
2156 * symbols.c: Likewise.
2157
2158 2002-05-02 Alan Modra <amodra@bigpond.net.au>
2159
2160 * app.c (mri_pseudo): Only declare for TC_M68K.
2161
2162 * config/tc-ppc.c (mapping): Map sectoff to BFD_RELOC_16_BASEREL.
2163 (ppc_elf_validate_fix): Replace BFD_RELOC_32_BASEREL with
2164 BFD_RELOC_16_BASEREL.
2165 (md_assemble): Likewise.
2166 (md_apply_fix3): Likewise.
2167
2168 2002-05-02 Nick Clifton <nickc@cambridge.redhat.com>
2169
2170 * config/tc-arm.c (thumb_add_sub): Do not convert a subtract of
2171 zero into an add of zero - it is not the same.
2172
2173 2002-05-01 Arati Dikey <aratid@kpit.com>
2174
2175 * tc-sh.c (get_specific): Generate warning if the same
2176 destination register is used in parallel instructions.
2177
2178 2002-05-01 Andrew Macleod <amacleod@cygnus.com>
2179
2180 * config/tc-i386.c (extra_symbol_chars): Add '[' to the list.
2181
2182 2002-05-01 Alan Modra <amodra@bigpond.net.au>
2183
2184 * write.c (cvt_frag_to_fill): Set fr_offset to zero on .org
2185 backwards to prevent cascading errors.
2186
2187 2002-04-30 Mark Mitchell <mark@codesourcery.com>
2188
2189 * configure.in: Add support for powerpc-*-windiss.
2190 * configure: Regenerated.
2191
2192 2002-04-28 Alan Modra <amodra@bigpond.net.au>
2193
2194 * config/tc-s390.c (md_parse_option): Formatting.
2195
2196 * config/tc-i386.c: Formatting fixes, add missing space in error
2197 message.
2198
2199 2002-04-24 Christian Groessler <chris@groessler.org>
2200
2201 * config/tc-z8k.c (build_bytes): Add support for new cases:
2202 CLASS_IGNORE and ARG_NIM4.
2203 (md_assemble): Prevent destruction of input_line_pointer if
2204 get_operands returns failure.
2205
2206 2002-04-24 Chris G. Demetriou <cgd@broadcom.com>
2207
2208 * config/tc-mips.c (macro_build): Do _not_ allow MIPS-3D
2209 instructions to be generated by macros.
2210
2211 2002-04-24 Andreas Schwab <schwab@suse.de>
2212
2213 * config/tc-i386.c (output_jump, output_disp)
2214 (md_estimate_size_before_relax): Don't set fx_pcrel_adjust any
2215 more.
2216 (md_apply_fix3): Remember addend value for rela relocations.
2217 (tc_gen_reloc): Correctly compute pc-relative relocation addend.
2218
2219 2002-04-22 Chris Demetriou <cgd@broadcom.com>
2220
2221 * config/tc-mips.c (macro_build): Add close-parenthesis missing
2222 from previous change.
2223
2224 2002-04-22 Eric Christopher <echristo@redhat.com>
2225
2226 * config/tc-mips.c (macro_build): Add warning if macro instructions
2227 are expanded into a branch delay slot.
2228
2229 2002-04-17 Geoffrey Keating <geoffk@redhat.com>
2230
2231 * dwarf2dbg.c (dwarf2_gen_line_info): Do emit duplicate line
2232 numbers, gdb relies on them to detect the start of the prologue.
2233
2234 2002-04-17 Martin Schwidefsky <schwidefsky@de.ibm.com>
2235
2236 * config/tc-s390.c (tc_s390_fix_adjustable): Prevent adjustments to
2237 symbols in merge sections.
2238
2239 2002-04-16 Alan Modra <amodra@bigpond.net.au>
2240
2241 * as.c (main): Don't reference _bfd_chunksize.
2242
2243 2002-04-15 Tom Rix <trix@redhat.com>
2244
2245 * config/tc-d10v.c (d10v_fix_adjustable): Prevent adjustments to
2246 symbols in merge sections.
2247
2248 2002-04-11 Richard Sandiford <rsandifo@redhat.com>
2249
2250 * doc/invoke.texi (TC_LARGEST_EXPONENT_IS_NORMAL): Document.
2251 * config/atof-ieee.c (TC_LARGEST_EXPONENT_IS_NORMAL): Add an
2252 argument for the precision.
2253 (gen_to_words): Update accordingly.
2254
2255 2002-04-10 Alan Modra <amodra@bigpond.net.au>
2256
2257 * as.c (parse_args <OPTION_VERSION>): Use VERSION is
2258 BFD_VERSION_STRING unavailable.
2259 * config/tc-i386.c (INLINE): Define (for non-BFD assembler).
2260
2261 2002-04-09 J"orn Rennecke <joern.rennecke@superh.com>
2262
2263 * config/tc-sh.h (TC_FIX_ADJUSTABLE): Disable adjusting if
2264 symbol_used_in_reloc_p is true.
2265
2266 * config/tc-sh.c (md_apply_fix3): Don't zero relocations on big
2267 endian hosts.
2268
2269 2002-04-04 Alan Modra <amodra@bigpond.net.au>
2270
2271 * dep-in.sed: Cope with absolute paths.
2272 * Makefile.am (dep.sed): Subst TOPDIR.
2273 Run "make dep-am".
2274 * Makefile.in: Regenerate.
2275
2276 2002-04-04 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
2277
2278 * config/tc-mips.c (mips16_macro_build): Cast type mismatch.
2279 (mips_ip): Remove unused variable.
2280 (md_apply_fix3): Cast signed/unsignes mismatches. Replace
2281 unsigned char with bfd_byte.
2282 (s_file): Remove unused variable.
2283 (s_mips_ent): Likewise.
2284
2285 2002-04-03 Tom Rix <trix@redhat.com>
2286
2287 * config/tc-d10v.c (d10v_insert_operand): Fix warning in as_bad_where.
2288 (build_insn): Same.
2289 (find_opcode): Fix warning in as_warn.
2290 * config/tc-d10v.h: Update Copyright.
2291
2292 2002-04-03 Alan Matsuoka <alanm@redhat.com>
2293 Tom Rix <trix@redhat.com>
2294
2295 From Jeff Knaggs <jknaggs@redhat.com>
2296 * config/tc-d10v.c (check_resource_conflict): New function to
2297 check for resource conflicts.
2298
2299 From Jason Eckhardt <jle@redhat.com>
2300 * config/tc-d10v.c (build_insn): Check for unresolved imm4 or
2301 imm3 fields.
2302 * config/tc-d10v.c (find_opcode): Emit a warning if one of the
2303 reserved control registers is used.
2304 * config/tc-d10v.c (build_insn): Check for unresolved imm4 or
2305 imm3 fields.
2306
2307 From 2001-03-28 Diego Novillo <dnovillo@redhat.com>
2308 * tc-d10v.c (parallel_ok): Prevent packing only if the first
2309 instruction cannot be packed.
2310
2311 From 2001-03-30 Diego Novillo <dnovillo@redhat.com>
2312 * gas/config/tc-d10v.c (check_resource_conflict): Only check
2313 write-write conflicts.
2314 (md_assemble): Reformat introductory comment.
2315 * opcodes/d10v-opc.c (d10v_opcodes): `btsti' does not modify its
2316 arguments.
2317
2318 2002-04-03 Alan Modra <amodra@bigpond.net.au>
2319
2320 * symbols.c (resolve_symbol_value <O_uminus, O_bit_not,
2321 O_logical_not>): Derive final_seg from add_symbol.
2322 <O_multiply..O_logical_or>: More final_seg twiddles.
2323
2324 2002-04-01 Jessica Han <jessica@cup.hp.com>
2325
2326 * config/tc-ia64.c (ia64_cons_fix_new): Handle 8 byte iplt reloc
2327 in 32-bit mode.
2328
2329 2002-03-27 Andreas Schwab <schwab@suse.de>
2330
2331 * config/tc-i386.c (output_jump): Set fx_pcrel_adjust to size of
2332 field for pc-relative fixups.
2333 (output_disp): Likewise.
2334 (md_estimate_size_before_relax): Likewise.
2335 (tc_gen_reloc): Subtract fx_pcrel_adjust instead of fx_size for
2336 pc-relative fixups in 64bit mode.
2337
2338 2002-03-22 Alan Modra <amodra@bigpond.net.au>
2339
2340 * config/te-aix5.h: Typo fix.
2341
2342 2002-03-21 Alan Modra <amodra@bigpond.net.au>
2343
2344 * Makefile.am: Run "make dep-am".
2345 * Makefile.in: Regenerate.
2346 * doc/Makefile.in: Regenerate.
2347
2348 2002-03-20 Albert Chin-A-Young <china@thewrittenword.com>
2349
2350 * config/tc-arm.c (vfp_dp_reg_required_here): Fix typo
2351 (vfp_sp_reg_pos -> vfp_dp_reg_pos).
2352
2353 2002-03-18 Alexandre Oliva <aoliva@redhat.com>
2354
2355 * config/tc-mips.c (md_estimate_size_before_relax): Do not modify
2356 the EXTENDED bit here; report the estimate according to the
2357 current size.
2358
2359 2002-03-18 Tom Rix <trix@redhat.com>
2360
2361 * configure.in: Add AIX 5 support.
2362 * config/tc-ppc.c (ppc_target_format): Add AIX 5 64 bit target.
2363 * config/te-aix5.h: New file. AIX 5 support.
2364 * configure: Regenerate.
2365
2366 2002-03-18 Nick Clifton <nickc@cambridge.redhat.com>
2367
2368 * po/fr.po: Updated version.
2369
2370 2002-03-16 Andreas Jaeger <aj@suse.de>
2371
2372 * doc/c-mips.texi (Machine Dependencies): Add new node.
2373
2374 2002-03-15 Chris G. Demetriou <cgd@broadcom.com>
2375
2376 * config/tc-mips.c (mips_set_options): New "ase_mips3d" member.
2377 (mips_opts): Initialize "ase_mips3d" member.
2378 (file_ase_mips3d): New variable.
2379 (CPU_HAS_MIPS3D): New macro.
2380 (md_begin): Initialize mips_opts.ase_mips3d and file_ase_mips3d
2381 based on command line options and configuration defaults.
2382 (macro_build, mips_ip): Accept MIPS-3D instructions if
2383 mips_opts.ase_mips3d is set.
2384 (OPTION_MIPS3D, OPTION_NO_MIPS3D, md_longopts, md_parse_option):
2385 Add support for "-mips3d" and "-no-mips3d" options.
2386 (OPTION_ELF_BASE): Move to accomodate new options.
2387 (s_mipsset): Support ".set mips3d" and ".set nomips3d".
2388 (mips_elf_final_processing): Add a comment indicating that a
2389 MIPS-3D ASE ELF header flag should be set, when one exists.
2390 * doc/as.texinfo: Document -mips3d and -no-mips3d options.
2391 * doc/c-mips.texi: Likewise, and document ".set mips3d" and ".set
2392 nomips3d" directives.
2393
2394 2002-03-14 Hans-Peter Nilsson <hp@bitrange.com>
2395
2396 * config/tc-mmix.c (md_estimate_size_before_relax): Don't consider
2397 a weak symbol in same section to be within reach.
2398
2399 2002-03-13 Nick Clifton <nickc@cambridge.redhat.com>
2400
2401 * po/fr.po: Updated version.
2402
2403 2002-03-12 Andreas Schwab <schwab@suse.de>
2404
2405 * config/tc-ia64.c (fixup_unw_records): Clear region when seeing a
2406 body record so that an error is given for misplaced .save
2407 pseudo-ops.
2408
2409 2002-03-09 Alan Modra <amodra@bigpond.net.au>
2410
2411 * config/tc-i386.h (REX_OPCODE): Define.
2412 (REX_MODE64, REX_EXTX, REX_EXTY, REX_EXTZ): Define.
2413 (rex_byte): typedef to int.
2414 * config/tc-i386.c: Group prototypes and vars together.
2415 Formatting fixes. Remove occurrences of "register" keyword.
2416 (true): Delete.
2417 (false): Delete.
2418 (mode_from_disp_size): Add INLINE keyword to prototype.
2419 (fits_in_signed_byte): Likewise.
2420 (fits_in_unsigned_byte): Likewise.
2421 (fits_in_unsigned_word): Likewise.
2422 (fits_in_signed_word): Likewise.
2423 (fits_in_unsigned_long): Likewise.
2424 (fits_in_signed_long): Likewise.
2425 (type_names): Constify.
2426 (intel_float_operand): Constify param.
2427 (add_prefix): Use REX_OPCODE.
2428 (md_assemble): Likewise. Modify for changed rex_byte.
2429 (parse_insn): Split out of md_assemble.
2430 (parse_operands): Likewise.
2431 (swap_operands): Likewise.
2432 (optimize_imm): Likewise.
2433 (optimize_disp): Likewise.
2434 (match_template): Likewise.
2435 (check_string): Likewise.
2436 (process_suffix): Likewise.
2437 (check_byte_reg): Likewise.
2438 (check_long_reg): Likewise.
2439 (check_qword_reg): Likewise.
2440 (check_word_reg): Likewise.
2441 (finalize_imm): Likewise.
2442 (process_operands): Likewise.
2443 (build_modrm_byte): Likewise.
2444 (output_insn): Likewise.
2445 (output_branch): Likewise.
2446 (output_jump): Likewise.
2447 (output_interseg_jump): Likewise.
2448 (output_disp): Likewise.
2449 (output_imm): Likewise.
2450
2451 2002-03-07 Daniel Jacobowitz <drow@mvista.com>
2452
2453 * doc/as.texinfo: Wrap @menu in @ifnottex, not @ifinfo.
2454
2455 2002-03-06 Alan Modra <amodra@bigpond.net.au>
2456
2457 * config/tc-i386.c (tc_gen_reloc): Don't attempt to handle 8 byte
2458 relocs except when BFD64.
2459
2460 * write.c (number_to_chars_bigendian): Don't abort when N is
2461 larger than sizeof (VAL).
2462 (number_to_chars_littleendian): Likewise.
2463
2464 2002-03-05 John David Anglin <dave@hiauly1.hia.nrc.ca>
2465
2466 * config/tc-hppa.c (md_apply_fix3): Add cast.
2467 (hppa_fix_adjustable): Adjust list of selectors using e_lrsel and
2468 e_rrsel.
2469
2470 2002-03-05 Paul Koning <pkoning@equallogic.com>
2471
2472 * tc-pdp11.c: Use VAX float format support for PDP-11 target.
2473 (parse_ac5): New function for parsing float regs in float operand.
2474 (parse_expression): Remove attempt to make literals be octal.
2475 (parse_op_no_deferred): Support float literals.
2476 (parse_op): Reject attempts to refer to float regs.
2477 (parse_fop): New function, like parse_op but for float operand.
2478 (md_assemble): Add cases to parse float operands. Also fix
2479 IMM3, IMM6, IMM8 cases to pick up the operand from the right spot.
2480
2481 2002-03-04 H.J. Lu <hjl@gnu.org>
2482
2483 * config/obj-elf.c (special_section): Add .init_array,
2484 .fini_array and .preinit_array.
2485
2486 * config/tc-ia64.h (ELF_TC_SPECIAL_SECTIONS): Remove
2487 .init_array and .fini_array.
2488
2489 2002-03-01 Jakub Jelinek <jakub@redhat.com>
2490
2491 * config/obj-elf.c (elf_copy_symbol_attributes): Don't copy
2492 visibility.
2493 (obj_frob_symbol): Copy visibility.
2494
2495 2002-02-28 Jakub Jelinek <jakub@redhat.com>
2496
2497 * config/tc-alpha.c (s_alpha_text): Use obj_elf_text for OBJ_ELF, not
2498 s_text.
2499 (s_alpha_data): Use obj_elf_data for OBJ_ELF, not s_data.
2500
2501 2002-02-27 Nick Clifton <nickc@cambridge.redhat.com>
2502
2503 * po/es.po: Updated.
2504
2505 2002-02-26 Chris Demetriou <cgd@broadcom.com>
2506
2507 * config/tc-mips.c (mips_need_elf_addend_fixup): For embedded-PIC
2508 only, undo the changes made on 2001-06-08, with the
2509 effect being that common or extern symbols are
2510 adjusted for embedded-PIC, but weak symbols are not.
2511 (md_estimate_size_before_relax: Likewise, with the effect
2512 that extern symbols are treated the same as weak symbols
2513 only if not embedded-PIC.
2514 (mips_fix_adjustable) Likewise, with the effect that
2515 weak or extern symbols are not adjusted for embedded-PIC.
2516 (md_apply_fix3): Tweak so that the case where value is zero
2517 is handled more correctly for embedded-PIC code.
2518
2519 2002-02-26 Nick Clifton <nickc@cambridge.redhat.com>
2520
2521 * doc/as.texinfo (Overview): Add missing @ifset IA64
2522
2523 * configure.in (LINGUAS): Add es.po.
2524 * configure: Regenerate.
2525 * po/es.po: New file.
2526
2527 2002-02-25 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
2528
2529 * config/tc-mips.c (set_at): Fix handling of 64bit register loads.
2530 (macro): Likewise. Fix la/dla address expansions for EMBEDDED_PIC
2531 and NO_PIC cases. Code cleanup.
2532 (macro2): Fix handling of 64bit register loads.
2533
2534 2002-02-25 David Mosberger <davidm@hpl.hp.com>
2535
2536 * doc/as.texinfo: Add entry for IA64.
2537 * doc/c-ia64.texi: New file.
2538
2539 2002-02-25 Alan Modra <amodra@bigpond.net.au>
2540
2541 * config/tc-hppa.c: Update copyright date.
2542
2543 * doc/c-ppc.texi (PowerPC-Opts): Add -mpower4, -maltivec and -m7400
2544 Remove references to chip manufacturers.
2545 * config/tc-ppc.c (md_parse_option): Handle -mpower4 option.
2546 Correct comments.
2547 (md_show_usage): Remove references to chip manufacturers. Mention
2548 -mpower4.
2549 (md_begin): Test power4 opcode flag bits.
2550
2551 2002-02-22 David Mosberger <davidm@hpl.hp.com>
2552
2553 * config/tc-ia64.c (dot_restore): Issue error message of epilogue
2554 count exceeds prologue count.
2555 (md_show_usage): Describe -mconstant-gp and -mauto-pic.
2556 (unwind.label_prologue_count): New member.
2557
2558 Based on a patch by Hans Boehm <hboehm@hpl.hp.com>:
2559
2560 (get_saved_prologue_count): New function.
2561 (save_prologue_count): New function.
2562 (free_saved_prologue_count): New function.
2563 (dot_label_state): Record state label by calling save_prologue_count().
2564 (dot_copy_state): Restore prologue count by calling
2565 get_saved_prologue_count().
2566 (generate_unwind_image): Free up list of saved prologue
2567 counts by calling free_saved_prologue_counts().
2568
2569 2002-02-22 Nick Clifton <nickc@cambridge.redhat.com>
2570
2571 * config/tc-tic54x.c: Add missing prototypes and remove ANSI style
2572 function declarations.
2573
2574 2002-02-21 Nick Clifton <nickc@cambridge.redhat.com>
2575
2576 * NEWS: Note that GASP is now deprecated.
2577 * Makefile.am: Do not build gasp-new by default.
2578 * Makefile.in: Regenerate.
2579 * doc/Makefile.am: Do not install gasp.info.
2580 * doc/Makefile.in: Regenerate.
2581 * gas/gasp.texi: Note that gasp is now deprecated.
2582
2583 2002-02-20 Nick Clifton <nickc@cambridge.redhat.com>
2584
2585 * NEWS: Mark 2.12 branch.
2586
2587 2002-02-19 Tom Tromey <tromey@redhat.com>
2588
2589 * config/tc-xstormy16.h (DWARF2_LINE_MIN_INSN_LENGTH): Define.
2590
2591 2002-02-19 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
2592
2593 * config/tc-mips.c (md_parse_option): Complain about invalid -mabi
2594 option input.
2595
2596 2002-02-19 Martin Schwidefsky <schwidefsky@de.ibm.com>
2597
2598 * config/tc-s390.c (md_parse_option): Add switches -m31 and -m64.
2599 Make bit size independent of architecture switch.
2600 (md_begin): Add warning for -m64 with -Aesa.
2601 (s390_md_end): Use renamed architecture defines.
2602
2603 2002-02-18 Daniel Jacobowitz <drow@mvista.com>
2604
2605 * config/obj-coff.h: Check !target_big_endian, not shl, for coff-sh.
2606
2607 2002-02-16 Nick Clifton <nickc@cambridge.redhat.com>
2608
2609 * doc/as.texinfo (Machine Dependencies): Fix typo: MMIX used
2610 instead of CRIS.
2611
2612 2002-02-15 Chris Demetriou <cgd@broadcom.com>
2613
2614 * config/tc-mips.c (md_estimate_size_before_relax): Really
2615 make sure we treat weak like extern only for ELF. (Fixes
2616 patch from 2001-07-25.)
2617
2618 2002-02-15 Ben Elliston <bje@redhat.com>
2619
2620 * doc/as.texinfo: Add duplicate directory entry so that "info gas"
2621 works as expected.
2622
2623 2002-02-15 Hans-Peter Nilsson <hp@bitrange.com>
2624
2625 * NEWS: Mention support for MMIX.
2626
2627 2002-02-13 Chris Demetriou <cgd@broadcom.com>
2628
2629 * config/tc-mips.c (mips_need_elf_addend_fixup): Restructure into
2630 a sequence of indpendent 'if' statements for easier debugging
2631 and future modification.
2632
2633 2002-02-13 Matt Fredette <fredette@netbsd.org>
2634
2635 * config/tc-m68k.c (md_show_usage): No longer display a
2636 hard-coded "68020" for the default CPU, instead display the
2637 canonical name of the true, configured default CPU.
2638 (m68k_elf_final_processing): Mark objects for sub-68020
2639 CPUs with the new EF_M68000 flag.
2640
2641 2002-02-13 Andreas Schwab <schwab@suse.de>
2642
2643 * config/tc-i386.c (tc_i386_fix_adjustable): Don't adjust
2644 pc-relative relocations to merge sections in 64-bit mode.
2645
2646 2002-02-13 Ben Elliston <bje@redhat.com>
2647
2648 * NEWS: Document floating point number handling in gasp.
2649 * gasp.c: Include <assert.h> and "xregex.h".
2650 (is_flonum): New function.
2651 (chew_flownum): Likewise.
2652 (change_base): Consume flonums from the input, where possible.
2653 * doc/gasp.texi (Constants): Document floating point numbers.
2654
2655 2002-02-12 John David Anglin <dave@hiauly1.hia.nrc.ca>
2656
2657 * config/tc-hppa.c (hppa_fix_adjustable): Don't adjust final types
2658 that implicitly use LR and RR selectors.
2659
2660 2002-02-12 Alexandre Oliva <aoliva@redhat.com>
2661
2662 * config/tc-mn10300.c (other_registers): Added `epsw'. Mark `pc'
2663 and `epsw' as available on AM33 and above only.
2664 (other_register_name): Add logic to handle machine type encoded in
2665 reg_number.
2666
2667 2002-02-11 Tom Rix <trix@redhat.com>
2668
2669 * config/tc-ppc.c (md_apply_fix3): Check for insert fop invalid for
2670 xcoff64.
2671
2672 2002-06-11 Alexandre Oliva <aoliva@redhat.com>
2673
2674 * config/tc-sparc.c (U0x80000000, U0xffffffff): New constants.
2675 Use all over.
2676
2677 2002-02-11 Jan Hubicka <jh@suse.cz>
2678
2679 * i386.c (md_assemble): Support 32bit address prefix.
2680 (i386_displacement): Likewise.
2681 (i386_index_check): Accept 32bit addressing in 64bit mode.
2682
2683 2002-02-11 Alexandre Oliva <aoliva@redhat.com>
2684
2685 * config/tc-sh.c (dot): Removed unused function.
2686
2687 2002-02-11 Alan Modra <amodra@bigpond.net.au>
2688
2689 * Makefile.am: "make dep-am".
2690 * Makefile.in: Regenerate.
2691 * aclocal.m4: Regenerate.
2692 * config.in: Regenerate.
2693 * configure: Regenerate.
2694 * doc/Makefile.in: Regenerate.
2695
2696 2002-02-10 Richard Henderson <rth@redhat.com>
2697
2698 * doc/c-alpha.texi: New file.
2699 * doc/Makefile.am (CPU_DOCS): Add it.
2700 * doc/all.texi, doc/as.texinfo: Add hooks for Alpha.
2701
2702 2002-02-09 Richard Henderson <rth@redhat.com>
2703
2704 * config/tc-alpha.c (O_samegp): New.
2705 (USER_RELOC_P): Include it.
2706 (alpha_reloc_op_tag, debug_exp, find_macro_match): Add it.
2707 (md_apply_fix3): Handle BFD_RELOC_ALPHA_BRSGP.
2708 (alpha_force_relocation, alpha_fix_adjustable): Likewise.
2709 (alpha_validate_fix): New.
2710 * config/tc-alpha.h (TC_VALIDATE_FIX): New.
2711
2712 2002-02-09 Hans-Peter Nilsson <hp@axis.com>
2713
2714 * doc/c-cris.texi: New.
2715 * doc/all.texi: @set CRIS.
2716 * doc/as.texinfo: Ditto. Add CRIS gas manpage option overview.
2717 Include c-cris.texi.
2718 * doc/Makefile.am (CPU_DOCS): Add c-cris.texi
2719 * doc/Makefile.in: Regenerate.
2720
2721 2002-02-08 Chris Demetriou <cgd@broadcom.com>
2722
2723 * config/tc-mips.c (IS_SEXT_32BIT_NUM): New macro to
2724 determine if a number is a sign-extended 32-bit number.
2725 (load_register): Use IS_SEXT_32BIT_NUM.
2726 (macro): Check if load/store macro handling is using a
2727 constant 32-bit address on 64-bit address systems, and if
2728 so optimize the generation of that address.
2729
2730 2002-02-08 Richard Henderson <rth@redhat.com>
2731
2732 * config/tc-alpha.c (alpha_force_relocation): Don't assert that
2733 we've eliminated all foreign relocation types yet.
2734 (alpha_fix_adjustable): Likewise.
2735
2736 2002-02-08 Alexandre Oliva <aoliva@redhat.com>
2737
2738 Contribute sh64-elf.
2739 2002-02-08 Alexandre Oliva <aoliva@redhat.com>
2740 Stephen Clarke <Stephen.Clarke@st.com>
2741 * doc/c-sh64.texi: Fix citation of SH64 architecture manual.
2742 2002-01-31 Alexandre Oliva <aoliva@redhat.com>
2743 * config/tc-sh.c (md_relax_table): Added default sizes for
2744 non-PC-relative UNDEF_MOVI, and relaxation sequences for
2745 MOVI_16, MOVI_32 and MOVI_48.
2746 * config/tc-sh64.c (shmedia_md_apply_fix3): Fix warning.
2747 (shmedia_md_convert_frag): Handle non-PC-relative UNDEF_MOVI
2748 and MOVI_16.
2749 (shmedia_md_estimate_size_before_relax): Remove redundant
2750 blocks. Set fragP->fr_var even if relaxation type unchanged.
2751 Retain UNDEF_MOVI until expression decays to number.
2752 2002-01-24 Alexandre Oliva <aoliva@redhat.com>
2753 * config/tc-sh64.c (shmedia_init_reloc): Handle new SHmedia PIC
2754 relocation types. Take fixP->fx_addnumber into account too.
2755 (shmedia_md_apply_fix): Likewise.
2756 (shmedia_md_convert_frag): Likewise.
2757 (shmedia_build_Mytes): Likewise.
2758 (sh64_consume_datalabel): Complain about nested datalabel.
2759 Support PIC relocs. Call sh_parse_name.
2760 * config/tc-sh64.h (TC_RELOC_RTSYM_LOC_FIXUP): Extend definition
2761 in tc-sh.h to SHmedia reloc types.
2762 * config/tc-sh.c (SH64PCRELPLT, MOVI_PLT, MOVI_GOTOFF,
2763 MOVI_GOTPC): New relaxation constants.
2764 (md_relax_table): Introduce relaxation directives for PIC-related
2765 constants.
2766 (sh_PIC_related_p): Handle datalabel.
2767 (sh_check_fixup): Choose SH5 PIC relocations.
2768 (sh_cons_fix_new): Added BDF_RELOC_64.
2769 (md_apply_fix3, sh_parse_name): Handle GOTPLT.
2770 2002-01-18 Alexandre Oliva <aoliva@redhat.com>
2771 * config/tc-sh64.c (sh64_max_mem_for_rs_align_code): If the
2772 current ISA is SHmedia, get 7 bytes.
2773 2001-11-28 Nick Clifton <nickc@cambridge.redhat.com>
2774 * config/tc-sh.c (md_apply_fix3): Treat shmedia_md_apply_fix3 as a
2775 void function.
2776 * config/tc-sh64.c (shmedia_apply_fix): Rename to
2777 shmedia_apply_fix3 and make void.
2778 2001-05-17 Alexandre Oliva <aoliva@redhat.com>
2779 * config/tc-sh64.c (s_sh64_abi): Remove unused arguments passed to
2780 as_bad.
2781 2001-04-12 Alexandre Oliva <aoliva@redhat.com>
2782 * config/tc-sh64.h (md_parse_name): Take &c as argument.
2783 2001-03-14 DJ Delorie <dj@redhat.com>
2784 * doc/Makefile.am (CPU_DOCS): Added c-sh64.texi
2785 * doc/Makefile.in(CPU_DOCS): Ditto.
2786 * doc/c-sh64.texi: New file.
2787 * doc/as.texinfo: Add SH64 support.
2788 2001-03-13 DJ Delorie <dj@redhat.com>
2789 * config/tc-sh64.c (shmedia_get_operands): Rename A_RESV_Fx to
2790 A_REUSE_PREV so that its purpose is more obvious.
2791 (shmedia_build_Mytes): Ditto.
2792 2001-03-07 DJ Delorie <dj@redhat.com>
2793 * config/tc-sh64.c (sh64_vtable_entry): New, strip datalabels
2794 before processing.
2795 (sh64_vtable_inherit): Ditto.
2796 (strip_datalabels): New, strip "datalabel" from given line.
2797 * config/tc-sh.c (md_pseudo_table): Add sh64-specific vtable
2798 pseudos.
2799 2001-03-06 Hans-Peter Nilsson <hpn@cygnus.com>
2800 * config/tc-sh64.c (shmedia_md_assemble): Move dwarf2_emit_insn
2801 call ...
2802 (shmedia_build_Mytes): ... to here.
2803 2001-03-06 DJ Delorie <dj@redhat.com>
2804 * config/tc-sh.c: Remove sh64-specific uaquad now that there
2805 is a generic one.
2806 2001-01-21 Hans-Peter Nilsson <hpn@cygnus.com>
2807 * config/tc-sh64.h (DWARF2_LINE_MIN_INSN_LENGTH): Override.
2808 * config/tc-sh64.c (shmedia_md_assemble): Offset recorded insn
2809 address by one in call to dwarf2_emit_insn.
2810 2001-01-13 Hans-Peter Nilsson <hpn@cygnus.com>
2811 Implement ".abi" pseudo and correct .cranges descriptors. Correct
2812 alignment handling broken by imported changes.
2813 * config/tc-sh64.h (HANDLE_ALIGN): Override definition in tc-sh.h.
2814 (sh64_handle_align): Declare.
2815 (MAX_MEM_FOR_RS_ALIGN_CODE): Override definition in tc-sh.h.
2816 (sh64_max_mem_for_rs_align_code): Declare.
2817 (enum sh64_isa_values): Moved here from tc-sh64.c.
2818 (md_do_align): Define.
2819 (sh64_do_align): Declare.
2820 (struct sh64_tc_frag_data): New.
2821 (TC_FRAG_TYPE): Change to struct sh64_tc_frag_data. Users
2822 changed.
2823 (TC_FRAG_INIT): Change to set new datatype.
2824 (struct sh64_segment_info_type): Rename member
2825 last_flushed_location to last_contents_mark. All users changed.
2826 (md_elf_section_change_hook, TC_CONS_FIX_NEW): Do not define.
2827 (shmedia_elf_new_section, sh64_tc_cons_fix_new): Do not prototype.
2828 * config/tc-sh.c (md_pseudo_table): Add ".abi".
2829 (sh_elf_cons) [HAVE_SH64]: Call sh64_update_contents_mark instead
2830 of unsetting seen_insn.
2831 (md_assemble) [HAVE_SH64] <before new SHcompact sequence>: Also
2832 call sh64_update_contents_mark.
2833 (sh_handle_align): Remove HAVE_SH64-conditioned code.
2834 * config/tc-sh64.c (sh64_isa_mode): Correct type from boolean to
2835 enum sh64_isa_values.
2836 (sh64_set_contents_type): Drop segT parameter. All callers changed.
2837 (emitting_crange): Boolean guard moved to file scope from function
2838 scope in sh64_set_contents_type.
2839 (s_sh64_abi): New.
2840 (sh64_update_contents_mark): New; most split out from
2841 sh64_flush_pending_output.
2842 (shmedia_md_end): Call sh64_update_contents_mark. Set
2843 sh64_isa_mode to sh64_isa_sh5_guard unless sh64_isa_unspecified.
2844 (sh64_do_align): New function.
2845 (sh64_max_mem_for_rs_align_code): New function.
2846 (sh64_handle_align): Rename from shmedia_do_align. Make
2847 non-static. Add head comment. Emit zero bytes for n bytes modulo
2848 four. Change return-type to void.
2849 (shmedia_elf_new_section): Remove.
2850 (shmedia_md_assemble): Call sh64_update_contents_mark.
2851 (s_sh64_mode): Ditto. Do not call md_flush_pending_output. Make
2852 new frag. Call sh64_update_contents_mark after making the new
2853 frag.
2854 (sh64_flush_pending_output): Just call sh64_update_contents_mark
2855 and sh_flush_pending_output.
2856 (sh64_flag_output): Also call md_flush_pending_output, but add
2857 condition on not emitting_crange.
2858 (sh64_tc_cons_fix_new): Remove.
2859 2001-01-12 Nick Clifton <nickc@redhat.com>
2860 * config/tc-sh64.c (shmedia_do_align): Fix to work with new
2861 alignment handling scheme imported from sourceware.
2862 2001-01-12 Hans-Peter Nilsson <hpn@cygnus.com>
2863 * config/tc-sh64.h (TARGET_FORMAT): Define.
2864 (sh64_target_format): Prototype.
2865 * config/tc-sh64.c (sh64_target_mach): New function.
2866 2001-01-07 Hans-Peter Nilsson <hpn@cygnus.com>
2867 * config/tc-sh64.c (shmedia_md_end): When equating a symbol, use
2868 zero_address_frag instead of copying the frag of the symbol.
2869 (shmedia_frob_file_before_adjust): Ditto.
2870 (shmedia_md_apply_fix) <case BFD_RELOC_SH_IMM_MEDLOW16>: Cast mask
2871 to valueT to remove signedness.
2872 (shmedia_md_convert_frag): Add parameter final. Rename parameter
2873 headers to output_bfd. Do not evaluate symbols if final is false;
2874 do emit fixups.
2875 (shmedia_md_estimate_size_before_relax) <case C (MOVI_IMM_32,
2876 UNDEF_MOVI) et al>: If symbol cannot be modified to be PC-relative
2877 to the current frag, call shmedia_md_convert_frag to emit fixups
2878 and make frag_wane neutralize the frag. Update comments.
2879 * config/tc-sh.c (md_convert_frag): Change caller of
2880 shmedia_md_convert_frag.
2881 2001-01-06 Hans-Peter Nilsson <hpn@cygnus.com>
2882 * config/tc-sh64.h: Tweak comments and correct formatting.
2883 * config/tc-sh64.c: Ditto.
2884 (shmedia_md_convert_frag) <PT/PTA/PTB 32, 48 and 64 bit
2885 expansion, MOVI pcrel expansion>: Fix thinko calculating offset
2886 for the no-relocation case.
2887 (shmedia_check_limits): Fix range check being off-by-one for PTA.
2888 * config/tc-sh.c: Ditto. Add proper comments to #ifdef/#ifndef
2889 wrappers.
2890 (SH64PCREL16_F): Increment for proper max-PTA handling. Update
2891 comment.
2892 (SH64PCREL16_M, MOVI_16_M): Correct range thinko.
2893 (SH64PCREL48_M, MOVI_48_M): Similar; don't count in length of
2894 expansion.
2895 (SH64PCREL32_M, MOVI_32_M): Ditto; handle overflowing expression.
2896 Correct comment.
2897 2001-01-05 Hans-Peter Nilsson <hpn@cygnus.com>
2898 * config/tc-sh64.c (shmedia_md_apply_fix) <second switch, case
2899 BFD_RELOC_SH_PT_16>: Set lowest bit in field to be relocated to 1.
2900 (shmedia_md_convert_frag) <case C (SH64PCREL16_32, SH64PCREL16) et
2901 al>: Set lowest bit of field to relocate to 1 and rest to empty,
2902 if reloc is emitted.
2903 2000-12-31 Hans-Peter Nilsson <hpn@cygnus.com>
2904 New options plus bugfixes.
2905 * config/tc-sh.c (md_longopts): New options "-no-expand" and
2906 "-expand-pt32".
2907 (md_parse_option): Handle new options.
2908 (md_show_usage): Add blurb for new options.
2909 * config/tc-sh64.c (SHMEDIA_BFD_RELOC_PT): New macro.
2910 (sh64_expand, sh64_pt32): New variables.
2911 (shmedia_init_reloc): Handle BFD_RELOC_SH_PT_16.
2912 (shmedia_md_apply_fix): Hold original fixP->fx_r_type in
2913 orig_fx_r_type. Change SHMEDIA_BFD_RELOC_PT into
2914 BFD_RELOC_SH_PT_16. Handle BFD_RELOC_SH_PT_16 as pc-relative.
2915 <resolved previously-pc-relative relocs>: Handle
2916 SHMEDIA_BFD_RELOC_PT and BFD_RELOC_SH_PT_16.
2917 (shmedia_md_convert_frag) <case C (SH64PCREL16PT_64, SH64PCREL16),
2918 case C (SH64PCREL16PT_32, SH64PCREL16)>: Modify to PTB if operand
2919 points to SHcompact code.
2920 <case C (SH64PCREL16_32, SH64PCREL16), case C (SH64PCREL16_64,
2921 SH64PCREL16)>: Check that ISA of what operand points at and
2922 PTA/PTB matches, or emit error.
2923 (shmedia_check_limits): Handle BFD_RELOC_SH_PT_16 and
2924 SHMEDIA_BFD_RELOC_PT.
2925 (shmedia_immediate_op): If pcrel, emit fixup also for constant
2926 operand.
2927 (shmedia_build_Mytes) <case A_IMMS16>: Also check sh64_expand in
2928 condition for MOVI expansion.
2929 <case A_PCIMMS16BY4>: Handle expansion to 32 bits only, if
2930 sh64_pt32. Emit only a BFD_RELOC_SH_PT_16 fixup if not
2931 sh64_expand.
2932 <case A_PCIMMS16BY4_PT>: Likewise, but emit a SHMEDIA_BFD_RELOC_PT
2933 fixup.
2934 (sh64_target_format): Error-check setting of sh64_pt32 and
2935 sh64_expand. Fix typo in check for sh64_shcompact_const_crange.
2936 (shmedia_md_pcrel_from_section): Handle BFD_RELOC_SH_PT_16 and
2937 SHMEDIA_BFD_RELOC_PT as coming from SHmedia code.
2938 2000-12-31 Hans-Peter Nilsson <hpn@cygnus.com>
2939 * config/tc-sh64.c: Improve comments.
2940 (shmedia_md_convert_frag): Remove inactive is_pt_variant code. Do
2941 not say the linker will check correctness of PTA/PTB expansion.
2942 (shmedia_md_end): Make non-static.
2943 * config/tc-sh64.h (md_end): Define to shmedia_md_end. Add
2944 prototype.
2945 * config/tc-sh.c (sh_finalize): Remove.
2946 * config/tc-sh.h (md_end): Do not define.
2947 Remove prototype for sh_finalize.
2948 2000-12-30 Hans-Peter Nilsson <hpn@cygnus.com>
2949 * config/tc-sh64.c (shmedia_frob_section_type): Use a struct
2950 sh64_section_data container when storing section type in tdata
2951 field in elf_section_data.
2952 * config/tc-sh.c (sh_elf_final_processing): Change from EF_SH64 to
2953 EF_SH5.
2954 * Makefile.am: Update dependencies.
2955 * Makefile.in: Regenerate.
2956 2000-12-22 Hans-Peter Nilsson <hpn@cygnus.com>
2957 * config/tc-sh64.c (shmedia_md_assemble): Don't protect
2958 dwarf2_emit_insn call with test on debug_type.
2959 2000-12-19 Hans-Peter Nilsson <hpn@cygnus.com>
2960 * config/tc-sh64.c (sh64_set_contents_type): Make contents-type
2961 CRT_SH5_ISA32 sticky for 64-bit.
2962 2000-12-18 Hans-Peter Nilsson <hpn@cygnus.com>
2963 Generate .crange sections when switching ISA mode or emitting
2964 constants in same section as code.
2965 * config/tc-sh64.c: Reformat structure definitions.
2966 (sh64_end_of_assembly, sh64_mix, sh64_shcompact_const_crange): New
2967 variables.
2968 (sh64_set_contents_type): Rename from sh64_init_section. Rewrite
2969 to emit a .cranges descriptor when contents type changes. Only
2970 emit error if changing contents type and -no-mix is in effect.
2971 (sh64_emit_crange, sh64_flush_last_crange, sh64_flag_output,
2972 sh64_flush_pending_output, sh64_tc_cons_fix_new): New functions.
2973 (shmedia_md_end): Set sh64_end_of_assembly. Pass
2974 sh64_flush_last_crange over sections.
2975 When checking main symbol of datalabel symbol, check for
2976 STO_SH5_ISA32, not ISA type of section in definition.
2977 (shmedia_frob_file_before_adjust): Check main symbol for
2978 STO_SH5_ISA32; don't check ISA type of section in definition.
2979 (shmedia_frob_section_type): Adjust for .cranges; set section flag
2980 to SHF_SH5_ISA32_MIXED or SHF_SH5_ISA32 according to whether
2981 .cranges entries have been output.
2982 (shmedia_elf_new_section): Just call md_flush_pending_output.
2983 (shmedia_md_assemble): Do not emit a BFD_RELOC_SH_SHMEDIA_CODE
2984 fix. Do not set tc_segment_info_data.in_code for section. Call
2985 sh64_set_contents_type for SHmedia code.
2986 (s_sh64_mode): Do not call sh64_init_section or set seen_insn to
2987 false. Call md_flush_pending_output.
2988 (sh64_target_format): Check that -no-mix and
2989 -shcompact-const-crange are used in sane combination with other
2990 options.
2991 (shmedia_md_pcrel_from_section): Check type of fix for how to
2992 adjust pc-relative.
2993 (sh64_consume_datalabel): Check symbol for having STO_SH5_ISA32,
2994 not ISA type of section in definition.
2995 * config/tc-sh64.h (struct sh64_segment_info_type): Rewrite to
2996 hold contents-type state.
2997 (md_flush_pending_output): Redefine to sh64_flush_pending_output.
2998 (sh64_flush_pending_output): Declare.
2999 (TC_CONS_FIX_NEW): Define to sh64_tc_cons_fix_new.
3000 (sh64_tc_cons_fix_new): Declare.
3001 * config/tc-sh.c (sh_elf_cons) [HAVE_SH64]: Unset seen_insn and
3002 call sh64_flag_output.
3003 (md_assemble) [HAVE_SH64]: Do not emit BFD_RELOC_SH_CODE. Just
3004 call sh64_set_contents_type to mark SHcompact code and set
3005 seen_insn.
3006 (md_longopts): New options "-no-mix" and
3007 "-shcompact-const-crange".
3008 (md_parse_option): Handle new options.
3009 (md_show_usage): Add blurb for new options.
3010 (md_number_to_chars) [HAVE_SH64]: Call sh64_flag_output.
3011 2000-12-15 Hans-Peter Nilsson <hpn@cygnus.com>
3012 * config/tc-sh64.c: Delete investigated and obsolete fixme:s.
3013 (sh64_last_insn_frag): New.
3014 (shmedia_md_convert_frag): Use tc_frag_data field of incoming frag
3015 to get frag for insn opcode for generating fixups; do not assume it
3016 is the same frag.
3017 (shmedia_build_Mytes): Set sh64_last_insn_frag after growing frag
3018 for new insn.
3019 * config/tc-sh64.h (ELF_TC_SPECIAL_SECTIONS): Define for .cranges
3020 section.
3021 (TC_FRAG_TYPE): Define as fragS *.
3022 (TC_FRAG_INIT): Define to set tc_frag_data to sh64_last_insn_frag.
3023 (sh64_last_insn_frag): Declare.
3024 (sh64_consume_datalabel): Fix typo; check for seginfo != NULL,
3025 not == NULL before dereferencing.
3026 2000-12-12 Hans-Peter Nilsson <hpn@cygnus.com>
3027 Get rid of BFD section flag and EF_SH64_ABI64.
3028 * config/tc-sh64.c (shmedia_frob_section_type): Use
3029 elf_section_data (sec)->tdata, not a specific BFD section flag, to
3030 communicate the section as containing SHmedia code. Describe why.
3031 * config/tc-sh.c (sh_elf_final_processing): Tweak comment. Set
3032 EF_SH64 regardless of ABI.
3033 * config/tc-sh64.c (shmedia_md_apply_fix): Decapitalize "invalid"
3034 in error message. Handle resolved expressions for
3035 BFD_RELOC_SH_IMMS10, BFD_RELOC_SH_IMMS10BY2,
3036 BFD_RELOC_SH_IMMS10BY4 and BFD_RELOC_64.
3037 (shmedia_check_limits): Handle BFD_RELOC_64.
3038 (sh64_adjust_symtab): Do not decrement the GAS symbol value for
3039 a STO_SH5_ISA32 symbol, only the BFD value.
3040 2000-12-11 Ben Elliston <bje@redhat.com>
3041 * config/tc-sh64.c: Call dwarf2_emit_insn, not the defunct
3042 dwarf2_generate_asm_lineno.
3043 2000-12-11 Hans-Peter Nilsson <hpn@cygnus.com>
3044 Handle PC-relative MOVI expansions with assembler relaxation.
3045 Generate PC-relative relocs from 16-bit PC-relative expressions.
3046 * config/tc-sh64.c (SHMEDIA_MD_PCREL_FROM_FIX): Break out from...
3047 (shmedia_md_pcrel_from_section): ...here.
3048 (shmedia_md_apply_fix): Handle fixups for 16-bit operands that has
3049 turned completely resolved. Adjust relocation type for 16-bit
3050 immediate operands that has turned PC-relative. Adjust back for
3051 MD_PCREL_FROM_SECTION being applied twice.
3052 (shmedia_md_convert_frag): Always emit reloc for expression with
3053 global or weak symbol. Handle relaxation result for PC-relative
3054 expressions.
3055 (shmedia_md_estimate_size_before_relax): An expression with a weak
3056 or global symbol can not be relaxed. Break out tests for
3057 relaxable symbol into variable sym_relaxable.
3058 <cases C (MOVI_IMM_64, UNDEF_MOVI) and C (MOVI_IMM_32,
3059 UNDEF_MOVI)>: Break out any PC-relative expression and change
3060 relaxation type.
3061 (shmedia_build_Mytes): CSE &operands->operands[j] into variable
3062 opjp.
3063 <case A_IMMS16>: Fix typo for initial minor relaxation type of
3064 MOVI expansion. If X_op_symbol of the immediate expression is
3065 set, make an expression symbol for the argument to frag_var.
3066 * config/tc-sh.c (MOVI_IMM_32_PCREL, MOVI_IMM_64_PCREL): New
3067 relaxations.
3068 (END): Adjust for new relaxations.
3069 (md_relax_table): Add entries for new relaxations.
3070 2000-12-07 Ben Elliston <bje@redhat.com>
3071 * config/tc-sh64.c (shmedia_parse_reg): Initialize variable len.
3072 2000-12-07 Hans-Peter Nilsson <hpn@cygnus.com>
3073 * config/tc-sh64.c (shmedia_md_convert_frag): Correct all MOVI and
3074 SHORI operand offsets in PT/PTA/PTB expansions.
3075 2000-12-05 Hans-Peter Nilsson <hpn@cygnus.com>
3076 Implement DataLabel semantics.
3077 * config/tc-sh.c (sh_frob_file) [HAVE_SH64]: Call
3078 shmedia_frob_file_before_adjust.
3079 * config/tc-sh64.c [! OBJ_ELF]: Emit #error.
3080 (DATALABEL_SUFFIX): Define.
3081 (shmedia_md_end) <before adjusting STO_SH5_ISA32 symbols>: Walk
3082 symbol list to update "datalabel" symbols to their main symbol
3083 counterparts.
3084 (shmedia_frob_file_before_adjust): New.
3085 (sh64_adjust_symtab): For remaining datalabel symbols, set to
3086 undefined and set STT_DATALABEL.
3087 (sh64_frob_label): Initialize TC symbol field.
3088 (sh64_consume_datalabel): Actually implement semantics. New
3089 parameter operandf, call it instead of expression.
3090 (sh64_exclude_symbol): New.
3091 * config/tc-sh64.h (md_parse_name): Pass on the function operand
3092 to sh64_consume_datalabel.
3093 (tc_symbol_new_hook): Define to tc_frob_symbol.
3094 (TC_SYMFIELD_TYPE): Define to symbolS *.
3095 (tc_frob_symbol): Define to call sh64_exclude_symbol.
3096 2000-12-01 Hans-Peter Nilsson <hpn@cygnus.com>
3097 * config/tc-sh64.c (shmedia_init_reloc): Tweak comment for default
3098 case.
3099 (shmedia_md_assemble): Call dwarf2_generate_asm_lineno if
3100 generating dwarf2 debug information.
3101 2000-11-30 Hans-Peter Nilsson <hpn@cygnus.com>
3102 * config/tc-sh64.c (sh64_target_format): Use elf64-sh64l and
3103 elf64-sh64 for the 64-bit ABI.
3104 * config/tc-sh.c (md_show_usage): Tweak usage output for -abi=*
3105 option.
3106 2000-11-29 Hans-Peter Nilsson <hpn@cygnus.com>
3107 * config/tc-sh.c: Remove conditionalizing on HAVE_SH64 for
3108 case-insensitivity.
3109 2000-11-27 Hans-Peter Nilsson <hpn@cygnus.com>
3110 * config/tc-sh64.c: Tweak comments, formatting and error messages.
3111 (enum sh64_abi_values): New type.
3112 (enum sh64_isa_values): New type.
3113 (sh64_isa_mode): Replace shmedia_mode. All referers changed.
3114 (seen_shcompact_mode, seen_shmedia_mode): Delete.
3115 (sh64_abi): Replace shmedia_64.
3116 (shmedia_md_convert_frag) <C (MOVI_IMM_64, MOVI_64),
3117 C (MOVI_IMM_32, MOVI_32)>: Correct register number handling.
3118 (s_sh64_mode): Check validity for this target.
3119 (sh64_target_format): Initialize defaults for ISA and ABI.
3120 Fallback to old object format if no SH64 ISA or ABI has been
3121 specified.
3122 * config/tc-sh.c (md_parse_option): Check combinations for errors.
3123 (sh_elf_final_processing): Change to have EF_SH64_ABI64 for 64-bit
3124 ABI and EF_SH64 for 32-bit ABI, if SH64 options are specified.
3125 * config/tc-sh64.h: Fix typo in comment.
3126 2000-11-25 Hans-Peter Nilsson <hpn@cygnus.com>
3127 * config/tc-sh64.c (shmedia_md_estimate_size_before_relax)
3128 <PT fixups for absolute values>: Size will be longest, not
3129 shortest.
3130 (shmedia_md_convert_frag): Disable PTB-warning machinery. Correct
3131 all MOVI and SHORI operand offsets in PT/PTA/PTB expansions.
3132 * config/tc-sh.c (parse_reg) [HAVE_SH64]: Add local variables l0
3133 and l1 to hold lowercase of two first characters. Change all
3134 remaining TO_LOWER to tolower.
3135 * config/tc-sh64.c (TO_LOWER): Delete.
3136 (shmedia_find_cooked_opcode): Use tolower, not TO_LOWER.
3137 (md_parse_name): Define.
3138 (sh64_consume_datalabel): Declare.
3139 (DOLLAR_DOT): Define.
3140 * config/tc-sh64.c (shmedia_parse_exp): New.
3141 (sh64_consume_datalabel): New; just ignoring datalabel semantics.
3142 (shmedia_parse_reg): Remove const from src
3143 parameter.
3144 (shmedia_get_operands): Ditto for args parameter and ptr variable.
3145 (shmedia_md_assemble): Ditto for op_end variable.
3146 (shmedia_get_operand): Ditto for ptr parameter and src variable.
3147 Use shmedia_parse_exp, not parse_exp.
3148 * config/tc-sh64.c (shmedia_parse_reg): Add shmedia_arg_type
3149 parameter. All callers changed.
3150 (shmedia_get_operand): Add shmedia_arg_type parameter. All
3151 callers changed.
3152 (shmedia_parse_reg): Put first two character in local variables.
3153 Use tolower, not TO_LOWER. If no register is found and argtype
3154 indicates a control register, scan shmedia_creg_table
3155 case-insensitive.
3156 2000-11-24 Hans-Peter Nilsson <hpn@cygnus.com>
3157 * Makefile.am (CPU_TYPES): Add sh64.
3158 (TARGET_CPU_CFILES): Add config/tc-sh64.c.
3159 (TARGET_CPU_HFILES): Add config/tc-sh64.h.
3160 Regenerate dependencies.
3161 * Makefile.in: Regenerate.
3162 * configure.in: Add support for sh64-*-elf*.
3163 * configure: Regenerate.
3164 * config/tc-sh64.h: New.
3165 * config/tc-sh64.c: New.
3166 * config/tc-sh.c (md_pseudo_table) [HAVE_SH64]: New pseudos
3167 .mode, .isa and .uaquad.
3168 [HAVE_SH64] (SH64PCREL16_32, SH64PCREL16_64, SH64PCREL16PT_32,
3169 SH64PCREL16PT_64, MOVI_IMM_32, MOVI_IMM_64): Define.
3170 [HAVE_SH64] (END): Define as 10.
3171 [HAVE_SH64] (UNDEF_SH64PCREL, SH64PCREL16, SH64PCREL32,
3172 SH64PCREL48, SH64PCREL64, UNDEF_MOVI, MOVI_16, MOVI_32, MOVI_48,
3173 MOVI_64): Define.
3174 [HAVE_SH64] (SH64PCREL16_F, SH64PCREL16_M, SH64PCREL16_LENGTH,
3175 SH64PCREL32_F, SH64PCREL32_M, SH64PCREL32_LENGTH, SH64PCREL48_F,
3176 SH64PCREL48_M, SH64PCREL48_LENGTH, SH64PCREL64_LENGTH,
3177 MOVI_16_LENGTH, MOVI_32_LENGTH, MOVI_48_LENGTH, MOVI_64_LENGTH):
3178 Define.
3179 (md_relax_table) [HAVE_SH64]: Provide relaxations for SHmedia.
3180 (md_begin) [HAVE_SH64]: Call shmedia_md_begin.
3181 (parse_reg) [HAVE_SH64]: Parse register names case-insensitive.
3182 (md_assemble) [HAVE_SH64]: Call shmedia_md_assemble if assembling
3183 SHmedia instructions. Handle state-change after switching to
3184 SHcompact.
3185 (md_longopts) [HAVE_SH64]: New options --isa=* and --abi=*.
3186 (md_parse_option) [HAVE_SH64]: Parse new options.
3187 (md_show_usage) [HAVE_SH64]: Show usage of new options.
3188 (md_convert_frag) [HAVE_SH64] <default>: Call
3189 shmedia_md_convert_frag instead of abort.
3190 (sh_force_relocation) [HAVE_SH64]: Also force relocation for
3191 BFD_RELOC_SH_SHMEDIA_CODE.
3192 (sh_elf_final_processing) [HAVE_SH64]: Set flags identifying
3193 SHcompact or SHmedia code.
3194 (md_apply_fix) [HAVE_SH64] <default>: Return result from calling
3195 shmedia_md_apply_fix instead of abort.
3196 (md_estimate_size_before_relax) [HAVE_SH64] <default>: Return
3197 result from calling shmedia_md_estimate_size_before_relax instead
3198 of calling abort.
3199 (sh_do_align) [HAVE_SH64]: If shmedia_mode, let shmedia_do_align
3200 do the work.
3201 (tc_gen_reloc) [HAVE_SH64]: For unrecognized relocs, call
3202 shmedia_init_reloc and do nothing more if it returns non-zero.
3203 (sh_finalize) [HAVE_SH64]: Call shmedia_md_end.
3204 * po/POTFILES.in: Regenerate.
3205 * po/gas.pot: Regenerate.
3206
3207 2002-02-06 Alexandre Oliva <aoliva@redhat.com>
3208
3209 * config/tc-sh.c (parse_at): Install the correct version of
3210 2002-02-04's patch.
3211
3212 * config/tc-sh.c (md_apply_fix3) <BFD_RELOC_32_PLT_PCREL>: Don't
3213 assume fixP->fx_subsy is non-NULL.
3214
3215 2002-02-04 Alexandre Oliva <aoliva@redhat.com>
3216
3217 * config/tc-sh.c (parse_at): Set arg type of @(expr,pc) to
3218 A_DISP_PC_ABS, and adjust it by -4.
3219 (get_specific): Accept A_DISP_PC_ABS where A_DISP_PC is
3220 expected.
3221 (build_Mytes): Mark PCRELIMM fix-ups as pc-relative only if
3222 the operand type is not A_DISP_PC_ABS.
3223
3224 2002-02-04 Hans-Peter Nilsson <hp@bitrange.com>
3225
3226 * config/tc-mmix.c (tc_gen_reloc): Don't try and take the value of
3227 common and weak symbols. Handle common and weak symbols as
3228 undefined symbols with regards to GREG handling and merging.
3229 (mmix_frob_file): Ditto.
3230
3231 2002-02-02 Jason Thorpe <thorpej@wasabisystems.com>
3232
3233 * configure.in (hppa-*-netbsd*): New target.
3234 * configure: Regenerate.
3235 * config/tc-hppa.h: Also define WARN_COMMENTS if TE_NetBSD.
3236
3237 2002-02-02 Alan Modra <amodra@bigpond.net.au>
3238
3239 * config/tc-v850.c: Add missing prototypes amd use old-style
3240 function definitions.
3241 (AREA_ZDA, AREA_SDA, AREA_TDA): Delete.
3242 (sdata_section tdata_section, zdata_section, sbss_section,
3243 tbss_section, zbss_section, rosdata_section, rozdata_section,
3244 scommon_section, tcommon_section, zcommon_section,
3245 call_table_data_section, call_table_text_section): Delete.
3246 (v850_sdata, v850_tdata, v850_zdata, v850_sbss, v850_tbss,
3247 v850_zbss, v850_bss, v850_rosdata, v850_rozdata,
3248 v850_call_table_data, v850_call_table_text): Delete.
3249 (struct v850_seg_entry): New.
3250 (v850_seg_table): New.
3251 (SDATA_SECTION TDATA_SECTION, ZDATA_SECTION, SBSS_SECTION,
3252 TBSS_SECTION, ZBSS_SECTION, BSS_SECTION, ROSDATA_SECTION,
3253 ROZDATA_SECTION, SCOMMON_SECTION, TCOMMON_SECTION, ZCOMMON_SECTION,
3254 CALL_TABLE_DATA_SECTION, CALL_TABLE_TEXT_SECTION): Define.
3255 (do_v850_seg): New.
3256 (v850_seg): New.
3257 (v850_comm): Use do_v850_seg and v850_seg_table. Simplify
3258 recording of alignment.
3259 (md_pseudo_table): Use v850_seg.
3260 (md_begin): Don't init .call_table_data and .call_table_text here.
3261 Set v850_seg_table bss entry.
3262
3263 2002-02-01 Hans-Peter Nilsson <hp@bitrange.com>
3264
3265 Support on-demand global register allocation by passing on
3266 base-plus-offset relocs to the linker.
3267 * config/tc-mmix.c: Tweak and fix typos in comments.
3268 (allocate_undefined_gregs_in_linker): New variable.
3269 (OPTION_LINKER_ALLOCATED_GREGS): New option macro.
3270 (md_longopts): Add --linker-allocated-gregs.
3271 (md_parse_option) <case 'x'>: Imply --linker-allocated-gregs.
3272 <case OPTION_LINKER_ALLOCATED_GREGS>: New.
3273 (md_show_usage): Update text for -x. Add text for
3274 --linker-allocated-gregs.
3275 (tc_gen_reloc): Derive default value for addend from val and
3276 baddsy. Use addsec and bfd_is_abs_section in more places. Don't
3277 emit error for BFD_RELOC_MMIX_BASE_PLUS_OFFSET without suitable
3278 GREG if allocate_undefined_gregs_in_linker.
3279 * doc/as.texinfo (Overview) <Target MMIX options>: Add
3280 --linker-allocated-gregs.
3281 * doc/c-mmix.texi (MMIX-Opts): Add blurb about
3282 --linker-allocated-gregs. Mention that it's implied by -x.
3283 (MMIX-Pseudos) <GREG>: Mention when and how a GREG can be omitted.
3284 (MMIX-mmixal): Clarify dated comparison and location of MMIXware.
3285
3286 * config/tc-mmix.h (md_parse_name): Use ISUPPER, not isupper.
3287
3288 2002-02-01 Alan Modra <amodra@bigpond.net.au>
3289
3290 * Makefile.am: Run "make dep-am"
3291 * Makefile.in: Regenerate.
3292
3293 2002-01-31 Ivan Guzvinec <ivang@opencores.org>
3294
3295 * config/tc-or32.c: New file.
3296 * config/tc-or32.h: New file.
3297 * configure.in: Add support for or32 targets.
3298 * configure: Regenerate.
3299 * config/obj-coff.c: Add support for or32 targets.
3300 * config/obj-coff.h: Add support for or32 targets.
3301 * Makefile.am: Add support for or32 targets.
3302 * Makefile.in: Regenerate.
3303 * NEWS: Mention support for OpenRISC.
3304 * doc/Makefile.in: Regenerate.
3305 * po/POTFILES.in: Regenerate.
3306 * po/gas.pot: Regenerate.
3307
3308 2002-01-30 Richard Sandiford <rsandifo@redhat.com>
3309
3310 * config/tc-sh.c (parse_reg): Fix end-of-word check for is, ix, iy
3311 and mod.
3312
3313 2002-01-29 Chris Demetriou <cgd@broadcom.com>
3314
3315 * config/tc-mips.c (tc_gen_reloc): Arrange for
3316 BFD_RELOC_PCREL_HI16_S relocations to be output relative to
3317 their LO16 parts, even for ELF.
3318
3319 2002-01-29 Daniel Jacobowitz <drow@mvista.com>
3320
3321 * config/tc-i386.c: Protect definitions of true and false
3322 from redefinition.
3323
3324 2002-01-28 Jakub Jelinek <jakub@redhat.com>
3325
3326 * config/obj-elf.c (elf_frob_file_before_adjust): Remove symbols
3327 made because of .weak, if they are neither defined nor used in any
3328 way.
3329
3330 2002-01-27 Daniel Jacobowitz <drow@mvista.com>
3331
3332 * configure: Regenerated.
3333
3334 2002-01-26 Hans-Peter Nilsson <hp@bitrange.com>
3335
3336 * doc/Makefile.am (install): Depend on install-info.
3337 * doc/Makefile.in: Regenerate.
3338
3339 2002-01-26 Nick Clifton <nick@redhat.com>
3340
3341 * po/fr.po: Updated version
3342
3343 2002-01-24 Kazu Hirata <kazu@hxi.com>
3344
3345 * config/tc-h8300.c (check_operand): Don't print a warning
3346 when a valid 24-bit address is given to a 16-bit address
3347 operand.
3348
3349 2002-01-24 Alexandre Oliva <aoliva@redhat.com>
3350
3351 * config/tc-sh.c (sh_elf_suffix): Removed.
3352 (sh_PIC_related_p, sh_check_fixup, sh_cons_fix_new,
3353 sh_end_of_match, sh_parse_name): New functions.
3354 (sh_elf_cons): Simplify.
3355 (parse_exp): Reject misplaced PIC operands.
3356 (md_undefined_symbol): Simplify.
3357 (sh_fix_adjustable): Let @GOTOFF be adjusted.
3358 (md_apply_fix3): Write @PLT and @GOTOFF addends in place.
3359 (tc_gen_reloc): Move fixp subsy absolute value into addnumber.
3360 Complain if subsy remains at the end.
3361 * config/tc-sh.h (sh_parse_name, sh_cons_fix_new): Declare.
3362 (md_parse_name, TC_CONS_FIX_NEW, O_PIC_reloc): Define.
3363
3364 2002-01-22 Alexandre Oliva <aoliva@redhat.com>
3365
3366 * config/tc-mn10300.c (xr_registers): Move `pc'...
3367 (other_registers): ... here.
3368
3369 2002-01-22 Alan Modra <amodra@bigpond.net.au>
3370
3371 * Makefile.am: Run "make dep-am".
3372 * Makefile.in: Regenerate.
3373 * gas/po/POTFILES.in: Regenerate.
3374
3375 2002-01-21 DJ Delorie <dj@redhat.com>
3376
3377 * config/obj-coff.c (obj_coff_init_stab_section): Make the
3378 stabstr_name allocation permanent, as it will be referenced from
3379 the section hash.
3380
3381 2002-01-21 Jason Thorpe <thorpej@wasabisystems.com>
3382
3383 * configure.in (ia64-*-netbsd*): New target.
3384 * configure: Regenerate.
3385
3386 2002-01-21 Hans-Peter Nilsson <hp@bitrange.com>
3387
3388 * doc/as.texinfo (Overview) <Target ARM options>: Add missing {}
3389 to @dots call.
3390 <Detailed description, ARM options>: Ditto.
3391 * doc/c-arm.texi (ARM Options): Ditto.
3392
3393 2002-01-18 Richard Earnshaw <rearnsha@arm.com>
3394
3395 * tc-arm.c (do_xsc_mia, do_xsc_mar, do_xsc_mra): Renamed from
3396 do_mia, do_mar and do_mra respectively.
3397 (do_mav_*): Renamed from do_c_*.
3398 (mav_reg_required_here, mav_parse_offset): Renamed from
3399 cirrus_reg_required_here and cirrus_parse_offset respectively.
3400 (MAV_MODE?): Renamed from CIRRUS_MODE?.
3401
3402 2002-01-18 Richard Earnshaw <rearnsha@arm.com>
3403 Keith Walker <keith.walker@arm.com>
3404
3405 * tc-arm.c (ARM_EXT_V5J, ARM_ARCH_V5TEJ): Define.
3406 (insns): Add pattern for bxj instruction.
3407 (do_bxj): New function.
3408 (arm_cpus): Add arm926ej.
3409 (arm_archs): Add armv5tej.
3410
3411 2002-01-18 Richard Earnshaw <rearnsha@arm.com>
3412
3413 * doc/c-arm.texi: Add new fpe options to list of supported flags.
3414
3415 2002-01-19 Keith Walker <keith.walker@arm.com>
3416
3417 * tc-arm.c (arm_fpus): Add fpe2 and fpe3.
3418
3419 2002-01-18 Richard Earnshaw <rearnsha@arm.com>
3420
3421 * NEWS: Mention new ARM command-line options and VFP support.
3422
3423 * config/tc-arm.c (ARM_CEXT_XSCALE): Replaces ARM_EXT_XSCALE. All
3424 uses changed.
3425 (ARM_CEXT_MAVERICK): Similarly.
3426 (ARM_ANY): Now means any core instruction.
3427 (CPU_DEFAULT): Default to ARM_ANY.
3428 (uses_apcs_26, atcps, support_interwork, uses_apcs_float)
3429 (pic_code): Declare for all object types. Make type int.
3430 (legacy_cpu, legacy_fpu, mcpu_cpu_opt, mcpu_fpu_opt, march_cpu_opt)
3431 (march_fpu_opt, mfpu_opt): Declare.
3432 (md_longopts): Tidy up conditional definitions.
3433 (arm_opts, arm_cpus, arm_archs, arm_fpus, arm_extensions)
3434 (arm_long_opts): New tables.
3435 (arm_parse_cpu, arm_parse_arch, arm_parse_fpu): New functions.
3436 (arm_parse_extension): New function.
3437 (md_parse_option): Rewrite using new table-driven system.
3438 (md_show_usage): Use new table-driven system.
3439 (md_begin): Calculate cpu_variant from command line option data.
3440 * doc/as.texinfo (ARM ISA options): Docuement new ARM-specific
3441 command-line options.
3442 * doc/c-arm.texi: Likewise.
3443
3444 2002-01-18 Andreas Jaeger <aj@suse.de>
3445
3446 * as.c (parse_args): Update year.
3447
3448 2002-01-17 Timothy Wall <twall@alum.mit.edu>
3449
3450 * config/tc-tic54x.c (encode_address): Add a more informative
3451 warning about incorrect syntax.
3452
3453 2002-01-17 Nick Clifton <nickc@cambridge.redhat.com>
3454
3455 * po/gas.pot: Regenerate.
3456
3457 2002-01-17 Nick Clifton <nickc@cambridge.redhat.com>
3458
3459 * macro.c (get_any_string): Add no-c-format comment to prevent
3460 confusion when translating string.
3461 * gasp.c (get_any_string): Add no-c-format comment to prevent
3462 confusion when translating string.
3463
3464 2002-01-16 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
3465 Johannes Stezenbach <js@convergence.de>
3466 * config/tc-mips.c (percent_op): Ensure longer percent_op's are
3467 matched before the shorter ones.
3468 (my_getSmallParser): Fix handling of nested parentheses in
3469 percent_op's. Code cleanup.
3470 (my_getPercentOp): New function, code from my_getSmallParser.
3471 (my_getSmallExpression): Fix handling of closing parentheses.
3472 Code cleanup. Better comments.
3473
3474 2002-01-16 Nick Clifton <nickc@redhat.com>
3475
3476 po/tr.po: New file: Turkish translation.
3477 configure.in (LINGUAS): Add "tr".
3478 configure: Regenerate.
3479
3480 2002-01-15 Richard Earnshaw <rearnsha@arm.com>
3481
3482 Support for VFP instructions
3483 * tc-arm.c (CP_WB_OK, CP_NO_WB): New defines.
3484 (cp_address_required_here): New argument wb_ok. When false, do not
3485 accept write-back forms of addressing. Change all callers.
3486 (FPU_VFP_EXT_NONE, FPU_VFP_EXT_V1xD, FPU_VFP_VFP_V1)
3487 (FPU_VFP_EXT_V2): Define.
3488 (FPU_ARCH_VFP, FPU_ARCH_VFP_V1xD, FPU_ARCH_VFP_V1, FPU_ARCH_VFP_V2):
3489 Define in terms of above.
3490 (vfp_dp_reg_pos, vfp_sp_reg_pos, vfp_ldstm_type): New enums.
3491 (vfp_reg): New struct.
3492 (vfp_regs): New array of registers.
3493 (insns): Add VFP instructions.
3494 (sn_table): New array of VFP single-precision register names.
3495 (dn_table): New array of VFP double-precision register names.
3496 (all_reg_maps): Add the new register tables.
3497 (arm_reg_type): Add new values for above. Increase RET_TYPE_MAX.
3498 (vfp_sp_reg_required_here, vfp_dp_reg_required_here, do_vfp_sp_monadic)
3499 (do_vfp_dp_monadic, do_vfp_sp_dyadic, do_vfp_dp_dyadic)
3500 (do_vfp_reg_from_sp, do_vfp_sp_reg2, do_vfp_sp_from_reg)
3501 (do_vfp_reg_from_dp, do_vfp_reg2_from_dp, do_vfp_dp_from_reg)
3502 (do_vfp_dp_from_reg2, vfp_psr_parse, vfp_psr_required_here)
3503 (do_vfp_reg_from_ctrl, do_vfp_ctrl_from_reg, do_vfp_sp_ldst)
3504 (do_vfp_dp_ldst, vfp_sp_reg_list, vfp_dp_reg_list, vfp_sp_ldstm)
3505 (vfp_dp_ldstm, do_vfp_sp_ldstmia, do_vfp_sp_ldstmdb, do_vfp_ldstmia)
3506 (do_vfp_dp_ldstmdb, do_vfp_xp_ldstmia, do_vfp_xp_ldstmdb)
3507 (do_vfp_sp_compare_z, do_vfp_dp_compare_z, do_vfp_dp_sp_cvt)
3508 (do_vfp_sp_dp_cvt): New functions.
3509 (md_begin): Set soft-float flag for appropriate VFP work.
3510 (md_atof): Handle VFP-format doubles.
3511 (md_parse_option): Handle VFP command-line options.
3512 (md_show_usage): Display VFP command-line options.
3513
3514 2002-01-15 Richard Earnshaw <rearnsha@arm.com>
3515
3516 * tc-arm.c (md_parse_option): Tidy up setting of cpu_variant for
3517 various command line options.
3518
3519 2002-01-15 Nick Clifton <nickc@cambridge.redhat.com>
3520
3521 * config/tc-xstormy16.c: (xstormy16_fix_adjustable): Do not fix
3522 vtinherit relocs.
3523 (xstormy16_md_apply_fix3): Do not return a value.
3524
3525 2002-01-14 Richard Earnshaw <rearnsha@arm.com>
3526
3527 * tc-arm.c (md_longopts): On targets that aren't bi-endian, support
3528 the -EL/-EB option that matches the target's endianness.
3529 (md_parse_option): Likewise.
3530
3531 2002-01-14 Richard Earnshaw <rearnsha@arm.com>
3532
3533 * tc-arm.c (md_longopts): Fix misplaced #endif -- the -oabi option
3534 is not dependent on ARM_BI_ENDIAN.
3535
3536 2002-01-14 Richard Earnshaw <rearnsha@arm.com>
3537
3538 * tc-arm.c (all error messages): Normalize capitalization of messages.
3539
3540 * tc-arm.h (md_operand): Delete define.
3541 * tc-arm.c (in_my_get_expression): New static variable.
3542 (my_get_expression): Set and clear it.
3543 (md_operand): New function. If called from my_get_expression
3544 put the error in inst.error.
3545 (output_inst): Now takes argument of instruction being assembled.
3546 Print it out with any error message.
3547 (do_ldst, do_ldstv4, thumb_load_store): Fault attempt to use a store
3548 with '=' syntax.
3549 (end_of_line): Don't update inst.error if it is already set.
3550
3551 2002-01-11 Richard Earnshaw <rearnsha@arm.com>
3552
3553 * tc-arm.c (do_ldst): Fix handling an immediate expression pseudo
3554 op that can be translated into a mvn instruction.
3555
3556 2002-01-11 Steve Ellcey <sje@cup.hp.com>
3557
3558 * gas/config/tc-ia64.h (MD_FLAGS_DEFAULT): New Macro for
3559 setting default md.flags.
3560 (SHT_INIT_ARRAY): New elf special section used by HP-UX.
3561 (SHT_FINI_ARRAY): New elf special section used by HP-UX.
3562 * gas/config/tc-ia64.c (setup_unwind_header): Add support
3563 for 32 bit unwind info blocks.
3564 (generate_unwind_image): Add support for different types
3565 of unwind images (32 bits and/or big-endian).
3566 (ia64_init): Use MD_FLAGS_DEFAULT to set md.flags.
3567 (ia64_target_format): Add support for hpux target formats.
3568 (ia64_gen_real_reloc_type): Add support for FUNC_IPLT_RELOC.
3569 (ia64_elf_section_type): Add support for SHT_INIT_ARRAY and
3570 SHT_FINI_ARRAY elf section types.
3571
3572 2002-01-10 Richard Earnshaw <rearnsha@arm.com>
3573
3574 * tc-arm.c (struct reg_entry): Move before prototypes.
3575 (int_register, cp_register, fp_register): Delete.
3576 (reg_table): Delete. Replaced with ...
3577 (rn_table, cp_table, cn_table, fn_table, mav_mvf_table)
3578 (mav_mvd_table, mav_mvfx_table, mav_mvdx_table, mav_mvax_table)
3579 (mav_dspsc_table): ... one table per register set.
3580 (arm_reg_hsh): Delete.
3581 (struct reg_map): New structure.
3582 (all_reg_maps): New array.
3583 (enum arm_reg_type): New enums.
3584 (build_reg_hsh): New function.
3585 (insert_reg_alias): Use hash table passed by caller. Adjust all
3586 callers.
3587 (create_register_alias): New function, split out from ...
3588 (md_assemble): ... here.
3589 (md_begin): Build new register hash tables.
3590 (arm_reg_parse): New argument for the hash table to search. Adjust all
3591 callers.
3592 (arm_reg_parse_any): New function.
3593 (co_proc_number): Look up the processor number in the processor hash
3594 table.
3595 (cirrus_regtype): Delete.
3596 (cirrus_register, cirrus_mvf_register, cirrus_mvd_register)
3597 (cirrus_mvfx_register, cirrus_mvdx_register, cirrus_mvax_register)
3598 (ARM_EXT_MAVERICKsc_register): Delete.
3599 (do_c_binops_1, do_c_binops_2, do_c_binops_3): Delete.
3600 (do_c_binops_1[a-o], do_c_binops_2[a-c], do_c_binops_3[a-d]): New
3601 functions.
3602 (do_c_triple_4, do_c_triple_5): Delete.
3603 (do_c_triple_4[ab], do_c_triple_5[a-h]): New functions.
3604 (do_c_quad_6): Delete.
3605 (do_c_quad_6[ab]): New functions.
3606 (do_c_binops, do_c_triple, do_c_quad, do_c_shift, do_c_ldst): Rework
3607 arguments to use new register parsing methods.
3608 (cirrus_reg_required_here): Likewise.
3609 (insns): Reclassify cirrus maverick worker functions.
3610 (cirrus_valid_reg): Delete.
3611
3612 2002-01-07 Jason Thorpe <thorpej@wasabisystems.com>
3613
3614 * configure.in (sh*le): Set cpu_type=sh and endian=little.
3615 (sh*-*-netbsdelf*): New target.
3616 * configure: Regenerate.
3617 * tc-sh.h: Update copyright years.
3618 (TARGET_FORMAT): Add version for TE_NetBSD.
3619
3620 2002-01-07 Nick Clifton <nickc@cambridge.redhat.com>
3621
3622 * read.c (emit_expr): Do not allow 'size' or 'nbytes' to go
3623 negative.
3624
3625 2002-01-06 Alan Modra <amodra@bigpond.net.au>
3626
3627 * config/tc-m68k.h (md_prepare_relax_scan): Rewrite.
3628 * config/tc-m68k.c (md_relax_table): Add md_prepare_relax_scan comment.
3629
3630 2002-01-05 Daniel Jacobowitz <drow@mvista.com>
3631
3632 * tc-mips.c (mips_cprestore_valid): New flag.
3633 (mips_frame_reg_valid): New flag.
3634 (macro) [M_JAL_2]: Check both flags.
3635 [M_JAL_A]: Likewise.
3636 (s_cprestore): Set mips_cprestore_valid.
3637 (tc_get_register): If setting mips_frame_reg, set
3638 mips_frame_reg_valid and clear mips_cprestore_valid.
3639 (s_mips_ent): Clear both flags.
3640 (s_mips_end): Clear both flags.
3641
3642 2002-01-05 Alan Modra <amodra@bigpond.net.au>
3643
3644 * write.c (write_object_file): Make use of bfd_section_list_remove.
3645 * config/obj-ecoff.c (ecoff_frob_file): Likewise.
3646 * config/tc-mmix.c (mmix_frob_file): Likewise.
3647
3648 2002-01-04 Jason Thorpe <thorpej@wasabisystems.com>
3649
3650 * configure.in (i386-*-netbsdelf*): Collapse target into...
3651 (i386-*-netbsd*): ...this. Add support for x86-64.
3652 * configure: Regenerated.
3653
3654 2002-01-03 matthew green <mrg@redhat.com>
3655
3656 * config/tc-ppc.c (md_parse_option): BookE is not Motorola specific.
3657
3658 2002-01-02 Nick Clifton <nickc@cambridge.redhat.com>
3659
3660 * config/tc-m68k.c (md_estimate_size_before_relax): Test for a
3661 NULL frag link.
3662
3663 For older changes see ChangeLog-0001
3664 \f
3665 Local Variables:
3666 mode: change-log
3667 left-margin: 8
3668 fill-column: 74
3669 version-control: never
3670 End: