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