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