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