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