67ee1c1c57bd141b8524f8a621c90fa3636f8b7f
[external/binutils.git] / gas / ChangeLog
1 2001-07-10  Anders Norlander <anorland@synergenix.se>
2
3         * doc/as.texinfo (Incbin): Fix grammatical errors.
4
5 2001-07-10  Nick Clifton  <nickc@cambridge.redhat.com>
6
7         * depend.c: Use FOPEN_.. macros in calls to fopen().
8         * input-file.c: As above.
9         * itbl-ops.c: As above.
10         * listing.c: As above.
11         * output-file.c: As above.
12         * read.c: As above.
13
14 2001-07-08  Anders Norlander <anorland@synergenix.se>
15
16         * read.c (s_incbin): New .incbin function.
17         * read.c (potable): Add "incbin" pseudo-op.
18         * read.h: Add s_incbin prototype.
19         * doc/as.texinfo (incbin): Document .incbin pseudo-op.
20         * NEWS: Mention new feature.
21
22 2001-07-07  Nick Clifton  <nickc@cambridge.redhat.com>
23
24         * ecoff.c (add_file): Only set debug_type to DEBUG_NONE if it is
25         DEBUG_UNSPECIFIED.
26
27 2001-07-06  John Healy  <jhealy@redhat.com>
28
29         * cgen.c (gas_cgen_save_fixups): Modified to allow more than one
30         set of fixups to be stored.
31         (gas_cgen_restore_fixups): Modified to allow the fixup chain to be
32         restored to be chosen from any that are saved.
33         (gas_cgen_swap_fixups): Modified to allow the current set of
34         fixups to be swapped with any other set that has been saved.
35         (gas_cgen_initialize_saved_fixups_array): New routine.
36         * cgen.h: Modifed prototypes for gas_cgen_save_fixups,
37         gas_cgen_restore_fixups, and gas_cgen_swap_fixups.  Added definitions
38         or MAX_SAVED_FIXUP_CHAINS.
39         * config/tc-m32r.c (assemble_two_insns): Changed calls to fixup
40         store, swap and restore fuctions to reflect the new interface.
41
42 2001-07-06  Nick Clifton  <nickc@cambridge.redhat.com>
43
44         * config/tc-m68k.c (md_estimate_size_before_relax): Catch and
45         ignore empty, ineffectual alignment frags when deciding if a
46         branch can be short.
47
48 2001-07-05  Steve Ellcey  <sje@cup.hp.com>
49
50         * config/tc-ia64.c (special_section): Add SPECIAL_SECTION_INIT_ARRAY
51         and SPECIAL_SECTION_FINI_ARRAY.
52         (special_section_name): Add .init_array and .fini_array.
53         (md_pseudo_table): Add init_array and fini_array.
54         (md): Add pointer_size and pointer_size_shift fields.
55         (setup_unwind_header): New static function.
56         (output_unw_records): Modify to use setup_unwind_header.
57         (generate_unwind_image, dot_endp): Modify to use md.pointer_size and
58         md.pointer_size_shift.
59         (md_begin): Initialize md.pointer_size and md.pointer_size_shift.
60
61 2001-07-05  Ben Elliston  <bje@redhat.com>
62
63         * README (Supported platforms): m88k no longer suffers bitrot.
64
65         * config/tc-m88k.c (md_pseudo_table): Remove redundant "global".
66
67 2001-07-05  Alan Modra  <amodra@bigpond.net.au>
68
69         * struc-symbol.h (struct local_symbol): Rename lsy_offset to
70         lsy_value.  Correct typos in comments.
71         * symbols.c (local_symbol_make): Update for name change.
72         (local_symbol_convert): Likewise.
73         (colon): Likewise.
74         (S_GET_VALUE): Likewise.
75         (S_SET_VALUE): Likewise.
76         (print_symbol_value_1): Likewise.
77         (resolve_symbol_value): Likewise.  Don't divide local sym values
78         by OCTETS_PER_BYTE twice.
79
80 2001-07-04  Jim Wilson  <wilson@redhat.com>
81
82         * config/tc-ia64.c (md_pseudo_table): Add 2byte, 4byte, and 8byte.
83
84         * config/tc-ia64.c (is_conditional_branch): Rewrite to exclude mod
85         sched branches.
86
87 2001-07-05  Ben Elliston  <bje@redhat.com>
88
89         * read.c (s_fill): Correct spelling error in comments.
90
91         * doc/c-m88k.texi: New file.
92         * doc/Makefile.am (CPU_DOCS): Add c-m88k.texi.
93         * doc/Makefile.in: Regenerate.
94         * doc/all.texi: Set M880X0.
95         * doc/as.texinfo: Hook in m88k-dependent documentation.
96
97 2001-07-04  Eric Christopher  <echristo@redhat.com>
98
99         * doc/c-mips.texi (MIPS Opts): Document 12000 as valid cpu.
100
101         * config/tc-mips.c (mips_cpu_info_table): Add rm5200, rm5231, rm5261,
102         and rm5721 as valid cpu strings.
103         (md_show_usage): Add rm5200, rm5231, rm5261, rm5721.
104
105 2001-07-04  Richard Sandiford  <rsandifo@redhat.com>
106
107         * config/tc-mips.c (md_apply_fix): Prevent addend from becoming zero
108         if it's expected to be non-zero.
109
110 2001-07-03  Nick Clifton  <nickc@cambridge.redhat.com>
111
112         * config/tc-sh.c (sh_frob_section): Replace symbol_get_frag() with
113         fscan->fx_frag.
114
115         * write.c (TC_FINALIZE_SYMS_BEFORE_SIZE_SEG): Default to 1.
116         (write_object_file): Set finalize_syms to
117         TC_FINALIZE_SYMS_BEFORE_SIZE_SEG just before size_segs is
118         called.
119
120         * doc/internals.texi; Document
121         TC_FINALIZE_SYMS_BEFORE_SIZE_SEG.
122
123 2001-07-02  Alan Modra  <amodra@bigpond.net.au>
124
125         * config/tc-ppc.c: Formatting fixes.
126
127 2001-07-01  Ben Elliston  <bje@redhat.com>
128
129         * config/tc-m88k.c: Back out warning fixes from 2001-06-24, as
130         they cause some subtle breakage.  Will fix them again later.
131
132 2001-06-28  Nick Clifton  <nickc@cambridge.redhat.com>
133
134         * config/obj-coff.c (obj_coff_ln): Treat a .ln directive
135         outside of a function as a .appline directive.
136
137 2001-06-28  Eric Christopher <echristo@redhat.com>
138             H.J. Lu  <hjl@gnu.org>
139
140         * config/tc-mips.c (mips_arch): New. Use mips_arch instead
141         of mips_cpu for the ISA selection.
142         (md_longopts): Add OPTION_MARCH and OPTION_MTUNE.
143         (md_parse_option): Handle OPTION_MARCH and OPTION_MTUNE.
144         (mips_tune): New.  Use mips_tune for scheduling and optimization
145         issues.
146         (append_insn): Use mips_tune and mips_arch.
147         (macro_build): Ditto.
148         (mips_ip): Ditto.
149         (md_begin): Handle mips_arch, mips_tune and mips_cpu.  For
150         backwards compatability mips_cpu generates arch and tune.
151         (md_show_usage): Document new behavior.
152
153         * doc/c-mips.texi (MIPS Opts): Document -march and -mtune.
154         Deprecate -mcpu.
155
156         * NEWS: Update.
157
158 2001-06-27  Nick Clifton  <nickc@cambridge.redhat.com>
159
160         * write.c (write_object_file): Do not set finalize_syms until
161         after the segments have been sized.  Some backends may still
162         need to access the syms's frags in order to adjust relaxed
163         frags.
164
165         * config/tc-arm.c (do_ldst): Use MVN to build simple inverted
166         constants.
167
168 2001-06-27  Alan Modra  <amodra@bigpond.net.au>
169
170         * write.c (fixup_segment <Difference of 2 syms same seg>): Don't
171         subtract MD_PCREL_FROM_SECTION for 68k.
172         (fixup_segment <Difference of 2 syms different seg>): Only fudge
173         by adding MD_PCREL_FROM_SECTION for 68k or if not already pcrel.
174
175 2001-06-27  Tracy A. Kuhrt  <Tracy.Kuhrt@microchip.com>
176
177         * write.c (fixup_segment <Difference of 2 syms same seg>): If
178         pcrel, subtract MD_PCREL_FROM_SECTION value.
179
180 2001-06-24  Ben Elliston  <bje@redhat.com>
181
182         * stabs.c (generate_asm_file): Make local variable `len' a size_t.
183
184 2001-06-24  Jakub Jelinek  <jakub@redhat.com>
185
186         * config/tc-alpha.c (tc_gen_reloc): Handle relocs against SEC_MERGE
187         section symbols the same way as externs.
188
189 2001-06-24  Ben Elliston  <bje@redhat.com>
190
191         * config/tc-m88k.c (md_number_to_imm): Remove; unused since 1993.
192         (emit_relocations): Ditto.
193         (s_bss): Ditto.
194         (md_begin): Reformat comments to conform to the GNU standards.
195         (md_assemble): Ditto.
196
197         * config/tc-m88k.c (get_reg): Adjust type of `reg_prefix' to char.
198         (md_parse_option): Mark parameters as unused.
199         (md_show_usage): Ditto.
200         (calcop): Adjust type of `reg_prefix' to char.
201         (get_reg): Ditto.
202         (getval): Adjust type of local `c' to char.
203         (md_create_short_jump): Mark from_addr, to_addr params as unused.
204         (md_create_long_jump): Ditto.
205         (md_estimate_size_before_relax): Mark parameters as unused.
206
207         * config/tc-m88k.c (md_pseudo_table): Properly terminate the table
208         to allay a possible compiler warning.
209
210 2001-06-22  Nick Clifton  <nickc@cambridge.redhat.com>
211
212         * doc/internals.texi (CPU backend): Document md_atof.
213
214 2001-06-22  Matthew Wilcox  <willy@ldl.fc.hp.com>
215
216         * config/tc-hppa.c (pre_defined_registers): Add %mrp (millicode
217         return pointer) alias for %r2 or %r31, depending on 32 or 64 bit
218         architecture.
219
220 2001-06-21  Philip Blundell  <philb@gnu.org>
221
222         * config/tc-arm.c (cplong_flag): Rename to long_flag.  All uses
223         updated.
224         (insns): Remove entry for adrl.  Add long_flag for adr.
225         (do_adr): Handle `l' suffix.
226         (do_adrl): Delete.
227
228 2001-06-21  Alan Modra  <amodra@bigpond.net.au>
229
230         * config/tc-hppa.c (CHECK_FIELD_WHERE): Define.
231         (md_apply_fix): Use it here.  Replace printf with equivalent
232         as_bad_where.
233         (tc_gen_reloc): Use as_bad_where instead of as_bad.
234         (md_apply_fix): Here too.
235         * config/tc-i386.c (tc_gen_reloc): Use as_bad_where instead of as_bad.
236         * config/tc-m68k.c (tc_gen_reloc): Likewise.
237         (md_convert_frag_1): Likewise.
238
239 2000-06-20  Tom Rix <trix@redhat.com>
240
241         * config/tc-ppc.c (ppc_comm): Change default alignment to 4 bytes.
242
243 2001-06-18  H.J. Lu <hjl@gnu.org>
244
245         * doc/Makefile.am (info): Depend on $(MANS).
246         (as.1): Remove the prefix `$(srcdir)/'.
247         * doc/Makefile.in: Regenerated.
248
249         * as.1: Removed.
250
251 2001-06-18  Philip Blundell  <philb@gnu.org>
252
253         * config/tc-arm.c (do_msr): Remove restriction on usage of
254         immediate operands.
255
256 2001-06-19  Alan Modra  <amodra@bigpond.net.au>
257
258         * dwarf2dbg.c (dwarf2_finish): Output file info even when no
259         line info.
260
261 2001-06-13  Philip Blundell  <philb@gnu.org>
262
263         * config/tc-arm.c (thumb_shift): Improve wording of error message.
264         (do_t_arit): Likewise.
265
266 2001-06-13  Nick Clifton  <nickc@cambridge.redhat.com>
267
268         * config/tc-sh.c (md_pseudo_table): Only intercept the .file and
269         .loc pseudos if the dfwarf2 functions are available.
270         (md_assemble): Only call dwarf2_emit_insn if it is available.
271
272         * expr.c: Fix typo in comment.
273
274 2001-06-12  Nick Clifton  <nickc@cambridge.redhat.com>
275
276         * doc/as.texinfo (Infix Ops): Document that comparison and
277         combiner operators can be used as infix operators.
278
279 2001-06-12  Peter Jakubek <pjak@snafu.de>
280
281         * gas/config/tc-m68k.c (parse_mri_control_operand): Fix handling
282         of AND/OR.
283         (swap_mri_condition): Add HS (alias fo CC) and LO (alias for CS).
284         (reverse_mri_condition): Likewise.
285         (swap_mri_condition): Issue warning for conditions that can not be
286         swapped.
287         (build_mri_control_operand): Fix order of operands (swapped).
288         (build_mri_control_operand): Allow upper case extension in structured
289         control directives.
290         (s_mri_else): Likewise.
291         (s_mri_next): Likewise.
292         (s_mri_for): Likewise.
293         (s_mri_if): Fix handling comment ('*') in mri mode.
294         (s_mri_while): Likewise.
295         * gas/macro.c (macro_expand): Allow macro invocation with empty
296         extension.
297
298 2001-06-12  Nick Clifton  <nickc@cambridge.redhat.com>
299
300         * config/tc-arm.c: Fix test for overlow of literal pool.
301
302 2001-06-11  H.J. Lu  <hjl@gnu.org>
303
304         * NEWS: Updated for the new -n option for the MIPS assembler.
305
306         * config/tc-mips.c (md_show_usage): Add -n.
307
308         * doc/as.texinfo: Document the new -n option.
309         * doc/c-mips.texi: Likewise.
310         * doc/as.1: Regenerated.
311
312 2001-06-10  Alan Modra  <amodra@bigpond.net.au>
313
314         * config/obj-coff.c (obj_coff_section): Formatting fix.
315
316         * config/tc-i386.c (md_assemble): Accept branch hints as ",pt" and
317         ",pn".
318
319 2001-06-08  H.J. Lu  <hjl@gnu.org>
320
321         * config/tc-mips.c (warn_nops): New variable. Set to 0 to
322         disable warning about all NOPS that the assembler generates.
323         (macro): Warn NOPS generated only if warn_nops is not 0.
324         (md_shortopts): Add `n'.
325         (md_parse_option): Set warn_nops to 1 for `n'.
326
327 2001-06-08  H.J. Lu  <hjl@gnu.org>
328
329         * config/tc-mips.c (mips_ip): Properly handle illegal operands.
330
331 2001-06-08  H.J. Lu  <hjl@gnu.org>
332
333         * config/tc-mips.c (md_apply_fix): Don't adjust common
334         extern/weak symbols for ELF.
335         (md_estimate_size_before_relax): Treat weak like extern for
336         ELF.
337         (mips_fix_adjustable): Don't adjust extern/weak symbols for
338         ELF.
339
340 2001-06-08  Alan Modra  <amodra@bigpond.net.au>
341
342         * Makefile.am: 'som' is not wrongly spelled 'some'.
343         * Makefile.in: Regenerate.
344
345         * config/tc-mips.c (mips16_mark_labels): Reduce number of calls to
346         S_GET_VALUE by using a temp.
347         (append_insn): Likewise, and for S_SET_VALUE too.
348         (mips_emit_delays): Likewise.
349         (my_getExpression): Likewise.
350         (md_apply_fix): Likewise.  Use "valueT" rather than "long" for "value".
351         (mips16_extended_frag): Remove code concerned with avoiding
352         locking in a frag address now that symbols are not finalized until
353         relaxation is complete.  Cater for first relaxation pass having
354         bogus addresses.  Use relax_marker to reliably determine whether a
355         symbol frag has been reached on the current pass.
356
357 2001-06-07  H.J. Lu  <hjl@gnu.org>
358
359         * configure.in: Move "mips-*-linux-gnu*" before "mips-*-gnu*".
360         * configure: Regenerate.
361
362 2001-06-07  H.J. Lu  <hjl@gnu.org>
363
364         * configure.in: Use MIPS_STABS_ELF for Linux/mips and remove
365         ecoff emulation.
366         * configure: Regenerate.
367
368 2001-06-07  H.J. Lu  <hjl@gnu.org>
369
370         * config/tc-mips.c (mips_pseudo_table): Add "extern" if
371         MIPS_STABS_ELF is defined.
372
373 2001-06-06  Nick Clifton  <nickc@cambridge.redhat.com>
374
375         * as.c (show_usage): Remove L from listing options.  It is not a
376         generic option.
377
378 2001-06-06  Christian Groessler <cpg@aladdin.de>
379
380         * config/tc-z8k.c: Removed many warnings by removing unused
381         variables and tagging unused parameters as such.
382         (md_begin): Fixed a typo (","instead of ";").
383         (struct ctrl_table): Add parentheses to initialize array
384         correctly.
385         (struct flag_table): Likewise.
386         (struct intr_table): Likewise.
387         (struct table): Likewise.
388         (check_operand): "#if 0"'ed since it doesn't seem to be used.
389
390 2001-06-06  Peter Jakubek <pjak@snafu.de>
391
392         * gas/config/tc-m68k.c (md_show_usage): Add all supported ColdFire
393         options to list (e.g. m5206e, m5307, m5407).
394
395 2001-06-06  Martin Schwidefsky <schwidefsky@de.ibm.com>
396
397         * config/tc-s390.h (TC_FORCE_RELOCATION): Always emit relocations
398         BFD_RELOC_VTABLE_INHERIT and BFD_RELOC_VTABLE_ENTRY.
399
400 2001-06-06  Alan Modra  <amodra@bigpond.net.au>
401
402         * config/tc-i386.c (md_assemble): Handle Pentium4 branch hints.
403         <JumpByte, JumpDword insn output>: Remove dead code.
404
405 2001-06-06  Tracy Kuhrt <Tracy.Kuhrt@microchip.com>
406
407         * as.c (parse_args): Correct option name "listing-lhs-width2".
408
409 2001-06-05  Nick Clifton  <nickc@cambridge.redhat.com>
410
411         * symbols.c (S_SET_EXTERNAL): Do not override a section symbol's
412         status.
413
414 2001-05-30  Richard Henderson  <rth@redhat.com>
415
416         * read.c (emit_leb128_expr): Call md_cons_align.
417
418 2001-05-28  Jeff Sturm  <jsturm@one-point.com>
419
420         * config/tc-sparc.c (md_apply_fix3): Handle BFD_RELOC_SPARC_UA16,
421         BFD_RELOC_SPARC_UA32 and BFD_RELOC_SPARC_UA64.
422         (tc_gen_reloc): Likewise.
423         (sparc_cons_align): Don't clear sparc_no_align_cons.
424         (cons_fix_new_sparc): Substitute BFD_RELOC_SPARC_UA{16|32|64} for
425         BFD_RELOC_{16|32|64} iff sparc_no_align_cons is set.
426
427 2001-05-27  Alan Modra  <amodra@one.net.au>
428
429         * write.c (relax_segment <rs_space>): Check the section of a
430         symbol to determine whether it is absolute rather than comparing
431         its frag against zero_address_frag as listings play tricks with
432         frags.
433
434         * config/tc-m68k.c (md_assemble): Ensure variable part of frag is
435         allocated in the same chunk as the fixed part.
436
437 2001-05-26  Alan Modra  <amodra@one.net.au>
438
439         * write.c (relax_segment <rs_space>): Calculate growth using
440         addresses before stretch.  Prevent repeated error messages.
441         From Peter Jakubek  <pjak@snafu.de>
442         Use as_bad_where and as_warn_where to pinpoint errors.
443
444 2001-05-25  Alan Modra  <amodra@one.net.au>
445
446         * symbols.c (resolve_symbol_value): Always set segment, even when
447         not finalizing symbol value.
448
449         * config/obj-ieee.c (write_object_file): Set finalize_syms.
450         * config/obj-coff.c (write_object_file): Likewise.
451         * (size_section): Remove rs_space assert as fr_symbol is no longer
452         removed.
453         (fill_section): Likewise.
454
455         * configure.in: Replace linuxoldld with linux*oldld.
456         * configure: Regenerate.
457
458         From 2.11 branch 2001-03-30  Richard Henderson  <rth@redhat.com>
459         * config/tc-i386.c (md_convert_frag): Don't die on local symbols
460         that have been finalized.
461
462         * symbols.c (resolve_symbol_value): Clear sy_resolving before
463         taking exit_dont_set_value.
464
465         * write.c (relax_segment <rs_space>): Don't zap fr_symbol when
466         relaxing.
467
468 2000-05-24  Tom Rix <trix@redhat.com>
469
470         * config/obj-coff.c (add_lineno): xcoff allows negative line
471         numbers
472         * config/tc-ppc.c (ppc_stabx): fix generated symbol
473
474 2001-05-24  Alan Modra  <amodra@one.net.au>
475
476         * write.c (write_object_file): Set finalize_syms = 1 before
477         size_seg is called.
478
479 2001-05-23  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
480
481         * config/tc-mips.c (ISA_HAS_64BIT_REGS): Add ISA_MIPS64 as 64 bit
482         architecture, remove erraneous ISA_MIPS32.
483         (md_show_usage): Add MIPS r12k support.
484         (mips_cpu_info_table): Add MIPS r12k support.
485
486 2001-05-22  Alan Modra  <amodra@one.net.au>
487
488         * config/tc-arc.c (md_assemble): Use is_end_of_line instead of
489         testing for NULs.
490
491         * symbols.c (resolve_symbol_value): Remove "finalize" param,
492         instead use finalize_syms directly.  Don't treat expressions
493         specially with regard to finalize_syms.  Update calls to self.
494         (resolve_local_symbol): Update call to resolve_symbol_value.
495         (S_GET_VALUE): Likewise.  Return resolve_symbol_value if
496         !finalize_syms.
497         * symbols.h (resolve_symbol_value): Update prototype.
498         * config/obj-aout.c (obj_crawl_symbol_chain): Update call
499         to resolve_symbol_value.
500         * config/obj-bout.c (obj_crawl_symbol_chain): Likewise.
501         * config/obj-coff.c (do_relocs_for): Likewise.
502         (yank_symbols): Likewise.
503         (fixup_segment): Likewise.
504         * config/obj-vms.c (obj_crawl_symbol_chain): Likewise.
505         * config/tc-mips.c (md_convert_frag): Likewise.
506         * config/tc-ppc.c (ppc_frob_symbol): Likewise.
507         (ppc_fix_adjustable): Likewise.
508         * dwarf2dbg.c (dwarf2dbg_estimate_size_before_relax): Likewise.
509         (dwarf2dbg_convert_frag): Likewise.
510         * ehopt.c (eh_frame_estimate_size_before_relax): Likewise.
511         (eh_frame_convert_frag): Likewise.
512         * expr.c (make_expr_symbol): Likewise.
513         * write.c (adjust_reloc_syms): Likewise.
514         (write_object_file): Likewise.
515         (relax_segment): Likewise.
516         (fixup_segment): Likewise.
517         (finalize_syms): Init to zero, and update comment.
518         (write_object_file): Set finalize_syms to 1 rather than 2.
519         * doc/internals.texi (sy_value): Mention finalize_syms.
520         (S_GET_VALUE): Remove restriction on when S_GET_VALUE can be called.
521
522         * config/tc-m68k.c (relaxable_symbol): Only treat external symbols
523         as relaxable if embedded system, make weak syms non-relaxable.
524         Move definition..
525         (tc_m68k_fix_adjustable): ..so it can be used here.
526         (md_apply_fix_2): Sign extend without conditional.
527
528         * config/tc-v850.c: Update copyright.
529
530 2001-05-16  Jeff Johnston  <jjohnstn@redhat.com>
531
532         * cgen.c (gas_cgen_tc_gen_reloc): Changed error message when
533         howto entry is not found.
534
535 2001-05-15  Alexandre Oliva  <aoliva@redhat.com>
536
537         * config/tc-mn10300.c (mn10300_force_relocation): Don't
538         optimize differences between symbols in code sections to
539         constants.
540         (mn10300_fix_adjustable): Don't adjust to section+offset
541         relocations pointing at symbols in code sections.
542
543 2001-05-16  Alan Modra  <amodra@one.net.au>
544
545         * config/tc-arc.c (md_assemble): Correct dwarf2_emit_insn param
546         for 8 byte insns.
547         * config/tc-i386.c (md_assemble): Call dwarf2_emit_insn before
548         opcodes are output rather than after.  Delete insn_size.
549         * config/tc-v850.c (md_assemble): Similarly, but delete
550         total_insn_size.
551
552 2001-05-14  Richard Henderson  <rth@redhat.com>
553
554         * ehopt.c (eh_frame_convert_frag): Fix missed subtype adjustment
555         last change.
556
557 2001-05-14  Richard Henderson  <rth@redhat.com>
558
559         * ehopt.c (get_cie_info): Rename from eh_frame_code_alignment;
560         also collect whether to expect an FDE augmentation.
561         (check_eh_frame): Rewrite as a state machine.  Track where in
562         an FDE we are located, skip any augmentation.
563         (eh_frame_estimate_size_before_relax): Get code alignment from
564         the fragment subtype.
565         (eh_frame_relax_frag, eh_frame_convert_frag): Likewise.
566         * read.c (emit_leb128_expr): Call check_eh_frame.
567
568 2001-05-14  Alexandre Oliva  <aoliva@redhat.com>
569
570         * config/tc-mn10300.c (md_assemble): Anchor dwarf2 line info
571         before a relaxable insns.
572
573 2001-05-13  Alexandre Oliva  <aoliva@redhat.com>
574
575         * config/tc-mn10300.c (tc_gen_reloc): Don't reject differences
576         between symbols if the base symbol is in the current section;
577         emit a PC-relative relocation instead.
578
579 2001-05-12  Peter Targett  <peter.targett@arccores.com>
580
581         * config/tc-arc.c: Update copyright and tidy source comments.
582         (md_pseudo_table): Add directive .cpu back as an alias for
583         .option.  Add .file and .line for dwarf2 support.
584         (arc_mach_type): Make bfd_mach_arc_6 default.
585         (md_longopts): Add entry 'pre-v6' representing old command line
586         option when assembling for 'arc5' core versions.
587         (md_parse_option): Make OPTION_ARC same as OPTION_ARC6, for new
588         default behaviour.
589         (arc_code_symbol): Make symbol value for @h30 fixup expression
590         equal to O_constant.
591         (md_assemble): Call dwarf2_emit_insn.
592         Include "dwarf2dbg2.h".  Formatting fixes throughout file.
593         * config/tc-arc.h (DWARF2_LINE_MIN_INSN_LENGTH): Define.
594         * doc/c-arc.texi (ARC_CORE_DEFAULT): Update to new default.
595
596 2001-05-11  Jakub Jelinek  <jakub@redhat.com>
597
598         * config/tc-ia64.c (special_linkonce_name): New.
599         (make_unw_section): Map .gnu.linkonce.t.FOO text section into
600         .gnu.linkonce.ia64unw{,i}.FOO.
601         (ia64_elf_section_type): Handle .gnu.linkonce.ia64unw{,i}.FOO.
602         (dot_endp): Add comment about it.
603
604 2001-05-11  Nick Clifton  <nickc@cambridge.redhat.com>
605
606         * config/tc-arm.c (arm_handle_align): When truncating an aligned
607         block, ensure that the low order bits of the alignment are
608         preserved.
609
610 2001-05-10  Alan Modra  <amodra@one.net.au>
611
612         * config/obj-vms.c (obj_crawl_symbol_chain): Don't take address of
613         symbol_next.
614
615         * config/tc-fr30.c (md_estimate_size_before_relax): Return size of
616         current variable part of frag.
617         * config/tc-m32r.c (md_estimate_size_before_relax): Likewise.
618         * config/tc-openrisc.c (md_estimate_size_before_relax): Likewise.
619         * config/tc-m68hc11.c (RELAX_STATE): Define.
620         (RELAX_LENGTH): Define.
621         (md_estimate_size_before_relax): Handle non-relaxable cases
622         separately from relaxable cases for clarity, and return correct
623         size for multi-pass relaxation.
624         * config/tc-tahoe.c (RELAX_LENGTH): Correct.
625         (md_estimate_size_before_relax): As for tc-m68hc11.c.
626         (md_convert_frag): Remove "length_code".
627         * config/tc-vax.c (RELAX_STATE): Define.
628         (RELAX_LENGTH): Define.
629         (md_relax_table): Add missing entry.
630         (md_estimate_size_before_relax): As for tc-m68hc11.c.
631         (md_convert_frag): Remove "length_code".
632         * config/tc-ns32k.c (md_estimate_size_before_relax): Simplify and
633         don't bother setting fr_var.  Return correct size for multi-pass
634         relaxation.
635         * config/tc-v850.c (md_estimate_size_before_relax): Rewrite.
636         (md_convert_frag): Don't bother clearing fr_var.
637         (md_pseudo_table): Correct initialization.
638         * config/tc-h8500.c (md_convert_frag): Don't bother clearing fr_var.
639         (md_estimate_size_before_relax): No need to set fr_var.
640         * config/tc-mcore.c (md_convert_frag): Don't bother clearing fr_var.
641         (md_estimate_size_before_relax): No need to set fr_var.
642
643 2001-05-09  Richard Henderson  <rth@redhat.com>
644
645         * config/tc-ia64.c (generate_unwind_image): Align the fragment
646         beginning a function's unwind info block.
647
648 2001-05-09  Alexandre Oliva  <aoliva@redhat.com>
649
650         * config/tc-mn10300.c (md_apply_fix3): Accept PC-relative relocs.
651
652 2001-05-08  Andreas Schwab  <schwab@suse.de>
653
654         * config/tc-m68k.c: Instead of replacing -1 by 64 in assignment to
655         fx_pcrel_adjust explicitly sign extend when reading it.
656
657 2001-05-08  Alan Modra  <amodra@one.net.au>
658
659         * config/tc-m68k.c (md_estimate_size_before_relax): Set fr_var
660         from md_relax_table, and combine some switch cases.
661
662 2001-05-06  Alexandre Oliva  <aoliva@redhat.com>
663
664         * config/tc-mn10300.c (md_assemble): Subtract operand->shift
665         from offset in non-pcrel operands too.
666
667 2001-05-06  Nick Clifton  <nickc@cambridge.redhat.com>
668
669         * config/tc-arm.h (MAX_MEM_FOR_RS_ALIGN_CODE): Define.
670         * config/tc-arm.c (arm_handle_align): Do not insert more than
671         MAX_MEM_FOR_RS_ALIGN_CODE bytes.
672         (arm_frag_align_code): Use MAX_MEM_FOR_RS_ALIGN_CODE.
673
674 2001-05-03  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
675
676         * Makefile.am (TARG_ENV_HFILES): Add te-hppa64.h and te-hppalinux64.h.
677         Run "make dep-am".
678         * Makefile.in: Regenerate.
679         * configure.in: Remove duplicate mips-*-ecoff* entry.
680         * configure: Regenerate.
681
682         * config/obj-ecoff.c (obj_pseudo_table): Fix terminating entry.
683         (n_names): Cast away type mismatch.
684         (ecoff_sec_sym_ok_for_reloc): Add unused attribute.
685         (obj_ecoff_frob_symbol): Likewise.
686         * ecoff.c: (add_file): Add unused attribute.
687         (ecoff_directive_begin): Likewise.
688         (ecoff_directive_bend): Likewise.
689         (ecoff_directive_def): Likewise.
690         (ecoff_directive_dim): Likewise.
691         (ecoff_directive_scl): Likewise.
692         (ecoff_directive_size): Likewise.
693         (ecoff_directive_type): Likewise.
694         (ecoff_directive_tag): Likewise.
695         (ecoff_directive_val): Likewise.
696         (ecoff_directive_endef): Likewise.
697         (ecoff_directive_end): Likewise.
698         (ecoff_directive_ent): Likewise.
699         (ecoff_directive_extern): Likewise.
700         (ecoff_directive_file): Likewise.
701         (ecoff_directive_fmask): Likewise.
702         (ecoff_directive_frame): Likewise.
703         (ecoff_directive_mask): Likewise.
704         (ecoff_directive_loc): Likewise.
705         (mark_stabs): Likewise.
706         (ecoff_stab):  Likewise.
707         (ecoff_frob_symbol): Cast away type mismatch.
708         (ecoff_padding_adjust): Likewise.
709         (ecoff_build_symbols): Likewise.
710         (ecoff_build_procs): Likewise.
711         (ecoff_build_aux): Likewise.
712         (ecoff_build_strings): Likewise.
713         (ecoff_build_fdr): Likewise.
714         (ecoff_build_debug): Likewise.
715         * itbl-ops.c (itbl_assemble): Variable initialization.
716
717 2001-05-03  Alan Modra  <amodra@one.net.au>
718
719         * config/tc-i386.c (i386_displacement): Call as_bad for bad GOTOFF
720         expressions rather than triggering an assert.
721
722 2001-05-02  Johan Rydberg  <jrydberg@opencores.org>
723
724         * config/tc-openrisc.c: New file.
725         * config/tc-openrisc.h: Likewise.
726
727         * Makefile.am: Add OpenRISC target.
728         * Makefile.in: Regenerated.
729
730         * configure.in (openrisc-*-*): Add target.
731         * configure: Regenerated.
732
733 2001-05-02  Nick Clifton  <nickc@cambridge.redhat.com>
734
735         * config/tc-arm.c (arm_frag_align_code): Change error message to
736         more explanatory version.
737
738 2001-04-29  Keith M Wesolowski <wesolows@foobazco.org>
739
740         * config/tc-mips.c (md_parse_option): Also accept
741         elf64-tradbigmips and elf64-tradlittlemips for OPTION_64.
742
743 2001-04-27  David Mosberger  <davidm@hpl.hp.com>
744
745         * config/tc-ia64.c (dot_spillmem_p): Fix output_spill_?sprel_p()
746         argument passing order: predicate goes last, not first.
747
748 2001-04-27  Sean McNeil <sean@mcneil.com>
749
750         * configure.in: Add arm-vxworks.
751         * configure: Regenerate.
752
753 2001-04-26  Nick Clifton  <nickc@cambridge.redhat.com>
754
755         * config/tc-arm.c (arm_handle_align): New Function:  Generate
756         no-op filled alignment frags.
757         (arm_frag_align_code): New Function: Create a code alignment frag.
758         (arm_init_frag): New Function: Initialse the target dependent
759         parts of a frag.
760
761         * config/tc-arm.h (TC_FRAG_TYPE): Define.
762         (TC_FRAG_INIT): Define.
763         (HANDLE_ALIGN): Define.
764         (md_do_align): Define.
765
766 2001-04-25  Nick Clifton  <nickc@cambridge.redhat.com>
767
768         * config/obj-coff.c (do_linenos_for): Check to see if the filename
769         symbol has been initialised before extracting its symbol index.
770
771 2001-04-24  H.J. Lu  <hjl@gnu.org>
772
773         * configure: Regenerated with the right version of autoconf.
774
775 2001-04-24  Christian Groessler  <cpg@aladdin.de>
776
777         * config/tc-z8k.c (build_bytes): 12 and 16 bit displacements now
778         generate R_CALLR and R_REL16 relocations
779
780 2000-04-20  Jason Eckhardt  <jle@redhat.com>
781
782         * config/tc-d10v.h (tc_frob_label): Update the symbol's frag
783         since frag_now can change after d10v_cleanup is called.
784
785 2001-04-16  David O'Brien  <obrien@FreeBSD.org>
786
787         * configure.in: Add the em type for FreeBSD targets.
788         * configure: Regenerate.
789
790 2001-04-14  Alexandre Oliva  <aoliva@redhat.com>
791
792         * struc-symbol.h (struct local_symbol): New TC_LOCAL_SYMFIELD_TYPE.
793         * symbols.c (local_symbol_convert): Call TC_LOCAL_SYMFIELD_CONVERT.
794
795         * config/tc-mn10300.c (md_assemble): Simplify offset adjustment of
796         pc-relative relocations not placed at the end of the instruction.
797
798 2001-04-13  Jim Wilson  <wilson@redhat.com>
799
800         * tc-ia64.c (is_conditional_branch): Return true for br, brl, and br.
801         excluding br.i.
802
803 2001-04-13  Jakub Jelinek  <jakub@redhat.com>
804
805         * config/obj-elf.c (obj_elf_change_section): Add entsize argument,
806         handle SHF_MERGE and SHF_STRINGS.
807         (obj_elf_parse_section_letters): Set SHF_MERGE and SHF_STRINGS.
808         (obj_elf_section): Allow additional argument specifying entity size.
809         * write.c (adjust_reloc_syms): Keep relocations against local symbols
810         in SEC_MERGE sections.
811
812 2001-04-12  Jason Merrill  <jason_merrill@redhat.com>
813
814         * dwarf2dbg.c (process_entries): Don't optimize redundant line notes.
815
816 2001-04-12  Alexandre Oliva  <aoliva@redhat.com>
817
818         * expr.c (operand): Pass &c to md_parse_name().
819         * config/tc-ia64.h, config/tc-ppc.h, config/tc-tic54x.h: Adjust.
820
821 2001-04-07  Steven J. Hill  <sjhill@cotw.com>
822
823         * config/tc-mips.c: Support ELF64 for traditional MIPS targets.
824
825         * Makefile.am: (TARG_ENV_HFILES): Add tc-mips.h.
826         * Makefile.in: Regenerated.
827
828         * configure.in: Use traditional MIPS targets for Linux/MIPS.
829         * configure: Regenerated.
830
831 2001-04-06  Alexandre Oliva  <aoliva@redhat.com>
832
833         * config/tc-mn10300.c (xr_registers): Added `pc'.
834
835 2001-04-05  Alan Modra  <alan@linuxcare.com.au>
836
837         * configure.in: Add h8500-*-coff and h8500-*-rtems targets.
838         * configure: Regenerate.
839
840         * config/tc-h8500.c (md_estimate_size_before_relax): Add missing
841         cases, and always return size based on current fr_subtype.
842         (md_begin): Move initialization of md_relax_table..
843         (md_relax_table): ..to static initializer.  Set rlx_length for
844         UNDEF_WORD_DISP cases.
845         * config/tc-w65.c (md_estimate_size_before_relax): Likewise.
846         (md_begin): Likewise.
847         (md_relax_table): Likewise.
848         * config/tc-mcore.c (md_estimate_size_before_relax): Likewise.
849         (md_relax_table): Set rlx_length for UNDEF_WORD_DISP cases.
850         Set rlx_backward and rlx_forward to zero for unused states.
851         * config/tc-sh.c (md_estimate_size_before_relax): Likewise.
852         (md_relax_table): Set rlx_length for UNDEF_WORD_DISP cases.
853         (UNCOND12, UNCOND32): Remove duplicate defines.
854
855 2001-04-04  Hans-Peter Nilsson  <hp@axis.com>
856
857         * config/tc-cris.c (md_estimate_size_before_relax) <case
858         ENCODE_RELAX (STATE_CONDITIONAL_BRANCH, STATE_UNDF)>: Don't emit
859         32-bit branch, just set fragP->fr_subtype.  Set fragP->fr_var.
860         <all cases>: Always set fragP->fr_var using md_cris_relax_table.
861         Add cases to cover all relax states.
862         (cris_insn_first_word_frag): New.
863         (md_assemble): Call cris_insn_first_word_frag to get the first
864         frag in an insn, not frag_more.  Don't call dwarf2_emit_insn at
865         end.  Drop variable insn_size.
866         (gen_bdap): Call cris_insn_first_word_frag, not frag_more.
867         (cris_sym_leading_underscore): Wrap first as_bad parameter in _().
868         (cris_sym_no_leading_underscore, s_cris_file, s_cris_loc): Ditto.
869
870         * write.c (write_object_file): Reset broken word state before
871         calling relax_seg.
872
873 2001-03-31  Alan Modra  <alan@linuxcare.com.au>
874
875         * listing.c (listing_listing): Enable listing on EDICT_NOLIST_NEXT
876         for one line if not already enabled.
877         * cond.c (s_elseif): Correct conditional assembly listing.
878         (s_else): Likewise.
879
880         * cond.c (s_endif): Correct handling of "if .. elseif .." trees.
881         Don't abort on NULL current_cframe.
882
883 2001-03-30  Alan Modra  <alan@linuxcare.com.au>
884
885         * dwarf2dbg.c (dwarf2_directive_file): Fix warnings.
886         (dwarf2dbg_convert_frag): Pass `finalize_syms' to resolve_symbol_value.
887         * config/obj-aout.c (obj_crawl_symbol_chain): Likewise.
888         * config/obj-bout.c (obj_crawl_symbol_chain): Likewise.
889         * config/obj-coff.c (do_relocs_for): Likewise.
890         (yank_symbols): Likewise.
891         (fixup_segment): Likewise.
892         * config/tc-ppc.c (ppc_frob_symbol): Likewise.
893         (ppc_fix_adjustable): Likewise.
894         * config/tc-mips.c (md_convert_frag): Likewise.
895         * config/obj-vms.c (obj_crawl_symbol_chain): Likewise.
896         * ehopt.c (eh_frame_convert_frag): Likewise.
897         * expr.c (make_expr_symbol): Likewise.
898
899         * frags.h (struct frag): Add last_fr_address.  Reorder fields for
900         better packing.
901         * symbols.c (resolve_symbol_value): Don't fix expression values
902         until relaxation is complete.
903         (resolve_local_symbol): Pass `finalize_syms' to resolve_symbol_value.
904         (S_GET_VALUE): Likewise, and return unresolved expression value.
905         * write.c (finalize_syms): New.
906         (relax_and_size_seg): Split into..
907         (relax_seg): New function, returns 1 if anything changed..
908         (size_seg): And the remainder of relax_and_size_seg.
909         (fixup_segment): Arrange for final resolution of sym values.
910         (adjust_reloc_syms): Likewise.
911         (write_object_file): Likewise, and repeatedly call relax_seg until
912         nothing more changes.
913         (relax_segment): Return 1 if anything changed.  Use correct types
914         for rs_org `target' and `after'.
915         * write.h (finalize_syms): Declare.
916         (relax_segment): Update prototype.
917
918         * config/tc-sh.c (md_estimate_size_before_relax): Add extra
919         do-nothing cases to switch to avoid abort on a second relaxation
920         pass, and tidy code a little.
921         * config/tc-cris.c (md_estimate_size_before_relax): Likewise.
922         * config/tc-h8500.c (md_estimate_size_before_relax): Likewise.
923         * config/tc-w65.c (md_estimate_size_before_relax): Likewise.
924         * config/tc-i386.c (UNCOND_JUMP, COND_JUMP, COND_JUMP86): Decrement.
925         (md_relax_table): Remove first four unused entries.  Increment
926         rlx_length by one throughout table, and update comments to suit.
927         (md_estimate_size_before_relax): Return size of current variable
928         part of frag to reflect reality when relaxing more than once.
929         * config/tc-mcore.c (COND12, UNCD12): Rename to DISP12 throughout.
930         (COND32, UNCD32): Rename to DISP32 throughout.
931         (UNDEF_WORD_DISP): Renumber to 3.
932         (md_estimate_size_before_relax): Add extra do-nothing cases.
933         * config/tc-mn10200.c (md_estimate_size_before_relax): Rewrite.
934         * config/tc-mn10300.c (md_estimate_size_before_relax): Rewrite.
935         * config/tc-ns32k.c (md_estimate_size_before_relax): Add cases to
936         handle word and dword branches.
937
938 2001-03-29  Hans-Peter Nilsson  <hp@axis.com>
939
940         * config/tc-cris.h (tc_fix_adjustable): Allow only
941         BFD_RELOC_CRIS_32_GOTREL of the PIC relocs.
942         * config/tc-cris.c (cris_get_pic_suffix): Correct reloc type in
943         example in comment to valid type.
944
945 2001-03-28  H.J. Lu  <hjl@gnu.org>
946
947         * read.c (equals): Set to local for COFF only if it hasn't been
948         defined before.
949
950 2001-03-28  Alan Modra  <alan@linuxcare.com.au>
951
952         * config/tc-hppa.c (DEFAULT_LEVEL): Define.
953         (md_begin): Use it when setting default architecture.
954
955 2001-03-27  Nick Papadonis  <nick@coelacanth.com>
956
957         * read.c (equals): (for COFF) default symbols to being local.
958
959 2001-03-27  Hans-Peter Nilsson  <hp@axis.com>
960
961         * configure.in (cris-*-*): Change default emulation to criself.
962         (cris-*-*aout*): New rule.
963         * configure: Regenerate.
964
965 2001-03-26  Martin Schwidefsky  <schwidefsky@de.ibm.com>
966
967         * config/tc-s390.c (tc_s390_fix_adjustable): Add test for
968         BFD_RELOC_390_GOTENT.
969         * config/tc-s390.h (TC_RELOC_RTSYM_LOC_FIXUP): Add test for
970         BFD_RELOC_390_GOTENT.
971
972 2001-03-26  Nick Clifton  <nickc@redhat.com>
973
974         * config/tc-s390.h (TC_FORCE_RELOCATION): Define.
975         * config/tc-s390.c (s390_force_relocation): New function: Force
976         relocations for VTINHERIT relocs.
977
978 2001-03-23  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
979
980         * doc/as.texinfo: Put @c man begin to generate the as man page.
981         When generating man, define all the variables. Re-organize some
982         options to obtain better indentation of man page.
983         * doc/Makefile.am (MANCONF, TEXI2POD, POD2MAN): New variable.
984         (as.1): Build from as.texinfo.
985         * doc/Makefile.in: Regenerate.Index: binutils/Makefile.am
986
987 2001-03-25  Alan Modra  <alan@linuxcare.com.au>
988
989         * config/tc-i386.c (i386_scale): Accept an absolute expression for
990         scale factor, and return the end of the expression.
991         (i386_operand): Modify for above.
992
993 2001-03-23  Nick Clifton  <nickc@redhat.com>
994
995         * doc/as.texinfo: Document --listing-XXX command line switches.
996         Explain why listings behave differently when -pipe is used.
997
998 2001-03-23  Richard Sandiford  <rsandifo@redhat.com>
999
1000         * write.c (fix_new_exp): Print an error if passed a register.
1001
1002 2001-03-23  Hans-Peter Nilsson  <hp@axis.com>
1003
1004         * config/tc-cris.c: Tweak attribution.  Fix typos.  PIC support.
1005         (PIC_SUFFIX_CHAR): New macro.
1006         (cris_get_pic_suffix, cris_get_pic_reloc_size): New functions.
1007         (pic): New variable.
1008         (md_longopts): New option --pic.
1009         (OPTION_PIC): Define.
1010         (md_estimate_size_before_relax): Tweak longish comment.
1011         (md_create_long_jump): Make the long jumps generate ADD.D offset,PC.
1012         (md_assemble): Handle a PIC relocation on prefix and normal
1013         instruction operands.
1014         <output_instruction.insn_type == CRIS_INSN_BRANCH>: Handle
1015         "complex" operand expressions.  Call frag_more outside
1016         gen_cond_branch_32 parameter list.
1017         (cris_process_instruction): Handle PIC relocs on parsed
1018         operand expressions.  Validize PIC reloc sizes.
1019         (get_autoinc_prefix_or_indir_op): Handle PIC suffix.
1020         (gen_bdap): Handle "complex" operand expressions.
1021         (gen_cond_branch_32): Use as_warn_where, not as_warn.  Use
1022         ADD.D offset,PC as jump instruction if generating PIC.  Generate
1023         error instead of crashing on complex expressions.
1024         (cris_number_to_imm): Add segT parameter.  All callers changed.
1025         Use segT parameter, not now_seg, for segment of fixup.  Handle
1026         PCREL relocations but check that they are fully resolved.
1027         (md_parse_option): Handle OPTION_PIC.
1028         (tc_gen_reloc): Handle PIC relocs.
1029         (md_show_usage): Update for --pic.
1030         (md_apply_fix3): Renamed from md_apply_fix.
1031         (md_pcrel_from): Accept emitting PCREL relocs when ELF.
1032         (md_cris_force_relocation): Force relocation for PIC relocs.
1033
1034         * config/tc-cris.h: Tweak attribution.
1035         (MD_APPLY_FIX3): Define.
1036         (IS_CRIS_PIC_RELOC): New macro.
1037         (TC_RELOC_RTSYM_LOC_FIXUP): Define.
1038         (tc_fix_adjustable): Don't adjust a globally visible symbol when
1039         generating ELF.
1040         (tc_frob_symbol): Avoid emitting undefined symbols.
1041
1042 2001-03-20  Alan Modra  <alan@linuxcare.com.au>
1043
1044         * frags.h (struct frag): Add relax_marker.
1045         * write.c (is_dnrange): Delete.
1046         (relax_frag): Use correct types for `aim', `target', `address'.
1047         Delete `offset', `was_address'.  Test `relax_marker' instead of
1048         using fragile (and slow) address test.
1049         (relax_segment): Init and flip `relax_marker'.
1050
1051 2001-03-19  Alan Modra  <alan@linuxcare.com.au>
1052
1053         * config/tc-i386.c (md_assemble <REGISTER_WARNINGS>): Correct
1054         used register name.
1055
1056 2001-03-18  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
1057
1058         * config/tc-m68hc11.c (md_pseudo_table): Recognize xrefb to comply
1059         with 'Motorola specification for assembly language input standard'.
1060
1061 2001-03-17  Richard Henderson  <rth@redhat.com>
1062
1063         * dwarf2dbg.c (user_filenum, user_filenum_allocated): Remove.
1064         (dwarf2_directive_loc): Don't use them.
1065         (dwarf2_directive_file): Reject duplicate file definitions.
1066         (get_filenum): Zero allocated memory.
1067         (out_file_list): Complain about missing file definitions.
1068
1069 2001-03-17  Alan Modra  <alan@linuxcare.com.au>
1070
1071         * read.c (do_org): Handle complex expressions.
1072         * cgen.c (gas_cgen_finish_insn): Likewise.
1073
1074 2001-03-15  David Mosberger  <davidm@hpl.hp.com>
1075
1076         * config/tc-ia64.c (md): New member keep_pending_output.
1077         (ia64_flush_pending_output): Flush only if md.keep_pending_output
1078         is not set.
1079         (dot_xdata): Turn on md.keep_pending_output for the duration of
1080         this function.
1081         (dot_xfloat_cons): Ditto.
1082         (dot_xstringer): Ditto.
1083         (dot_xdata_ua): Ditto.
1084         (dot_xfloat_cons_ua): Ditto.
1085
1086 2001-03-15  Jim Wilson  <wilson@redhat.com>
1087
1088         * config/tc-ia64.c (ia64_unrecognized_line, case '['): Add local
1089         label support.
1090
1091 2001-03-15  Alexandre Oliva  <aoliva@redhat.com>
1092
1093         * config/tc-sh.c (parse_reg): Match capital MACH and MACL.
1094
1095 2001-03-15  DJ Delorie  <dj@redhat.com>
1096
1097         * stabs.c (s_stab_generic): Don't corrupt the notes obstack by
1098         blindly freeing string if it isn't at the top of the obstack.
1099
1100 2001-03-13  Alan Modra  <alan@linuxcare.com.au>
1101
1102         * config/tc-i386.c (RELOC_ENUM): Define.  Use throughout file.
1103         (NUM_FLAG_CODE): Define.
1104         (lex_got): New function.
1105         (got_reloc): New global var.
1106         (x86_cons_fix_new): New function.
1107         (x86_cons): New function.
1108         (i386_immediate): Use lex_got here, replacing inline code.  Change
1109         "ignoring junk.." error message to "junk.."
1110         (i386_displacement): Likewise.
1111         * config/tc-i386.h (TC_PARSE_CONS_EXPRESSION): Define.
1112         (x86_cons): Declare.
1113         (TC_CONS_FIX_NEW): Define.
1114         (x86_cons_fix_new): Declare.
1115
1116 2001-03-12  Nick Clifton  <nickc@redhat.com>
1117
1118         * config/tc-arm.c (md_begin): Always set machine type based on
1119         cpu_variant.
1120
1121 2001-03-07  Alan Modra  <alan@linuxcare.com.au>
1122
1123         * config/tc-i386.c (struct _i386_insn): Rename disp_reloc to reloc.
1124         (md_assemble) <smallest displacement>: Use correct field of i.op[]
1125         union.
1126         <JumpInterSegment output>: Use correct i.disp_reloc[].
1127         <immediate output>: Likewise.
1128
1129 2001-03-06  Nick Clifton  <nickc@redhat.com>
1130
1131         * config/tc-arm.c (md_apply_fix3): Clear bit zero of offset in
1132         BLX(1) instruction.
1133
1134 2001-03-06  Igor Shevlyakov  <igor@windriver.com>
1135
1136         * config/tc-m68k.c : Add 5407 to archs[] table.
1137         (HAVE_LONG_BRANCH): Add mcf5407.
1138         (select_control_regs): Recognize 5407.
1139
1140 2001-03-02  Dave Brolley  <brolley@redhat.com>
1141
1142         * config/tc-m32r.c (expand_debug_syms): Call frag_align_code rather
1143         than m32r_do_align.
1144
1145 2001-03-02  Richard Sandiford  <rsandifo@redhat.com>
1146
1147         * config/atof-ieee.c (TC_LARGEST_EXPONENT_IS_NORMAL): New macro.
1148         (gen_to_words): Print warnings if NaNs are found and the target CPU
1149         does not support them.  Allow largest exponent to be used in normal
1150         numbers if TC_LARGEST_EXPONENT_IS_NORMAL evaluates to true.
1151
1152 2001-02-28  Andreas Jaeger  <aj@suse.de>, Bo Thorsen  <bo@suse.de>
1153
1154         * config/tc-i386.c (tc_gen_reloc): Remove ugly hack which is not needed
1155         anymore since we use bfd_elf_generic_reloc now.
1156         (md_apply_fix3): Only apply hack for partial_inplace if not using RELA.
1157
1158 2001-02-27  Alan Modra  <alan@linuxcare.com.au>
1159
1160         * configure.in (BFD_VERSION): New.
1161         (AM_INIT_AUTOMAKE): Use $BFD_VERSION.
1162         * configure: Regenerate.
1163         * Makefile.am: Run "make dep-am"
1164         * Makefile.in: Regenerate.
1165         * doc/Makefile.in: Regenerate.
1166
1167 2001-02-26  Mark Elbrecht  <snowball3@bigfoot.com>
1168
1169         * config/obj-coff.c [BFD_ASSEMBLER] (obj_coff_section): Set
1170         SEC_NEVER_LOAD when the 'n' flag is used.
1171         Add SEC_NEVER_LOAD to matchflags.
1172
1173 2001-02-24  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
1174
1175         * symbols.c (decode_local_label_name): Initialize message_format
1176         only when an error is reported (perf pb due to I18N).
1177
1178 2001-02-23  H.J. Lu  <hjl@gnu.org>
1179
1180         * dwarf2dbg.c (dwarf2_directive_file): Call s_app_file (0) if
1181         BFD_ASSEMBLER is not defined.
1182
1183 2001-02-23   Richard Sandiford <rsandifo@redhat.com>
1184
1185         * config/tc-mn10300.c (md_apply_fix3): Don't mark a fixup as
1186         done if it's against a symbol.
1187
1188 2001-02-22  Timothy Wall  <twall@cygnus.com>
1189
1190         * config/tc-ia64.c (ia64_target_format): Return ia64-aix-specific
1191         target formats if applicable.
1192         * config/te-ia64aix.h: New.  Configuration for AIX5 on IA-64.
1193         * Makefile.am (TARG_ENV_HFILES): Added config/te-ia64aix.h.
1194         * Makefile.in: Regenerated.
1195         * configure.in: Added configuration for ia64-*-aix*.
1196         * configure: Regenerated.
1197
1198 2001-02-21  David Mosberger  <davidm@hpl.hp.com>
1199
1200         * config/tc-ia64.c (enum operand_match_result): New type.
1201         (operand_match): Change return type to operand_match_result.
1202         Fix all returns appropriately, adding support for returning the
1203         out-of-range result.
1204         (parse_operands): New locals result, error_pos, out_of_range_pos,
1205         curr_out_of_range_pos.  Rewrite operand matching loop to give better
1206         error messages.
1207
1208 2001-02-21  David Mosberger  <davidm@hpl.hp.com>
1209
1210         * config/tc-ia64.c (struct unwind): Add member "prologue_count".
1211         (dot_proc): Clear unwind.prologue_count to zero.
1212         (dot_prologue): Increment unwind.prologue_count.
1213         (dot_restore): If second operand is omitted, use
1214         unwind.prologue_count -1 for "ecount" (# of additional regions to
1215         pop).  Decrement unwind.prologue_count by number of regions
1216         popped.
1217
1218 2001-02-21  Nick Clifton  <nickc@redhat.com>
1219
1220         * doc/as.texinfo (Section): Note that some flags to the COFF
1221         version of .section remove attributes rather than setting them.
1222
1223 2001-02-20  Kazu Hirata  <kazu@hxi.com>
1224
1225         * config/tc-pdp11.c: Fix formatting.
1226         * config/tc-pdp11.h: Likewise.
1227
1228 2001-02-20  Bo Thorsen  <bo@suse.de>
1229
1230         * config/tc-i386.c (tc_i386_fix_adjustable): Fix GOTPCREL GOT
1231         entry.
1232
1233 2001-02-18  David O'Brien  <obrien@FreeBSD.org>
1234
1235         * configure.in (cpu_type, arch): Add a generic FreeBSD specification as
1236         all FreeBSD platforms should look the same at this level.
1237         * configure: Rebuilt.
1238         * config/tc-i386.c: Add support for old FreeBSD a.out hosts.
1239
1240 2001-02-18  lars brinkhoff  <lars@nocrew.org>
1241
1242         * Makefile.am: Add PDP-11 target.
1243         * configure.in: Likewise.
1244         * config/tc-pdp11.c: New file.
1245         * config/tc-pdp11.h: New file.
1246         * doc/Makefile.am: Add PDP-11 documentation.
1247         * doc/all.texi: Likewise.
1248         * doc/as.texinfo: Likewise.
1249         * doc/c-pdp11.texi: New file.
1250
1251 2001-02-16  matthew green  <mrg@redhat.com>
1252
1253         * cgen.c (gas_cgen_md_apply_fix3): Support BFD_RELOC_64.
1254
1255 2001-02-13  Jim Wilson  <wilson@redhat.com>
1256
1257         * config/tc-ia64.c (operand_match, case TAG13): Make a BFD_RELOC_UNUSED
1258         reloc instead of a 0 reloc.
1259         (md_apply_fix3): Check for BFD_RELOC_UNUSED instead of 0, and mark it
1260         as done.
1261         * config/tc-ia64.h (TC_RELOC_RTSYM_LOC_FIXUP): Likewise.
1262
1263 2001-02-13  Ian Lance Taylor  <ian@zembu.com>
1264
1265         * write.c (is_dnrange): Stop as soon as the address becomes
1266         larger.
1267         (relax_frag): Add segment parameter.  Only call symbol_get_frag
1268         once.  Only call is_dnrange if the symbol is in the same segment,
1269         and the symbol address is larger.
1270         (relax_segment): Pass segment to md_relax_frag and relax_frag.
1271         * write.h (relax_frag): Update declaration.
1272         * config/tc-fr30.c (fr30_relax_frag): Add segment parameter.  Pass
1273         it to relax_frag.
1274         * config/tc-m32r.c (m32r_relax_frag): Likewise.
1275         * config/tc-m32r.h (md_relax_frag): Add segment parameter.
1276         (m32r_relax_frag): Update declaration.
1277         * config/tc-mips.h (md_relax_frag): Add segment parameter.
1278         * config/tc-tic54x.h (md_relax_frag): Likewise.
1279         * doc/internals.texi (CPU backend): Update documentation for
1280         md_relax_frag.
1281
1282 2001-02-13  Alan Modra  <alan@linuxcare.com.au>
1283
1284         * doc/c-i386.texi (i386-Arch): Add "jumps"/"nojumps" blurb.
1285         Mention effect of < 386 architectures on jump promotion.
1286         (i386-Jumps): xref above.  Don't assume long disp is 32 bits.
1287
1288         * config/tc-i386.c (no_cond_jump_promotion): New.
1289         (set_cpu_arch): Parse "jumps" arch modifier.
1290         (insn_size): Modify usage comment.
1291         (ENCODE_RELAX_STATE): Reformat and protect macro arg.
1292         (SIZE_FROM_RELAX_STATE): Rename to DISP_SIZE_FROM_RELAX_STATE.
1293         (TYPE_FROM_RELAX_STATE): New define.
1294         (UNCOND_JUMP, COND_JUMP): Renumber.
1295         (md_relax_table): Reorder to suit.
1296         (COND_JUMP86): New define.
1297         (md_relax_table): Handle COND_JUMP86 cases. Add a few comments.
1298         (md_assemble): Create frag var for jumps of max size, encode relax
1299         state for COND_JUMP86.
1300         (md_estimate_size_before_relax): Handle COND_JUMP86 cases, and
1301         leave conditional jumps small if no_cond_jump_promotion.
1302         (md_convert_frag): Likewise.
1303
1304         * expr.c (operator): Don't bump input_line_pointer for two char
1305         operators.  Instead return operator size via new param num_chars.
1306         (expr): Use above to parse multi-char operators correctly.
1307
1308 Mon Feb 12 17:45:50 CET 2001  Jan Hubicka  <jh@suse.cz>
1309
1310         * config/tc-i386.c (i386_displacement): Fix handling of
1311         BFD_RELOC_X86_64_GOTPCREL.
1312         (i386_validate_fix): Likewise.
1313
1314 2001-02-12  Philip Blundell  <pb@futuretv.com>
1315
1316         * config/tc-arm.c (do_ldst): Improve warnings for unpredictable
1317         ldrt/strt instructions.
1318
1319 2001-02-11  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>
1320
1321         * config/tc-mips.c (macro): For M_LA_AB emit a
1322         BFD_RELOC_MIPS_CALL16 relocation or a
1323         BFD_RELOC_MIPS_CALL_HI16/BFD_RELOC_MIPS_CALL_LO16 pair instead of
1324         BFD_RELOC_MIPS_GOT16 and
1325         BFD_RELOC_MIPS_GOT_HI16/BFD_RELOC_MIPS_GOT_LO16, respectively for
1326         loading the jump register when generating SVR4_PIC code.
1327
1328 2001-02-10  Chris Demetriou  <cgd@broadcom.com>
1329
1330         * configure.in: Make 'mipself' and 'mipsecoff' emulations
1331         map to MIPS-specific files, as they used to do before the
1332         change on 2000-05-21.
1333         * configure: Regerate.
1334
1335 2001-02-10  Chris Demetriou  <cgd@broadcom.com>
1336
1337         * config/tc-mips.c (md_parse_option): Don't try to compile
1338         ELF-only option code if not ELF.
1339
1340 2001-02-08  David Mosberger  <davidm@hpl.hp.com>
1341
1342         * config/tc-ia64.h (md_elf_section_type): New macro.
1343         (ELF_TC_SPECIAL_SECTIONS): Drop .IA_64.unwind and .IA_64.unwind_info
1344         (they're now handled via ia64_elf_section_type.
1345
1346         * config/tc-ia64.c (unwind): New members saved_text_seg,
1347         saved_text_subseg, and force_unwind_entry.
1348         (optimize_unw_records): New function to optimize away unnecessary
1349         unwind directives.
1350         (ia64_elf_section_type): New function.
1351         (output_unw_records): Generate unwind info only if the size is
1352         non-zero or if it's forced for some other reason (e.g.,
1353         handlerdata or a personality routine).
1354         (generate_unwind_image): Don't switch back to previous
1355         section---stay inside the unwind info section instead so that
1356         handlerdata that may follow goes into the right place.
1357         (dot_handlerdata): Force generation of unwind entry and save the
1358         current active text segment before generating unwind image.
1359         (dot_unwentry): Force generation of unwind entry.
1360         (dot_personality): Ditto.
1361         (dot_endp): Generate unwind table entry only if there is
1362         some unwind info or the unwind entry was forced.
1363
1364         * config/tc-ia64.c (make_unw_section_name): New macro to form
1365         unwind section name.
1366         (generate_unwind_image): Add "text_name" argument.  Use it to
1367         form unwind section name.
1368         (dot_handlerdata): Determine current segment (section) name and
1369         pass it to generate_unwind_image().
1370         (dot_endp): Determine current segment (section) name and use
1371         it to determine the appropriate unwind section name.
1372         (ia64_md_do_align): Add missing ATTRIBUTE_UNUSED declarations to
1373         n, fill, and max arguments.
1374
1375 2001-02-09  Schwidefsky  <schwidefsky@de.ibm.com>
1376
1377         * Makefile.am: Add linux target for S/390.
1378         * configure.in: Likewise.
1379         * config/tc-s390.c: New file.
1380         * config/tc-s390.h: New file.
1381
1382 2001-02-09  Alexandre Oliva  <aoliva@redhat.com>
1383
1384         * config/tc-sh.c (md_pseudo_table): Add uaquad.  Use s_uacons for
1385         2byte, 4byte and 8byte.
1386
1387 2001-02-08  Alan Modra   <alan@linuxcare.com.au>
1388
1389         * config/tc-hppa.c (pa_build_unwind_subspace): Don't call
1390         md_number_to_chars with size > sizeof (valueT).
1391
1392 2001-02-06  H.J. Lu  <hjl@gnu.org>
1393
1394         * config/tc-ia64.h (TC_RELOC_RTSYM_LOC_FIXUP): Do fixup if
1395         there is no relocation.
1396
1397 2001-02-06  H.J. Lu  <hjl@gnu.org>
1398
1399         * config/tc-ia64.h (TC_RELOC_RTSYM_LOC_FIXUP): New. Defined.
1400
1401         * config/tc-ia64.c (md_parse_option): Only accept the valid
1402         ia64 options on "-axxx".
1403
1404 2001-02-05  Jim Wilson  <wilson@redhat.com>
1405
1406         * config/tc-ia64.c (errata_nop_necessary_p): Return 0 instead of
1407         aborting for invalid operands.
1408
1409 2001-02-06  Alan Modra  <alan@linuxcare.com.au>
1410
1411         * config/tc-hppa.c (fix_new_hppa): Pass in unwind directly rather
1412         than via pointer.  Update all callers.
1413         (UNWIND_LOW32): Define.
1414         (UNWIND_HIGH32): Define.
1415         (pa_build_unwind_subspace): Use the above macros instead of dumping
1416         bitfields directly.  Call frag_more once rather than multiple times.
1417         (md_assemble): Use UNWIND_LOW32.
1418         (pa_entry): Likewise
1419         (pa_procend): Likewise.
1420         (process_exit): Use UNWIND_HIGH32.
1421
1422 2001-02-04  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
1423
1424         * config/tc-m68hc11.h (LISTING_HEADER): Use m68hc11_listing_header
1425         function to select the header according to the cpu.
1426         (md_after_pass_hook, md_do_align): Remove.
1427         (md_cleanup, m68hc11_cleanup): Remove.
1428         (md_pcrel_from_section): Declare.
1429         * config/tc-m68hc11.c (build_dbranch_insn): Remove insn_size.
1430         (build_jump_insn, build_insn): Likewise.
1431         (m68hc11_listing_header): New function.
1432         (m68hc11_cleanup): Remove.
1433
1434 2001-02-02  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
1435
1436         * config/tc-m68hc11.c (relaxable_symbol): Relax externally visible
1437         symbols because there is no support for shared libraries and these
1438         symbols can't be overridden (unless they are weak).
1439
1440 2001-02-01  Momchil Velikov  <velco@fadata.bg>
1441
1442         * dwarf2dbg.c (out_debug_abbrev): Terminate the abbreviations
1443         for the compilation unit with a zero byte.
1444
1445 2001-01-30  Alan Modra  <alan@linuxcare.com.au>
1446
1447         * config/tc-hppa.c (pa_ip): Support 12 bit branches to absolute
1448         destinations.  Correct range check for 17 and 22 bit branches.
1449
1450 2001-01-25  Nick Clifton  <nickc@redhat.com>
1451
1452         * config/tc-m68k.c (tc_gen_reloc): Do not abort if tcbit is
1453         still set.  Issue an error message instead.
1454         (md_estimate_size_before_relax): Delete unused variable
1455         'buffer_address'.  Fixup parentheses around if statement.
1456
1457 2001-01-23  Kazu Hirata  <kazu@hxi.com>
1458
1459         * as.c: Fix formatting.
1460         * ehopt.c: Likewise.
1461         * messages.c: Likewise.
1462         * stabs.c: Likewise.
1463         * symbols.c: Likewise.
1464
1465 2001-01-23  Ben Elliston  <bje@redhat.com>
1466
1467         * config/tc-m32r.c (m32r_handle_align): Declare type of fragp.
1468
1469 2001-01-22  Kazu Hirata  <kazu@hxi.com>
1470
1471         * config/tc-alpha.c: Fix formatting.
1472
1473 2001-01-19  Kazu Hirata  <kazu@hxi.com>
1474
1475         * config/tc-alpha.c: Fix formatting.
1476
1477 2001-01-18  Kazu Hirata  <kazu@hxi.com>
1478
1479         * config/tc-alpha.c: Fix formatting.
1480
1481 2001-01-18  Nick Clifton  <nickc@redhat.com>
1482
1483         * config/tc-arm.c (ldm_flags): Remove redundant bit from "fa" and
1484         "da" flags.
1485         (stm_flags): Remove redundant bit from "ed" and "da" flags.
1486
1487 2001-01-18  Alexandre Oliva  <aoliva@redhat.com>
1488
1489         * configure.in (cpu_type, arch): Match i386 too.
1490         * configure: Rebuilt.
1491
1492 2001-01-16  Kazu Hirata  <kazu@hxi.com>
1493
1494         * config/tc-i386.c: Fix formatting.
1495
1496 2001-01-16  Alan Modra  <alan@linuxcare.com.au>
1497
1498         * config/tc-hppa.c (tc_gen_reloc): Use SEGREL32 instead of DIR32
1499         relocs for .PARISC.unwind section.
1500
1501         * config/tc-hppa.c (pa_build_unwind_subspace): Build unwind
1502         depending on section flags, not just for .text.
1503
1504 2001-01-15  Jim Wilson  <wilson@redhat.com>
1505
1506         * config/tc-ia64.c (ia64_flush_insns): Handle unwind directives
1507         not immediately followed by an instruction.
1508
1509 2001-01-15  Kazu Hirata  <kazu@hxi.com>
1510
1511         * config/tc-m68hc11.c: Fix formatting.
1512
1513 2001-01-15  Nick Clifton  <nickc@redhat.com>
1514
1515         * symbols.c (colon): Change 'already defined symbol' from a
1516         fatal error to an ordinary error.  There is no reason why this
1517         error should be fatal.
1518
1519         * message.c (as_fatal): Delete output file, if one has been
1520         created.
1521
1522 2001-01-14  Alan Modra  <alan@linuxcare.com.au>
1523
1524         * config/tc-hppa.h (TARGET_FORMAT): Add hppa-linux variants.
1525
1526 2001-01-14  Kazu Hirata  <kazu@hxi.com>
1527
1528         * config/tc-alpha.c: Fix formatting.
1529         * config/tc-arc.c: Likewise.
1530         * config/tc-arc.h: Likewise.
1531         * config/tc-d10v.c: Likewise.
1532         * config/tc-i370.c: Likewise.
1533         * config/tc-i386.c: Likewise.
1534         * config/tc-i960.c: Likewise.
1535         * config/tc-m68k.c: Likewise.
1536         * config/tc-ppc.c: Likewise.
1537         * config/tc-sparc.c: Likewise.
1538         * config/tc-tahoe.c: Likewise.
1539         * config/tc-vax.c: Likewise.
1540
1541         * config/tc-arc.c: Fix formatting.
1542
1543         * config/tc-arc.c: Fix formatting.
1544
1545 2001-01-14  Alan Modra  <alan@linuxcare.com.au>
1546
1547         * config/tc-hppa.c (pa_build_unwind_subspace): Use SEGREL32 for
1548         both 32 and 64 bit ELF.
1549
1550         * config/tc-hppa.c (pa_ip): Store `a' flag in bit zero of operand
1551         and don't bother storing `m' for "ce" completer.  Tidy handling of
1552         'J' and 'K' operands to suit.  Handle '<' and '>' operands.
1553
1554 Sun Jan 14 00:36:42 MET 2001  Jan Hubicka  <jh@suse.cz>
1555
1556         * config/tc-i386.h (TARGET_MACH): New macro.
1557         (i386_mach): Declare.
1558         * config/tc-i386.c (i386_mach): New function.
1559
1560 2001-01-13  Philip Blundell  <philb@gnu.org>
1561
1562         * doc/as.texinfo: Fix spelling and cross-references.
1563
1564         * doc/c-arm.texi: Fix typos.  Say that `;' is a line separator
1565         character for all systems, not just GNU/Linux.  Make it explicit
1566         that `-k' doesn't affect code generation, just ELF flags.
1567
1568 Sat Jan 13 01:47:35 MET 2001  Jan Hubicka <jh@suse.cz>
1569
1570         * config/tc-i386.c (md_assemble): Check cpu_flags even for nullary
1571         instructions.
1572
1573 2001-01-12  Frank Ch. Eigler  <fche@redhat.com>
1574
1575         * cgen.c (gas_cgen_finish_insn): Call dwarf2_emit_insn.
1576
1577 2001-01-12  Nick Clifton  <nickc@redhat.com>
1578
1579         * as.c (print_args): Update copyright date to 2001.
1580
1581 2001-01-12  Peter Targett  <peter.targett@arccores.com>
1582
1583         * doc/c-arc.texi: New file.
1584         Some sections to be expanded.
1585
1586 2001-01-12  Alan Modra  <alan@linuxcare.com.au>
1587
1588         * config/tc-i386.c (md_longopts): Recognize "--64" only for ELF.
1589         (md_parse_option): Always accept "--32".
1590
1591 2001-01-11  Peter Targett  <peter.targett@arccores.com>
1592
1593         * as.h (TC_ARC): Ensure struc-symbol.h included.
1594         * as.c (dwarf2dbg.h): Include to remove implicit declaration
1595         warnings.
1596         * struc-symbol.h (SYMBOLS_NEED_BACKPOINTERS): Define.
1597         (TARGET_SYMBOL_FIELDS) added.
1598
1599         * doc/Makefile.am (CPU_DOCS): Added c-arc.texi.
1600         * doc/c-arc.texi: New file.
1601         Some sections to be expanded.
1602         * doc/as.texinfo: Update command-line options.
1603         Removed outdated text for ARC dependant features, instead include
1604         text from above file.
1605
1606         * config/obj-elf.h (ELF_TARGET_SYMBOL_FIELDS): Define local flag.
1607         (TARGET_SYMBOL_FIELDS): Alias to previous definition.
1608         (targ-cpu.h) header.
1609         * config/tc-arc.h:
1610         * config/tc-arc.c: New updated configuration for
1611         ARC, including selection of core variants, and extensibility of
1612         instructions, registers etc. through directives.
1613
1614         * config/tc-arc.c (arc_extinst): Minor corrections for
1615         error messages.
1616         (arc_common) Likewise. Make alignment argument optional for local
1617         symbols also, with default of zero.
1618
1619 2001-01-11  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
1620
1621         * config/tc-m68hc11.c (md_estimate_size_before_relax): Fix
1622         STATE_INDEXED_OFFSET when the symbol is undefined (16-bit offset).
1623         (build_indexed_byte): Don't relax indexed byte, use 16-bit offset
1624         and fix_new_exp() instead.
1625         (md_convert_frag): For indexed post byte use the symbol value
1626         rather than the displacement.
1627         (md_relax_table): Fix indexed offset relax.
1628
1629 2001-01-11  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
1630
1631         * config/tc-m68hc11.c (md_estimate_size_before_relax):Don't
1632         relax weak symbols.
1633         (relaxable_symbol): New function.
1634
1635 2001-01-11  Andreas Jaeger  <aj@suse.de>
1636
1637         * config/tc-i386.h (TC_RELOC_GLOBAL_OFFSET_TABLE): Removed, it's
1638         not used anywhere.
1639
1640 2001-01-10  Nick Clifton  <nickc@redhat.com>
1641
1642         * config/tc-arm.c (arm_fix_adjustable): Define for OBJ_COFF.
1643         * config/tc-arm.h (obj_fix_adjustable): Define for OBJ_COFF
1644
1645 2001-01-10  Nick Clifton  <nickc@redhat.com>
1646
1647         * symbols.c (DOLLAR_LABEL_CHAR): New constant - the magic
1648         character used to dollar local symbols.
1649         (LOCAL_LABEL_CHAR): New constant - the magic character used to
1650         local label symbols.
1651         (dollar_label_name): Use DOLLAR_LABEL_CHAR.
1652         (fb_label_name): Prefix local labels with LOCAL_LABEL_PREFIX,
1653         if defined.
1654         Use LOCAL_LABEL_CHAR.
1655         (decode_local_label_name): Skip LOCAL_LABEL_PREFIX.
1656         Use DOLLAR_LABEL_CHAR and LOCAL_LABEL_CHAR.
1657         (S_IS_LOCAL): Use DOLLAR_LABEL_CHAR and LOCAL_LABEL_CHAR.
1658
1659 2001-01-08  Bo Thorsen  <bo@suse.de>
1660
1661         * config/tc-i386.c (i386_immediate, i386_displacement):
1662         GOTPCREL check fix.
1663
1664 2001-01-07  Ian Lance Taylor  <ian@zembu.com>
1665
1666         * doc/c-i386.texi (i386-Arch): Remove spaces incorrectly inserted
1667         in last change.
1668
1669 2001-01-07  Philip Blundell  <philb@gnu.org>
1670
1671         * doc/as.texinfo (Bug Reporting): Update email address for
1672         reports.
1673         * README: Likewise.
1674
1675 Sat Jan  6 13:33:10 MET 2001  Jan Hubicka  <jh@suse.cz>
1676
1677         * configure.in: Define DEFAULT_ARCH for i386.
1678         * config/tc-i386.c (md_assemble): Return after the error message;
1679         move testing for 64bit operands to proper place.
1680
1681 2001-01-06  Jan Hubicka <jh@suse.cz>, Andreas Jaeger  <aj@suse.de>
1682
1683         * doc/as.texinfo: Document '#' as comment character for i386 and
1684         x86_64. Add AMD x86-64 into menu of machine dependent information.
1685
1686         * doc/c-i386.texi: Document x86_64 extensions.
1687
1688 Fri Jan  5 13:26:42 MET 2001  Jan Hubicka  <jh@suse.cz>
1689
1690         * config/tc-i386.c (md_assemble): Handle third byte of the opcode as prefix.
1691
1692 Thu Jan  4 22:25:26 MET 2001  Jan Hubicka  <jh@suse.cz>
1693
1694         * config/tc-i386.c (cpu_arch): Add Pentium4 and modify sledgehammer entry.
1695         * NEWS: Add note about Pentium4 support.
1696
1697 Wed Jan  3 17:26:32 MET 2001  Jan Hubicka  <jh@suse.cz>
1698
1699         * config/tc-i387.c (pi, pte, pt): Update.
1700         (type_names): Add new types.
1701
1702 Wed Jan  3 16:26:52 MET 2001  Jan Hubicka  <jh@suse.cz>
1703
1704         * config/tc-i386.h (CpuK6, CpuAthlon, CpuSledgehammer, CpuMMX, Cpu3dnow,
1705         CpuUnknown): Renumber
1706         (CpuP4, CpuSSE2): New.
1707         (CpuUnknownFlags): Add CpuP4 and CpuSSE2
1708
1709 2001-01-03  Philip Blundell  <pb@futuretv.com>
1710
1711         * config/tc-alpha.c (alpha_force_relocation): Handle vtable
1712         relocs.
1713         (alpha_fix_adjustable): Likewise.
1714         (md_apply_fix): Likewise.
1715
1716 2000-12-31  H.J. Lu  <hjl@gnu.org>
1717
1718         * listing.c (listing_message): Allocate string only if it is
1719         used.
1720
1721         * configure: Rebuild.
1722
1723 2000-12-31  Hans-Peter Nilsson  <hp@bitrange.com>
1724
1725         * doc/internals.texi (Relaxing with a table) <after relaxation>:
1726         Point out caveats with generating fixups for the opcode in a frag.
1727
1728 Sat Dec 30 19:02:48 MET 2000  Jan Hubicka  <jh@suse.cz>
1729
1730         * configure.in: Add support for x86_64 and x86_64-*-linux-gnu*
1731         * NEWS: Add x86_64.
1732
1733 2000-12-29  H.J. Lu  <hjl@gnu.org>
1734
1735         * listing.c (calc_hex): Print the variable part only if the
1736         fragment type is rs_fill.
1737
1738 2000-12-29  Hans-Peter Nilsson  <hp@bitrange.com>
1739
1740         * doc/internals.texi (tc_conditional_pseudoop,
1741         TC_LINKRELAX_FIXUP): Fix typos.
1742
1743 2000-12-28  Richard Henderson  <rth@redhat.com>
1744
1745         * write.c (subsegs_finish): Fix thinko last change -- don't
1746         "optimize" the alignment == 0 case.
1747
1748 2000-12-28  Richard Henderson  <rth@redhat.com>
1749
1750         * as.h (rs_align_test): New.
1751         * frags.c (NOP_OPCODE): Move default from read.c.
1752         (MAX_MEM_FOR_RS_ALIGN_CODE): New default.
1753         (frag_align_code): New.
1754         * frags.h (frag_align_code): Declare.
1755         * read.c (NOP_OPCODE): Remove.
1756         (do_align): Use frag_align_code.
1757         * write.c (NOP_OPCODE): Remove.
1758         (get_recorded_alignment): New.
1759         (cvt_frag_to_fill): Handle rs_align_test.
1760         (relax_segment): Likewise.
1761         (subsegs_finish): Align last subseg in section to the
1762         section alignment.  Use frag_align_code.
1763         * write.h (get_recorded_alignment): Declare.
1764         * config/obj-coff.c (size_section): Handle rs_align_test.
1765         (fill_section, fixup_mdeps): Likewise.
1766         (write_object_file): Use frag_align_code.
1767
1768         * config/tc-alpha.c (alpha_align): Use frag_align_code.
1769         (alpha_handle_align): New.
1770         * config/tc-alpha.h (HANDLE_ALIGN): New.
1771         (MAX_MEM_FOR_RS_ALIGN_CODE): New.
1772
1773         * config/tc-i386.h (md_do_align): Use frag_align_code.
1774         (MAX_MEM_FOR_RS_ALIGN_CODE): New.
1775
1776         * config/tc-ia64.c (ia64_md_do_align): Don't do code alignment.
1777         (ia64_handle_align): New.
1778         * config/tc-ia64.h (HANDLE_ALIGN): New.
1779         (MAX_MEM_FOR_RS_ALIGN_CODE): New.
1780
1781         * config/tc-m32r.c (m32r_do_align): Remove.
1782         (m32r_handle_align): New.
1783         (fill_insn): Use frag_align_code.
1784         * config/tc-m32r.h (md_do_align): Remove.
1785         (HANDLE_ALIGN, MAX_MEM_FOR_RS_ALIGN_CODE): New.
1786         * config/tc-m88k.c, config/tc-m88k.h: Similarly.
1787         * config/tc-mips.c, config/tc-mips.h: Similarly.
1788
1789         * config/tc-sh.c (sh_cons_align): Use rs_align_test.
1790         (sh_handle_align): Likewise.  Handle rs_align_code.
1791         (sh_do_align): Remove.
1792         * config/tc-sh.h (md_do_align): Remove.
1793         (MAX_MEM_FOR_RS_ALIGN_CODE): New.
1794
1795         * config/tc-sparc.c (sparc_cons_align): Use rs_align_test.
1796         (sparc_handle_align): Likewise.  Handle rs_align_code.
1797         * config/tc-sparc.h (md_do_align): Remove.
1798         (MAX_MEM_FOR_RS_ALIGN_CODE): New.
1799
1800 2000-12-22  DJ Delorie  <dj@redhat.com>
1801
1802         * config/tc-d10v.c (md_assemble): set prev_seg and prev_subseg
1803         when we assemble the first half of a pair.
1804
1805 2000-12-22  H.J. Lu  <hjl@gnu.org>
1806
1807         * config/tc-i386.c (reloc): Update the macro for non-bfd
1808         assembler.
1809         (BFD_RELOC_X86_64_GOTPCREL): Set to 0 for non-bfd assembler.
1810
1811 2000-12-22  H.J. Lu  <hjl@gnu.org>
1812
1813         * dwarf2dbg.c (dwarf2_finish): Remove #if BFD_ASSEMBLER.
1814
1815 Wed Dec 20 14:21:22 MET 2000  Jan Hubicka  <jh@suse.cz>
1816
1817         * config/tc-i386.h (i386_target_format): Define even for ELFs.
1818         (QWORD_MNEM_SUFFIX): New macro.
1819         (CpuK6,CpuAthlon,CpuSledgehammer, Cpu64, CpuNo64, CpuUnknownFlags):
1820         New macros
1821         (CpuMMX,CpuSSE,Cpu3dnow, CpuUnknown): Renumber.
1822         (IgnoreSize, DefaultSize, No_?Suf, FWait, IsString, regKludge, IsPrefix,
1823         ImmExt): Renumber.
1824         (Size64, No_qSuf, NoRex64, Rex64): New macros.
1825         (Reg64, Imm32S, Imm64, Disp32S, Disp64): New macros.
1826         (Imm8, Imm8S, Imm16, Imm32, Imm1, BaseIndex, Disp8, Disp16, Disp32,
1827         InOutPortReg,ShiftCount, Control, Debug, Test, FloatReg, FloatAcc,
1828         SReg2, SReg3, Acc, JumpAbsolute, RegMMX, RegXMM, EsSeg, InvMem):
1829         Renumber.
1830         (Reg, WordReg): Add Reg64.
1831         (Imm): Add Imm32S and Imm64.
1832         (EncImm): New.
1833         (Disp): Add Disp64 and Disp32S.
1834         (AnyMem): Add Disp32S.
1835         (RegRex, RegRex64): New macros.
1836         (rex_byte): New type.
1837         * config/tc-i386.c (set_16bit_code_flag): Kill.
1838         (fits_in_unsigned_long, fits_in_signed_long): New functions.
1839         (reloc): New parameter "signed"; support x86_64.
1840         (set_code_flag): New.
1841         (DEFAULT_ARCH): New macro; default to "i386".
1842         (default_arch): New static variable.
1843         (struct _i386_insn): New fields Operand_PCrel; rex.
1844         (flag_16bit_code): Kill; All tests replaced to "flag_code == CODE_64BIT"
1845         (flag_code): New enum and static variable.
1846         (use_rela_relocations): New static variable.
1847         (flag_code_names): New static variable.
1848         (cpu_arch_flags): Default to CpuUnknownFlags|CpuNo64.
1849         (cpu_arch): Add "sledgehammer"; Add CPUAthlon to Athlon and CpuK6 to
1850         K6 and Athlon.
1851         (i386_align_code): Return plain "nop" for x86_64.
1852         (mode_from_disp_size): Support Disp32S.
1853         (smallest_imm_type): Support Imm32S and Imm64.
1854         (offset_in_range): Support size of 8.
1855         (set_cpu_arch): Do not clobber to Cpu64/CpuNo64.
1856         (md_pseudo_table): Add "code64"; use set_code_flat.
1857         (md_begin): Emit sane error message on hash failure.
1858         (tc_i386_fix_adjustable): Support x86_64 relocations.
1859         (md_assemble): Support QWORD_MNEM_SUFFIX, REX registers,
1860         instructions supported on particular arch just partially,
1861         output of 64bit immediates, handling of Imm32S and Disp32S type.
1862         (i386_immedaite): Support x86_64 relocations; support 64bit constants.
1863         (i386_displacement): Likewise.
1864         (i386_index_check): Cleanup; support 64bit addresses.
1865         (md_apply_fix3): Support x86_64 relocation and rela.
1866         (md_longopts): Add "32" and "64".
1867         (md_parse_option): Add OPTION_32 and OPTION_64.
1868         (i386_target_format): Call even for ELFs; choose between
1869         elf64-x86-64 and elf32-i386.
1870         (i386_validate_fix): Refuse GOTOFF in 64bit mode.
1871         (tc_gen_reloc): Support rela relocations and x86_64.
1872         (intel_e09_1): Support QWORD.
1873
1874 2000-12-15  Diego Novillo  <dnovillo@redhat.com>
1875
1876         * config/tc-i386.c (intel_e09_1): Only flag as a memory operand if
1877         it's not an offset expression.
1878         (intel_e10_1): Ditto. Also, if the operand is an offset expression,
1879         keep the braces '[' and ']' in the output string.
1880         (intel_e11): Ditto. Also remove comparison intel_parser.op_modifier
1881         != FLAT. There is no such op_modifier.
1882
1883 2000-12-14  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
1884
1885         * dwarf2dbg.c: If we don't have <limits.h>, try including <sys/param.h>
1886         if we have it.
1887
1888 2000-12-13  Kazu Hirata  <kazu@hxi.com>
1889
1890         * as.h: Fix formatting.
1891         * cgen.h: Likewise.
1892         * dwarf2dbg.c: Likewise.
1893         * input-scrub.c: Likewise.
1894         * read.h: Likewise.
1895
1896 2000-12-13  Mark Elbrecht  <snowball3@bigfoot.com>
1897
1898         * configure.in (i386-*-msdosdjgpp): Set bfd_gas to yes.
1899         configure: Regenerate.
1900
1901 2000-12-13  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
1902
1903         * dwarf2dbg.c: #include <limits.h> only if it exists.
1904
1905 2000-12-13  Rodney Brown  <RodneyBrown@mynd.com>
1906
1907         * config/tc-hppa.c (pa_ip): Correct CHECK_FIELD typo.
1908         (md_apply_fix): Here too.
1909
1910 2000-12-12  Jim Wilson  <wilson@redhat.com>
1911
1912         * config/tc-ia64.h (ia64_init): Add prototype.
1913
1914 2000-12-12  H.J. Lu  <hjl@gnu.org>
1915
1916         * dwarf2dbg.c: Enabled only if BFD_ASSEMBLER is defined.
1917
1918         * read.h (outputting_stabs_line_debug): Change it to int.
1919         * stabs.c (outputting_stabs_line_debug): Likewise.
1920
1921 2000-12-12  Geoffrey Keating  <geoffk@redhat.com>
1922
1923         * config/obj-bout.c (obj_crawl_symbol_chain): Don't take
1924         the address of a function result.
1925
1926 2000-12-12  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
1927
1928         * config/tc-ppc.c (md_pseudo_table): Add .file and .loc.
1929         (md_assemble): Call dwarf2_emit_insn.
1930         (shlib): Fix typo SHILB -> SHLIB.
1931         (md_parse_option): Likewise.
1932         (ppc_elf_validate_fix): Likewise:
1933         * config/tc-ppc.h (DWARF2_LINE_MIN_INSN_LENGTH): New.
1934
1935 2000-12-12  Nick Clifton  <nickc@redhat.com>
1936
1937         * cgen.h: Fix formatting.
1938         * input-scrub.c: Fix formatting.
1939         * macro.c: Fix formatting.
1940         * config/tc-mips.c: Fix formatting.
1941         * doc/c-mips.texi: Fix formatting.
1942
1943 Mon Dec 11 14:35:42 MET 2000  Jan hubicka  <jh@suse.cz>
1944
1945         * config/tc-i386.c (md_assemble): Refuse 's' and 'l' suffixes in the intel
1946         mode; convert 'd' suffix to 's' or 'l'; remove all DWORD_MNEM_SUFFIX
1947         references.
1948         (intel_e09_1): Convert QWORD to 'l' suffix for FP operations; refuse
1949         otherwise.
1950         * config/tc-i386.h (DWORD_MNEM_SUFFIX): Kill.
1951         (No_dSuf): Kill.
1952
1953         * i386.h (*_Suf): Remove No_dSuf.
1954         (d_suf, wld_Suf,sld_Suf, sldx_Suf, bwld_Suf, d_FP, sld_FP, sldx_FP)
1955         Remove.
1956         (i386_optab): Remove 'd' in the suffixes.
1957
1958 2000-12-06  Mark Elbrecht  <snowball3@bigfoot.com>
1959
1960         * config/tc-i386.c (T_SHORT): Undefine before defining.
1961
1962 2000-12-05  Kazu Hirata  <kazu@hxi.com>
1963
1964         * config/tc-mips.c: Fix formatting.
1965
1966 2000-12-04  Matthew Hiller  <hiller@redhat.com>
1967
1968         * config/tc-d10v.c (flag_allow_gstabs_packing): New variable.
1969         (md_longopts): New options --gstabs-packing, --no-gstabs-packing.
1970         (md_show_usage): Ditto.
1971         (md_parse_option): Ditto.
1972         (d10v_cleanup): Writes pending instruction only if
1973         ! outputting_stabs_line_debug || ! flag_allow_gstabs_packing.
1974         Fix compile time warning messages.
1975
1976         * doc/c-d10v.texi: Documents new options.
1977
1978 2000-12-04  Matthew Hiller  <hiller@redhat.com>
1979
1980         * stabs.c (outputting_stabs_line_debug): New variable.
1981         (stabs_generate_asm_lineno): Set outputting_stabs_line_debug at
1982         function entry and unset at function exit.
1983
1984         * read.h (outputting_stabs_line_debug): New extern declaration.
1985
1986         * as.c: Include dwarf2dbg.h for definition of dwarf2_finish.
1987
1988         * dwarf2dbg.c: Fix compile time warning messages.
1989
1990 2000-12-03  Kazu Hirata  <kazu@hxi.com>
1991
1992         * config/tc-a29k.c: Fix formatting.
1993         * config/tc-alpha.c: Likewise.
1994         * config/tc-arm.c: Likewise.
1995         * config/tc-cris.c: Likewise.
1996         * config/tc-hppa.c: Likewise.
1997         * config/tc-i370.c: Likewise.
1998         * config/tc-i386.c: Likewise.
1999         * config/tc-i860.c: Likewise.
2000         * config/tc-i960.c: Likewise.
2001         * config/tc-ia64.c: Likewise.
2002         * config/tc-m68hc11.c: Likewise.
2003         * config/tc-m68k.c: Likewise.
2004         * config/tc-m88k.c: Likewise.
2005         * config/tc-pj.c: Likewise.
2006         * config/tc-ppc.c: Likewise.
2007         * config/tc-sh.c: Likewise.
2008         * config/tc-sparc.c: Likewise.
2009         * config/tc-tahoe.c: Likewise.
2010         * config/tc-vax.c: Likewise.
2011
2012 2000-12-01  Chris Demetriou  <cgd@sibyte.com>
2013
2014         * config/tc-mips.c (mips_ip): When calculating offsets,
2015         don't accept as constant the difference between the
2016         addresses of symbols in two different sections.
2017
2018         * config/tc-mips.c (macro_build): Add new 'U' and 'J' operand
2019         specifiers.
2020         (validate_mips_insn): Likewise.  Also, update 'B' operand
2021         specifier to use OP_*_CODE20 constants and delete 'm' operand
2022         specifier.
2023         (mips_ip): Remove 'm' operand specifier, add 'U' and 'J'
2024         operand specifiers.  Change warning generated by 'B' operand
2025         specifier to reflect its new multi-purpose usage.
2026
2027         * config/tc-mips.c (mips_set_options): Use ISA_UNKNOWN rather than
2028         -1, and update comment.
2029         (file_mips_isa): Likewise.
2030         (mips_cpu): Use CPU_UNKNOWN rather than -1, and update comment.
2031         (ISA_HAS_COPROC_DELAYS, ISA_HAS_64BIT_REGS, gpr_interlocks): Use
2032         ISA_* constants rather than hard-coded numbers.
2033         (mips_cpu_info): New structure.
2034         (mips_cpu_info_table): New table describing CPU and ISA names
2035         and numbers.
2036         (mips_cpu_info_from_name, mips_cpu_info_from_isa,
2037         mips_cpu_info_from_cpu): New functions.
2038         (mips_isa_to_str): New function to get string for ISA name.
2039         (mips_cpu_to_str): Convert to use mips_cpu_info_from_cpu, and
2040         return const char *.
2041         (md_begin): Redo CPU and ISA selection logic, using
2042         mips_cpu_info_from_*.  Convert to use ISA_* constants rather
2043         than hard-coded numbers.
2044         (append_insn, mips_emit_delays, macro, macro2): Convert to use
2045         ISA_* constants rather than hard-coded numbers.
2046         (mips_ip): Convert to use mips_isa_to_str to get ISA name.
2047         (md_longopts): Delete OPTION_NO_MIPS32.
2048         (md_parse_option): Convert to use ISA_* constants rather than
2049         hard-coded numbers.  Make OPTIONS_MIPS32 case treat MIPS32
2050         as an ISA.  Delete OPTION_NO_MIPS32 case.  Convert OPTION_MCPU
2051         to use strcasecmp to recognize "default" and to use
2052         mips_cpu_info_from_name to get CPU numbers from argument.
2053         (md_show_usage): Move -mips32 so it's with the rest of the ISA
2054         flags.  Change 4Kc, 4Kp and 4Km CPU entries to just be
2055         mips32-4k.
2056         (s_mipsset): Accept ISA value 32.
2057         * doc/as.texinfo: Clean up MIPS options summary slightly,
2058         remove -no-mips32.  Add note about -mips4 and -mips32
2059         specifying those ISA levels.  Delete -mips32 and -no-mips32
2060         cpu flag descriptions.
2061         * doc/c-mips.texi: Add -mips32 to list of ISA switches.  Clean
2062         up the supported CPU switch list, and replace 4Kc, 4Km, and
2063         4Kp entries with a single mips32-4k entry.  Note that you can
2064         use ".set mips32".
2065
2066         * config/tc-mips.c (ISA_HAS_64BIT_REGS): Add checks for ISA_MIPS5 and
2067         ISA_MIPS64.
2068         (md_longopts, OPTION_MIPS5, OPTION_MIPS64): Add options for
2069         -mips5 and -mips64.
2070         (md_parse_option): Add cases for OPTION_MIPS5 and
2071         OPTION_MIPS64.
2072         (md_show_usage): Mention -mips5 and -mips64 arguments.
2073         (s_mipsset): Add cases for MIPS5 and MIPS64.
2074         (mips_cpu_info_table): Add entries for MIPS5 and MIPS64 ISAs
2075         and pseudo-CPUs.
2076         * doc/as.texinfo: Mention -mips5 and -mips64 options
2077         and their meanings.
2078         * doc/c-mips.texi: Likewise.  Also update introduction
2079         and ".set" usage information.
2080
2081         * config/tc-mips.c (md_show_usage): Add "sb1" to the
2082         CPU list.
2083         (mips_cpu_info_table): Add SB-1 entries.
2084         * doc/c-mips.texi: Add "sb1" to the list of CPUs
2085         known to the -mcpu option.
2086
2087         * doc/as.texinfo: Correct description of MIPS -mcpu
2088         option, by copying some of the text from doc/c-mips.texi.
2089
2090 2000-12-01      Joel Sherrill <joel@OARcorp.com>
2091
2092         * configure.in (arm-*-rtems*, a29k-*rtems*, h8300-*-rtems*):
2093         New targets.
2094         (sparc*-*-rtemself*, sparc*-*-rtemsaout*): New targets.
2095         (sparc*-*-rtems*): Switched from a.out to ELF.
2096         * configure: Regenerate.
2097         * config.in: Regenerate.
2098         * Makefile.in: Regenerate.
2099         * aclocal.m4: Regenerate.
2100         * po/gas.pot: Regenerate.
2101
2102 2000-11-30  Philip Blundell  <pb@futuretv.com>
2103
2104         * config/obj-coff.c (obj_coff_weak): Use S_SET_WEAK if it exists,
2105         even in non BFD_ASSEMBLER case.
2106
2107 2000-11-30  Diego Novillo  <dnovillo@redhat.com>
2108
2109         * config/tc-i386.c (md_assemble): Swap i.disp_relocs when using intel
2110         syntax.
2111
2112 2000-11-29  Richard Henderson  <rth@redhat.com>
2113
2114         * dwarf2dbg.c: Rewrite from scratch.  Queue all debugging output
2115         until dwarf2_finish; use relaxation to get cross-fragment offsets;
2116         thread multiple subsegments properly; handle multiple code
2117         sections properly; emit proper compilation unit info for assembler
2118         generated debugging.
2119
2120         * as.h (enum _relax_state): Add rs_dwarf2dbg.
2121         * dwarf2dbg.h (struct dwarf2_line_info): Remove filename.
2122         (dwarf2dbg_estimate_size_before_relax): Declare.
2123         (dwarf2dbg_relax_frag, dwarf2dbg_convert_frag): Declare.
2124         * write.c: Include dwarf2dbg.h.
2125         (cvt_frag_to_fill): Handle rs_dwarf2dbg.
2126         (relax_segment): Likewise.
2127
2128 2000-11-28  Hans-Peter Nilsson  <hp@bitrange.com>
2129
2130         * config/tc-sh.c (md_convert_frag) <undefined symbol, conditional
2131         jump>: Use as_bad_where instead of as_bad.  Tweak error message
2132         accordingly.  Stabilize frag by updating fix part and resetting
2133         variant part.
2134         <undefined symbol, unconditional jump>: Ditto.
2135         (sh_elf_cons): Cast *input_line_pointer to unsigned char when
2136         indexing is_end_of_line[].
2137         (md_assemble): Initialize size to 0.
2138         (md_section_align): Mark parameter seg as unused.
2139         (parse_reg): Parse names case-insensitively.
2140
2141 2000-11-28  Kazu Hirata  <kazu@hxi.com>
2142
2143         * config/obj-aout.h: Fix formatting.
2144         * config/obj-bout.h: Likewise.
2145         * config/obj-coff.c: Likewise.
2146         * config/obj-coff.h: Likewise.
2147         * config/obj-elf.h: Likewise.
2148         * config/obj-som.h: Likewise.
2149         * config/obj-vms.c: Likewise.
2150         * config/obj-vms.h: Likewise.
2151         * config/tc-h8300.h: Likewise.
2152         * config/tc-ns32k.h: Likewise.
2153         * config/tc-sparc.h: Likewise.
2154         * config/tc-tic54x.h: Likewise.
2155         * config/tc-z8k.h: Likewise.
2156
2157 2000-11-28  Nick Clifton  <nickc@redhat.com>
2158
2159         * doc/as.1 (COPYING): Mention that the GNU Free Documentation
2160         License is present in the sources, but not the output, and
2161         also available from the GNU website.
2162         (GNU Free Documentation License): Comment out this section.
2163
2164 2000-11-28  Hans-Peter Nilsson  <hp@axis.com>
2165
2166         * Makefile.am (CPU_OBJ_VALID): Add case to filter out invalid coff
2167         targets.  Remove i860 from valid a.out targets.
2168         * Makefile.in: Regenerate.
2169
2170         * config/tc-cris.c: Include dwarf2dbg.h.
2171         (md_pseudo_table): Add .file and .loc.
2172         (md_assemble): Call dwarf2_emit_insn if generating ELF.
2173         (s_cris_file, s_cris_loc): New.
2174         * config/tc-cris.h (DWARF2_LINE_MIN_INSN_LENGTH): Define.
2175         * Makefile.am: Regenerate dependencies.
2176         * Makefile.in: Regenerate.
2177
2178 2000-11-28  Alan Modra  <alan@linuxcare.com.au>
2179
2180         * expr.c (STANDARD_MUL_PRECEDENCE): Correct value.
2181         (MRI_MUL_PRECEDENCE): Likewise.
2182         (op_rank): Fix a comment typo.
2183
2184 2000-11-26  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
2185
2186         * config/tc-m68hc11.c (build_indexed_byte): Print the offset in
2187         the error message.
2188         (get_operand): Fix analysis for movw/movb instructions.
2189
2190 2000-11-24  Nick Clifton  <nickc@redhat.com>
2191
2192         * configure.in (xscale-elf): Add target.
2193         (xscale-coff): Add target.
2194         * configure: Regenerate.
2195
2196         * config/tc-arm.c (ARM_EXT_V5E): New ARM architecture
2197         extenstion.
2198         (ARM_EXT_XSCALE): New ARM architecture extension.
2199         (ARM_LONGMUL): Rename to ARM_EXT_LONGMUL.
2200         (ARM_HALFWORD): Rename to ARM_EXT_HALFWORD.
2201         (ARM_THUMB): Rename to ARM_EXT_THUMB.
2202         (ARM_ARCH_V4): Remove processor from architecture.
2203         (ARM_ARCH_3M): New architecutre definition.
2204         (ARM_ARCH_V5TE): New architecutre definition.
2205         (ARM_ARCH_XSCALE): New architecutre definition.
2206         (CPU_DEFAULT): Allow to be defaulted to XScale.
2207         (atpcs): New boolean variable.
2208         (ldr_flags): Support 'd' flag for double word loads.
2209         (str_flags): Support 'd' flag for double word stored.
2210         (do_mia): New function.
2211         (do_mar): New function.
2212         (do_mra): New function.
2213         (do_pld): New function.
2214         (do_ldrd): New function.
2215         (do_blx): New function.
2216         (do_bkpt): New function.
2217         (do_clz): New function.
2218         (do_lstc2): New function.
2219         (do_cdp2): New function.
2220         (do_t_blx): New function.
2221         (do_t_bkpt): New function.
2222         (do_smla): New function.
2223         (do_smlal): New function.
2224         (do_smul): New function.
2225         (do_qadd): New function.
2226         (do_co_reg2c): New function.
2227         (LONGEST_INSN): Redefine to 7.
2228
2229         * doc/c-arm.texi: Document -mxscale, -mmarmv5te and -matpcs
2230         command line switches.
2231
2232 2000-11-22  Jim Wilson  <wilson@redhat.com>
2233
2234         * config/tc-ia64.c (pseudo_func): Add missing initializers.
2235         (struct rsrc): Make line unsigned.
2236         (gr_values): Add missing initializer.
2237         (SLOT_NUM_NOT_SET): Add unsigned cast.
2238         (ia64_elf_section_flags, output_vbyte_mem, count_output, dot_radix,
2239         dot_fframe, dot_vframe, dot_vframesp, dot_vframepsp, dot_save,
2240         dot_restore, dot_restorereg, dot_restorereg_p, dot_handlerdata,
2241         dot_unwentry, dot_altrp, dot_saveg, dot_savef, dot_saveb, dot_savegf,
2242         dot_spill, dot_spillreg, dot_spillreg_p, dot_label_state,
2243         dot_copy_state, dot_unwabi, dot_personality, dot_proc, dot_body,
2244         dot_prologue, dot_endp, dot_regstk, dot_psr, dot_alias, dot_ln,
2245         dot_reg_val, dot_entry, dot_mem_offset, ia64_init, mark_resource,
2246         md_undefined_symbol, md_apply_fix3, tc_gen_reloc, ia64_md_do_align):
2247         Add ATTRIBUTE_UNUSED to unused parameters.
2248         (convert_expr_to_ab_reg): Add parens.
2249         (convert_expr_to_xy_reg): Add parens.  Comment out >= REG_GR test.
2250         (dot_prologue): Initialize grsave when declared.
2251         (md_pseudo_table): Add missing initializers.
2252         (operand_match): Add casts to bfd_vma.
2253         (emit_one_bundle): Delete unused local prev.  Make required_template
2254         unsigned.
2255         (specify_resource): Cast i to unsigned.
2256         (note_register_values): Use fprintf_vma.
2257         (print_dependency): Likewise.
2258
2259 2000-11-21  Jim Wilson  <wilson@redhat.com>
2260
2261         * config/tc-ia64.c (generate_unwind_image): Call record_alignment
2262         for unwind info section.
2263         (dot_endp): Likewise for unwind section.
2264
2265         * config/tc-ia64.c (emit_one_bundle): Pass size of 8 not 4 to
2266         fix_new_exp.
2267
2268 2000-11-21  Jakub Jelinek  <jakub@redhat.com>
2269
2270         * config/tc-sparc.c (md_pseudo_table): Add .file and .loc.
2271         (output_insn): Call dwarf2_emit_insn.
2272         * config/tc-sparc.h (DWARF2_LINE_MIN_INSN_LENGTH): New.
2273
2274 2000-11-17  Richard Henderson  <rth@redhat.com>
2275
2276         * ehopt.c (eh_frame_code_alignment): New arg `in_seg', update all
2277         callers.  Don't switch segments.  Expect CIE == -1 in .debug_frame.
2278         (check_eh_frame): Handle .eh_frame and .debug_frame concurrently.
2279
2280 2000-11-17  Nick Clifton  <nickc@redhat.com>
2281
2282         * config/tc-arm.c (md_pseudo_table): Add support for .line and
2283         .file pseudo ops.
2284
2285 2000-11-17  Richard Henderson  <rth@redhat.com>
2286
2287         * config/tc-i386.c (md_pseudo_table): Add .file and .loc.
2288
2289 2000-11-17  Richard Henderson  <rth@redhat.com>
2290
2291         * dwarf2dbg.c (dwarf2_gen_line_info): Early out for no line number.
2292         * config/obj-elf.h (ECOFF_DEBUGGING) [TC_ALPHA]: Adjust for
2293         tri-state definition of alpha_flag_mdebug.
2294         * config/tc-alpha.c (alpha_flag_mdebug): Init to -1.
2295         (s_alpha_file): Store first .file directive.
2296         (s_alpha_stab): New.
2297         (md_pseudo_table): Add stabs and stabn.
2298
2299 2000-11-17  Richard Henderson  <rth@redhat.com>
2300
2301         * config/tc-i386.c (md_assemble): Call dwarf2_emit_insn.
2302
2303 2000-11-17  Richard Henderson  <rth@redhat.com>
2304
2305         * as.c (debug_type): Init to DEBUG_UNSPECIFIED.
2306         (main): Call dwarf2_finish.
2307         * as.h (debug_type): Clarify documentation of the meaning
2308         of this variable.
2309         * dwarf2dbg.c (DWARF2_LINE_MIN_INSN_LENGTH): Default to 1.
2310         (print_stats): Fix parenthesis problem.
2311         (now_subseg_size): New.
2312         (dwarf2_finish): Use it.  If DEBUG_DWARF2, emit bits for .debug_info.
2313         (dwarf2_directive_file): Don't set debug_type.
2314         (dwarf2_where): Honor DEBUG_DWARF2 first.
2315         (dwarf2_emit_insn): Renamed from dwarf2_generate_asm_lineno;
2316         do nothing if not emitting dwarf2 debug info, or no work.
2317         * dwarf2dbg.h (dwarf2_emit_insn): Update.
2318         * ecoff.c (add_file): Turn on DEBUG_ECOFF only if DEBUG_UNSPECIFIED.
2319         (ecoff_new_file): Likewise.
2320         * read.c (generate_lineno_debug): Kill ecoff hackery.  Update
2321         commentary wrt dwarf2.
2322
2323         * config/tc-alpha.c (alpha_adjust_symtab_relocs): Add
2324         ATTRIBUTE_UNUSED as needed.
2325         (emit_insn): Call dwarf2_emit_insn.
2326         (s_alpha_file): New.
2327         (s_alpha_loc): New.
2328         (s_alpha_coff_wrapper): Don't handle them.
2329         (md_pseudo_table): Update for .file and .loc.
2330         * config/tc-alpha.h (DWARF2_LINE_MIN_INSN_LENGTH): New.
2331
2332         * config/tc-arm.c (output_inst): Update for dwarf2_emit_insn;
2333         don't protect with debug_type.
2334         * config/tc-hppa.c (md_assemble): Likewise.
2335         * config/tc-m68hc11.c (m68hc11_new_insn): Likewise.
2336         * config/tc-mn10300.c (md_assemble): Likewise.
2337         * config/tc-sh.c (md_assemble): Likewise.
2338         * config/tc-v850.c (md_assemble): Likewise.
2339
2340         * config/tc-arm.c (arm_end_of_source): Remove.
2341         * config/tc-hppa.c (pa_end_of_source): Remove.
2342         * config/tc-m68hc11.c (m68hc11_end_of_source): Remove.
2343         * config/tc-mn10300.c (mn10300_finalize): Remove.
2344         * config/tc-sh.c (sh_finalize): Remove.
2345         * config/tc-v850.c (sh_finalize): Remove.
2346
2347         * config/tc-arm.h (md_end): Remove.
2348         * config/tc-hppa.h (md_end): Remove.
2349         (DWARF2_LINE_MIN_INSN_LENGTH): New.
2350         * config/tc-m68hc11.h (md_end): Remove.
2351         * config/tc-mn10300.h (md_end): Remove.
2352         * config/tc-sh.h (md_end): Remove.
2353         * config/tc-v850.h (md_end): Remove.
2354
2355         * config/tc-ia64.c (emit_one_bundle): Don't protect
2356         dwarf2 bits with debug_type.
2357         (md_assemble): Likewise.
2358         (ia64_end_of_source): Don't call dwarf2_finish.
2359
2360 2000-11-16  Jim Wilson  <wilson@redhat.com>
2361
2362         * config/tc-ia64.c (errata_nop_necessary_p): Abort if general regno
2363         >= 128 instead of > 128.  Abort if predicate regno is >= 64 instead of
2364         > 16.
2365
2366 2000-11-16  H.J. Lu  <hjl@gnu.org>
2367
2368         * config/obj-elf.c (obj_elf_symver): Don't check the missing
2369         version name.
2370
2371 2000-11-15  Kazu Hirata  <kazu@hxi.com>
2372
2373         * config/tc-tic30.c: Fix formatting.
2374         * config/tc-tic80.c: Likewise.
2375         * config/tc-v850.c: Likewise.
2376         * config/tc-vax.c: Likewise.
2377         * config/tc-w65.c: Likewise.
2378         * config/tc-z8k.c: Likewise.
2379
2380 2000-11-14  DJ Delorie  <dj@redhat.com>
2381
2382         * config/tc-v850.c: Support dwarf2.
2383         * config/tc-v850.h: Ditto.
2384
2385         * config/tc-v850.c (cons_fix_new_v850): Don't rely on
2386         parse_cons_expression_v850 to initialize hold_cons_reloc.
2387
2388 2000-11-15  Bernd Schmidt  <bernds@redhat.com>
2389
2390         * config/tc-ia64.c (struct md): New entries LAST_GROUPS, GROUP_IDX.
2391         (errata_nops_necessary_p): New function.
2392         (emit_one_bundle): Call it.  Update the GROUP_IDX field in struct
2393         md.
2394
2395 2000-11-14  Jim Wilson  <wilson@redhat.com>
2396
2397         * config/tc-ia64.c (ia64_target_format): If EF_IA_64_BE not set, then
2398         return little endian bfd formats.
2399
2400 2000-11-14  Kazu Hirata  <kazu@hxi.com>
2401
2402         * config/aout_gnu.h: Fix formatting.
2403         * config/atof-vax.c: Likewise.
2404         * config/m68k-parse.h: Likewise.
2405         * config/m88k-opcode.h: Likewise.
2406         * config/obj-elf.c: Likewise.
2407         * config/tc-arm.c: Likewise.
2408         * config/tc-cris.c: Likewise.
2409         * config/tc-i386.c: Likewise.
2410         * config/tc-ia64.c: Likewise.
2411         * config/tc-mn10300.c: Likewise.
2412         * config/te-386bsd.h: Likewise.
2413         * config/te-hppa.h: Likewise.
2414         * config/te-nbsd.h: Likewise.
2415         * config/te-ppcnw.h: Likewise.
2416         * config/te-sparcaout.h: Likewise.
2417         * config/te-tmips.h: Likewise.
2418         * config/vax-inst.h: Likewise.
2419         * config/vms-conf.h: Likewise.
2420
2421 2000-11-14  Jakub Jelinek  <jakub@redhat.com>
2422
2423         * config/tc-alpha.c (s_alpha_prologue): Preserve visibility bits.
2424
2425 2000-11-13  H.J. Lu  <hjl@gnu.org>
2426
2427         * config/obj-elf.c (elf_frob_symbol): Support
2428         ".symver name,name2@@@nodename".
2429         (elf_frob_file_before_adjust): Likewise.
2430
2431         * doc/as.texinfo: Updated for ".symver name,name2@@@nodename"
2432         and ".symver name,name2@@@nodename".
2433         Fix a typo.
2434
2435 2000-11-12  H.J. Lu  (hjl@gnu.org)
2436
2437         * config/obj-elf.c (obj_elf_symver): Check missing version
2438         name.
2439
2440 2000-11-12  H.J. Lu  (hjl@gnu.org)
2441
2442         * dwarf2dbg.c (dwarf2_generate_asm_lineno): Use addressT
2443         instead of bfd_vma for non-bfd assemblers.
2444
2445 2000-11-09  Kazu Hirata  <kazu@hxi.com>
2446
2447         * itbl-ops.c: Fix comment typos.
2448
2449 2000-11-08  Jim Wilson  <wilson@redhat.com>
2450
2451         * config/tc-ia64.c (struct unw_rec_list): Add slot_frag field.
2452         (struct unwind): Add next_slot_frag field.
2453         (slot_index): New parameters slot_frag and first_frag.  Add code
2454         to add in frag sizes when different.  Add comments.
2455         (fixup_unw_records): New locals first_frag and last_frag.  Pass new
2456         arguments to slot_index.
2457         (emit_one_bundle): Set slot_frag field.  Set next_slot_number after
2458         loop end.  Set next_slot_frag field.
2459
2460 2000-11-07  H.J. Lu  <hjl@gnu.org>
2461
2462         * doc/as.texinfo (.symver): Updated for versioned symbol
2463         reference.
2464
2465         * obj.h (format_ops): Add the frob_file_before_adjust field.
2466
2467         * config/obj-aout.c (aout_format_ops): Set the
2468         frob_file_before_adjust field to 0.
2469         * config/obj-coff.c (coff_format_ops): Likewise.
2470         * config/obj-ecoff.c (ecoff_format_ops): Likewise.
2471
2472         * config/obj-elf.c (obj_elf_symver): Allow duplicated version
2473         name.
2474         (elf_frob_file_before_adjust): New function to remove unneeded
2475         versioned symbols from the symbol table.
2476         (elf_format_ops): Set the frob_file_before_adjust field to
2477         elf_frob_file_before_adjust.
2478
2479         * config/obj-elf.h (obj_frob_file_before_adjust): Defined if
2480         not defined.
2481
2482         * config/obj-multi.h (obj_frob_file_before_adjust): Defined.
2483
2484 2000-11-07  Peter Targett  <peter.targett@arccores.com>
2485
2486         * gas/config/tc-arc.h: Avoid warnings for LITTLE_ENDIAN and
2487         BIG_ENDIAN macros.
2488         * gas/config/tc-arc.c: Use S_IS_LOCAL to test local symbols.
2489         Fix compile time warning messages.
2490
2491 2000-11-07  Nick Clifton  <nickc@redhat.com>
2492
2493         * stabs.c (generate_asm_file): Increase length of xmalloc'ed
2494         buffer in order to avoid buffer overflows.
2495
2496 2000-11-06  Steve Ellcey <sje@cup.hp.com>
2497
2498         * config/tc-ia64.c (md_shortopts, md_parse_option, md_show_usage):
2499         Change M to m for -milp32 or -mlp64 to match gcc.
2500         (dot_endp): Use bytes_per_address instead of 8.
2501         (emit_one_bundle): Use number_to_chars_littleendian instead of
2502         md_number_to_chars.
2503         (fix_insn): Likewise.
2504         (ia64_init): New function.
2505         (ia64_target_format): New function.
2506         (md_begin): Set endianness, arch, and machine as appropriate.
2507         * config/tc-ia64.h: (TARGET_BYTES_BIG_ENDIAN, md_number_to_chars):
2508         Make these macros depend on TE_HPUX macro.
2509         (TARGET_FORMAT): Define.
2510         (HOST_SPECIAL_INIT): Define.
2511         * config/te-hpux.h: New file.
2512         * configure.in: Add "ia64-*-hpux*" target to configure.
2513         * configure: Regenerate.
2514
2515 2000-11-06  Kazu Hirata  <kazu@hxi.com>
2516
2517         * as.c: Fix formatting.
2518         * dwarf2dbg.c: Likewise.
2519         * input-file.c: Likewise.
2520         * input-file.h: Likewise.
2521         * input-scrub.c: Likewise.
2522         * itbl-ops.c: Likewise.
2523         * listing.c: Likewise.
2524         * macro.h: Likewise.
2525         * messages.c: Likewise.
2526         * read.c: Likewise.
2527         * subsegs.c: Likewise.
2528         * subsegs.h: Likewise.
2529         * write.c: Likewise.
2530
2531 2000-11-06  Nick Clifton  <nickc@redhat.com>
2532
2533         * doc/as.texinfo: Add GNU Free Documentation License.
2534         * doc/gasp.texi:  Add GNU Free Documentation License.
2535         * doc/as.1:  Add GNU Free Documentation License.
2536
2537 2000-11-05  Nick Clifton  <nickc@redhat.com>
2538
2539         * config/tc-arm.c: Add include of "dwarf2dbg.h"
2540
2541 2000-11-02  Per Lundberg  <plundis@chaosdev.org>
2542
2543         * configure.in: Recognise i[3456]86-chaosdev-storm-chaos.
2544         * configure: Regenerate.
2545
2546 2000-11-01  Nick Clifton  <nickc@redhat.com>
2547
2548         * read.c (original_case_string): New global variable.
2549         (read_a_source_file): Copy opcode string into
2550         original_case_string if clobbering the case of the opcode.
2551         * read.h: Export the definition of original_case_string.
2552         * config/tc-arm.c (md_assembler): When parsing a .req
2553         directive use the original opcode string, not the case
2554         clobbered version.
2555
2556 2000-11-02  Nick Clifton  <nickc@redhat.com>
2557
2558         * config/tc-mn10300.c (debug_line): Remove this static
2559         variable.
2560         (md_assemble): Call dwarf2_generate_asm_lineno instead of
2561         dwarf2_where and dwarf2_gen_line_info.
2562
2563 2000-11-02  Theo Honohan  <th@futuretv.com>
2564
2565         * config/tc-arm.c (do_msr): Improve error message.
2566
2567 2000-10-31  Eric Christopher  <echristo@redhat.com>
2568
2569         * config/tc-mn10300.c (md_apply_fix3): Use valuep if fully resolved
2570         or pc-relative, else use fx_offset.
2571
2572 2000-10-31  Jim Wilson  <wilson@redhat.com>
2573
2574         * config/tc-ia64.c (struct md): New field tag_fixups.
2575         (ia64_flush_insns): Handle tag_fixups.  Error if dangling
2576         qualifying predicate.
2577         (emit_one_bundle): Delete spurious multiplication by one.  Handle
2578         tag_fixups.
2579         (ia64_start_line): Error if dangling qualifying predicate.
2580         (defining_tag): New static variable.
2581         (ia64_unrecognized_line, case '['): Parse tags.
2582         (ia64_frob_label): Create tag_fixups.
2583         (md_assemble): Reset md.qp.X_op after using it.
2584
2585 2000-10-31  Kaz Kojima <kkojima@rr.iij4u.or.jp>
2586
2587         * config/tc-sh.c (md_apply_fix [BFD_RELOC_SH_PCDISP12BY2]): Allow 4094.
2588
2589 2000-10-31  Bernd Schmidt  <bernds@redhat.co.uk>
2590
2591         * config/tc-ia64.c (extra_goodness): Only prefer F in slot 1 and B in slot 2.
2592
2593 2000-10-30  Kazu Hirata  <kazu@hxi.com>
2594
2595         * expr.c: Fix formatting.
2596         * flonum-copy.c: Likewise.
2597         * flonum.h: Likewise.
2598         * gasp.c: Likewise.
2599         * hash.c: Likewise.
2600
2601 2000-10-30  Hans-Peter Nilsson  <hp@bitrange.com>
2602
2603         * as.h (OPTION_MD_BASE): Bump to 190.
2604         * as.c (parse_args) <std_longopts>: Add comment about the need to
2605         check OPTION_MD_BASE in as.h.
2606
2607         * config/tc-sh.c (md_apply_fix): For ELF, do not "adjust back" VAL
2608         for weak symbols.
2609
2610 2000-10-27  Nick Clifton  <nickc@redhat.com>
2611
2612         * configure.in (emulations): Add m68hc12.
2613         * configure: Regenerate.
2614         * po/gas.pot: Regenerate.
2615
2616 2000-10-27  Aldy Hernandez  <aldyh@redhat.com>
2617
2618         * config/tc-arm.c (psrs): Remove lowercase versions of spsr* and
2619         cpsr*.
2620         (arm_psr_parse): Handle lowercase CPSR and SPSR.
2621
2622 2000-10-25  Nick Clifton  <nickc@redhat.com>
2623
2624         * dwarf2out.c (dwarf2_generate_asm_lineno): New function: Generate
2625         a DWARF2 line number information sequence.
2626
2627         *dwarf2out.h: Add prototype for dwarf2_generate_asm_lineno.
2628
2629         * read.c (generate_lineno_debug): Update comment describing why
2630         DWARF2 line number debug information is not generated
2631         automatically by this function.
2632
2633         * doc/as.texinfo: Note that --gdwarf2 only works on some targets,
2634         not all.
2635
2636         * config/tc-arm.h (md_end): Define.
2637         (DWARF2_LINE_MIN_INSN_LENGTH): Define.
2638
2639         * config/tc-arm.c (output_inst): Call dwarf2_generate_asm_lineno
2640         if generating DWARF2 line numbers.
2641         (arm_end_of_source): New function.  Call dwarf2_finish if
2642         necessary.
2643
2644         * config/tc-hppa.c (md_assemble): Use dwarf2_generate_asm_lineno.
2645         * config/tc-m68hc11.c (m68hc11_new_insn): Use dwarf2_generate_asm_lineno.
2646         * config/tc-sh.c (md_assemble): Use dwarf2_generate_asm_lineno.
2647
2648 2000-10-25  Diego Novillo  <dnovillo@cygnus.com>
2649
2650         * config/tc-i386.c: Fix prototype declarations for functions taking no
2651         arguments.
2652
2653 2000-10-24  Diego Novillo  <dnovillo@cygnus.com>
2654
2655         * config/tc-i386.c (i386_operand_modifier): Remove.
2656         (build_displacement_string): Remove.
2657         (i386_parse_seg): Remove.
2658         (i386_intel_memory_operand): Remove.
2659         (i386_intel_operand): Re-write using recursive descent parser based
2660         on MASM documentation.
2661         (struct intel_parser_s): New structure.
2662         (intel_parser): New static variable.
2663         (struct intel_token): New structure.
2664         (cur_token, prev_token): New static variables.
2665         (T_NIL): Define.
2666         (T_CONST): Define.
2667         (T_REG): Define.
2668         (T_BYTE): Define.
2669         (T_WORD): Define.
2670         (T_DWORD): Define.
2671         (T_QWORD): Define.
2672         (T_XWORD): Define.
2673         (T_SHORT): Define.
2674         (T_OFFSET): Define.
2675         (T_PTR): Define.
2676         (T_ID): Define.
2677         (intel_match_token): New function.
2678         (intel_get_token): New function.
2679         (intel_putback_token): New function.
2680         (intel_expr): New function.
2681         (intel_e05): New function.
2682         (intel_e05_1): New function.
2683         (intel_e06): New function.
2684         (intel_e06_1): New function.
2685         (intel_e09): New function.
2686         (intel_e09_1): New function.
2687         (intel_e10): New function.
2688         (intel_e10_1): New function.
2689         (intel_e11): New function.
2690
2691 2000-10-20  Jakub Jelinek  <jakub@redhat.com>
2692
2693         * config/tc-sparc.c (sparc_ip): Fix a bug which caused v9_arg_p
2694         instructions to loose any special insn->architecture mask.
2695
2696         * config/tc-sparc.c (v9a_asr_table): Add v9b ASRs.
2697         (sparc_md_end, sparc_arch_types, sparc_arch,
2698         sparc_elf_final_processing): Handle v8plusb and v9b architectures.
2699         (sparc_ip): Handle siam mode operands. Support v9b ASRs (and
2700         request v9b architecture if they are used).
2701
2702 2000-10-18  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
2703
2704         * config/tc-m68k.c: Fix the previous misapplied patch.
2705
2706 2000-10-18  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
2707
2708         * config/tc-m68k.h (RELAX_RELOC_*): New definitions for both
2709         BFD_ASSEMBLER and !BFD_ASSEMBLER.
2710         * config/tc-m68k.c (md_convert_frag_1): Use them instead of
2711         BFD_RELOC_*.
2712
2713 2000-10-17  Kazu Hirata  <kazu@hxi.com>
2714
2715         * debug.c: Fix formatting.
2716         * depend.c: Likewise.
2717         * dwarf2dbg.c: Likewise.
2718         * dwarf2dbg.h: Likewise.
2719         * ecoff.c: Likewise.
2720         * expr.c: Likewise.
2721         * expr.h: Likewise.
2722         * flonum-konst.c: Likewise.
2723         * frags.h: Likewise.
2724
2725 2000-10-17  Chandrakala Chavva  <cchavva@redhat.com>
2726
2727         * as.c: New option OPTION_TARGET_HELP. Prints all target specific
2728         options.
2729         * doc/as.texinfo: Added notes about this new option.
2730
2731 2000-10-16  Hans-Peter Nilsson  <hp@bitrange.com>
2732
2733         * config/tc-sh.c (JREG): Remove.
2734         (md_convert_frag): Remove #if 0:d code using JREG.
2735
2736 2000-10-15  Diego Novillo  <dnovillo@cygnus.com>
2737
2738         * config/tc-i386.c (i386_operand_modifier): Only match
2739         modifiers SHORT and FLAT if they are followed by a space.
2740         (parse_register): When `allow_naked_reg' is set, do not confuse
2741         identifiers that start with a register name with a register.
2742
2743 2000-10-12  Kazu Hirata  <kazu@hxi.com>
2744
2745         * app.c: Fix formatting.
2746         * as.c: Likewise.
2747         * as.h: Likewise.
2748         * bit_fix.h: Likewise.
2749         * cgen.c: Likewise.
2750         * cgen.h: Likewise.
2751         * cond.c: Likewise.
2752
2753 2000-10-11  Alan Modra  <alan@linuxcare.com.au>
2754
2755         * config/obj-elf.c (elf_frob_symbol): Revert 2000-10-07 change.
2756
2757 2000-10-07  Alan Modra  <alan@linuxcare.com.au>
2758
2759         * config/tc-hppa.c (md_apply_fix): Remove plainly wrong assert.
2760         Re-arrange function a little and improve error message.
2761
2762         * write.c (write_relocs): Fix a comment.
2763
2764         * config/obj-elf.c (elf_frob_symbol): Make section syms global on
2765         link-once sections.
2766
2767 2000-10-05  Jim Wilson  <wilson@cygnus.com>
2768
2769         * config/tc-ia64.c (resources_match): Handle IA64_RS_PRr.
2770
2771 2000-10-05  Alan Modra  <alan@linuxcare.com.au>
2772
2773         * config/tc-i386.c: Delete some useless comments, reformat others.
2774
2775         * config/tc-i386.h (TC_FIX_ADJUSTABLE): Add check to cover
2776         non-global syms in linkonce sections.
2777
2778 2000-10-04  Ralf Baechle  <ralf@gnu.org>
2779
2780         * config/tc-ia64.c (operand_match): Don't use // style comments.
2781         * config/tc-i370.c: Likewise.
2782
2783 2000-09-29  Hans-Peter Nilsson  <hp@axis.com>
2784
2785         Changes to handle varying register prefix and user symbol prefix.
2786         * config/tc-cris.c (SYNTAX_RELAX_REG_PREFIX,
2787         SYNTAX_ENFORCE_REG_PREFIX, SYNTAX_USER_SYM_LEADING_UNDERSCORE,
2788         SYNTAX_USER_SYM_NO_LEADING_UNDERSCORE, REGISTER_PREFIX_CHAR): New.
2789         (s_syntax, cris_force_reg_prefix, cris_relax_reg_prefix,
2790         cris_sym_leading_underscore, cris_sym_no_leading_underscore): New.
2791         (demand_register_prefix): New variable.
2792         (md_pseudo_table): New pseudo ".syntax".
2793         (md_longopts): New options --no-underscore and --underscore.
2794         (cris_target_format): Return elf32-us-cris or elf32-cris depending
2795         on symbols_have_leading_underscore.
2796         (get_gen_reg): Accept or require REGISTER_PREFIX_CHAR.
2797         (get_spec_reg): Ditto.
2798         (cris_number_to_imm) <case BFD_RELOC_VTABLE_ENTRY>: Remove FIXME.
2799         Fix formatting.
2800         (md_parse_option) <case 'h' 'H'>: Deprecate; add reference to
2801         --help.
2802         <case OPTION_NO_US, case OPTION_US>: New.
2803         (md_show_usage): Be brief and reformat to match continuation of
2804         --help.
2805         * po/gas.pot: Regenerate.
2806
2807 2000-09-28  Alan Modra  <alan@linuxcare.com.au>
2808
2809         * config/tc-hppa.c (hppa_force_relocation): If OBJ_SOM, don't
2810         force relocs for 12 bit branches.
2811         (md_apply_fix): Similarly, adjust logic here.
2812
2813 2000-09-28  Alan Modra  <alan@linuxcare.com.au>
2814
2815         * config/tc-hppa.c (md_apply_fix): Add fmt assertion.  Don't
2816         adjust for external and weak syms as we will use a reloc.  Allow
2817         for +8 offset when calculating limits of branches.
2818         (hppa_fix_adjustable): Undo 2000-09-23 change.
2819         (hppa_force_relocation): Likewise.  Add fx_addsy assertion.
2820         Correct distance calculation.
2821         (tc_gen_reloc): Print the file name and line number if we can't
2822         handle a fixup.
2823
2824         From John David Anglin <dave@hiauly1.hia.nrc.ca>
2825         * config/tc-hppa.c (nonzero_dibits): Define.
2826         (arg_reloc_stub_needed): Check each arg and return value
2827         separately for zero case.
2828         (pa_align): Declare argument `bytes'.
2829
2830 2000-09-25  Kazu Hirata  <kazu@hxi.com>
2831
2832         * config/tc-cris.c: Fix formatting.
2833         * config/tc-d10v.h: Likewise.
2834         * config/tc-d30v.c: Likewise.
2835         * config/tc-d30v.h: Likewise.
2836         * config/tc-fr30.c: Likewise.
2837         * config/tc-fr30.h: Likewise.
2838         * config/tc-m68k.c: Likewise.
2839         * config/tc-m68k.h: Likewise.
2840         * config/tc-pj.h: Likewise.
2841         * config/tc-ppc.c: Likewise.
2842         * config/tc-ppc.h: Likewise.
2843         * config/tc-sh.c: Likewise.
2844         * config/tc-sh.h: Likewise.
2845         * config/tc-sparc.c: Likewise.
2846         * config/tc-v850.h: Likewise.
2847         * config/tc-vax.h: Likewise.
2848         * config/tc-w65.h: Likewise.
2849         * config/tc-z8k.h: Likewise.
2850
2851 2000-09-23  Alan Modra  <alan@linuxcare.com.au>
2852
2853         * config/tc-hppa.c (hppa_fix_adjustable): Do the external and weak
2854         checks only for ELF.
2855         (hppa_force_relocation): Likewise.
2856
2857 2000-09-22  Jim Wilson  <wilson@cygnus.com>
2858
2859         * config/tc-ia64.c (dv_sem): Add "stop".
2860         (specify_resource, case IA64_RS_PR): Only handles regs 1 to 15 now.
2861         (specify_resource, case IA64_RS_PRr): New for regs 16 to 62.
2862         (specify_resource, case IA64_RS_PR63): Reorder (note == 7) test to
2863         match above.
2864         (mark_resources): Check IA64_RS_PRr.
2865
2866 2000-09-22  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
2867
2868         * config/tc-m68k.c (md_relax_table, m68k_ip, md_convert_frag_1,
2869         md_estimate_size_before_relax): Redesign and clean up the
2870         relaxation mechanism.
2871
2872 2000-09-21  Kazu Hirata  <kazu@hxi.com>
2873
2874         * config/tc-ns32k.c: Fix formatting.
2875         * config/tc-ns32k.h: Likewise.
2876
2877 2000-09-20  Kazu Hirata  <kazu@hxi.com>
2878
2879         * config/tc-m32r.c: Fix formatting.
2880         * config/tc-m32r.h: Likewise.
2881         * config/tc-m68851.h: Likewise.
2882         * config/tc-m68hc11.c: Likewise.
2883         * config/tc-m68hc11.h: Likewise.
2884         * config/tc-m88k.c: Likewise.
2885         * config/tc-mcore.c: Likewise.
2886         * config/tc-mcore.h: Likewise.
2887         * config/tc-mips.c: Likewise.
2888         * config/tc-mips.h: Likewise.
2889         * config/tc-mn10200.h: Likewise.
2890         * config/tc-mn10300.h: Likewise.
2891         * config/tc-tahoe.c: Likewise.
2892         * config/tc-tahoe.h: Likewise.
2893
2894 2000-09-19  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
2895
2896         * config/tc-vax.c (synthetic_votstrs): Remove jbssi and jbcci.
2897         Likewise in relaxation description comments.
2898
2899 2000-09-18  Alan Modra  <alan@linuxcare.com.au>
2900
2901         * config/tc-hppa.h (TC_FORCE_RELOCATION_SECTION): Allow
2902         subtraction of two syms without emitting a relocation.
2903
2904         From  David Huggins-Daines  <dhd@linuxcare.com>
2905         * config/tc-hppa.c (hppa_force_relocation): Force relocations for
2906         global or weak symbols.
2907
2908 2000-09-15  Kazu Hirata  <kazu@hxi.com>
2909
2910         * config/tc-h8300.h: Fix formatting.
2911         * config/tc-h8500.c: Likewise.
2912         * config/tc-h8500.h: Likewise.
2913         * config/tc-hppa.h: Likewise.
2914         * config/tc-i370.h: Likewise.
2915         * config/tc-i386.h: Likewise.
2916         * config/tc-i860.c: Likewise.
2917         * config/tc-i860.h: Likewise.
2918         * config/tc-i960.h: Likewise.
2919         * config/tc-ia64.c: Likewise.
2920         * config/tc-ia64.h: Likewise.
2921
2922 2000-09-14  Kazu Hirata  <kazu@hxi.com>
2923
2924         * config/tc-a29k.c: Fix formatting.
2925         * config/tc-alpha.c: Likewise.
2926         * config/tc-arc.c: Likewise.
2927         * config/tc-arc.h: Likewise.
2928         * config/tc-arm.c: Likewise.
2929         * config/tc-arm.h: Likewise.
2930         * config/tc-avr.c: Likewise.
2931         * config/tc-avr.h: Likewise.
2932         * config/tc-tic30.c: Likewise.
2933         * config/tc-tic30.h: Likewise.
2934         * config/tc-tic54x.c: Likewise.
2935         * config/tc-tic54x.h: Likewise.
2936         * config/tc-tic80.c: Likewise.
2937         * config/tc-tic80.h: Likewise.
2938
2939 2000-09-14  Timothy Wall  <twall@cygnus.com>
2940
2941         * config/tc-ia64.c (specify_resource): For PR%/PR63, note types of
2942         parallel comparisons for later use.
2943         (struct rsrc): Add parallel comparison type.
2944         (resources_match): Skip special cases of PR usage (non-conflicting
2945         parallel compares).
2946
2947 2000-09-13  Kazu Hirata  <kazu@hxi.com>
2948
2949         * config/obj-ecoff.c: Fix formatting.
2950         * config/obj-elf.c: Likewise.
2951         * config/obj-elf.h: Likewise.
2952         * config/obj-evax.h: Likewise.
2953         * config/obj-generic.h: Likewise.
2954         * config/obj-hp300.c: Likewise.
2955         * config/obj-hp300.h: Likewise.
2956         * config/obj-ieee.h: Likewise.
2957         * config/obj-vms.c: Likewise.
2958         * config/obj-vms.h: Likewise.
2959
2960 2000-09-13  Anders Norlander  <anorland@acc.umu.se>
2961
2962         * config/tc-mips.c (md_begin): Recognize 4Kc, 4Km and 4Kp processors.
2963         (md_parse_option): Ditto.
2964         (md_longopts): Add -mips32 option.
2965         (md_show_usage): Document new options.
2966         (mips_ip): Assemble sdbbp 20 bit 'm' args for MIPS32.
2967         (mips_ip): Assemble mfc0 with a sub-selection code.
2968         (validate_mips_insn): Handle 'H' (OP_*_SEL) and 'm' (OP_*_CODE20).
2969         (mips_cpu_to_str): New function.
2970         (mips_ip): Use mips_cpu_to_str instead of printing numeric cpu value.
2971         Use CPU_* defines instead of hardcoded numbers.
2972
2973         * doc/as.texinfo: Document new options.
2974         * doc/c-mips.texi: Ditto.
2975
2976 2000-09-12  Kazu Hirata  <kazu@hxi.com>
2977
2978         * as.h: Fix formatting.
2979         * asintl.h: Likewise.
2980         * bit_fix.h: Likewise.
2981         * config/obj-aout.c: Likewise.
2982         * config/obj-aout.h: Likewise.
2983         * config/obj-bout.c: Likewise.
2984         * config/obj-bout.h: Likewise.
2985         * config/obj-coff.c: Likewise.
2986         * config/obj-coff.h: Likewise.
2987         * dwarf2dbg.h: Likewise.
2988         * expr.h: Likewise.
2989         * flonum.h: Likewise.
2990         * frags.h: Likewise.
2991         * itbl-ops.h: Likewise.
2992         * macro.h: Likewise.
2993         * read.h: Likewise.
2994         * sb.h: Likewise.
2995         * struc-symbol.h: Likewise.
2996         * subsegs.h: Likewise.
2997         * symbols.h: Likewise.
2998         * tc.h: Likewise.
2999         * write.h: Likewise.
3000
3001 2000-09-11  Kazu Hirata  <kazu@hxi.com>
3002
3003         * bignum-copy.c: Fix formatting.
3004         * config/tc-i370.c: Likewise.
3005         * config/tc-i960.c: Likewise.
3006         * config/tc-m68k.c: Likewise.
3007         * ehopt.c: Likewise.
3008         * flonum-copy.c: Likewise.
3009         * flonum-konst.c: Likewise.
3010         * flonum-mult.c: Likewise.
3011         * literal.c: Likewise.
3012         * read.c: Likewise.
3013         * sb.c: Likewise.
3014         * stabs.c: Likewise.
3015         * subsegs.c: Likewise.
3016
3017 2000-09-09  Philip Blundell  <philb@gnu.org>
3018
3019         * configure.in (arm*-*-uclinux*): New target.
3020         * configure: Regenerate.
3021
3022 2000-09-09  Kazu Hirata  <kazu@hxi.com>
3023
3024         * input-file.c: Fix formatting.
3025         * itbl-ops.c: Likewise.
3026         * messages.c: Likewise.
3027
3028 2000-09-08  Philip Blundell  <philb@gnu.org>
3029
3030         * config/tc-arm.c (md_apply_fix3): Correct handling of ADRL when
3031         offset is negative.
3032
3033 2000-09-07  H.J. Lu  <hjl@gnu.org>
3034
3035         * configure.in (AC_ISC_POSIX): Put after AC_CANONICAL_SYSTEM.
3036         * configure: Rebuild.
3037
3038 2000-09-07  Kazu Hirata  <kazu@hxi.com>
3039
3040         * atof-generic.c: Fix formatting.
3041         * config/tc-mips.c: Likewise.
3042         * config/tc-vax.c: Likewise.
3043         * input-scrub.c: Likewise.
3044
3045 2000-09-07  Alexandre Oliva  <aoliva@redhat.com>
3046
3047         * config/tc-sh.h (TARGET_FORMAT): Use sh-linux targets.
3048         * configure.in (sh-*-linux*): Added.
3049         * configure: Rebuilt.
3050
3051 2000-09-06  Kazu Hirata  <kazu@hxi.com>
3052
3053         * config/tc-hppa.c: Fix formatting.
3054
3055         * ecoff.c: Fix formatting.
3056
3057 2000-09-06  Alexandre Oliva  <aoliva@redhat.com>
3058
3059         * configure: Rebuilt with new libtool.m4.
3060
3061 2000-09-05  Kazu Hirata  <kazu@hxi.com>
3062
3063         * cgen.c: Fix formatting.
3064         * config/tc-ia64.c: Likewise.
3065
3066 2000-09-05  Nick Clifton  <nickc@redhat.com>
3067
3068         * aclocal.m4: Regenerate.
3069         * config.in: Regenerate.
3070         * configure: Regenerate.
3071         * po/gas.pot: Regenerate.
3072
3073 2000-09-05  Hans-Peter Nilsson  <hp@axis.com>
3074
3075         * config/tc-cris.c: Correct comment typos.
3076
3077 2000-09-05  Eric Christopher  <echristo@cygnus.com>
3078
3079         * config/tc-mn10300.c: Cleanup.
3080         (md_pcrel_from): Enable.
3081
3082 2000-09-05  Alan Modra  <alan@linuxcare.com.au>
3083
3084         * expr.c (operand): Fix a comment typo.
3085         * write.c (write_relocs): Fix a signed/unsigned warning.
3086
3087         * config/tc-hppa.c (fudge_reg_expressions): New
3088         (hppa_force_reg_syms_absolute): New.
3089         (pa_equ): Allow reg_section expressions.
3090         * config/tc-hppa.c (md_optimize_expr): Define.
3091         (hppa_force_reg_syms_absolute): Prototype.
3092
3093         * config/tc-hppa.c (pa_11_fp_reg_struct): Delete.
3094         (pa_parse_number): Pass in arg to select fp reg parsing.
3095         Return 1 to indicate format checks pass.  If strict, then only
3096         accept a register or register symbol.  Return value in...
3097         (pa_number): New static for pa_parse_number.
3098         (FP_REG_BASE): Define.
3099         (FP_REG_RSEL): Define.
3100         (pre_defined_registers): Apply FP_REG_BASE and FP_REG_RSEL as
3101         appropriate.  White space changes.
3102         (need_pa11_opcode): Don't bother passing any params, get them from
3103         globals instead.
3104         (pa_ip): Modify all calls to pa_parse_number and need_pa11_opcode.
3105         Remove extraneous check in case 'Q'.
3106         (pa_equ): Modify call to pa_parse_number to do strict parsing. If
3107         reg, set section of resulting symbol to reg_section.
3108         (pa_parse_space_stmt): Modify call to pa_parse_number.
3109         (pa_space): Likewise.
3110
3111         * config/tc-hppa.c: (md_apply_fix): Handle vtable relocs.
3112         (hppa_force_relocation): Handle vtable relocs.
3113         (pa_vtable_entry): New.
3114         (pa_vtable_inherit): New.
3115         (md_pseudo_table): Add entries for vtable pseudos.
3116         (hppa_fix_adjustable): Reject reduction of R_PARISC_GNU_VTINHERIT
3117         and R_PARISC_GNU_VTENTRY relocs.  Reject reduction of relocs
3118         against weak syms.
3119         (tc_gen_reloc): Remove ELF_ARG_RELOC_INSN code.
3120         (pa_type_args): Don't call symbol_get_bfdsym multiple times.
3121         Set STT_PARISC_MILLICODE for OBJ_ELF when encountering a
3122         millicode import.
3123         * config/obj-elf.c (obj_elf_type): Allow md_elf_symbol_type to
3124         specify a symbol type.
3125
3126         * config/tc-hppa.h: Reorganize file a little, grouping OBJ_ELF
3127         dependent things together.
3128         (md_elf_symbol_type): Define.
3129
3130         * config/tc-hppa.c (fix_new_hppa): Elide "$PIC_pcrel$0" pseudo
3131         symbol.
3132         * config/tc-hppa.h (tc_frob_symbol): Elide "$PIC_pcrel$0" here too.
3133
3134         * config/obj-elf.h (obj_elf_vtable_inherit): Declare.
3135         (obj_elf_vtable_entry): Declare.
3136
3137         * config/obj-elf.c (obj_elf_vtable_inherit): Return struct fix *
3138         and export function.
3139         (obj_elf_vtable_entry): Similarly.
3140         (elf_pseudo_table): Fix the damage with a cast.
3141
3142 2000-09-03  Richard Henderson  <rth@cygnus.com>
3143
3144         * config/tc-ia64.c (emit_one_bundle): Stop collecting insns
3145         for template selection when a label is needed.
3146
3147 2000-09-02  Kazu Hirata  <kazu@hxi.com>
3148
3149         * config/tc-ia64.c: Fix formatting.
3150
3151 2000-09-02  Nick Clifton  <nickc@redhat.com>
3152
3153         * configure.in: Increase version number to 2.10.91.
3154         * configure: Regenerate.
3155         * aclocal.m4: Regenerate.
3156         * config.in: Regenerate.
3157         * po/gas.pot: Regenerate.
3158         * Makefile.in: Regenerate.
3159
3160 2000-09-01  Alexandre Oliva  <aoliva@redhat.com>
3161
3162         * config/tc-sh.h [OBJ_ELF] (TC_FIX_ADJUSTABLE): Define.
3163         * config/tc-sh.c (md_apply_fix): Map 32-bit relocations that
3164         become PC-relative to BFD_RELOC_32_PCREL.  Reject 16- or 8-bit
3165         similar relocs.
3166         (sh_obj_adjustable): Return 1 for PC-relative offsets used in
3167         branches.
3168
3169 2000-09-01  Niibe Yutaka  <gniibe@m17n.org>, Kaz Kojima  <kkojima@rr.iij4u.or.jp>, Alexandre Oliva  <aoliva@redhat.com>
3170
3171         * config/tc-sh.h (DIFF_EXPR_OK, GLOBAL_OFFSET_TABLE_NAME,
3172         TC_RELOC_GLOBAL_OFFSET_TABLE, TC_RELOC_RTSYM_LOC_FIXUP): Define.
3173         * config/tc-sh.c (sh_elf_cons, sh_elf_suffix): New functions.
3174         [OBJ_ELF] (md_pseudo_table) <long, int, word, short>: Use them.
3175         (GOT_symbol): New variable.
3176         (md_undefined_symbol): Set it.
3177
3178 2000-09-01  Richard Henderson  <rth@cygnus.com>
3179
3180         * config/tc-ia64.c (match): Don't inline.
3181         (extra_goodness): New.
3182         (md_begin): Prefer nop.f and nop.b for best_template.
3183
3184 2000-08-31  Kazu Hirata  <kazu@hxi.com>
3185
3186         * as.c: Fix formatting.
3187         * cond.c: Likewise.
3188         * frags.c: Likewise.
3189         * macro.c: Likewise.
3190
3191 2000-08-31  Eric Christopher  <echristo@cygnus.com>
3192
3193         * config/tc-mn10300.c:  Cleanup and fix warnings.
3194         (md_pseudo_table): Add initializers.
3195         (md_show_usage): Cleanup.
3196         (md_parse_option): Fix warnings.
3197         (md_undefined_symbol): Fix warnings.
3198         (md_conver_frag): Fix warnings.
3199         (tc_gen_reloc): Fix warnings.
3200         (md_apply_fix3): Fix warnings.
3201         (check_operand): Fix warnings.
3202
3203 2000-08-31  Alexandre Oliva  <aoliva@redhat.com>
3204
3205         * acinclude.m4: Include libtool and gettext macros from the
3206         top level.
3207         * aclocal.m4, configure: Rebuilt.
3208
3209 2000-08-30  Mark Hatle  <mhatle@mvista.com>
3210
3211         * config/tc-ppc.c (md_parse_option): Recognize -m405.
3212
3213 2000-08-31  Kazu Hirata  <kazu@hxi.com>
3214
3215         * listing.c: Fix formatting.
3216
3217 2000-08-29  Kazu Hirata  <kazu@hxi.com>
3218
3219         * app.c: Fix a comment typo.  Fix formatting.
3220
3221 2000-08-25  J. David Anglin  <dave@hiauly1.hia.nrc.ca>
3222
3223         * config/tc-vax.c (md_convert_frag): Correctly calculate the pc relative
3224         offset of the target destination for jmp instructions.
3225         (md_assemble): Change mode to VAX_ABSOLUTE_MODE as per comments.
3226
3227 2000-08-24  Hans-Peter Nilsson  <hp@axis.com>
3228
3229         * NEWS: Mention support for CRIS.
3230
3231 Thu Aug 24 20:41:05 2000  Denis Chertykov  <denisc@overta.ru>
3232
3233         * config/tc-avr.h (TC_IMPLICIT_LCOMM_ALIGNMENT): New macros.
3234         Sets `.lcomm' alignment to zero.
3235
3236 2000-08-23  Alexandre Oliva  <aoliva@redhat.com>
3237
3238         * config/tc-i386.h (OBJ_MAYBE_ELF, OBJ_MAYBE_COFF,
3239         TC_FIX_ADJUSTABLE): Define.
3240
3241 2000-08-23  Jim Wilson  <wilson@cygnus.com>
3242
3243         * config/tc-ia64.c (output_unw_records): Set U & E flags only if
3244         unwind.personality_routine is set.
3245
3246 2000-08-23  H.J. Lu  <hjl@gnu.org>
3247
3248         * write.c (TC_FIX_ADJUSTABLE): Remove the duplicate.
3249
3250 2000-08-23  Alexandre Oliva  <aoliva@redhat.com>
3251
3252         * config/tc-i386.h (TC_FIX_ADJUSTABLE): Do *NOT* define if target
3253         environment is pe.
3254
3255 2000-08-22  H.J. Lu  <hjl@gnu.org>
3256
3257         * config.in (STRICTCOFF): New for strict COFF.
3258
3259         * configure.in: Define STRICTCOFF for i386-*-msdosdjgpp*,
3260         i386-*-go32* and i386-go32-rtems*.
3261         * configure: Rebuilt.
3262
3263         * config/obj-coff.c (obj_coff_endef): Follow the historical
3264         behavior if STRICTCOFF is not defined.
3265
3266         * doc/internals.texi: Document STRICTCOFF.
3267
3268 2000-08-22  Alexandre Oliva  <aoliva@redhat.com>
3269
3270         * write.c (TC_FIX_ADJUSTABLE): Define to 1, if not defined.
3271         (fixup_segment) Use it instead of TC_DONT_FIX_NON_ADJUSTABLE.
3272         * config/tc-i386.h (TC_DONT_FIX_NON_ADJUSTABLE): Remove.
3273         <OBJ_ELF, OBJ_COFF, TE_PE> (TC_FIX_ADJUSTABLE): Define.
3274         * config/tc-arm.h (TC_DONT_FIX_NON_ADJUSTABLE): Remove.
3275         <OBJ_ELF> (TC_FIX_ADJUSTABLE): Define.
3276         * config/tc-i960.h, config/tc-m68k.h, config/tc-v850.h:
3277         Likewise.
3278
3279 2000-08-22  Eric Christopher  <echristo@cygnus.com>
3280
3281         * config/tc-mn10300.c: (md_apply_fix): New function.
3282         (mn10300_force_relocation): New function.
3283         (mn10300_fix_adjustable): New function.
3284
3285         * config/tc-mn10300.h: (TC_FORCE_RELOCATION): Define.
3286         (TC_HANDLES_FX_DONE): Define.
3287         (obj_fix_adjustable): Define.
3288         (MD_APPLY_FIX3): Define.
3289         (TC_LINKRELAX_FIXUP): Define.
3290
3291         * write.c: (TC_LINKRELAX_FIXUP):  Define if not
3292         previously defined.
3293         (fixup_segment): Use TC_LINKRELAX_FIXUP.
3294
3295         * doc/internals.texi: Document TC_LINKRELAX_FIXUP.
3296
3297 2000-08-21  Jason Eckhardt  <jle@cygnus.com>
3298
3299         * config/tc-i860.c (md_apply_fix3): Do not insert the immediate
3300         if the fixup resulted in a relocation.
3301
3302 2000-08-18  Nick Clifton  <nickc@redhat.com>
3303
3304         * config/tc-arm.c (decode_shift): Replace as_tsktsk with as_warn.
3305         Make reference to first element of shift_names explicit.
3306
3307 2000-08-18  Alexandre Oliva  <aoliva@redhat.com>
3308
3309         * write.c (fixup_segment) [TC_DONT_FIX_NON_ADJUSTABLE]: Use
3310         obj_fix_adjustable() and tc_fix_adjustable() to tell whether to
3311         add a symbol's address.  Removed all target-specific #ifdefs that
3312         used to accomplished the same.
3313         * config/tc-v850.h (TC_DONT_FIX_NON_ADJUSTABLE): Define.
3314         * config/tc-m68k.h (TC_DONT_FIX_NON_ADJUSTABLE): Define.
3315         * config/tc-arm.h (TC_DONT_FIX_NON_ADJUSTABLE): Define.
3316         * config/tc-i960.h (TC_DONT_FIX_NON_ADJUSTABLE): Define.
3317         * config/tc-i386.h (TC_DONT_FIX_NON_ADJUSTABLE): Define.
3318
3319 2000-08-17  Kazu Hirata  <kazu@hxi.com>
3320
3321         * dwarf2dbg.c: Fix formatting.
3322
3323 2000-08-17  Nick Clifton  <nickc@redhat.com>
3324
3325         * config/tc-arm.c (decode_shift): Allow illegal shifts by zero
3326         to be recoded as logical shift lefts by zero.
3327
3328 2000-08-16  Jim Wilson  <wilson@cygnus.com>
3329
3330         * config/tc-ia64.c (specify_resource, case IA64_RS_GR): Handle
3331         postincrement modified registers.  Handle IA64_OPND_R3_2 addl
3332         source registers.
3333         (note_register_values): Handle IA64_OPND_R3_2 operands.
3334
3335 2000-08-16  Jason Eckhardt  <jle@cygnus.com>
3336
3337         * config/tc-i860.c (md_operand): Silly typo fixed.
3338
3339 2000-08-16  Nick Clifton  <nickc@redhat.com>
3340
3341         * config/tc-arm.c (struct asm_shift): Delete.
3342         (shift[]): Delete.
3343         (enum asm_shift_index): New.
3344         (struct asm_shift_properties): New.
3345         (struct asm_shift_name): New.
3346         (shift_properties[]); New.
3347         (shift_names[]); New.
3348
3349         (decode_shift): Use new structures.
3350         Issue a warning is "ROR #0" is used.
3351         Issue a warning if "ASR #0" or "LSR #0" is used.
3352
3353         (md_begin): Initialise arm_shift_hsh table from new
3354         asm_shift_name array.
3355
3356 2000-08-16  Jakub Jelinek  <jakub@redhat.com>
3357
3358         * config/tc-sparc.c: Kill all warnings.
3359         (md_parse_option): Set -32/-64 for -xarch=, allow all -A archs
3360         in -xarch= as well.
3361         (md_show_usage): Update usage text.
3362
3363 2000-08-16  Nick Clifton  <nickc@redhat.com>
3364
3365         * config/tc-arm.c (do_bx): Warn about "bx px" not being very
3366         useful.
3367
3368 2000-08-15  Will Cohen  <wcohen@redhat.com>
3369
3370         * config/tc-sh.h (DWARF2_LINE_MIN_INSN_LENGTH): Defined.
3371
3372         * config/tc-sh.c (md_assemble): Changed so debug_type
3373         test performed for ppi_assemble
3374         * config/tc-sh.c: Included dwarf2dbg.h.
3375         (debug_line): Defined.
3376         (md_assemble): Generates dwarf2 line info.
3377         (sh_finalize): New function.  Finalize dwarf2 info.
3378         (assemble_ppi): Returns size of code generated.
3379         (build_Mytes): Returns size of code generated.
3380         (md_pseudo_table): Added "file" and "loc" psuedo ops.
3381         * config/tc-sh.h (md_end): Defined.
3382         (sh_finalize): Declared.
3383
3384 2000-08-15  Alexandre Oliva  <aoliva@redhat.com>
3385
3386         * config/tc-sh.c (md_apply_fix) [BFD_RELOC_32, BFD_RELOC_16]: Use
3387         md_number_to_chars.
3388
3389 2000-08-14  Nick Clifton  <nickc@redhat.com>
3390
3391         * config/tc-arm.c (do_bx): Allow "bx pc".
3392
3393 2000-08-14  Jim Wilson  <wilson@cygnus.com>
3394
3395         * config/tc-ia64.c (md_longopts): Add -mconstant-gp and -mauto-pic.
3396         (md_parse_option):  Add OPTION_MCONSTANT_GP and OPTION_MAUTO_PIC.
3397         (md_begin): Change assignment to md.flag to OR in the new bit.
3398
3399 2000-08-14  Mark Elbrecht  <snowball3@bigfoot.com>
3400
3401         * config/obj-coff.c (obj_coff_endef) [BFD_ASSEMBLER]: Set the debug
3402         flag for storage types C_ARG, C_REGPARM, C_FIELD, C_MOS, C_MOE,
3403         C_MOU, and C_EOS.
3404
3405 2000-08-14  Jason Eckhardt  <jle@cygnus.com>
3406
3407         * NEWS: Mention i860 support.
3408
3409 Mon Aug 14 11:49:12 2000  Jeffrey A Law  (law@cygnus.com)
3410
3411         * config/tc-mn10300.h (DWARF2_LINE_MIN_INSN_LENGTH): Define.
3412
3413 2000-08-14  Andreas Schwab  <schwab@suse.de>
3414
3415         * doc/c-arm.texi (ARM Directives): Fix warnings from makeinfo.
3416
3417 2000-08-11  Andreas Schwab  <schwab@suse.de>
3418
3419         * doc/c-i860.texi (Opcodes for i860): Remove braces from @item
3420         argument.
3421
3422 2000-08-11  Kazu Hirata  <kazu@hxi.com>
3423
3424         * expr.c: Fix formatting.
3425         * config/obj-bout.c: Likewise.
3426
3427 2000-08-10  Jason Eckhardt  <jle@cygnus.com>
3428
3429         * doc/c-i860.texi: Flesh out the i860 section more.
3430
3431 2000-08-10  Kazu Hirata  <kazu@hxi.com>
3432
3433         * symbols.c: Fix formatting.
3434         * expr.c: Likewise.
3435
3436 Wed Aug  9 16:28:21 EDT 2000    Diego Novillo <dnovillo@cygnus.com>
3437
3438         * config/tc-i386.c (md_assemble): Skip suffix check if the opcode
3439         modifier has the IgnoreSize bit set.
3440
3441 2000-08-09  Alan Modra  <alan@linuxcare.com.au>
3442
3443         From  Rodney Brown  <RodneyBrown@mynd.com>
3444         * configure.in: Use elf on Unixware 7 (i586-sco-sysv5uw7.1.0)
3445         * configure: Regenerate.
3446
3447 2000-08-09  Kazu Hirata  <kazu@hxi.com>
3448
3449         * hash.c: Fix formatting.
3450         * gasp.c: Likewise.
3451
3452 2000-08-08  Jason Eckhardt  <jle@cygnus.com>
3453
3454         * config/tc-i860.h: Rework completely for BFD_ASSEMBLER.
3455         (i860_fix_info): New enum.
3456         (MD_APPLY_FIX3): Define.
3457         (WORKING_DOT_WORD): Define.
3458         (TC_HANDLES_FX_DONE): Define.
3459         (DIFF_EXPR_OK): Define.
3460         (LISTING_HEADER): Define.
3461         (TARGET_FORMAT): Select target format based on endian flag.
3462         (TARGET_BYTES_BIG_ENDIAN): Default to little endian.
3463         (target_big_endian): Add external declaration.
3464
3465         * config/tc-i860.c: All existing code reworked completely. Other
3466         new code shown below.
3467         (SYNTAX_SVR4): Define.
3468         (target_warn_expand): New variable.
3469         (md_shortopts): Declare and define (-Qy, -Qn, and -V options).
3470         (md_longopts): Declare and define with new options (-EL, -EB,
3471         and -mwarn-expand).
3472         (md_show_usage): New function.
3473         (md_operand): New function.
3474         (obtain_reloc_for_imm16): New function.
3475         (md_apply_fix3): New function.
3476         (tc_gen_reloc): New function.
3477
3478 2000-08-08  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
3479
3480         * config/tc-m68hc11.c (build_jump_insn): Make sure the
3481         2 bytes of the jump address are in the same frag.
3482         (find): Accept 68hc12 register indirect modes.
3483
3484         * NEWS: Mention 68HC11 & 68HC12 support.
3485
3486 2000-08-07  Richard Henderson  <rth@cygnus.com>
3487
3488         * config/tc-ia64.c (unwind): Add prologue_mask member.
3489         (dot_vframe): Elide psp_gr record if it overlaps prologue_gr.
3490         (dot_save): Likewise for pfs_gr, rp_gr, and preds_gr.
3491         (dot_body): Clear unwind.prologue_mask.
3492         (dot_prologue): Set it.  Accept a register second argument.
3493
3494 2000-08-07  Kazu Hirata  <kazu@hxi.com>
3495
3496         * config/atof-ieee.c: Fix formatting.
3497         * config/atof-tahoe.c: Likewise.
3498
3499 2000-08-06  Nick Clifton  <nickc@cygnus.com>
3500
3501         * config/tc-sparc.c (md_begin): Fix typo in recent formatting
3502         work.
3503
3504         * doc/as.texinfo (Pseudo Ops): Update to include descriptions
3505         of .popsection, .previous, .pushsection, .subsection,
3506         .version, .vtable_entry, .vtable_inherit and .weak.
3507
3508 2000-08-05  Kazu Hirata  <kazu@hxi.com>
3509
3510         * config/tc-cris.c: Fix formatting.
3511         * config/tc-i386.c: Likewise.
3512         * config/tc-sparc.c (sparc_ip): Simplify the code.
3513
3514 2000-08-04  Kazu Hirata  <kazu@hxi.com>
3515
3516         * config/tc-cris.c: Rearrange code for readability.
3517         * config/tc-d10v.c: Fix formatting.
3518         * config/tc-m32r.c: Likewise.
3519         * config/tc-sparc.c: Likewise.
3520
3521 2000-08-02  Jim Wilson  <wilson@cygnus.com>
3522
3523         * config/tc-ia64.c (emit_one_bundle): Call ia64_free_opcode
3524         before ia64_find_opcode.
3525         (md_assemble): Likewise.
3526
3527 2000-08-01  Nick Clifton  <nickc@cygnus.com>
3528
3529         * config/tc-arm.c (do_mrs): Fix skip of 'cpsr_all' flag.
3530         Undo some formatting fixes.
3531
3532 2000-08-01  Kazu Hirata  <kazu@hxi.com>
3533
3534         * config/obj-som.c: Fix formatting.
3535         * config/obj-ieee.c: Likewise.
3536         * config/tc-arm.c: Likewise.
3537         * config/tc-v850.c: Likewise.
3538
3539 2000-08-01  Nick Clifton  <nickc@redhat.com>
3540
3541         * doc/c-m68k.texi (section M680x0 Options): Turn into a table
3542         index by command line option.
3543
3544 2000-08-01  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
3545
3546         * doc/c-m68k.texi (@cindex @samp{--pcrel}): Rewrite option description.
3547         (@node M68K-Branch): Rewrite to match the reality.
3548
3549 2000-07-31  Jason Eckhardt  <jle@cygnus.com>
3550
3551         * doc/c-i860.texi: New file.
3552         * doc/Makefile.am (CPU_DOCS): Add c-i860.texi.
3553         * doc/Makefile.in: Regenerate.
3554         * doc/all.texi: Add I860 as relevant architecture.
3555         * doc/as.texinfo: Include i860 dependent file c-i860.texi.
3556
3557 2000-07-31  Kazu Hirata  <kazu@hxi.com>
3558
3559         * config/tc-d30v.c: Fix formatting.
3560
3561 2000-07-31  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
3562
3563         * config/tc-m68k.c (flag_keep_pcrel, OPTION_PCREL): Add --pcrel option.
3564         (md_convert_frag_1, md_estimate_size_before_relax): When making DBcc
3565         long emit a long branch if available instead of an absolute jump, never
3566         emit absolute jumps for anything with --pcrel.
3567
3568         * doc/c-m68k.texi: Document new command line option.
3569
3570 2000-07-29  Marek Michalkiewicz  <marekm@linux.org.pl>
3571
3572         * config/tc-avr.c: Use PARAMS macro in function declarations.
3573         Don't declare md_pcrel_from_section (already in tc-avr.h).
3574         (avr_operands): Use AVR_UNDEF_P and AVR_SKIP_P macros.
3575         (avr_operand): Don't set (unsigned) op_mask to -1.
3576
3577 2000-07-28  Jason Eckhardt  <jle@cygnus.com>
3578
3579         * configure.in: Add bits for i860-stardent-{sysv4, elf}*.
3580         * configure: Regenerated.
3581         * config/obj-elf.c (obj_elf_type): Recognize a fifth type
3582         of operand to the .type directive (.e.g, "type").
3583
3584 2000-07-28  Alan Modra  <alan@linuxcare.com.au>
3585
3586         * as.h (warn_comment, found_comment, found_comment_file): Declare.
3587         * app.c (do_scrub_chars): Record where first comment found.
3588         * read.c (read_a_source_file): Init found_comment on entry, and
3589         notify whether comments found on exit.
3590         * config/tc-hppa.c (md_shortopts): Add "c".
3591         (md_longopts): Add warn-comment.
3592         (md_parse_option): Handle it.
3593         (md_show_usage): Show available options.
3594         * config/tc-hppa.h (WARN_COMMENTS): Define if TE_LINUX
3595
3596 Thu Jul 27 11:25:01 2000  Andrew Cagney  <cagney@b1.cygnus.com>
3597
3598         * config/tc-mn10300.c (md_convert_frag): Fix printfs.
3599         (tc_gen_reloc): Add cast when assigning bfd_abs_symbol to
3600         sym_ptr_ptr
3601         (md_estimate_size_before_relax): Don't fall off end of function.
3602
3603 2000-07-27  Kazu Hirata  <kazu@hxi.com>
3604
3605         * config/tc-avr.c: Fix formatting.
3606         * config/tc-ns32k.c: Likewise.
3607
3608 2000-07-27  Alan Modra  <alan@linuxcare.com.au>
3609
3610         * config/tc-d10v.c (find_opcode): Remove extraneous `='.
3611
3612 2000-07-27  Kazu Hirata  <kazu@hxi.com>
3613
3614         * config/tc-d10v.c: Fix formatting.
3615         * config/tc-z8k.c: Likewise.
3616         * config/tc-sparc.c: Likewise.
3617
3618 2000-07-26  Dave Brolley  <brolley@redhat.com>
3619
3620         * cgen.c (queue_fixup): Declare opinfo.
3621         (gas_cgen_parse_operand): Mark unused parameters with ATTRIBUTE_UNUSED.
3622         (gas_cgen_md_operand): Ditto.
3623         (gas_cgen_md_apply_fix3): Ditto.
3624
3625 2000-07-24  Mark Elbrecht  <snowball3@bigfoot.com>
3626
3627         * config/obj-coff.c (obj_frob_symbol): Don't merge
3628         labels. Don't merge if the symbol isn't constant. Return
3629         immediately if a symbol is merged.
3630
3631 2000-07-22  Alan Modra  <alan@linuxcare.com.au>
3632
3633         * frags.c (frag_align): Correct absolute section alignment.
3634
3635 2000-07-20  DJ Delorie  <dj@redhat.com>
3636
3637         * config/obj-coff.c (obj_frob_symbol): revert previous change,
3638         it breaks linking against DLLs.
3639
3640 2000-07-20  Hans-Peter Nilsson  <hp@axis.com>
3641
3642         * configure.in: Add CRIS support.
3643         * configure: Regenerate.
3644         * Makefile.am: (CPU_TYPES): Add cris.
3645         (CPU_OBJ_VALID) [aout]: Add cris.
3646         (MULTI_CPU_TYPES): Add cris.
3647         (MULTI_CPU_OBJ_VALID) [aout]: Add cris.
3648         [coff]: Only i386 and mips are valid.
3649         (TARGET_CPU_CFILES): Add config/tc-cris.c.
3650         (TARGET_CPU_HFILES): Add config/tc-cris.h.
3651         (MULTI_CFILES): Add config/e-crisaout.c and config/e-criself.c.
3652         Regenerate dependencies.
3653         * Makefile.in: Regenerate.
3654         * aclocal.m4: Regenerate.
3655         * as.c: Declare crisaout, criself.
3656         * config/tc-cris.h, config/tc-cris.c: New.
3657         * config/e-criself.c, config/e-crisaout.c: New.
3658         * po/POTFILES.in, po/gas.pot: Regenerate.
3659
3660 2000-07-20  Kazu Hirata  <kazu@hxi.com>
3661
3662         * read.c: Fix formatting.
3663         * write.c: Fix formatting.
3664
3665 2000-07-19  H.J. Lu  <hjl@gnu.org>
3666
3667         * sb.c: Include <stdlib.h> if exists for abort ().
3668
3669 2000-07-19  Alan Modra  <alan@linuxcare.com.au>
3670
3671         * config/tc-hppa.c (hppa_fix_adjustable): Correct LR%/RR% comment.
3672         (arg_reloc_stub_needed): #ifdef OBJ_SOM, not #ifdef SOM.
3673         (pa_type_args): Same here.
3674
3675 2000-07-17  Mark Elbrecht  <snowball3@bigfoot.com>
3676
3677         * config/obj-coff.c (obj_frob_symbol): Don't merge labels. Don't
3678         merge if the symbol isn't constant. Don't call S_SET_EXTERNAL if
3679         the storage class is already set.
3680
3681 2000-07-17  Kazu Hirata  <kazu@hxi.com>
3682
3683         * config/tc-m68hc11.c: Fix formatting.
3684         * config/tc-mn10200.c: Likewise.
3685         * config/tc-mn10300.c: Likewise.
3686         * config/tc-pj.c: Likewise.
3687         * config/tc-tic80.c: Likewise.
3688         * config/tc-w65.c: Likewise.
3689
3690 2000-07-17  Frank Ch. Eigler  <fche@redhat.com>
3691
3692         * expr.c (operand): Permit %bin literals if LITERAL_PREFIXPERCENT_BIN
3693         is defined.
3694
3695 2000-07-15  Ian Lance Taylor  <ian@zembu.com>
3696
3697         * doc/c-mips.texi (MIPS Opts): Remove erroneous space after
3698         @code.
3699
3700 2000-07-15  Alan Modra  <alan@linuxcare.com.au>
3701
3702         * config/tc-hppa.c (hppa_fix_adjustable): Use the same checks for
3703         ELF as are used for SOM (except the 32-bit reloc one) to decide
3704         whether a symbol can be reduced to a section symbol.  Expand on
3705         the comment for symbols involved in LR% and RR% expressions.
3706
3707 2000-07-14  Nick Clifton  <nickc@cygnus.com>
3708
3709         * config/tc-mips.c (mips_disable_float_construction): New
3710         static variable.  Set to true if doubles should not be
3711         constructed by loading two single width fp registers with
3712         halves of the value.
3713         (mips_ip): Test mips_disable_float_construction.
3714         (md_longopts): Add command line switches --construct-floats
3715         and --no-construct-floats.
3716         (md_parse_option): Parse new command line options.
3717         (md_show_usage): Describe new command line options.
3718
3719         * doc/c-mips.texi: Document new command line options.
3720
3721 2000-07-13  Koundinya K  <kk@ddeorg.soft.net>
3722
3723         * configure.in: Remove the test /usr/dde for mips-*-sysv4*MP*
3724         * configure: Regenerate.
3725
3726 2000-07-13  Hans-Peter Nilsson  <hp@axis.com>
3727
3728         * configure.in (DEFAULT_EMULATION setting): Revert part of
3729         2000-07-01 change that set te_multi=multi unless set to tmips.
3730         * configure: Regenerate.
3731
3732 2000-07-12  Mark Elbrecht  <snowball3@bigfoot.com>
3733
3734         * config/obj-coff.c (coff_frob_section): Add padding to the last
3735         section when aligning it increases its size.
3736
3737 2000-07-11  Kazu Hirata  <kazu@hxi.com>
3738
3739         * config/tc-tic54x.c: Fix formatting.
3740
3741 2000-07-10  Kazu Hirata  <kazu@hxi.com>
3742
3743         * config/tc-h8500.c: Fix formatting.
3744         * config/tc-tic54x.c: Fix formatting.
3745
3746 2000-07-10  Alan Modra  <alan@linuxcare.com.au>
3747
3748         * config/tc-hppa.c (md_apply_fix): Check fmt 12 and 22 pc-rel
3749         displacements correctly.
3750
3751         * read.h (s_abort): Add ATTRIBUTE_NORETURN.
3752
3753 2000-07-10  Ryan Bradetich  <rbradetich@uswest.net>
3754
3755         * hash.c (hash_insert): Add cast to obstruct_alloc to fix
3756         warning.
3757         (hash_jam): Ditto.
3758
3759 2000-07-09  Alan Modra  <alan@linuxcare.com.au>
3760
3761         From  David Huggins-Daines  <dhd@linuxcare.com>
3762         * config/te-hppalinux64.h: Add a new emulation.
3763         * configure.in (emulations): Add configure bits to support the
3764         64-bit Linux/parisc target.
3765         * configure: Regenerate.
3766
3767         * config/tc-hppa.c (md_parse_option): Support `-V' for ELF.
3768         (md_shortopts): Add `V' for ELF.
3769
3770         * config/tc-hppa.c (arg_reloc_stub_needed): Define as zero except
3771         when SOM or ELF_ARG_RELOC are defined.
3772         (pa_type_args): Only set symbol_arg_reloc_info when SOM or
3773         ELF_ARG_RELOC are defined.
3774         (pa_stringer_aux): Don't pa_check_current_space_and_subspace here..
3775         (pa_stringer): ..Do it here instead.  Fix comment typos.
3776         (hppa_force_relocation): Cast enums to int before comparing with
3777         ints.
3778
3779         From  Ryan Bradetich  <rbradetich@uswest.net>
3780         * config/tc-hppa.c: Removed unneeded libbfd.h to fix macro
3781         redifinition warning.
3782         (md_apply_fix): Added cast from enum to int for fixP->fx_r_type.
3783         (hppa_force_relocation): ditto
3784         (md_apply_fix): Added cast to buf to fix warnings.
3785
3786         * config/tc-hppa.h (pa_define_label, parse_cons_expression_hppa,
3787         cons_fix_new_hppa, hppa_force_relocation): Prototype.
3788
3789         * config/tc-hppa.c (reloc_type): It's an enum for OBJ_ELF.
3790         (R_N0SEL, R_N1SEL): Define only for OBJ_SOM.
3791         (tc_gen_reloc): Make `code' a reloc_type and `codes' a
3792         reloc_type** to avoid warnings in switch.
3793         (md_apply_fix): Make insn, val signed.  Zap buf_wd and read insn a
3794         little earlier instead.
3795
3796         * config/tc-hppa.c (symbol_arg_reloc_info): Define for both som
3797         and elf.
3798         (pa_type_args): Use symbol_arg_reloc_info.
3799         (struct pa_it): Make arg_reloc unsigned int.
3800         (struct hppa_fix_struct): Likewise for fx_arg_reloc.
3801         (pa_text, pa_data, pa_comm): Don't compile for TE_LINUX.
3802         (pa_code): Delete.  pa_text duplicates this function.
3803         (md_pseudo_table): Call obj_elf_text for ".code" if TE_LINUX.
3804         (fix_new_hppa): Argument offset is offsetT, arg_reloc is unsigned
3805         int.
3806         (cons_fix_new_hppa): Actually change selector to e_fsel when
3807         warning about assuming so.
3808         (tc_gen_reloc): More example elf arg reloc code.
3809         (md_apply_fix): Use arg_reloc_stub_needed for elf too.
3810         (hppa_force_relocation): Likewise.
3811
3812         * config/tc-hppa.h: Use TARGET_ARCH_SIZE to select target include
3813         files.
3814         (pa_end_of_source): Prototype.
3815         (hppa_fix_adjustable): Prototype.
3816         (LABELS_WITHOUT_COLONS): Move it..
3817         * config/te-hppa.h: To here.
3818
3819         * config/te-hppa64.h: New file.
3820
3821         * config/tc-hppa.c: Use TARGET_ARCH_SIZE to select target reloc
3822         type.
3823         (md_apply_fix): Pass stdoutput to bfd_hppa_insn2fmt.  Handle
3824         format -10, -16, 16 relocs.
3825         (hppa_elf_mark_end_of_function): Test for null
3826         last_call_info->start_symbol
3827
3828         * config/tc-hppa.c (pa_ip): In case 'V', pass `strict' to
3829         CHECK_FIELD, not INSERT_FIELD_AND_CONTINUE.  Don't pass opcode to
3830         re_assesmble_* functions.  Delete extraneous statements.  Fix
3831         typos in comments.
3832         (md_apply_fix): Compare against 1048575 in case 21.  Don't pass
3833         insn to re_assemble_*.
3834
3835 2000-07-08  Ulf Carlsson  <ulfc@engr.sgi.com>
3836
3837         * doc/internals.texi (Expressions): Fix typo.
3838
3839 2000-07-08  Kazu Hirata  <kazu@hxi.com>
3840
3841         * config/tc-sh.c: Fix formatting.
3842         * config/tc-tic54x.c: Fix formatting.
3843         * depend.c: Fix formatting.
3844         * flonum-konst.c: Likewise.
3845         * flonum-mult.c: Likewise.
3846
3847 2000-07-07  Kazu Hirata <kazu@hxi.com>
3848
3849         * config/tc-sh.c: Fix comments.
3850         * config/obj-vms.c: Fix comments.
3851         * config/tc-a29k.c: Likewise.
3852         * config/tc-alpha.c: Likewise.
3853         * config/tc-h8300.c: Likewise.
3854         * config/tc-h8500.c: Likewise.
3855         * config/tc-i370.c: Likewise.
3856         * config/tc-ia64.c: Likewise.
3857         * config/tc-m68hc11.c: Likewise.
3858         * config/tc-m68k.c: Likewise.
3859         * config/tc-mips.c: Likewise.
3860         * config/tc-ns32k.c: Likewise.
3861         * config/tc-ppc.c: Likewise.
3862         * config/tc-z8k.c: Likewise.
3863
3864 2000-07-06  Mark Elbrecht  <snowball3@bigfoot.com>
3865
3866         * config/obj-coff.c (TC_COFF_SECTION_DEFAULT_ATTRIBUTES): New.
3867         Default to '(SEC_LOAD | SEC_DATA)'.
3868         (obj_coff_section) [BFD_ASSEMBLER]: Use it.
3869
3870         * doc/internals.texi (CPU Backend): Describe
3871         TC_COFF_SECTION_DEFAULT_ATTRIBUTES.
3872
3873 Thu Jul  6 17:20:58 2000  Andrew Cagney  <cagney@b1.cygnus.com>
3874
3875         * as.c (parse_args): NULL terminate the long option list.
3876
3877 Tue Jul  4 14:08:28 2000  Andrew Cagney  <cagney@b1.cygnus.com>
3878
3879         * config/tc-d30v.h: Include "write.h" for fixS.
3880         (d30v_start_line, md_pcrel_from_section): Add function prototypes.
3881
3882 2000-07-05  Nick Clifton  <nickc@cygnus.com>
3883
3884         * config/tc-d30v.c (write_2_short): Further changes to warning
3885         messages produced when combining EITHER_BUT_PREFER_MU attributed
3886         opcodes.
3887
3888 2000-07-05  DJ Delorie  <dj@redhat.com>
3889
3890         * MAINTAINERS: new
3891
3892 2000-07-04  Alexandre Oliva  <aoliva@redhat.com>
3893
3894         * config/tc-arm.c (psrs): Accept combinations of flags.
3895
3896 2000-07-03  Marek Michalkiewicz  <marekm@linux.org.pl>
3897
3898         * config/tc-avr.c: Change _ () to _() around all strings marked
3899         for translation (exception from the usual coding style).
3900         (avr_opt): New struct variable, how the new switches are set.
3901         (OPTION_MMCU): Define as 'm' and actually use.
3902         (md_longopts): Add -mall-opcodes, -mno-skip-bug, -mno-wrap.
3903         (show_mcu_list): New function, display the list of known MCUs.
3904         (md_show_usage): Document the new switches.  Call show_mcu_list.
3905         (avr_set_arch): Change 'm' to OPTION_MMCU.
3906         (md_parse_option): Call show_mcu_list if unknown MCU specified.
3907         Handle the new switches.
3908         (avr_operands): Disable warnings for undefined combinations of
3909         operands if -mall-opcodes.  Disable warnings for skipping two-word
3910         instructions if enhanced core or -mno-skip-bug.
3911         (avr_operand): Accept all addressing modes on avr1 if -mall-opcodes.
3912         (md_apply_fix3): Reject 8K wrap if >8K or -mno-wrap.
3913         (md_assemble): Accept opcodes not supported by MCU if -mall-opcodes.
3914         (avr_ldi_expression): Warn about implicit lo8().
3915         * config/tc-avr.h (md_pcrel_from_section): Add prototype.
3916
3917 2000-07-01  Koundinya K  <kk@ddeorg.soft.net>
3918
3919         * configure.in: Add entry for mips-*-sysv4*MP*
3920         * configure: Rebuild
3921         * config/tc-mips.c (mips_target_format): Return elf32-tradbigmips or
3922         elf32-tradlittlemips for traditional mips targets.
3923         * config/tc-mips.c (md_estimate_size_before_relax): Duplicate the
3924         test for Link Once sections as in adjust_reloc_syms.
3925         * config/te-tmips.h: New file for traditional mips targets. Define
3926         TE_TMIPS.
3927
3928 2000-06-29 Mark Elbrecht <snowball3@bigfoot.com>
3929
3930         * config/obj-coff.c (obj_coff_setcion) [BFD_ASSEMBLER]: If the
3931         flags argument is not present, don't change an existing section's
3932         section's attributes. If the flags argument is present, warn if the
3933         attributes don't match the section's current attributes. When
3934         long section names are supported, set SEC_LINK_ONCE and
3935         SEC_LINK_DUPLICATES_DISCARD for a new .gnu.linkonce section.
3936
3937 Thu Jun 29 21:30:00 2000  Hans-Peter Nilsson  <hp@axis.com>
3938
3939         * config/obj-aout.c (obj_aout_type): Do not ignore for undefined
3940         symbols; create them.
3941
3942 2000-06-29 Mark Elbrecht <snowball3@bigfoot.com>
3943
3944         * write.c (set_segment_vma): New: Set vma and lma for a segment.
3945         (write_object_file) [BFD_ASSEMBLER && OBJ_COFF && TE_GO32]: Use it.
3946
3947 2000-06-27  Aldy Hernandez  <aldyh@redhat.com>
3948
3949         * config/tc-mips.c (mips_ip): handle "(foo-.-4)" type of
3950         expressions.  Ignore the problem when handling 16 bit signed
3951         immediates, because the assembler will take care of the relocation
3952         later.
3953
3954 2000-06-27  Nick Clifton  <nickc@cygnus.com>
3955
3956         * config/tc-d30v.c (write_2_short): Do not allow opcodes with
3957         the EITHER_BUT_PREFER_MU attribute to be combined into a reverse
3958         sequential order, and emit warning messages if the input source
3959         code contains constructs like that, or parallel constructs
3960         containing such opcodes.
3961
3962 2000-06-26  Marek Michalkiewicz  <marekm@linux.org.pl>
3963
3964         * config/tc-avr.c (mcu_types): Rename avr4 to avr5, add avr4.
3965         Add more MCU types for avr4 and avr5.  Replace at94k{10,20,40}
3966         with just at94k.  Change AVR_ISA_85xx back to AVR_ISA_2xxx.
3967         (md_show_usage): Update usage message.
3968         (md_parse_option): Allow redefinition of MCU type within the
3969         same avr[1-5] bfd machine type.  Show both old and new MCU type
3970         in the error message.
3971         (md_apply_fix3): Support 8K wrap if AVR_ISA_MEGA is not set.
3972         Simplify 8K wrap code.
3973
3974 2000-06-25  Kazu Hirata  <kazu@hxi.com>
3975
3976         * config/obj-aout.c: Remove all uses of DEFUN.
3977         * config/obj-ieee.c: Likewise.
3978         * config/tc-sh.c: Fix comment typos.
3979         * config/tc-tahoe.c: Likewise.
3980         * config/tc-vax.c: Likewise.
3981         * config/tc-w65.c: Likewise.
3982         * config/tc-z8k.c: Likewise.
3983         * config/tc-h8300.c (build_bytes): Assemble ldmac correctly.
3984
3985 2000-06-24  DJ Delorie  <dj@cygnus.com>
3986
3987         * config/tc-i386.c (md_estimate_size_before_relax): Revert
3988         more changes from Sept 1999
3989         (tc_i386_fix_adjustable): ditto
3990         (md_apply_fix3): ditto
3991
3992 2000-06-24  Frank Ch. Eigler  <fche@redhat.com>
3993
3994         * cgen.c (expr_jmp_buf_p): New validity flag for expr_jmp_buf.
3995         (gas_cgen_parse_operand): Set it around expression() call.
3996         (gas_cgen_md_operand): Test for it before longjmp().
3997
3998 2000-06-24  Kazu Hirata  <kazu@hxi.com>
3999
4000         * config/tc-h8500.c: Remove all uses of DEFUN.
4001         * config/tc-sh.c: Likewise.
4002         * config/tc-w65.c: Likewise.
4003         * config/tc-z8k.c: Likewise.
4004
4005         * config/tc-h8500.c: Fix typos in comments.
4006
4007 2000-06-23  Frank Ch. Eigler  <fche@redhat.com>
4008
4009         * expr.c (operand): Permit $hex literals if LITERAL_PREFIXDOLLAR_HEX
4010         is defined.
4011
4012 2000-06-23  matthew green  <mrg@redhat.com>
4013
4014         * expr.c (operand): Do not as_bad() if RELAX_PAREN_GROUPING is
4015         defined.  Fix error message for `[' grouping.
4016
4017 2000-06-22  Kazu Hirata  <kazu@hxi.com>
4018
4019         * config/tc-h8300.c: Fix formatting and comment typos.
4020
4021 2000-06-22  Timothy Wall  <twall@cygnus.com>
4022
4023         * config/tc-ia64.c (note_register_values): Move premature QP
4024         notation clearing into the appropriate place.
4025
4026 2000-06-22  Alan Modra  <alan@linuxcare.com.au>
4027
4028         * dep-in.sed: Escape literal `.'s on patterns.  Trim off `../'
4029         first before anything else.  Add bin-bugs.h, emul.h and progress.h
4030         Sort list of files as for $(OBJS) in Makefile.am.
4031
4032         * Makefile.am (DEP): grep for leading `/' in DEPA, and fail if we
4033         find one.  Remake dependencies.
4034         ($(OBJS)): Add bin-bugs.h, emul.h, and progress.h  Sort the list.
4035         * Makefile.in: Regenerate.
4036         * doc/Makefile.in: Regenerate.
4037
4038         * config/tc-i386.c (i386_displacement): Don't assume a constant
4039         displacement is necessarily 16 bits when in 16 bit code mode.
4040         (md_assemble): Instead size the displacement here after we know
4041         for sure that a .code16gcc operand hasn't automatically added
4042         operand size prefixes.
4043
4044 2000-06-21  H.J. Lu  <hjl@gnu.org>
4045
4046         * Makefile.am: Rebuild dependency.
4047         * Makefile.in: Rebuild.
4048
4049 2000-06-21  Kazu Hirata  <kazu@hxi.com>
4050
4051         * config/tc-h8300.c (parse_reg): Make the function static.
4052         (parse_exp): Likewise.
4053
4054 2000-06-20  DJ Delorie  <dj@cygnus.com>
4055
4056         * config/tc-i386.c (tc_i386_fix_adjustable): Revert change from
4057         Sept 1999; RVA relocs need to be treated more like DIR32 relocs
4058         for cygwin import libraries to work properly.
4059
4060 2000-06-20  H.J. Lu  <hjl@gnu.org>
4061
4062         * Makefile.am: Rebuild dependency.
4063         * Makefile.in: Rebuild.
4064         * configure: Likewise.
4065         * doc/Makefile.in: Likewise.
4066
4067 2000-06-20  Timothy Wall  <twall@cygnus.com>
4068
4069         * doc/internals.texi (CPU backend): Add @itemx for
4070         TC_START_LABEL_WITHOUT_COLON.
4071         * doc/c-tic54x.texi: New.
4072         * doc/as.texinfo: Add tic54x features and include primary tic54x
4073         documentation file.
4074         * doc/all.texi: Add C54X.
4075         * doc/Makefile.am (CPU_DOCS): Add c-tic54x.texi.
4076         * doc/Makefile.in: Regenerate.
4077         * configure.in: Add tic54x and define LIBM for tic54x.
4078         * configure: Regenrate.
4079         * config/tc-tic54x.[ch]: New.
4080         * config/obj-coff.h: Add tic54x.
4081         * Makefile.am: (CPU_TYPES): Add tic54x.
4082         (TARGET_CPU_CFILES): Add 'tc-tic54x.c'.
4083         (TARGET_CPU_HFILES): Add 'tc-tic54x.h'.
4084         (as_new_LDADD): Add $(LIBM).
4085         * Makefile.in: Regenerate.
4086
4087 2000-06-18  Stephane Carrez  <stcarrez@worldnet.fr>
4088
4089         * doc/Makefile.am (CPU_DOCS): Added 68hc11 file.
4090         * doc/c-m68hc11.texi: Document 68HC11 and 68HC12 port.
4091         * doc/as.texinfo: Likewise.
4092
4093         * configure, Makefile.in: Regenerate.
4094         * configure.in (emulations): Recognize m6811 and m6812.
4095         * Makefile.am (CPU_TYPES, TARGET_CPU_CFILES, TARGET_CPU_HFILES):
4096         Added files for 68hc11 and 68hc12 assembler.
4097         * config/tc-m68hc11.c: Assembler for 68hc11 and 68hc12.
4098         * config/tc-m68hc11.h: Header definition for that assembler.
4099
4100 2000-06-18  Nick Clifton  <nickc@redhat.com>
4101
4102         * symbols.c (resolve_symbol_value): Use bfd_octets_per_byte
4103         instead of OCTETS_PER_BYTE.
4104
4105         * config/tc-v850.c: Fix compile time warnings.
4106         * config/tc-ppc.c: Fix compile time warnings.
4107
4108 2000-06-18  H.J. Lu <hjl@gnu.org>
4109
4110         * configure.in: Don't emulate i386-pc-pe-coff with i386coff.
4111         * configure: Rebuild.
4112
4113 2000-06-17 Mark Elbrecht <snowball3@bigfoot.com>
4114
4115         * config/obj-coff.c (obj_coff_weak): Typo fix: Change BFD_ASSEMLER
4116         to BFD_ASSEMBLER.
4117
4118 2000-06-16  Nick Clifton  <nickc@cygnus.com>
4119
4120         * config/tc-mips.c (md_parse_option): Accept RM5200,RM5230,
4121         RM5231, RM5261, RM5721 and RM7000 as r5000 cpu variants.
4122
4123         * doc/c-mips.texi: Document newly accepted cpu variants.
4124
4125 2000-06-15  Ulf Carlsson  <ulfc@engr.sgi.com>
4126
4127         * config/tc-mips.h: Remove definition of ONLY_STANDARD_ESCAPES.
4128
4129 2000-06-13  Ulf Carlsson  <ulfc@engr.sgi.com>
4130
4131         * macro.c (getstring): Make it possible to escape the quote
4132         character.
4133
4134 Tue Jun 13 20:58:28 2000  Catherine Moore <clm@redhat.com>
4135
4136         * config/tc-hppa.c (pa_export): Weak symbols can be global.
4137
4138 2000-06-13  H.J. Lu  <hjl@gnu.org>
4139
4140         * configure: Regenerate.
4141
4142 2000-06-09  Alan Modra  <alan@linuxcare.com.au>
4143
4144         * app.c (do_scrub_begin): Don't default lex[';'] as a line
4145         separator.
4146         * doc/internals.texi (line_separator_chars): Semicolon is no
4147         longer a default.  Mention null and newline as defaults.
4148
4149         * read.c (is_end_of_line): Remove ifdef TC_HPPA.
4150
4151         * config/tc-i386.h (line_separator_chars): Explicitly mention `;'
4152         * config/tc-i860.h (line_separator_chars): Likewise.
4153         * config/tc-h8300.c (line_separator_chars): Likewise.
4154         * config/tc-i960.c (line_separator_chars): Likewise.
4155         * config/tc-m68k.c (line_separator_chars): Likewise.
4156         * config/tc-mips.c (line_separator_chars): Likewise.
4157         * config/tc-ns32k.c (line_separator_chars): Likewise.
4158         * config/tc-sparc.c (line_separator_chars): Likewise.
4159         * config/tc-vax.c (line_separator_chars): Likewise.
4160
4161         * config/tc-h8300.c (comment_chars): Use string initialiser.
4162         * config/tc-i960.c (line_comment_chars): Likewise.
4163         * config/tc-z8k.c (comment_chars, line_comment_chars,
4164         line_separator_chars): Likewise.
4165
4166         * config/tc-arm.c (line_separator_chars): Always use `;', not just
4167         for TE_LINUX.
4168
4169 2000-06-08  Nick Clifton  <nickc@cygnus.com>
4170
4171         * config/tc-arm.c (cons_fix_new_arm): Assign correct reloc value
4172         for size 1 fixes.
4173
4174 2000-06-08  David O'Brien  <obrien@FreeBSD.org>
4175
4176         * configure.in (VERSION): Update to show this is the CVS mainline.
4177
4178 2000-06-08  Matthew Jacob  <mjacob@feral.com>
4179
4180         * config/tc-alpha.c (md_undefined_symbol): Properly understand that
4181         $at is the integer register $r28, vs. both $r28 and the floating
4182         point register $f28.
4183
4184 2000-06-08  James E. Wilson  <wilson@cygnus.com>
4185
4186         * config/tc-ia64.c (generate_unwind_image): Call ia64_flush_insns.
4187         (dot_endp): Don't call ia64_flush_insns.
4188         (emit_one_bundle): Don't delete prologue/body records from
4189         unwind_record list in first loop.  Rewrite second loop to account for
4190         this.
4191
4192 2000-06-07  David Mosberger  <davidm@hpl.hp.com>
4193
4194         * config/tc-ia64.c: Add missing prototypes.
4195         (generate_unwind_image): Cast argument to output_unw_records call.
4196
4197 Wed Jun  7 22:44:14 2000  Denis Chertykov  <denisc@overta.ru>
4198
4199         * config/tc-avr.c (avr_operand): fix the formatting of the comment.
4200
4201 Wed Jun  7 21:26:15 2000  Denis Chertykov  <denisc@overta.ru>
4202
4203         * config/tc-avr.c (AVR_ISA_???): moved to include/opcode/avr.h
4204         (REGISTER_P): likewise.
4205         (avr_opcodes): uses include/opcode/avr.h
4206         (avr_operand): enable ld r,Z or st r,Z for at90s1200.
4207
4208 2000-06-04  Alan Modra  <alan@linuxcare.com.au>
4209
4210         * read.c (is_end_of_line): No ';' for TC_HPPA.  Add missing
4211         initializers too.
4212
4213 2000-06-03  H.J. Lu  <hjl@gnu.org>
4214
4215         * read.c (is_end_of_line): Put back `;'.
4216
4217 2000-06-03  Alan Modra  <alan@linuxcare.com.au>
4218
4219         * config/tc-i386.c (md_shortopts): Remove 'm', add 'q' to non-elf.
4220
4221 2000-06-01  Alan Modra  <alan@linuxcare.com.au>
4222
4223         * expr.c (operand): Test is_end_of_line outside switch to catch
4224         line separator chars that are also operators.
4225         (operator): Return O_illegal for line separator chars.
4226
4227         * read.c (is_end_of_line): Use 1 instead of 99.  Don't set `;'
4228         entry (or `!' entry for TC_HPPA).
4229
4230         * config/tc-arm.c (my_get_float_expression): Cast to unsigned char
4231         before indexing is_end_of_line.  Remove redundant check for '\0'.
4232         (fp_op2): Likewise.
4233         * config/tc-h8500.c (md_assemble): Likewise.
4234         * config/tc-mcore.c (md_assemble): Likewise.
4235         * config/tc-tic30.c (tic30_find_parallel_insn): Likewise.
4236         (md_atof): Likewise
4237
4238         * config/tc-m88k.c (s_bss): Cast to unsigned char before indexing
4239         is_end_of_line.
4240         * config/tc-mcore.c (mcore_cons): Likewise.
4241         (mcore_float_cons): Likewise.
4242         (mcore_stringer): Likewise.
4243         * config/tc-tic30.c (tic30_find_parallel_insn): Likewise.
4244
4245 2000-06-01  Scott Bambrough <scottb@netwinder.org>
4246
4247         * config/tc-arm.c (do_mrs): Allow SPSR_BIT to be set correctly.
4248
4249 2000-05-29  Nick Clifton  <nickc@cygnus.com>
4250
4251         * config/tc-sh.c: Fix compile time warning messages.
4252
4253         * config/tc-mips.c: Fix compile time warning messages.
4254
4255 2000-05-29  Philip Blundell  <philb@gnu.org>
4256
4257         * doc/as.texinfo: Update copyright dates.
4258         (Local Labels): Delete misplaced mention of ARM.
4259         * NEWS: Mention ARM ELF support.
4260
4261 2000-05-27  Alexandre Oliva  <aoliva@cygnus.com>
4262
4263         * config/tc-mn10300.c (md_assemble): Copy size to real_size before
4264         it is modified, and use the real_size to compute the frag address
4265         for dwarf2 line info.
4266
4267 2000-05-27  Alan Modra  <alan@linuxcare.com.au>
4268
4269         * Makefile.am (DEP, DEP1, dep, dep-in, dep-am): Use a better sed
4270         line-matching scheme to cope with automake moving variables around.
4271         ($(TARG_CPU_O)): Remove dependency on TARG_CPU_DEP_@target_cpu_type@
4272         * Makefile.in: Regenerate.
4273
4274 2000-05-26  Jakub Jelinek  <jakub@redhat.com>
4275
4276         * config/tc-sparc.c (sparc_relax): New.
4277         (md_longopts): Add -relax and -no-relax options.
4278         (md_parse_options, md_show_usage): Likewise.
4279         (md_apply_fix3): Optimize tail call into branch always if possible.
4280
4281 Thu May  4 15:27:07 2000  Donald Lindsay  <dlindsay@cygnus.com>
4282
4283         * config/tc-d10v.c (write_2_short, parallel_ok, md_assemble,
4284         d10v_cleanup) implement Mitsubishi's newly explained branch-packing
4285         rules, with warning when a GAS statement specifies a packing that
4286         will result in an instruction being squashed.
4287         Added typdef packing_type and enumerals, changed various integer
4288         literals to use the enumerals.
4289
4290 2000-05-24  David Mosberger  <davidm@hpl.hp.com>
4291
4292         * config/tc-ia64.c (dot_restorereg_p): New function.
4293         (md_pseudo_table): Add restorereg.p.
4294         (output_X3_format): Fix typo: record type should be UNW_X3, not UNW_X1.
4295         (output_X4_format): Fix typo: record type should be UNW_X4, not UNW_X2.
4296
4297         * config/tc-ia64.h (unw_record_type): Add unwabi.
4298         (unw_r_record): Rename member MASK to GRMASK.  Add sub-structure
4299         called MASK with members for imask, and the masks produced by
4300         fr_mem, gr_mem, br_mem, and frgr_mem.
4301         (unw_p_record): Add members ABI and CONTEXT.
4302         (unw_x_record): Add member AB.
4303         * config/tc-ia64.c (enum reg_symbol): Add REG_PSP and REG_PRIUNAT
4304         as pseudo-register for use during unwind info generation.
4305         (AR_PFS, AR_LC): New macros.
4306         (enum pseudo_type): Add PSEUDO_FUNC_REG to permit declaring registers
4307         whose names start with an at sign (as in "@priunat").
4308         (pseudo_func): Add "svr4", "hpux", "nt" constants and "priunat"
4309         register.
4310         (unwind_list, unwind_tail, current_unwind_entry, proc_start,
4311         proc_end, unwind_info, personality_routine): Consolidate into
4312         "unwind" structure to reduce offset-table use.  Add member
4313         NEXT_SLOT_NUMBER to track the slot number for the next instruction
4314         to be emitted.
4315         (output_R1_format, output_R3_format, output_P3_format,
4316         output_P6_format): Initialize R with zero to reduce compiler warnings.
4317         (output_P7_format): Ditto.  Add `default' branch to switch
4318         statement to reduce compiler warnings.
4319         (output_P8_format, output_B1_format, output_B4_format): Ditto.
4320         (output_P4_format): Rename 2nd & 3rd arg to IMASK and IMASK_SIZE.
4321         (format_ab_reg): Rename from format_a_b_reg.  Merge A and B args
4322         into single argument.
4323         (output_X1_format, output_X3_format): Initialize R with zero to reduce
4324         compiler warnings.  Merge A and B args into single argument.
4325         (output_X2_format, output_X4_format): Remove unused variable R.  Merge
4326         A and B args into single argument.
4327         (free_record): Removed (wasn't used).
4328         (free_list_records): Also free imasks in prologue records.
4329         (output_prologue, output_prologue_gr): Initialize mask bits to zero.
4330         (output_spill_mask): Remove.
4331         (output_unwabi): New function.
4332         (output_epilogue, output_label_state, output_copy_state): Call
4333         alloc_record.
4334         (output_spill_psprel, output_spill_sprel, output_spill_psprel_p,
4335         output_spill_sprel_p, output_spill_reg, output_spill_reg_p): Add AB
4336         argument.
4337         (process_one_record): New locals FR_MASK and GR_MASK.  Ignore
4338         gr_mem, fr_mem, br_mem, and frgr_mem records and instead emit them
4339         as part of handling the prologue records.  Emit region's imask if
4340         we have one.  Handle unwabi, epilogue, label_state, copy_state,
4341         spill_psprel, spill_sprel, spill_reg, spill_psprel_p,
4342         spill_sprel_p, and spill_reg_p records.
4343         (set_imask, count_bits, slot_index): New function.
4344         (fixup_unw_records): Fix region size computation.  Handle
4345         epilogue, spill_reg, spill_sprel, spill_psprel, spill_reg_p,
4346         spill_sprel_p, and spill_psprel_p records.  Merge mask bits of
4347         frgr_mem, fr_mem, gr_mem, br_mem on a per-region basis and
4348         set_imask accordingly.  Update imask for gr_gr, and br_gr records.
4349         (convert_expr_to_ab_reg, convert_expr_to_xy_reg): New function.
4350         (dot_save): Use manifest constants for applicaton registers.
4351         Handle REG_PR and REG_PRIUNAT.
4352         (dot_restore): Don't just ignore it.
4353         (dot_restorereg): New function..
4354         (generate_unwind_image): Ensure unwind info is a multiple of eight
4355         bytes, not just four bytes.
4356         (dot_handlerdata, dot_unwentry): Demand empty rest of line.
4357         (dot_altrp): Don't just ignore it.
4358         (dot_savemem): New function.  Replaces dot_savesp() and
4359         dot_savepsp().  Use manifest constants for applicaton registers.
4360         Handle REG_PR and REG_PRIUNAT.
4361         (dot_savef): Simplify.
4362         (dot_saveb): Support generation of br_gr.
4363         (dot_spillreg, dot_spillmem, dot_spillreg_p, dot_spillmem_p,
4364          dot_label_state, dot_copy_state): New function.
4365         (dot_unwabi): Don't just ignore it.
4366         (md_pseudo_table): Add restorereg, spillreg, spillsp, spillpsp,
4367         spillreg.p, spillsp.p, spillpsp, label_state, copy_state,
4368         unwabi, vframesp, and vframepsp.  Fix typo alprp->altrp.
4369         (emit_one_bundle): Set slot number for prologue/body records
4370         *before* emitting the first insn.
4371         (emit_one_bundle): Set UNWIND.NEXT_SLOT_NUMBER.
4372         (md_begin): Declare "psp" pseudo-register.
4373         (md_operand): Handle PSEUDO_FUNC_REG.  Fix printing of error message
4374         so we don't get segfault.
4375         (output_psp_sprel): Output sp/psp relative offsets as 4-byte word
4376         counts as required per SW Conventions manual
4377         (output_rp_psprel, output_rp_sprel, output_pfs_psprel,output_pfs_sprel,
4378         output_preds_psprel, output_preds_sprel, output_spill_base,
4379         output_unat_psprel, output_unat_sprel, output_lc_psprel,
4380         output_lc_sprel, output_fpsr_psprel, output_fpsr_sprel,
4381         output_priunat_psprel, output_priunat_sprel, output_bsp_psprel,
4382         output_bsp_sprel, output_bspstore_psprel, output_bspstore_sprel,
4383         output_rnat_psprel, output_rnat_sprel, output_spill_psprel,
4384         output_spill_sprel, output_spill_psprel_p, output_spill_sprel_p):Ditto.
4385         (dot_vframe): Implement.
4386         (dot_vframesp, dot_vframepsp): New function.
4387
4388 Tue May 23 00:57:05 2000  Hans-Peter Nilsson  <hp@axis.com>
4389
4390         * configure.in (i386-*-freebsd a.out entry): Quote properly.
4391         * configure: Regenerate.
4392
4393 2000-05-23  Alan Modra  <alan@linuxcare.com.au>
4394
4395         * config/tc-i386.c (md_assemble): Pass jump reloc in fr_var...
4396         (md_estimate_size_before_relax): so we can use it here instead of
4397         old kludges.  Localise vars to blocks.  Comment.
4398
4399         * frags.c (frag_new): Update fr_var comments.
4400         * frags.h (struct frag): Ditto.
4401
4402 2000-05-22  Richard Henderson  <rth@cygnus.com>
4403
4404         * config/tc-ia64.c (FUNC_PC_RELATIVE): New.
4405         (pseudo_func): Add pcrel.
4406         (operand_match):  Handle IA64_OPND_TGT64.
4407         (build_insn): Likewise.
4408         (md_begin): Initialize pseudo_func[FUNC_PC_RELATIVE].
4409         (ia64_gen_real_reloc_type): Handle FUNC_PC_RELATIVE.
4410         (fix_insn): Handle all three 64-bit relocation types.
4411
4412 Mon May 22 22:43:32 2000  Hans-Peter Nilsson  <hp@axis.com>
4413
4414         * obj.h (struct format_ops): New members begin, app_file,
4415         s_set_other, s_set_desc, s_get_type, s_set_type,
4416         separate_stab_sections, init_stab_section.
4417
4418         * config/obj-multi.h: Update GPL notice to v2.
4419         (obj_begin): New.
4420         (obj_app_file): New.
4421         (S_SET_SIZE): Test s_set_size for NULL before calling.
4422         (S_SET_ALIGN): Similar for s_set_align.
4423         (S_SET_OTHER): New.
4424         (S_SET_DESC): New.
4425         (S_GET_TYPE): New.
4426         (S_SET_TYPE): New.
4427         (SEPARATE_STAB_SECTIONS): New.
4428         (INIT_STAB_SECTION): New.
4429         (EMIT_SECTION_SYMBOLS): New.
4430         (AOUT_STABS) [OBJ_MAYBE_AOUT]: Define.
4431
4432         * config/obj-elf.h: Update GPL notice to v2.
4433         Mention that this file is included from obj-multi.h.
4434         (obj_begin): Wrap definition in ifndef.
4435         (elf_file_symbol): Constify declaration.
4436         (obj_app_file): Ditto.
4437         (SEPARATE_STAB_SECTIONS, INIT_STAB_SECTION, OBJ_PROCESS_STAB):
4438         Wrap in ifndef SEPARATE_STAB_SECTIONS.
4439
4440         * config/obj-elf.c (elf_s_set_other): New.
4441         (elf_file_symbol): Constify argument.
4442         (elf_separate_stab_sections): New.
4443         (elf_init_stab_section): New.
4444         (elf_format_ops): Add new members.  Remove comma at end.
4445
4446         * config/obj-ecoff.c (ecoff_separate_stab_sections): New.
4447         (ecoff_format_ops): Add new fields.  Remove comma at end.
4448         Mention inconsistency for emit_section_symbols.
4449
4450         * config/obj-coff.h (c_dot_file_symbol): Constify declaration.
4451
4452         * config/obj-coff.c (c_dot_file_symbol): Constify argument.
4453         (coff_separate_stab_sections): New.
4454         (coff_format_ops): Add new members.
4455
4456         * config/obj-aout.c (obj_aout_sec_sym_ok_for_reloc): New.
4457         (obj_aout_s_set_other): New.
4458         (obj_aout_s_set_desc): New.
4459         (obj_aout_s_get_type): New.
4460         (obj_aout_s_set_type): New.
4461         (obj_aout_separate_stab_sections): New.
4462         (aout_format_ops): New members added.  Use obj_aout_process_stab,
4463         not 0.  Use obj_aout_sec_sym_ok_for_reloc, not 0.
4464         (obj_aout_frob_symbol): Add ATTRIBUTE_UNUSED to args as
4465         appropriate.
4466         (obj_aout_line, obj_aout_weak, obj_aout_type): Ditto.
4467
4468 2000-05-22  Alan Modra  <alan@linuxcare.com.au>
4469
4470         * config/tc-i386.c (tc_i386_fix_adjustable): Prevent adjustment
4471         for OBJ_MAYBE_ELF too.  Use S_IS_EXTERNAL instead of S_IS_EXTERN.
4472         (md_estimate_size_before_relax): Ensure jumps to weak and
4473         externally visible symbols are relocatable.
4474
4475 Sat May 20 16:41:55 2000  Hans-Peter Nilsson  <hp@axis.com>
4476
4477         * stabs.c (aout_process_stab): Make global.
4478         (s_desc): Add ATTRIBUTE_UNUSED to args as appropriate.
4479         * read.h (aout_process_stab): Declare.
4480
4481         * configure.in (EMULATIONS) [i386aout, i386coff, i386elf]:
4482         Generalize to *aout, *coff *elf.
4483         * configure: Regenerated.
4484
4485         * doc/internals.texi (Object format backend): Say
4486         SEPARATE_STAB_SECTIONS needs to be nonzero, not just defined.
4487
4488         * Makefile.am (TARG_ENV_HFILES): Delete te-multi.h.
4489         * Makefile.in: Regenerated.
4490
4491 2000-05-19  Catherine Moore  <clm@cygnus.com>
4492
4493         * cgen.h (GAS_CGEN_MAX_FIXUPS): Check if already defined.
4494
4495 2000-05-18  Alan Modra  <alan@linuxcare.com.au>
4496
4497         * config/tc-hppa.c (md_apply_fix): Mask out immediate bits of
4498         instruction to reflect change in re_assemble_*.
4499
4500 Thu May 18 10:52:14 2000  Jeffrey A Law  (law@cygnus.com)
4501
4502         * configure.in (hppa-*-hpux11*): If the cpu is hppa*64*, then
4503         build PA64 ELF tools.
4504         * configure: Rebuilt.
4505
4506 2000-05-17  Alan Modra  <alan@linuxcare.com.au>
4507
4508         * Makefile.am: Regenerate dependencies.
4509         * Makefile.in: Regenerate.
4510
4511 2000-05-15  Nick Clifton  <nickc@cygnus.com>
4512
4513         * config/tc-arm.c (struct asm_psr): Add boolean field
4514         distinguishing between CSPR and SPSR.  Rename 'number' field
4515         to 'field'.
4516         (psrs): Rearrange contents to match new asm_psr structure.
4517         (arm_psr_parse): Move next to psr_required_here.  Make it
4518         return an asm_psr structure.
4519         (psr_required_here): Use asm_psr structure returned by
4520         arm_psr_parse.
4521         (do_msr): Reorganise to allow psr_required_here to be called
4522         only once.
4523         (md_undefined_name): Mark 'name' parameter as unused, since
4524         the COFF target does not use it.
4525
4526 2000-05-14  David O'Brien  <obrien@FreeBSD.org>
4527
4528         * config/te-386bsd.h:  Clean up comments to adhere to the GNU coding
4529         standards.
4530         * config/te-aux.h:  Likewise.
4531         * config/te-dpx2.h:  Likewise.
4532         * config/te-go32.h:  Likewise.
4533         * config/te-hp300.h:  Likewise.
4534         * config/te-hppa.h:  Likewise.
4535         * config/te-i386aix.h:  Likewise.
4536         * config/te-ic960.h:  Likewise.
4537         * config/te-interix.h:  Likewise.
4538         * config/te-nbsd532.h:  Likewise.
4539         * config/te-pc532mach.h:  Likewise.
4540         * config/te-ppcnw.h:  Likewise.
4541         * config/te-psos.h:  Likewise.
4542         * config/te-sparcaout.h:  Likewise.
4543         * config/te-sun3.h:  Likewise.
4544         * config/te-sysv32.h:  Likewise.
4545
4546 2000-05-14  Alan Modra  <alan@linuxcare.com.au>
4547
4548         * config/tc-h8300.c (do_a_fix_imm): Don't rely on `short' being 16
4549         bits.  Instead explicitly mask and sign extend.  Do the 8 bit mask
4550         and sign extend without an if statement.
4551         (build_bytes): Likewise.
4552
4553 2000-05-14  Kazu Hirata  <kazu@hxi.com>
4554
4555         * config/tc-h8300.c (do_a_fix_imm): Output a reloc for no
4556         X_add_symbol L_32 case.
4557
4558 2000-05-14  David O'Brien  <obrien@FreeBSD.org>
4559
4560         * config/te-freebsd.h: New file.
4561
4562 2000-05-13  Alan Modra  <alan@linuxcare.com.au>
4563
4564         * asintl.h (gettext, dgettext, dcgettext, textdomain,
4565         bindtextdomain): Replace defines with those from intl/libgettext.h
4566         to quieten gcc warnings.
4567
4568         * NEWS: Mention x86 .arch and -q.
4569
4570         * config/tc-i386.c (quiet_warnings): New.
4571         (md_assemble): Use quiet_warnings.
4572         (md_parse_option): Set quiet_warnings from -q.
4573         (md_show_usage): Mention -q, delete -m.
4574         (flag_do_long_jump): Delete.
4575         (md_parse_option): Remove -m.
4576         (md_show_usage): Remove -m.
4577         (md_create_long_jump): Remove useless flag_do_long_jump code.
4578
4579         * as.c (parse_args): In case OPTION_DEFSYM, use a valueT to hold
4580         the symbol value, and use bfd_scan_vma if BFD_ASSEMBLER.
4581
4582 2000-05-13  Alan Modra  <alan@linuxcare.com.au>
4583             Alexander Sokolov <robocop@netlink.ru>
4584
4585         * doc/c-i386.texi (i386-Arch): New section.
4586         (i386-Syntax): Mention .intel_syntax and .att_syntax.
4587
4588         * config/tc-i386.c (cpu_arch_name, cpu_arch_flags): New.
4589         (smallest_imm_type): Use smallest opcode for shift by one if cpu
4590         architecture has been given and is not 486.
4591         (set_cpu_arch): New.
4592         (md_pseudo_table): Add .arch.
4593         (md_assemble): Warn if cpu architecture has been given and an
4594         unsupported instruction.
4595
4596         * config/tc-i386.h (SMALLEST_DISP_TYPE): Delete.
4597         Move operand_types bit defines after relevant template field.
4598         (template): Add cpu_flags.
4599         (Cpu*): Define.
4600         (arch_entry): New.
4601
4602 2000-05-12  Alexandre Oliva  <aoliva@cygnus.com>
4603
4604         * config/tc-mn10300.h (md_end): Define.
4605         (mn10300_finalize): Declare.
4606         * config/tc-mn10300.c: Include dwarf2dbg.h.
4607         (debug_line): Define.
4608         (md_assemble): Generate dwarf2 line info.
4609         (mn10300_finalize): New function.  Finalize dwarf2 info.
4610
4611 2000-05-11  Ulf Carlsson  <ulfc@engr.sgi.com>
4612
4613         * config/tc-mips.c (md_estimate_size_before_relax): Use the
4614         external version of the relocation for weak symbols.
4615
4616 2000-05-08  David Mosberger  <davidm@hpl.hp.com>
4617
4618         * config/tc-ia64.c (output_P7_format, case mem_stack_f): Output fixed
4619         frame size in units of 16 bytes, as required per SW Conventions manual.
4620         (output_unw_records): Output info-block header as a dword to get
4621         byte-order right.
4622
4623 2000-05-08  Alan Modra  <alan@linuxcare.com.au>
4624
4625         * as.h: #include "file", not <file> on files from ../include.
4626         (as_abort, as_fatal): Add ATTRIBUTE_NORETURN.
4627         * config/tc-m68k.c (m68k_ip): Fix signed/unsigned warnings.
4628         (md_convert_frag): Add ATTRIBUTE_UNUSED.
4629         (tc_coff_symbol_emit_hook): Ditto.
4630         (OPTCOUNT): Cast to int to avoid compiler warning.
4631         (md_begin): Fix signed/unsigned warnings.
4632
4633 2000-05-08  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
4634
4635         * config/tc-m68k.c (md_convert_frag_1): Abort if we end up in the
4636         ABRANCH LONG case for a conditional branch on a 68000.
4637         (md_estimate_size_before_relax): Likewise.  Also handle
4638         flag_short_refs correctly for ABRANCH, BCC68000, and DBCC.
4639         (m68k-ip: case ABSL): Relax absolute references to 16-bit
4640         PC-relative on all CPUs.
4641         (md_estimate_size_before_relax): Likewise.
4642
4643 2000-05-04  Alan Modra  <alan@linuxcare.com.au>
4644
4645         * as.c (parse_args): Just mention current year in printed
4646         copyright message.
4647
4648 2000-05-03  J.T. Conklin  <jtc@redback.com>
4649
4650         * config/tc-ppc.c (pre_defined_registers): Add entries for vector
4651         unit registers.
4652         (md_parse_option): Recognize -m7400.
4653
4654 2000-05-03  Ian Lance Taylor  <ian@zembu.com>
4655
4656         * config/atof-ieee.c (gen_to_words): When adding carry back in,
4657         don't permit lp to become less than the words array.
4658
4659 2000-05-03  Rodney Brown  <RodneyBrown@pmsc.com>
4660
4661         config/tc-mcore.c (md_apply_fix3): BFD_RELOC_MCORE_PCREL_IMM11BY2
4662         Fix little-endian case.
4663
4664 2000-05-03  David O'Brien  <obrien@NUXI.com>
4665
4666         * as.c (parse_args): Update copyright.
4667
4668 2000-05-03  Mark Elbrecht  <snowball3@bigfoot.com>
4669
4670         * gas/config/tc-i386.h (SUB_SEGMENT_ALIGN): If TE_GO32, return 4
4671         for the .bss section too.
4672
4673 2000-05-02  Alan Modra  <alan@linuxcare.com.au>
4674
4675         * configure.in: Set em=linux for hppa-*-linux.
4676         * configure: Regenerate.
4677         * doc/Makefile.in: Regenerate with correct automake.
4678
4679         * frags.c (frag_grow): Sanity check chunk_size.
4680
4681         * config/obj-elf.h: #include "bfd.h" not <bfd.h>
4682         * config/obj-som.h: Likewise.
4683         * config/obj-ieee.h: Likewise.
4684
4685         * config/tc-hppa.h: Test BFD_ARCH_SIZE, not BFD64.
4686
4687         * config/tc-hppa.c (log2): Only compile when OBJ_SOM.
4688         (md_pseudo_table): Fully initialise OBJ_ELF cases.
4689         (fix_new_hppa): Add ATTRIBUTE_UNUSED to args as appropriate.
4690         (pa_ip): low_sign_unext now returns via function value.  Use
4691         re_assemble_* instead of dis_assemble_* and
4692         INSERT_FIELD_AND_CONTINUE combination.  Don't call sign_unext
4693         unnecessarily.
4694         (md_convert_frag): Add ATTRIBUTE_UNUSED to args as appropriate.
4695         (md_section_align, md_parse_option, md_show_usage,
4696         md_undefined_symbol, pa_align, pa_block, pa_brtab, pa_try,
4697         pa_callinfo, pa_code, pa_comm, pa_end, pa_enter, pa_entry,
4698         pa_exit, pa_export, pa_import, pa_label, pa_leave, pa_level,
4699         pa_origin, pa_param, pa_proc, pa_procend, pa_space, pa_spnum,
4700         pa_version, pa_compiler, pa_copyright, pa_data, pa_fill, pa_lsym,
4701         pa_text): Likewise.
4702         (md_apply_fix): Change type of new_val to offsetT.  Delete w1, w2,
4703         w, resulti.  Add insn, val.  Move bfd_get_32 and bfd_put_32
4704         outside of switch.  Correct mask and shifting errors in case 10
4705         and case -11.  In case 21, compare against signed range to suit
4706         hppa_field_adjust changes.  In case 12, use re_assemble_12.  In
4707         case 17 and case 22, use offsetT variable to properly check range.
4708         Use re_assemble_* here too.
4709         (evaluate_absolute): Change type of value to offsetT.  Call
4710         hppa_field_adjust to do the work for us.
4711         (pa_parse_cmpb_64_cmpltr): Delete save_s.
4712         (pa_parse_cmpib_64_cmpltr): Ditto.
4713         (pa_build_unwind_subspace): Delete unused var subseg.  Change type
4714         of i to unsigned int.
4715         (pa_type_args): Conditionally declare symbol if OBJ_SOM.
4716         (pa_end_of_source): Return type is void.
4717
4718 Mon May  1 08:54:23 2000  Catherine Moore  <clm@cygnus.com>
4719
4720         * macro.c (macro_expand_body): Don't prepend macro number with zeroes.
4721
4722 Mon May  1 14:19:39 2000  Denis Chertykov  <denisc@overta.ru>
4723
4724         * config/tc-avr.c: ATTRIBUTE_UNUSED added to the necessary places.
4725         More comments added.
4726         (md_begin): Removed "construct symbols for each register name".
4727         Because register names conflicts with GCC generated function
4728         names.
4729         (avr_operand): Now constant numbers can be used as a register
4730         identifiers (0 as r0, 31 as r31).
4731         (md_assemble): use skip_space () before parsing instruction
4732         operands.
4733
4734 2000-05-01  Alan Modra  <alan@linuxcare.com.au>
4735
4736         * configure.in: Set bfd_gas=yes on i386-*-pe and i386-*-nt* to
4737         ensure all pe targets use bfd.  Remove unnecessary bfd_gas=yes on
4738         arm-*-netbsd* and arm-*-wince as this is set for all arm*.
4739         * configure: Regenerate.
4740
4741 2000-04-29  Andreas Jaeger  <aj@suse.de>
4742
4743         * as.h: Correctly check GCC version.
4744
4745 2000-04-26  David O'Brien  <obrien@FreeBSD.org>
4746
4747         * doc/as.1: Fix unbalanced brackets.
4748
4749         * config/tc-i386.c (comment_chars): Don't use '/' as comment start if
4750         TE_FreeBSD.
4751         (line_comment_chars): Set to '/' if TE_FreeBSD.
4752
4753 Tue Apr 25 11:02:02 2000  Jeffrey A Law  (law@cygnus.com)
4754
4755         * configure.in: Configury support for PA64 (currently disabled).
4756         * configure: Rebuilt.
4757
4758 2000-04-25  Machida Hiroyuki  <machida@sm.sony.co.jp>
4759
4760         * config/tc-mips.c (s_change_sec): Use record_alignment, not
4761         bfd_set_section_alignment.
4762
4763 2000-04-25  Alan Modra  <alan@linuxcare.com.au>
4764
4765         * config/tc-i386.c (offset_in_range): Ensure shift counts are less
4766         than 32.
4767
4768 2000-04-24  Nick Clifton  <nickc@cygnus.com>
4769
4770         * doc/c-arm.texi (ARM Directives): Document behaviour of .align 0.
4771         * doc/as.texinfo (Align): Include arm and strongarm in list of
4772         targets that have the second form of the behaviour of the .align
4773         directive.
4774
4775 2000-04-24  Mark Klein <mklein@dis.com>
4776
4777         * config/obj-som.c: Terminate obj_pseudo_table.
4778
4779 Mon Apr 24 15:21:11 2000  Clinton Popetz  <cpopetz@cygnus.com>
4780
4781         * as.c (parse_args): Allow md_parse_option to override -a listing
4782         option.
4783         * config/obj-coff.c (add_lineno): Change type of offset parameter
4784         from "int" to "bfd_vma."
4785         * config/tc-ppc.c (md_pseudo_table): Add "llong" and "machine."
4786         (ppc_mach, ppc_subseg_align, ppc_target_format): New.
4787         (ppc_change_csect): Align correctly for XCOFF64.
4788         (ppc_machine): New function, which discards "ppc_machine" line.
4789         (ppc_tc): Cons for 8 when code is 64 bit.
4790         (md_apply_fix3): Don't check operand->insert.  Handle 64 bit
4791         relocations.
4792         (md_parse_option): Handle -a64 and -a32.
4793         (ppc_xcoff64): New.
4794         * config/tc-ppc.h (TARGET_MACH): Define.
4795         (TARGET_FORMAT): Move to function.
4796         (SUB_SEGMENT_ALIGN): Use ppc_subseg_align.
4797
4798 Sun Apr 23 16:45:45 2000  Denis Chertykov  <denisc@overta.ru>
4799
4800         * config/tc-avr.c: New AVR_ISA_ defined.
4801         (md_assemble): Handle opcodes with optional operands (lpm,elpm).
4802         (avr_operand): Handle 'a', 'v' and 'z' constraint letters needed
4803         for `fmul', `movw' and `lpm R,Z' instructions.
4804         (avr_operands): Warn if current opcode is a two-word instruction
4805         and previous opcode was cpse/sbic/sbis/sbrc/sbrs.
4806         (avr_opcodes): New commands added.
4807         (REGISTER_P): Check 'a' and 'v' constraint letters.
4808         (mcu_types): New MCU added.
4809
4810 2000-04-22  Timothy Wall  <twall@cygnus.com>
4811
4812         * config/tc-ia64.c (pseudo_func[]): Add new "nat" entry equivalent
4813         to "natval".
4814         (operand_match): Conditionally insert default bit values for IMMU9.
4815
4816 2000-04-14  Matthew Green  <mrg@cygnus.com>
4817
4818         * configure.in: Add NetBSD/sparc ELF and NetBSD/sparc64 support.
4819         * configure: Rebuilt.
4820
4821 Fri Apr 21 14:29:43 2000  Jeffrey A Law  (law@cygnus.com)
4822                           Jason Eckhardt  <jle@cygnus.com>
4823
4824         * config/tc-hppa.c (md_apply_fix): Handle new PA2.0 formats.
4825
4826         * config/tc-hppa.c (CHECK_ALIGN): New macro.
4827         Added handling of new operand types l,y,&,fe,fE,fx.
4828
4829 Fri Apr 21 13:20:53 2000  Richard Henderson  <rth@cygnus.com>
4830                           David Mosberger  <davidm@hpl.hp.com>
4831                           Timothy Wall <twall@cygnus.com>
4832                           Andrew MacLeod  <amacleod@cygnus.com>
4833                           Jim Wilson  <wilson@cygnus.com>
4834
4835         * Makefile.am (CPU_TYPES): Add ia64.
4836         (TARGET_CPU_CFILES): Add config/tc-ia64.c.
4837         (TARGET_CPU_HFILES): Add config/tc-ia64.h.
4838         * Makefile.in: Rebuild.
4839         * app.c (do_scrub_chars): Handle DOUBLESLASH_COMMENTS.
4840         * configure: Rebuild.
4841         * configure.in: Recognize ia64 as cpu type.  Set bfd_gas.
4842         (ia64-*-elf*, ia64-*-linux-gnu*): New targets.
4843         * expr.c (expr): Handle md_optimize_expr.
4844         * read.c (LEX_HASH): Add comment.
4845         * config/tc-ia64.c, config/tc-ia64.h: New files.
4846
4847 2000-04-21  Richard Henderson  <rth@cygnus.com>
4848
4849         * config/tc-d30v.c (write_2_short): Disregard opcode1->ecc when
4850         bundling a non-delayed branch type instruction.
4851
4852 2000-04-20  Alexandre Oliva  <aoliva@cygnus.com>
4853
4854         * config/tc-mn10300.c (HAVE_AM30): Define.
4855         (md_assemble): Use it.
4856
4857 2000-04-19  Alan Modra  <alan@linuxcare.com.au>
4858
4859         * config/obj-elf.c (obj_elf_change_section): Check for changed
4860         section attributes.
4861
4862         * Makefile.am: (CPU_MULTI_VALID): Remove.
4863         (MULTI_CPU_TYPES): Define.
4864         (MULTI_CPU_OBJ_VALID): Define.
4865         (DEPTC): Use the above.
4866         (DEPOBJ): Same here.
4867         (DEP2): And here.
4868         Regenerate dependencies.
4869         * Makefile.in: Regenerate.
4870
4871 2000-04-19  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
4872
4873         * Makefile.am (YACC, LEX): Get them from configure.
4874
4875 2000-04-18  H.J. Lu  (hjl@gnu.org)
4876
4877         * config/tc-i386.c (offset_in_range): Use addressT instead of
4878         bfd_vma for non-bfd assemblers.
4879
4880 2000-04-17  Alan Modra  <alan@linuxcare.com.au>
4881
4882         * config/tc-i386.c (offset_in_range): Sign extend val so BFD64
4883         doesn't give spurious errors.
4884
4885 2000-04-14  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
4886
4887         * as.h (SEEK_SET): Define if undefined.
4888
4889 2000-04-13  Alan Modra  <alan@linuxcare.com.au>
4890
4891         * config/tc-arm.c (md_apply_fix3): Don't use UL suffix on
4892         constants, and don't assume offsetT is 32 bits.
4893
4894 2000-04-12  Andrew Cagney  <cagney@b1.cygnus.com>
4895
4896         * config/tc-d10v.h: Include "write.h" to get definition of fixS.
4897         (md_pcrel_from_section): Add prototype.
4898         (d10v_fix_adjustable): Add prototype.
4899         (d10v_force_relocation): Replace 'struct fix' with 'fixS'.
4900
4901         * config/tc-d10v.c (md_apply_fix3): Add paren around &&.
4902
4903 2000-04-12  Nick Clifton  <nickc@cygnus.com>
4904
4905         * config/tc-d10v.c (find_opcode): Correctly calculate position of
4906         symbol in frag chain.
4907
4908 2000-04-10  Alan Modra  <alan@linuxcare.com.au>
4909
4910         * config/tc-i386.c (fits_in_signed_byte): Change arg to offsetT.
4911         (fits_in_unsigned_byte, fits_in_unsigned_word): Ditto.
4912         (fits_in_signed_word, smallest_imm_type): Ditto.
4913         (md_assemble): Use an offsetT var to hold offsetT values, not a
4914         long.
4915         (offset_in_range): New.
4916         (md_assemble): Use it.
4917         (md_convert_frag): Change type of target_address, opcode_address,
4918         and displacement_from_opcode_start to offsetT.
4919         (md_create_short_jump): Change type of offset to offsetT.
4920         (md_create_long_jump): Ditto.
4921         (md_apply_fix3): Use -4, not 0xfffffffc for BFD_RELOC_386_PLT32.
4922         (md_chars_to_number): Remove.
4923         (output_invalid): Remove duplicate prototype.
4924
4925 2000-04-09  Nick Clifton  <nickc@cygnus.com>
4926
4927         * Makefile.am (CPU_TYPES): Add 'avr'.
4928         (TARGET_CPU_CFILES): Add 'tc-avr.c'.
4929         (TARGET_CPU_HFILES): Add 'tc-avr.h'.
4930
4931         * Makefile.in: Regenerate.
4932
4933         * doc/as.texinfo: Add M32R documentation.
4934
4935 Fri Apr  7 15:56:57 2000  Andrew Cagney  <cagney@b1.cygnus.com>
4936
4937         * configure.in (WARN_CFLAGS): Set to -W -Wall by default.  Add
4938         --enable-build-warnings option.
4939         * Makefile.am (AM_CFLAGS, WARN_CFLAGS): Add definitions.
4940         * Makefile.in, configure: Re-generate.
4941
4942 2000-04-07  Nick Clifton  <nickc@cygnus.com>
4943
4944         * config/tc-arm.c (md_apply_fix3): Treat BFD_RELOC_ARM_PCREL_BLX
4945         in the same way as BFD_RELOC_ARM_PCREL_BRANCH, and
4946         BFD_RELOC_THUMB_PCREL_BLX lie BFD_RELOC_THUMB_PCREL_BRANCH.
4947         (tc_gen_reloc): Accept BFD_RELOC_{ARM|THUMB}_PCREL_BLX.
4948         (arm_force_relocation): Force relocations for
4949         BFD_RELOC_{ARM|THUMB}_PCREL_BLX as well.
4950
4951 Wed Apr  5 22:26:32 2000  J"orn Rennecke <amylaar@cygnus.co.uk>
4952
4953         * config/tc-sh.c (get_operands): There's no third operand if the
4954         first operand is an immediate.
4955
4956 Wed Apr  5 22:07:19 2000  J"orn Rennecke <amylaar@cygnus.co.uk>
4957
4958         * config/tc-sh.c (immediate): Delete.
4959         (sh_operand_info): Add immediate member.
4960         (parse_reg): Use A_PC for pc.
4961         (parse_exp): Add second argument 'op'.  All callers changed.
4962         (parse_at): Expect pc to be coded as A_PC.
4963         Use immediate field in *op.
4964         (insert): Add fourth argument 'op'.  All callers changed.
4965         (build_relax): Add second argument 'op'.  All callers changed.
4966         (insert_loop_bounds): New function.
4967         (build_Mytes): Remove DISP_4.
4968         Split IMM_[48]{,BY[24]} into IMM[01]_[48]{,BY[24]}.  Add REPEAT.
4969         (assemble_ppi): Use immediate field in *operand.
4970         (sh_force_relocation): Handle BFD_RELOC_SH_LOOP_{START,END}.
4971         (md_apply_fix): Likewise.
4972         (tc_gen_reloc): Likewise.  Check for a pcrel BFD_RELOC_SH_LABEL.
4973
4974 Wed Apr  5 06:35:45 2000  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
4975
4976         * config/tc-sparc.c (sparc_ip): Avoid string pasting.
4977
4978 Tue Apr  4 19:27:50 2000  Hans-Peter Nilsson  <hp@axis.com>
4979
4980         * internals.texi (CPU backend): Document
4981         TC_CHECK_ADJUSTED_BROKEN_DOT_WORD.
4982
4983 2000-04-04  Alan Modra  <alan@linuxcare.com.au>
4984
4985         * po/gas.pot: Regenerate.
4986
4987         * as.c (show_usage): Restore translated part of bug string.
4988         * gasp.c (show_usage): Likewise.
4989
4990         * Makefile.am (MKDEP): Use gcc -MM rather than ../mkdep.
4991         (DEP): Quote when passing vars to sub-make.  Use "mv -f" rather
4992         than move-if-change.
4993         (DEP1): Modify for "gcc -MM".
4994         (DEPTC): Likewise.
4995         (DEPOBJ): Likewise.
4996         (DEP2): Likewise.
4997         (CLEANFILES): Add DEPTCA, DEPOBJA, DEP2a, DEPA.
4998         Update dependencies.
4999         * Makefile.in: Regenerate.
5000
5001 2000-04-03  Alexandre Oliva  <aoliva@cygnus.com>
5002
5003         * config/tc-mn10300.c (md_pseudo_table): Use constant names.
5004         (md_begin): Likewise.
5005         (HAVE_AM33): New macro.
5006         (md_assemble): Use it.  Match r_regs and xr_regs only if
5007         HAVE_AM33.
5008
5009 2000-04-03  Alan Modra  <alan@linuxcare.com.au>
5010
5011         * as.h: #include "bin-bugs.h"
5012         * as.c (show_usage): Use REPORT_BUGS_TO.
5013         * gasp.c: #include "bin-bugs.h"
5014         (show_usage): Use REPORT_BUGS_TO.
5015
5016         * config/tc-sparc.c (md_show_usage): Add a trailing newline.
5017
5018 Mon Apr  3 13:56:03 2000  Hans-Peter Nilsson  <hp@axis.com>
5019
5020         * write.c (write_object_file) [! WORKING_DOT_WORD]: If defined,
5021         call TC_CHECK_ADJUSTED_BROKEN_DOT_WORD for each word after
5022         adjustments.
5023
5024 2000-04-03  Alan Modra  <alan@linuxcare.com.au>
5025
5026         * config/tc-i386.c (i386_immediate): Don't assume a constant
5027         immediate is necessarily 16 bits when in 16 bit code mode.
5028         (md_assemble): Instead set guess_suffix here after we have checked
5029         registers.
5030
5031 2000-04-02  Richard Henderson  <rth@cygnus.com>
5032
5033         * config/tc-d30v.c (check_range): Allow signed or unsigned 32-bit
5034         quantities.  Correct right shift sign extension.
5035         (build_insn): Make `number' unsigned long.  Mask top 6 bits of
5036         32-bit value when shifting into place.
5037
5038 2000-04-01  Ian Lance Taylor  <ian@zembu.com>
5039
5040         * app.c: Add ATTRIBUTE_UNUSED as needed.
5041         * config/tc-ppc.c: Likewise.
5042         (ppc_size): Make unsigned long.
5043         (ppc_insert_operand): Add casts to avoid warnings.
5044
5045 2000-03-31  Nick Clifton  <nickc@cygnus.com>
5046
5047         * config/tc-d10v.h (md_flush_pending_output): Define.
5048
5049 2000-03-29  Nick Clifton  <nickc@cygnus.com>
5050
5051         * config/tc-sh.h (SEG_NAME): New macro: return the name of a
5052         segment.  Works for both BFD_ASSEMBLER and others.
5053         (SUB_SEGMENT_ALIGN): Use SEG_NAME.
5054
5055 2000-03-29  Nick Clifton <nickc@cygnus.com
5056
5057         * config/tc-arm.c (tinsns): Add "bal" instruction pattern.
5058
5059 2000-03-28  Alan Modra  <alan@linuxcare.com.au>
5060
5061         * listing.c (LISTING_LHS_WIDTH): Default depends on
5062         LISTING_WORD_SIZE.
5063         (LISTING_LHS_WIDTH_SECOND): Default to LISTING_LHS_WIDTH.
5064
5065 2000-03-27  Ian Lance Taylor  <ian@zembu.com>
5066
5067         * config/tc-sh.c (md_show_usage): Use backslash before newline in
5068         string literal.
5069
5070 2000-03-27  Alan Modra  <alan@linuxcare.com.au>
5071
5072         * config/tc-avr.h (TC_HANDLES_FX_DONE): Define.
5073
5074         * config/tc-avr.c (mcu_types): Add missing initialiser.
5075         (md_pcrel_from_section): Add prototype.
5076         (avr_operand): Remove redundant test of unsigned < 0.
5077         (avr_cons_fix_new): Ensure exp_mod_pm zero on function exit.
5078
5079 2000-03-27  Denis Chertykov  <denisc@overta.ru>
5080
5081         * config/tc-avr.c: New file for AVR support.
5082         * config/tc-avr.h: Likewise.
5083         * configure.in: Add AVR support.
5084         * configure: Regenerate.
5085
5086 2000-03-26  Timothy Wall <twall@cygnus.com>
5087
5088         * gasp.c (macro_op): Add new argument to check_macro call.
5089         Macro structure definitions moved to macro.h
5090         * sb.h:  Add argument to prototype for input_scrub_include_sb.
5091         * input-scrub.c (input_scrub_include_sb): Allow disabling of sb
5092         nesting checks with an additional flag.
5093         (struct input_save): Add flag to indicate whether current sb
5094         should be checked for proper macro/conditional nesting.
5095         (input_scrub_push/pop): Save/restore nest check flag.
5096         (input_scrub_next_buffer): Ditto.  Also call end of macro hook if
5097         defined.
5098         * macro.c (check_macro):  Allow caller to retrieve parsed macro
5099         information if a pointer is provided.  This information may be
5100         used by the new macro hooks.
5101         * macro.h: Update prototype for check_macro.  Macro struct
5102         definitions moved here from macro.c/gasp.c.
5103         * read.c (read_a_source_file): Add parameter to check_macro call,
5104         and pass macro info to the macro hook, if defined.
5105         (input_scrub_insert_line): New.  Allow insertion of a line of
5106         characters into the input stream.
5107         (input_scrub_insert_file): New.  Allow insertion of an arbitrary
5108         file into the input stream.
5109         (s_include): Use input_scrub_insert_file.
5110         * internals.texi: Document new macro hooks.
5111         * as.h: New prototypes added.
5112
5113 2000-03-26  Alan Modra  <alan@linuxcare.com.au>
5114
5115         * config/tc-i386.c: Don't start any as_bad or as_warn message with
5116         an initial capital letter.
5117         (i386_index_check): Reindent.
5118
5119 2000-03-19  Nick Clifton  <nickc@cygnus.com>
5120
5121         * config/tc-arm.c (md_apply_fix3): Fix bug detecting overflow of pc
5122         relative branches.
5123
5124 2000-03-17 Thomas de Lellis <tdel@windriver.com>
5125
5126         * config/tc-arm.c (do_t_adr): Flag "adr Rd,label"
5127         instruction operand bad if Rd > 7 when generating
5128         thumb instructions. Prevents for example,
5129         "adr r12,label" from silently failing and generating
5130         the wrong instruction.
5131
5132 2000-03-17  Nick Clifton  <nickc@cygnus.com>
5133
5134         * config/tc-arm.c (md_apply_fix3): Handle same-section relocations
5135         that have a destingation >= 0x400000.
5136         Fix compile time warning messages.
5137
5138 Thu Mar 16 23:45:16 2000  J"orn Rennecke <amylaar@cygnus.co.uk>
5139
5140         * config/tc-sh.c (md_begin): When encountering insn that are
5141         not supported by the current arch, only change the name if
5142         its contents are the same as prev_name.
5143         (get_specific): If the the architecture doesn't match, fail.
5144
5145 Thu Mar 16 21:18:13 2000  J"orn Rennecke <amylaar@cygnus.co.uk>
5146
5147         * config/tc-sh.c (IDENT_CHAR): Define.
5148         (parse_reg): Use it instead of isalnum.  Put r[0..7]_bank operand
5149         matching back where it came from.
5150
5151 Thu Mar 16 20:58:10 2000  J"orn Rennecke <amylaar@cygnus.co.uk>
5152
5153         * config/tc-sh.c (md_show_usage): Add description of -dsp.
5154
5155 2000-03-15  Jonathan Larmour  <jlarmour@redhat.co.uk>
5156
5157         * config/tc-sh.c (parse_reg): Match r[0..7]_bank operands before
5158         normal operands.
5159
5160 2000-03-15  Kazu Hirata  <kazu@hxi.com>
5161
5162         * config/tc-h8300.c: Add ATTRIBUTE_UNUSED as appropriate.
5163
5164 Mon Mar 13 22:02:59 2000  Hans-Peter Nilsson  <hp@axis.se>
5165
5166         * expr.c (operand) [case 'f']: When testing if '0f' can start a
5167         floating-point-number, make sure 'f' is in FLT_CHARS.
5168
5169 Sat Mar 11 00:01:39 2000  Hans-Peter Nilsson  <hp@axis.se>
5170
5171         * read.c (TC_IMPLICIT_LCOMM_ALIGNMENT): New default-definition.
5172         (s_lcomm_internal): Use it.
5173         * doc/internals.texi (CPU backend): Document it.
5174         * config/obj-evax.h (TC_IMPLICIT_LCOMM_ALIGNMENT): Set to 2**3
5175         bytes.
5176
5177 2000-03-10  Geoffrey Keating  <geoffk@cygnus.com>
5178
5179         * config/tc-mips.c (mips_ip): Don't put stuff in .rodata
5180         when embedded-pic.
5181
5182         * config/tc-mips.c (SWITCH_TABLE): The ELF embedded-pic
5183         implementation doesn't have special handling for switch
5184         statements.
5185         (macro_build): Allow for code in sections other than .text.
5186         (macro): Likewise.
5187         (mips_ip): Likewise.
5188         (md_apply_fix): Do pc-relative relocation madness for MIPS ELF.
5189         Don't perform relocs if we will be outputting them.
5190         (tc_gen_reloc): For ELF, just use fx_addnumber for pc-relative
5191         relocations.  Allow BFD_RELOC_16_PCREL_S2 relocs when
5192         embedded-pic.
5193
5194 2000-03-09  Catherine Moore  <clm@cygnus.com>
5195
5196         * config/tc-m32r.c (m32r_fix_adjustable):  Look up the
5197         relocation type based on the entry in the fixup structure.
5198         Put S_IS_EXTERN processing back in.
5199
5200 2000-03-08  H.J. Lu  (hjl@gnu.org)
5201
5202         * Makefile.am (install-exec-tooldir): Depend on
5203         install-exec-bindir for parallel make.
5204         * Makefile.in: Regenerated.
5205
5206 2000-03-06  Nick Clifton  <nickc@cygnus.com>
5207
5208         * config/tc-m32r.c (struct md_longopts): Add -m32r command line
5209         switch.
5210         (md_parse_option): Parse -m32r command line switch - disable m32rx
5211         compatability.
5212         (md_show_usage): Document new option.
5213
5214         * doc/Makefile.am (CPU_DOCS): Add c-m32r.texi.
5215         * doc/Makefile.in: Regenerate.
5216         * doc/c-m32r.texi (M32R-Opts): Document new command line switch.
5217
5218 2000-03-02  Michael Meissner  <meissner@redhat.com>
5219
5220         * config/tc-d30v.c (check_range): Remove code that incorrectly
5221         sign extended values where bits < 32.
5222
5223 2000-03-02  H.J. Lu  (hjl@gnu.org)
5224
5225         * configure.in: Support --enable-targets=all on ia32.
5226         * configure: Regenerated.
5227
5228 2000-03-01  Nick Clifton  <nickc@cygnus.com>
5229
5230         * gasp.c (do_align): Remove bogus check of alignment value.
5231
5232 2000-02-27  Thomas de Lellis  <tdel@windriver.com>
5233
5234         * config/obj-elf.c (elf_frob_symbol): Remove code which when
5235         TC_PPC was defined forced the type of a symbol with no other type
5236         to be BSF_OBJECT.
5237
5238 2000-02-27  Hans-Peter Nilsson  <hp@axis.com>
5239
5240         * doc/internals.texi (CPU backend): Mention that
5241         line_separator_chars do not break up comments.  Fix typos for
5242         LEX_AT and LEX_NAME descriptions.  Document operands for
5243         TC_EQUAL_IN_INSN, md_operand and md_section_align.  Correct
5244         description of md_create_short_jump usage.  Document argument for
5245         md_undefined_symbol.
5246
5247 2000-02-27  Jakub Jelinek  <jakub@redhat.com>
5248
5249         * config/tc-sparc.c (OPTION_UNDECLARED_REGS): New option.
5250         (md_parse_option): Handle it.
5251         (md_show_usage): Document it.
5252
5253 2000-02-27  Ian Lance Taylor  <ian@zembu.com>
5254
5255         * config/tc-alpha.c (md_assemble): Accept `1' and `9' in an
5256         opcode, for the instruction `pal19'.  From Andrea Arcangeli
5257         <andrea@suse.de>.
5258
5259 2000-02-26  Alan Modra  <alan@spri.levels.unisa.edu.au>
5260
5261         * config/tc-i386.c (i386_immediate): Move constant operand sizing
5262         from here..
5263         (md_assemble): To here, before template operands are matched.
5264         Also ensure a constant immediate is sign extended when we know the
5265         size is at most 16 bits.  This is to catch cases like "add
5266         $0xffc0,%ax" where we don't know the size, and thus that the
5267         immediate can be represented as Imm8S until after parsing the
5268         register operand.
5269         (i386_displacement): Similarly sign extend 16 bit constant
5270         displacements.
5271         (md_assemble): Relax 16-bit jump constant range check to suit sign
5272         extended displacements.
5273
5274 2000-02-26  Andreas Jaeger  <aj@suse.de>
5275
5276         * doc/c-mips.texi (MIPS Opts): Fix typo in last patch.
5277
5278 2000-02-25  Alan Modra  <alan@spri.levels.unisa.edu.au>
5279
5280         * config/tc-i386.c (md_assemble): Don't swap intersegment jmp and
5281         call operands when intel_syntax.
5282         (intel_float_operand): Return 2 for "fi...".
5283         (i386_operand_modifier): Change "DWORD PTR" test to suit above.
5284         Return SHORT_MNEM_SUFFIX for "WORD PTR" when "fi...".  Revert
5285         earlier "SHORT" change.
5286         (md_assemble): When determining suffix from Regs, exclude
5287         InOutPortReg.
5288
5289 2000-02-24  Nick Clifton  <nickc@cygnus.com>
5290
5291         * configure: Add arm-wince, mips-pe and sh-pe targets.
5292         * configure: Regenerate.
5293
5294         * config/obj-coff.h (COFF_WITH_PE): Define for mips-pe and
5295         sh-pe targets.
5296         (TARGET_FORMAT): Set to "pe-shl" for the sh-pe target and to
5297         "pe-mips" for the mips-pe target.
5298
5299         * config/tc-arm.c (insns): Change displacement encoded in BL
5300         and B instructions if the target port is arm-wince.
5301         (do_ldst): Do not bias the relocation offset if the target
5302         port is arm-wince.
5303         (md_pcrel_from): Add in missing relocation offset bias if the
5304         target os arm-wince.
5305
5306         * config/tc-mips.c (mips_target_format): Support COFF flavour.
5307         (md_begin): Disable -G support for mips-pe target.
5308         (md_apply_fix): Treat BFD_RELOC_RVA reloc as BFD_RELOC_32.
5309         * config/tc-mips.h (USE_GLOBAL_POINTER_OPT): Add support for
5310         COFF flavour.
5311
5312         * config/tc-sh.c (md_begin): sh-pe target is little endian.
5313         * config/tc-sh.h (SUB_SEGMENT_ALIGN): If using a BFD
5314         assembler, just set the alignment to 4.
5315
5316         * config/te-wince-pe.h: New file for WinCE targets.  Define
5317         TE_WINCE.
5318
5319 2000-02-25  Alan Modra  <alan@spri.levels.unisa.edu.au>
5320
5321         * config/tc-i386.c (md_assemble): Swap segments too for intel mode
5322         string instructions.
5323         (i386_operand_modifier): Set i.suffix = WORD_MNEM_SUFFIX for SHORT.
5324         (i386_intel_memory_operand): After finding a segment override,
5325         check again for no `[' before looking for a displacement.  Bomb if
5326         more than one displacement rather than silently discarding the
5327         second and subsequent ones.  Free strings malloc'd by
5328         build_displacement_string.
5329
5330 2000-02-24  Catherine Moore  <clm@cygnus.com>
5331
5332         * config/obj-som.c (obj_pseudo_table): Add "weak".
5333         (obj_som_weak): New routine.
5334
5335 2000-02-24  Alan Modra  <alan@spri.levels.unisa.edu.au>
5336
5337         * config/tc-i386.c (union i386_op): New.
5338         (struct _i386_insn): Delete disps[], imms[], regs[].  Add op[].
5339         Throughout file replace occurences of disps[n], imms[n], regs[n]
5340         with equivalent op[n].disps, op[n].imms, op[n].regs.  Simplify
5341         intel mode operand swapping.  Add assert in regKludge and
5342         fake_zero_displacement code.  Test i.types[n] when outputting
5343         displacements and immediates.  Combine output of Disp16 with
5344         Disp32.
5345         (md_assemble): Don't try to fix broken UNIXWARE_COMPAT opcodes
5346         when in intel mode by (not) reversing fsub and fdiv operands
5347         before the template search.  This fails for single operand
5348         shorthand forms of the instruction, and if UNIXWARE_COMPAT is
5349         undefined.  Instead fix the base_opcode after we've found the
5350         template.  Move base_opcode xor with found_reverse_match from
5351         opcode output code to before this fix so we test for the correct
5352         opcodes.
5353         (md_assemble): Don't use strcmp when deciding to ignore the suffix
5354         check in intel mode.  Instead compare opcodes.
5355
5356         * config/tc-i386.h (TC_RELOC): Delete.
5357         * config/tc-i386.c (TC_RELOC): Delete.  Replace usage of TC_RELOC
5358         with equivalent call to reloc.
5359
5360         * as.h (flag_m68k_mri): Move declaration after target include, and
5361         only declare when TC_M68K defined.  Define as zero otherwise.
5362         (LABELS_WITHOUT_COLONS, NO_PSEUDO_DOT): If undefined, define as 0.
5363         * app.c (scrub_m68k_mri): Declare only when TC_M68K defined.
5364         Define as zero otherwise.
5365         (do_scrub_begin): Use m68k_mri parameter only when TC_M68K defined.
5366         (struct app_save): Declare scrub_m68k_mri only when TC_M68K.
5367         (app_push, app_pop): Save scrub_m68k_mri only when TC_M68K.
5368         (do_scrub_chars): Use LABELS_WITHOUT_COLONS directly rather than
5369         testing whether defined.
5370         * cond.c (ignore_input): Use NO_PSEUDO_DOT directly.
5371         * expr.c (operand): #ifdef unused case labels when TC_M68K undefined.
5372         * read.c: Use LABELS_WITHOUT_COLONS and NO_PSEUDO_DOT directly
5373         rather than testing whether defined.
5374         (s_mri): Set flag_m68k_mri only when TC_M68K defined.
5375         (parse_mri_cons): Declare and use only when TC_M68K.
5376         * config/tc-hppa.h (LABELS_WITHOUT_COLONS): Define as 1.
5377         * config/tc-m68k.h (NO_PSEUDO_DOT): Define as 1.
5378         * config/tc-m88k.h (NO_PSEUDO_DOT): Define as 1.
5379
5380         * NEWS: Mention IBM 370 support.
5381
5382 2000-02-23  Richard Henderson  <rth@cygnus.com>
5383
5384         * config/tc-i386.c (md_assemble): When swapping operands for
5385         intel_syntax, assume everything that's not Imm or Disp is a
5386         register.
5387
5388 2000-02-23  Linas Vepstas <linas@linas.org>
5389
5390         * config/tc-i370.c, config/tc-i370.h: New files.
5391         * Makefile.am: Add support for Linux/IBM 370.
5392         * configure.in: Likewise.
5393         * app.c (do_scrub_begin): Don't lex single quote when TC_I370.
5394         * config/obj-elf.c: Include elf/i370.h
5395         (obj_elf_section): Don't do anything special for flag_mri if TC_I370.
5396
5397         * Makefile.in: Regenerate.
5398         * configure: Regenerate.
5399
5400         * doc/c-i370.texi: New file.
5401         * doc/all.texi: Include it.
5402         * doc/as.texinfo: And here.
5403         * doc/Makefile.am(CPU_DOCS): Add c-i370.texi.
5404         * doc/Makefile.in: Regenerate.
5405
5406 2000-02-19  Michael Meissner  <meissner@redhat.com>
5407
5408         * config/tc-d30v.c (parallel_ok): Use FLAG_NOT_WITH_ADDSUBppp to
5409         determine if an instruction can be used in parallel with an ADDppp
5410         or SUBppp instruction.
5411
5412 2000-02-22  Andrew Haley  <aph@cygnus.com>
5413
5414         * doc/c-mips.texi (MIPS Opts): Document -mgp32 and -mgp64.
5415
5416 2000-02-22  Andrew Haley  <aph@cygnus.com>
5417
5418         * config/tc-mips.c (mips_gp32): New variable.
5419         (macro_build) Use mips_gp32.
5420         (mips_ip): Ditto.
5421         (md_longopts): Add "-mgp32" and "-mgp64".
5422         (md_parse_option): Add OPTION_GP32 and OPTION_GP64.
5423
5424         (OPTION_M7900): Change offset
5425         (OPTION_NO_M7900): Ditto.
5426
5427 2000-02-22  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
5428
5429         * config/obj-coff.c (add_lineno): Accept non-positive lineno with
5430         warning, and bump it to 1.
5431
5432 2000-02-22  Ian Lance Taylor  <ian@zembu.com>
5433
5434         From Brad Lucier <lucier@math.purdue.edu>:
5435         * dwarf2dbg.c (print_stats): Add cast to force printf argument to
5436         match format.
5437
5438 2000-02-21  Catherine Moore  <clm@cygnus.com>
5439
5440         * config/tc-mips.c (MF_HILO_INSN): Define.
5441         (mips_7000_hilo_fix): Declare.
5442         (append_insn): Conditionally insert nops after an mfhi/mflo insn.
5443         (md_parse_option): Check for 7000_HILO_FIX options.
5444         (OPTION_M7000_HILO_FIX): Define.
5445         (OPTION_NO_M7000_HILO_FIX): Define.
5446         * doc/c-mips.texi (-mfix7000): Describe.
5447
5448 2000-02-21  Alan Modra  <alan@spri.levels.unisa.edu.au>
5449
5450         * listing.c (print_lines): Remove unused variable `end'.
5451
5452         * config/tc-i386.c (md_assemble): Use `reloc()' to select reloc
5453         type for JumpInterSegment output. Use enum bfd_reloc_code_real for
5454         reloc_type when BFD_ASSEMBLER.
5455         (md_estimate_size_before_relax): Use enum bfd_reloc_code_real for
5456         reloc_type when BFD_ASSEMBLER. Move common code out of switch
5457         statement and quell signed vs. unsigned comparison warning.
5458
5459 2000-02-18  Nick Clifton  <nickc@cygnus.com>
5460
5461         * config/tc-d10v.c (find_opcode): Add a symbol's value to
5462         the computed frag offset, rather than overwriting it.
5463
5464 Thu Feb 17 00:11:08 2000  J"orn Rennecke <amylaar@cygnus.co.uk>
5465
5466         * config/tc-sh.c ("elf/sh.h"): Include.
5467         (sh_dsp, valid_arch, reg_x, reg_y, reg_efg): New static variables.
5468         (md.begin): Initialize target_arch.
5469         Only include opcodes in has table that match selected architecture.
5470         (parse_reg): Recognize register names for sh-dsp.
5471         (parse_at): Recognize post-modify addressing.
5472         (get_operands): The leading space is now optional.
5473         (get_specific): Remove FDREG_N support.  Add support for sh-dsp
5474         arguments.  Update valid_arch.
5475         (build_Mytes): Add support for SDT_REG_N.
5476         (find_cooked_opcode): New function, broken out of md_assemble.
5477         (assemble_ppi, sh_elf_final_processing): New functions.
5478         (md_assemble): Use find_cooked_opcode and assemble_ppi.
5479         (md_longopts, md_parse_option): New option: -dsp.
5480         * config/tc-sh.h (elf_tc_final_processing): Define.
5481         (sh_elf_final_processing): Declare.
5482
5483 Fri Feb 11 14:21:51 2000  Jeffrey A Law  (law@cygnus.com)
5484
5485         * config/tc-hppa.c (pa_build_unwind_subspace): Use subseg_new to create
5486         the unwinder subspace.  Save the current seg/subseg before creating
5487         the new seg/subseg.
5488
5489 2000-02-10  Nick Clifton  <nickc@cygnus.com>
5490
5491         * config/tc-mcore.c (INST_BYTE0): Redefine to handle big and
5492         little endian targets.
5493         (INST_BYTE1): Redefine to handle big and little endian
5494         targets.
5495         (cpu_type): New type: Select between M340 and M210.
5496         (parse_psrmod): New function: Parse the PSRCLR and PSRSET
5497         instructions of the M340.
5498         (md_assemble): Add support for the MULSH and OPSR classes of
5499         instructions.
5500         (md_atof): Add support for little endian targets.
5501         (md_parse_option): Add support for -EL, -EB and -mcpu command
5502         line switches.
5503         (md_convert_frag): Add support for little endian targets.
5504         (md_apply_fix3): Add support for little endian targets.
5505         (md_number_to_chars): Add support for little endian targets.
5506
5507 2000-02-10  Timothy Wall  <twall@redhat.com>
5508
5509         * read.c (read_a_source_file): If TC_START_LABEL_WITHOUT_COLON is
5510         defined, use it to verify the symbol just read should be a label.
5511
5512 2000-02-10  Timothy Wall  <twall@redhat.com>
5513
5514         * app.c (do_scrub_chars): Handle "||" for parallel instructions
5515         when DOUBLEBAR_PARALLEL is defined.  Avoid stripping whitespace
5516         around colons when KEEP_WHITE_AROUND_COLON is defined.
5517         * doc/internals.texi (CPU backend): Document DOUBLEBAR_PARALLEL
5518         and KEEP_WHITE_AROUND_COLON.
5519
5520 2000-02-08  Timothy Wall  <twall@redhat.com>
5521
5522         * read.c (s_rept): Call do_repeat, which abstracts the repeat
5523         logic.
5524         (do_repeat): New.  Abstract repeat logic so that a "break" can be
5525         implemented.
5526         (end_repeat): New.  Provide support for a "break" out of the
5527         repeat loop.
5528         * read.h: Add prototypes for new functions.
5529
5530 2000-02-08  Timothy Wall  <twall@redhat.com>
5531
5532         * doc/internals.texi: Document NUMBERS_WITH_SUFFIX macro.
5533         * as.h: Provide a default NUMBERS_WITH_SUFFIX definition (zero).
5534         * expr.c: Handle numbers with suffixes if NUMBERS_WITH_SUFFIX is
5535         non-zero.
5536
5537 2000-02-08  Timothy Wall  <twall@redhat.com>
5538
5539         * read.c: Added elseif to directives table.
5540         * read.h: Added prototype for s_elseif.
5541         * doc/as.texinfo: Added description for elseif.
5542         * cond.c (s_elseif): New function
5543
5544 2000-02-04  Timothy Wall  <twall@redhat.com>
5545
5546         * listing.c (print_lines): Remove conditionals causing bug in
5547         listings.
5548
5549 2000-02-03  Timothy Wall  <twall@cygnus.com>
5550
5551         * as.h: Define OCTETS_PER_BYTE and OCTETS_PER_BYTE_POWER
5552         default values.
5553         * frags.c (frag_new): Calculate fr_fix in octets
5554         (frag_now_fix) Return offset as target address offset (bytes).
5555         (frag_now_fix_octets) New - Return offset in octets (8-bit
5556         quantities).
5557         * frags.h: Added prototype for frag_now_fix_octets().
5558         Distinguish between octets and bytes in field descriptions.
5559         * listing.c (calc_hex): Account for octets vs bytes when
5560         printing addresses/offsets.
5561         (print_lines) Ditto.  Also, if LISTING_WORD_SIZE is not 1, and
5562         target is little-endian, print the octets in a word in big-endian
5563         order so that the display looks like a proper hexadecimal number,
5564         instead of having the octets reversed.
5565         * read.c (do_align): When recording alignment, alignment power
5566         should be in terms of target bytes (minimum addressible unit)
5567         instead of octets.
5568         (do_org) Convert ORG target address (byte) argument into an
5569         octet offset when generating a variable fragment.
5570         * symbols.c (resolve_symbol_value): Symbol final value
5571         converted to a target address offset (bytes) from its octet offset.
5572         * config/obj-coff.c (coff_frob_symbol): Symbol target address
5573         offset (bytes) is adjusted by the frag offset (octets) converted
5574         to bytes.
5575         (coff_frob_section) Section alignment power is in terms of bytes;
5576         convert it to an octet alignment power when calculating size (and
5577         size mask) in octets.  Don't modify the section size in order to
5578         "align" it for TI COFF, since that format has a different method
5579         for storing alignment information.
5580
5581 2000-02-01  Timothy Wall  <twall@cygnus.com>
5582
5583         * stabs.c (generate_asm_file): Escape backslashes in stabs file
5584         entries, matching the way GCC generates them.  If not escaped, the
5585         filename is encoded incorrectly.
5586
5587 2000-01-31  Nick Clifton  <nickc@cygnus.com>
5588
5589         * config/tc-arm.c (reg_table): Add support for ATPCS register
5590         naming conventions.
5591
5592 2000-01-31  Geoff Keating  <geoffk@cygnus.com>
5593
5594         * config/obj-coff.h (OBJ_COPY_SYMBOL_ATTRIBUTES): Don't define if
5595         already defined.
5596         * config/tc-ppc.h [OBJ_XCOFF] (OBJ_COPY_SYMBOL_ATTRIBUTES):
5597         New macro.
5598         * config/tc-ppc.c (ppc_fix_adjustable): Don't look at the frag
5599         of a symbol when we really care about its value.
5600
5601 2000-01-19  Chandra Chavva   <cchavva@cygnus.com>
5602
5603         * config/tc-mcore.c (md_assemble): Give warning message if
5604         operands passes to instruction are more than the spec.
5605
5606 2000-01-27  Thomas de Lellis <tdel@windriver.com>
5607
5608         * config/tc-arm.c (armadjust_symtab): If the assembler is in
5609         Thumb mode but the label seen was not declared as '.thumb_func'
5610         then set the ST_INFO type to STT_ARM_16BIT mode.   This allows
5611         correct disassembly of Thumb code bounded by non function labels.
5612
5613 2000-01-27  Alan Modra  <alan@spri.levels.unisa.edu.au>
5614
5615         * Makefile.am (MULTI_CFILES): Add config/e-i386aout.c
5616         Add dependencies for e-i386aout.o.  Fix 2 comment lines.
5617
5618         * Makefile.in: Same here.
5619         Update copyright.
5620
5621         * configure.in: Set bfd_gas for i386-aout when primary target
5622         is bfd.  Handle i386aout emulation.  Don't use te_file=multi, as
5623         we may need the primary te_file.  Remove incorrect comment.
5624
5625         * configure: Regenerate.
5626
5627         * config/e-i386aout.c: New file.
5628
5629         * as.c (USE_EMULATIONS): Move to before print_version_id.
5630         (struct emulation): Add i386aout.
5631         (show_usage): Split text strings.  Reformat -a text.  Add --em
5632         help.
5633         Update copyright.
5634
5635         * obj.h (struct format_ops): Add s_get_other and s_get_desc.
5636         (aout_format_ops): New.
5637         Update copyright.
5638
5639         * read.c (s_lcomm_internal): Rewrite OBJ_AOUT,OBJ_BOUT
5640         preprocessor conditional and add aout USE_EMULATIONS tests.
5641         (read_a_source_file): Don't pass error strings to printf as
5642         format arg.
5643         Update copyright.
5644
5645         * gasp.c (exp_get_abs): Don't pass error strings to printf as
5646         format arg.
5647         (do_data): Same here.
5648         (process_file): And here.
5649         Update copyright.
5650
5651         * symbols.c (colon): Rewrite "already defined" fatal message
5652         code for aout with USE_EMULATIONS.
5653         Update copyright.
5654
5655         * config/obj-aout.c (OBJ_HEADER): Define.
5656         (obj_pseudo_table): Rename to aout_pseudo_table.  Init all
5657         fields of sentinel.
5658         (obj_aout_frob_symbol): Expand S_GET_DESC, S_GET_TYPE,
5659         S_GET_OTHER, S_SET_TYPE macros since we don't need obj-multi
5660         forms here.
5661         (obj_aout_type): Expand S_SET_OTHER here too.
5662         (obj_read_begin_hook): Remove.
5663         (aout_pop_insert): New.
5664         (obj_aout_s_get_other): New.
5665         (obj_aout_s_get_desc): New.
5666         (aout_format_ops): New.
5667         Update copyright.
5668
5669         * config/obj-aout.h (obj_pop_insert): Define so non-multi usage
5670         gets aout_pseudo_table.
5671         (aout_pseudo_table): Declare.
5672         (obj_read_begin_hook): Define.
5673         Update copyright.
5674
5675         * config/obj-coff.c (obj_pseudo_table): Rename to
5676         coff_pseudo_table.
5677         (coff_pop_insert): Use coff_pseudo_table.
5678         (coff_sec_sym_ok_for_reloc): Remove.
5679         (coff_format_ops): Add 0 entries for s_get_size, s_set_size,
5680         and comment all zero entries and remove #if 0 code.
5681         Update copyright.
5682
5683         * config/obj-coff.h (obj_pop_insert): Define.
5684         (coff_pseudo_table): Declare.
5685         Update copyright.
5686
5687         * config/obj-ecoff.c (ecoff_format_ops): Add 0 entries for
5688         s_get_size, s_set_size.  Comment all zero entries.
5689         Update copyright.
5690
5691         * config/obj-elf.c (elf_s_get_other): New function.
5692         (obj_read_begin_hook): Rename to elf_obj_read_begin_hook.
5693         (obj_symbol_new_hook): Rename to elf_obj_symbol_new_hook.
5694         (elf_format_ops): Add elf_s_get_other, 0 s_get_size entry, and
5695         comment.
5696         (obj_elf_parse_section_letters): Don't pass error strings to
5697         printf as format arg.
5698         Update copyright.
5699
5700         * config/obj-elf.h (ECOFF_DEBUGGING): Define when
5701         OBJ_MAYBE_ECOFF.
5702         (elf_s_get_other): Declare.
5703         (S_GET_OTHER) Define as elf_s_get_other if not already
5704         defined.
5705         (S_SET_OTHER): Only define when not already defined.
5706         (elf_obj_read_begin_hook): Declare.
5707         (obj_read_begin_hook): Define.
5708         (elf_obj_symbol_new_hook): Declare.
5709         (obj_symbol_new_hook): Define.
5710         Update copyright.
5711
5712         * config/obj-multi.h: Add copyright header and protect against
5713         multiple inclusion.  Add * to all function pointers.
5714         (OBJ_HEADER): If defined, include it rather than other defines
5715         in this file.
5716         (obj_frob_file_after_relocs): Test for NULL.
5717         (obj_symbol_new_hook): Here too.
5718         (obj_sec_sym_ok_for_reloc): And here.
5719         (S_GET_OTHER): Define.
5720         (S_GET_DESC): Define.
5721         (ECOFF_DEBUGGING): Remove as it's done in obj-elf.h
5722         (OBJ_MAYBE_ELF): Update comment.
5723
5724         * config/tc-i386.c (i386_immediate): Add OBJ_MAYBE_AOUT to
5725         OBJ_AOUT preprocessor conditional and handle emulation by
5726         testing OUTPUT_FLAVOR.
5727         (i386_displacement): Here too.
5728         (md_section_align): Similarly here.
5729         (i386_target_format): Conditionally compile when more than one
5730         of OBJ_MAYBE_{ELF,COFF,AOUT} defined.  Add aout case.
5731         (i386_immediate): Fix error message for aout BFD_ASSMBLER.
5732         (i386_displacement): Here too.
5733         Update copyright.
5734
5735         * config/tc-i386.h (AOUT_TARGET_FORMAT): Define for each TE_*.
5736         Define TARGET_FORMAT for aout only when not multi.
5737         Update copyright.
5738
5739         * config/te-multi.h: Delete file as it's identical to te-generic.h
5740
5741 2000-01-15  Alan Modra  <alan@spri.levels.unisa.edu.au>
5742
5743         * config/tc-i386.h (DWORD_MNEM_SUFFIX): Delete.
5744         * config/tc-i386.c (DWORD_MNEM_SUFFIX): Rename all occurrences to
5745         LONG_MNEM_SUFFIX.
5746
5747         * config/tc-i386.h (INTEL_DWORD_MNEM_SUFFIX): Rename to
5748         DWORD_MNEM_SUFFIX.
5749         * config/tc-i386.c (INTEL_DWORD_MNEM_SUFFIX): Here too.  Fix some
5750         comments.
5751
5752 2000-01-13  Clinton Popetz  <cpopetz@cygnus.com>
5753
5754         * config/tc-mips.c (mips_do_align): New function.
5755         * config/tc-mips.h (md_do_align): Define.
5756
5757 2000-01-10  Philip Blundell  <philb@gnu.org>
5758
5759         * doc/c-arm.texi (ARM Options): Fix typo.
5760         (ARM-Chars): Correct description of `#'.  Mention  that `;' is a
5761         line separator for Linux.
5762         * doc/as.texinfo (Comments): Mention the ARM.
5763
5764 2000-01-10  Philip Blundell  <pb@futuretv.com>
5765
5766         * configure.in (arm*-*-conix*): New target.
5767         (arm*-*-linux-gnu*): Match instead of arm-*-linux* and
5768         armv*-*-linux-gnu.
5769         * configure: Regenerate.
5770
5771 2000-01-03  Martin v. Loewis  <loewis@informatik.hu-berlin.de>
5772
5773         * config/obj-elf.c (elf_pseudo_table): Define visibility pseudos.
5774         (obj_elf_visibility): New function.
5775
5776         * doc/as.texinfo (Visibility): New node: document visibility
5777         pseudo ops.
5778
5779 For older changes see ChangeLog-9899