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