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