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