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