2000-09-12 Kazu Hirata <kazu@hxi.com>
[external/binutils.git] / gas / ChangeLog
1 2000-09-12  Kazu Hirata  <kazu@hxi.com>
2
3         * as.h: Fix formatting.
4         * asintl.h: Likewise.
5         * bit_fix.h: Likewise.
6         * config/obj-aout.c: Likewise.
7         * config/obj-aout.h: Likewise.
8         * config/obj-bout.c: Likewise.
9         * config/obj-bout.h: Likewise.
10         * config/obj-coff.c: Likewise.
11         * config/obj-coff.h: Likewise.
12         * dwarf2dbg.h: Likewise.
13         * expr.h: Likewise.
14         * flonum.h: Likewise.
15         * frags.h: Likewise.
16         * itbl-ops.h: Likewise.
17         * macro.h: Likewise.
18         * read.h: Likewise.
19         * sb.h: Likewise.
20         * struc-symbol.h: Likewise.
21         * subsegs.h: Likewise.
22         * symbols.h: Likewise.
23         * tc.h: Likewise.
24         * write.h: Likewise.
25
26 2000-09-11  Kazu Hirata  <kazu@hxi.com>
27
28         * bignum-copy.c: Fix formatting.
29         * config/tc-i370.c: Likewise.
30         * config/tc-i960.c: Likewise.
31         * config/tc-m68k.c: Likewise.
32         * ehopt.c: Likewise.
33         * flonum-copy.c: Likewise.
34         * flonum-konst.c: Likewise.
35         * flonum-mult.c: Likewise.
36         * literal.c: Likewise.
37         * read.c: Likewise.
38         * sb.c: Likewise.
39         * stabs.c: Likewise.
40         * subsegs.c: Likewise.
41
42 2000-09-09  Philip Blundell  <philb@gnu.org>
43
44         * configure.in (arm*-*-uclinux*): New target.
45         * configure: Regenerate.
46
47 2000-09-09  Kazu Hirata  <kazu@hxi.com>
48
49         * input-file.c: Fix formatting.
50         * itbl-ops.c: Likewise.
51         * messages.c: Likewise.
52
53 2000-09-08  Philip Blundell  <philb@gnu.org>
54
55         * config/tc-arm.c (md_apply_fix3): Correct handling of ADRL when
56         offset is negative.
57
58 2000-09-07  H.J. Lu  <hjl@gnu.org>
59
60         * configure.in (AC_ISC_POSIX): Put after AC_CANONICAL_SYSTEM.
61         * configure: Rebuild.
62
63 2000-09-07  Kazu Hirata  <kazu@hxi.com>
64
65         * atof-generic.c: Fix formatting.
66         * config/tc-mips.c: Likewise.
67         * config/tc-vax.c: Likewise.
68         * input-scrub.c: Likewise.
69
70 2000-09-07  Alexandre Oliva  <aoliva@redhat.com>
71
72         * config/tc-sh.h (TARGET_FORMAT): Use sh-linux targets.
73         * configure.in (sh-*-linux*): Added.
74         * configure: Rebuilt.
75
76 2000-09-06  Kazu Hirata  <kazu@hxi.com>
77
78         * config/tc-hppa.c: Fix formatting.
79
80         * ecoff.c: Fix formatting.
81
82 2000-09-06  Alexandre Oliva  <aoliva@redhat.com>
83
84         * configure: Rebuilt with new libtool.m4.
85
86 2000-09-05  Kazu Hirata  <kazu@hxi.com>
87
88         * cgen.c: Fix formatting.
89         * config/tc-ia64.c: Likewise.
90
91 2000-09-05  Nick Clifton  <nickc@redhat.com>
92
93         * aclocal.m4: Regenerate.
94         * config.in: Regenerate.
95         * configure: Regenerate.
96         * po/gas.pot: Regenerate.
97
98 2000-09-05  Hans-Peter Nilsson  <hp@axis.com>
99
100         * config/tc-cris.c: Correct comment typos.
101
102 2000-09-05  Eric Christopher  <echristo@cygnus.com>
103
104         * config/tc-mn10300.c: Cleanup.
105         (md_pcrel_from): Enable.
106
107 2000-09-05  Alan Modra  <alan@linuxcare.com.au>
108
109         * expr.c (operand): Fix a comment typo.
110         * write.c (write_relocs): Fix a signed/unsigned warning.
111
112         * config/tc-hppa.c (fudge_reg_expressions): New
113         (hppa_force_reg_syms_absolute): New.
114         (pa_equ): Allow reg_section expressions.
115         * config/tc-hppa.c (md_optimize_expr): Define.
116         (hppa_force_reg_syms_absolute): Prototype.
117
118         * config/tc-hppa.c (pa_11_fp_reg_struct): Delete.
119         (pa_parse_number): Pass in arg to select fp reg parsing.
120         Return 1 to indicate format checks pass.  If strict, then only
121         accept a register or register symbol.  Return value in...
122         (pa_number): New static for pa_parse_number.
123         (FP_REG_BASE): Define.
124         (FP_REG_RSEL): Define.
125         (pre_defined_registers): Apply FP_REG_BASE and FP_REG_RSEL as
126         appropriate.  White space changes.
127         (need_pa11_opcode): Don't bother passing any params, get them from
128         globals instead.
129         (pa_ip): Modify all calls to pa_parse_number and need_pa11_opcode.
130         Remove extraneous check in case 'Q'.
131         (pa_equ): Modify call to pa_parse_number to do strict parsing. If
132         reg, set section of resulting symbol to reg_section.
133         (pa_parse_space_stmt): Modify call to pa_parse_number.
134         (pa_space): Likewise.
135
136         * config/tc-hppa.c: (md_apply_fix): Handle vtable relocs.
137         (hppa_force_relocation): Handle vtable relocs.
138         (pa_vtable_entry): New.
139         (pa_vtable_inherit): New.
140         (md_pseudo_table): Add entries for vtable pseudos.
141         (hppa_fix_adjustable): Reject reduction of R_PARISC_GNU_VTINHERIT
142         and R_PARISC_GNU_VTENTRY relocs.  Reject reduction of relocs
143         against weak syms.
144         (tc_gen_reloc): Remove ELF_ARG_RELOC_INSN code.
145         (pa_type_args): Don't call symbol_get_bfdsym multiple times.
146         Set STT_PARISC_MILLICODE for OBJ_ELF when encountering a
147         millicode import.
148         * config/obj-elf.c (obj_elf_type): Allow md_elf_symbol_type to
149         specify a symbol type.
150
151         * config/tc-hppa.h: Reorganize file a little, grouping OBJ_ELF
152         dependent things together.
153         (md_elf_symbol_type): Define.
154
155         * config/tc-hppa.c (fix_new_hppa): Elide "$PIC_pcrel$0" pseudo
156         symbol.
157         * config/tc-hppa.h (tc_frob_symbol): Elide "$PIC_pcrel$0" here too.
158
159         * config/obj-elf.h (obj_elf_vtable_inherit): Declare.
160         (obj_elf_vtable_entry): Declare.
161
162         * config/obj-elf.c (obj_elf_vtable_inherit): Return struct fix *
163         and export function.
164         (obj_elf_vtable_entry): Similarly.
165         (elf_pseudo_table): Fix the damage with a cast.
166
167 2000-09-03  Richard Henderson  <rth@cygnus.com>
168
169         * config/tc-ia64.c (emit_one_bundle): Stop collecting insns
170         for template selection when a label is needed.
171
172 2000-09-02  Kazu Hirata  <kazu@hxi.com>
173
174         * config/tc-ia64.c: Fix formatting.
175
176 2000-09-02  Nick Clifton  <nickc@redhat.com>
177
178         * configure.in: Increase version number to 2.10.91.
179         * configure: Regenerate.
180         * aclocal.m4: Regenerate.
181         * config.in: Regenerate.
182         * po/gas.pot: Regenerate.
183         * Makefile.in: Regenerate.
184
185 2000-09-01  Alexandre Oliva  <aoliva@redhat.com>
186
187         * config/tc-sh.h [OBJ_ELF] (TC_FIX_ADJUSTABLE): Define.
188         * config/tc-sh.c (md_apply_fix): Map 32-bit relocations that
189         become PC-relative to BFD_RELOC_32_PCREL.  Reject 16- or 8-bit
190         similar relocs.
191         (sh_obj_adjustable): Return 1 for PC-relative offsets used in
192         branches.
193
194 2000-09-01  Niibe Yutaka  <gniibe@m17n.org>, Kaz Kojima  <kkojima@rr.iij4u.or.jp>, Alexandre Oliva  <aoliva@redhat.com>
195
196         * config/tc-sh.h (DIFF_EXPR_OK, GLOBAL_OFFSET_TABLE_NAME,
197         TC_RELOC_GLOBAL_OFFSET_TABLE, TC_RELOC_RTSYM_LOC_FIXUP): Define.
198         * config/tc-sh.c (sh_elf_cons, sh_elf_suffix): New functions.
199         [OBJ_ELF] (md_pseudo_table) <long, int, word, short>: Use them.
200         (GOT_symbol): New variable.
201         (md_undefined_symbol): Set it.
202
203 2000-09-01  Richard Henderson  <rth@cygnus.com>
204
205         * config/tc-ia64.c (match): Don't inline.
206         (extra_goodness): New.
207         (md_begin): Prefer nop.f and nop.b for best_template.
208
209 2000-08-31  Kazu Hirata  <kazu@hxi.com>
210
211         * as.c: Fix formatting.
212         * cond.c: Likewise.
213         * frags.c: Likewise.
214         * macro.c: Likewise.
215
216 2000-08-31  Eric Christopher  <echristo@cygnus.com>
217
218         * config/tc-mn10300.c:  Cleanup and fix warnings.
219         (md_pseudo_table): Add initializers.
220         (md_show_usage): Cleanup.
221         (md_parse_option): Fix warnings.
222         (md_undefined_symbol): Fix warnings.
223         (md_conver_frag): Fix warnings.
224         (tc_gen_reloc): Fix warnings.
225         (md_apply_fix3): Fix warnings.
226         (check_operand): Fix warnings.
227
228 2000-08-31  Alexandre Oliva  <aoliva@redhat.com>
229
230         * acinclude.m4: Include libtool and gettext macros from the
231         top level.
232         * aclocal.m4, configure: Rebuilt.
233
234 2000-08-30  Mark Hatle  <mhatle@mvista.com>
235
236         * config/tc-ppc.c (md_parse_option): Recognize -m405.
237
238 2000-08-31  Kazu Hirata  <kazu@hxi.com>
239
240         * listing.c: Fix formatting.
241
242 2000-08-29  Kazu Hirata  <kazu@hxi.com>
243
244         * app.c: Fix a comment typo.  Fix formatting.
245
246 2000-08-25  J. David Anglin  <dave@hiauly1.hia.nrc.ca>
247
248         * tc-vax.c (md_convert_frag): Correctly calculate the pc relative
249         offset of the target destination for jmp instructions.
250         (md_assemble): Change mode to VAX_ABSOLUTE_MODE as per comments.
251
252 2000-08-24  Hans-Peter Nilsson  <hp@axis.com>
253
254         * NEWS: Mention support for CRIS.
255
256 Thu Aug 24 20:41:05 2000  Denis Chertykov  <denisc@overta.ru>
257
258         * config/tc-avr.h (TC_IMPLICIT_LCOMM_ALIGNMENT): New macros.
259         Sets `.lcomm' alignment to zero.
260
261 2000-08-23  Alexandre Oliva  <aoliva@redhat.com>
262
263         * config/tc-i386.h <OBJ_MAYBE_ELF, OBJ_MAYBE_COFF>
264         (TC_FIX_ADJUSTABLE): Define.
265
266 2000-08-23  Jim Wilson  <wilson@cygnus.com>
267
268         * config/tc-ia64.c (output_unw_records): Set U & E flags only if
269         unwind.personality_routine is set.
270
271 2000-08-23  H.J. Lu  <hjl@gnu.org>
272
273         * write.c (TC_FIX_ADJUSTABLE): Remove the duplicate.
274
275 2000-08-23  Alexandre Oliva  <aoliva@redhat.com>
276
277         * config/tc-i386.h (TC_FIX_ADJUSTABLE): Do *NOT* define if target
278         environment is pe.
279
280 2000-08-22  H.J. Lu  <hjl@gnu.org>
281
282         * config.in (STRICTCOFF): New for strict COFF.
283
284         * configure.in: Define STRICTCOFF for i386-*-msdosdjgpp*,
285         i386-*-go32* and i386-go32-rtems*.
286         * configure: Rebuilt.
287
288         * config/obj-coff.c (obj_coff_endef): Follow the historical
289         behavior if STRICTCOFF is not defined.
290
291         * doc/internals.texi: Document STRICTCOFF.
292
293 2000-08-22  Alexandre Oliva  <aoliva@redhat.com>
294
295         * write.c (TC_FIX_ADJUSTABLE): Define to 1, if not defined.
296         (fixup_segment) Use it instead of TC_DONT_FIX_NON_ADJUSTABLE.
297         * config/tc-i386.h (TC_DONT_FIX_NON_ADJUSTABLE): Remove.
298         <OBJ_ELF, OBJ_COFF, TE_PE> (TC_FIX_ADJUSTABLE): Define.
299         * config/tc-arm.h (TC_DONT_FIX_NON_ADJUSTABLE): Remove.
300         <OBJ_ELF> (TC_FIX_ADJUSTABLE): Define.
301         * config/tc-i960.h, config/tc-m68k.h, config/tc-v850.h:
302         Likewise.
303
304 2000-08-22  Eric Christopher  <echristo@cygnus.com>
305
306         * config/tc-mn10300.c: (md_apply_fix): New function.
307         (mn10300_force_relocation): New function.
308         (mn10300_fix_adjustable): New function.
309
310         * config/tc-mn10300.h: (TC_FORCE_RELOCATION): Define.
311         (TC_HANDLES_FX_DONE): Define.
312         (obj_fix_adjustable): Define.
313         (MD_APPLY_FIX3): Define.
314         (TC_LINKRELAX_FIXUP): Define.
315
316         * write.c: (TC_LINKRELAX_FIXUP):  Define if not
317         previously defined.
318         (fixup_segment): Use TC_LINKRELAX_FIXUP.
319
320         * doc/internals.texi: Document TC_LINKRELAX_FIXUP.
321
322 2000-08-21  Jason Eckhardt  <jle@cygnus.com>
323
324         * config/tc-i860.c (md_apply_fix3): Do not insert the immediate
325         if the fixup resulted in a relocation.
326
327 2000-08-18  Nick Clifton  <nickc@redhat.com>
328
329         * config/tc-arm.c (decode_shift): Replace as_tsktsk with as_warn.
330         Make reference to first element of shift_names explicit.
331
332 2000-08-18  Alexandre Oliva  <aoliva@redhat.com>
333
334         * write.c (fixup_segment) [TC_DONT_FIX_NON_ADJUSTABLE]: Use
335         obj_fix_adjustable() and tc_fix_adjustable() to tell whether to
336         add a symbol's address.  Removed all target-specific #ifdefs that
337         used to accomplished the same.
338         * config/tc-v850.h (TC_DONT_FIX_NON_ADJUSTABLE): Define.
339         * config/tc-m68k.h (TC_DONT_FIX_NON_ADJUSTABLE): Define.
340         * config/tc-arm.h (TC_DONT_FIX_NON_ADJUSTABLE): Define.
341         * config/tc-i960.h (TC_DONT_FIX_NON_ADJUSTABLE): Define.
342         * config/tc-i386.h (TC_DONT_FIX_NON_ADJUSTABLE): Define.
343
344 2000-08-17  Kazu Hirata  <kazu@hxi.com>
345
346         * dwarf2dbg.c: Fix formatting.
347
348 2000-08-17  Nick Clifton  <nickc@redhat.com>
349
350         * config/tc-arm.c (decode_shift): Allow illegal shifts by zero
351         to be recoded as logical shift lefts by zero.
352
353 2000-08-16  Jim Wilson  <wilson@cygnus.com>
354
355         * config/tc-ia64.c (specify_resource, case IA64_RS_GR): Handle
356         postincrement modified registers.  Handle IA64_OPND_R3_2 addl
357         source registers.
358         (note_register_values): Handle IA64_OPND_R3_2 operands.
359
360 2000-08-16  Jason Eckhardt  <jle@cygnus.com>
361
362         * config/tc-i860.c (md_operand): Silly typo fixed.
363
364 2000-08-16  Nick Clifton  <nickc@redhat.com>
365
366         * config/tc-arm.c (struct asm_shift): Delete.
367         (shift[]): Delete.
368         (enum asm_shift_index): New.
369         (struct asm_shift_properties): New.
370         (struct asm_shift_name): New.
371         (shift_properties[]); New.
372         (shift_names[]); New.
373
374         (decode_shift): Use new structures.
375         Issue a warning is "ROR #0" is used.
376         Issue a warning if "ASR #0" or "LSR #0" is used.
377
378         (md_begin): Initialise arm_shift_hsh table from new
379         asm_shift_name array.
380
381 2000-08-16  Jakub Jelinek  <jakub@redhat.com>
382
383         * config/tc-sparc.c: Kill all warnings.
384         (md_parse_option): Set -32/-64 for -xarch=, allow all -A archs
385         in -xarch= as well.
386         (md_show_usage): Update usage text.
387
388 2000-08-16  Nick Clifton  <nickc@redhat.com>
389
390         * config/tc-arm.c (do_bx): Warn about "bx px" not being very
391         useful.
392
393 2000-08-15  Will Cohen  <wcohen@redhat.com>
394
395         * config/tc-sh.h (DWARF2_LINE_MIN_INSN_LENGTH): Defined.
396
397         * config/tc-sh.c (md_assemble): Changed so debug_type
398         test performed for ppi_assemble
399         * config/tc-sh.c: Included dwarf2dbg.h.
400         (debug_line): Defined.
401         (md_assemble): Generates dwarf2 line info.
402         (sh_finalize): New function.  Finalize dwarf2 info.
403         (assemble_ppi): Returns size of code generated.
404         (build_Mytes): Returns size of code generated.
405         (md_pseudo_table): Added "file" and "loc" psuedo ops.
406         * config/tc-sh.h (md_end): Defined.
407         (sh_finalize): Declared.
408
409 2000-08-15  Alexandre Oliva  <aoliva@redhat.com>
410
411         * config/tc-sh.c (md_apply_fix) [BFD_RELOC_32, BFD_RELOC_16]: Use
412         md_number_to_chars.
413
414 2000-08-14  Nick Clifton  <nickc@redhat.com>
415
416         * config/tc-arm.c (do_bx): Allow "bx pc".
417
418 2000-08-14  Jim Wilson  <wilson@cygnus.com>
419
420         * config/tc-ia64.c (md_longopts): Add -mconstant-gp and -mauto-pic.
421         (md_parse_option):  Add OPTION_MCONSTANT_GP and OPTION_MAUTO_PIC.
422         (md_begin): Change assignment to md.flag to OR in the new bit.
423
424 2000-08-14  Mark Elbrecht  <snowball3@bigfoot.com>
425
426         * config/obj-coff.c (obj_coff_endef) [BFD_ASSEMBLER]: Set the debug
427           flag for storage types C_ARG, C_REGPARM, C_FIELD, C_MOS, C_MOE,
428           C_MOU, and C_EOS.
429
430 2000-08-14  Jason Eckhardt  <jle@cygnus.com>
431
432         * NEWS: Mention i860 support.
433
434 Mon Aug 14 11:49:12 2000  Jeffrey A Law  (law@cygnus.com)
435
436         * config/tc-mn10300.h (DWARF2_LINE_MIN_INSN_LENGTH): Define.
437
438 2000-08-14  Andreas Schwab  <schwab@suse.de>
439
440         * doc/c-arm.texi (ARM Directives): Fix warnings from makeinfo.
441
442 2000-08-11  Andreas Schwab  <schwab@suse.de>
443
444         * doc/c-i860.texi (Opcodes for i860): Remove braces from @item
445         argument.
446
447 2000-08-11  Kazu Hirata  <kazu@hxi.com>
448
449         * expr.c: Fix formatting.
450         * config/obj-bout.c: Likewise.
451
452 2000-08-10  Jason Eckhardt  <jle@cygnus.com>
453
454         * doc/c-i860.texi: Flesh out the i860 section more.
455
456 2000-08-10  Kazu Hirata  <kazu@hxi.com>
457
458         * symbols.c: Fix formatting.
459         * expr.c: Likewise.
460
461 Wed Aug  9 16:28:21 EDT 2000    Diego Novillo <dnovillo@cygnus.com>
462
463         * tc-i386.c (md_assemble): Skip suffix check if the opcode modifier
464         has the IgnoreSize bit set.
465
466 2000-08-09  Alan Modra  <alan@linuxcare.com.au>
467
468         From  Rodney Brown  <RodneyBrown@mynd.com>
469         * configure.in: Use elf on Unixware 7 (i586-sco-sysv5uw7.1.0)
470         * configure: Regenerate.
471
472 2000-08-09  Kazu Hirata  <kazu@hxi.com>
473
474         * hash.c: Fix formatting.
475         * gasp.c: Likewise.
476
477 2000-08-08  Jason Eckhardt  <jle@cygnus.com>
478
479         * config/tc-i860.h: Rework completely for BFD_ASSEMBLER.
480         (i860_fix_info): New enum.
481         (MD_APPLY_FIX3): Define.
482         (WORKING_DOT_WORD): Define.
483         (TC_HANDLES_FX_DONE): Define.
484         (DIFF_EXPR_OK): Define.
485         (LISTING_HEADER): Define.
486         (TARGET_FORMAT): Select target format based on endian flag.
487         (TARGET_BYTES_BIG_ENDIAN): Default to little endian.
488         (target_big_endian): Add external declaration.
489
490         * config/tc-i860.c: All existing code reworked completely. Other
491         new code shown below.
492         (SYNTAX_SVR4): Define.
493         (target_warn_expand): New variable.
494         (md_shortopts): Declare and define (-Qy, -Qn, and -V options).
495         (md_longopts): Declare and define with new options (-EL, -EB,
496         and -mwarn-expand).
497         (md_show_usage): New function.
498         (md_operand): New function.
499         (obtain_reloc_for_imm16): New function.
500         (md_apply_fix3): New function.
501         (tc_gen_reloc): New function.
502
503 2000-08-08  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
504
505         * config/tc-m68hc11.c (build_jump_insn): Make sure the
506         2 bytes of the jump address are in the same frag.
507         (find): Accept 68hc12 register indirect modes.
508
509         * NEWS: Mention 68HC11 & 68HC12 support.
510
511 2000-08-07  Richard Henderson  <rth@cygnus.com>
512
513         * config/tc-ia64.c (unwind): Add prologue_mask member.
514         (dot_vframe): Elide psp_gr record if it overlaps prologue_gr.
515         (dot_save): Likewise for pfs_gr, rp_gr, and preds_gr.
516         (dot_body): Clear unwind.prologue_mask.
517         (dot_prologue): Set it.  Accept a register second argument.
518
519 2000-08-07  Kazu Hirata  <kazu@hxi.com>
520
521         * config/atof-ieee.c: Fix formatting.
522         * config/atof-tahoe.c: Likewise.
523
524 2000-08-06  Nick Clifton  <nickc@cygnus.com>
525
526         * config/tc-sparc.c (md_begin): Fix typo in recent formatting
527         work.
528
529         * doc/as.texinfo (Pseudo Ops): Update to include descriptions
530         of .popsection, .previous, .pushsection, .subsection,
531         .version, .vtable_entry, .vtable_inherit and .weak.
532
533 2000-08-05  Kazu Hirata  <kazu@hxi.com>
534
535         * config/tc-cris.c: Fix formatting.
536         * config/tc-i386.c: Likewise.
537         * config/tc-sparc.c (sparc_ip): Simplify the code.
538
539 2000-08-04  Kazu Hirata  <kazu@hxi.com>
540
541         * config/tc-cris.c: Rearrange code for readability.
542         * config/tc-d10v.c: Fix formatting.
543         * config/tc-m32r.c: Likewise.
544         * config/tc-sparc.c: Likewise.
545
546 2000-08-02  Jim Wilson  <wilson@cygnus.com>
547
548         * config/tc-ia64.c (emit_one_bundle): Call ia64_free_opcode
549         before ia64_find_opcode.
550         (md_assemble): Likewise.
551
552 2000-08-01  Nick Clifton  <nickc@cygnus.com>
553
554         * config/tc-arm.c (do_mrs): Fix skip of 'cpsr_all' flag.
555         Undo some formatting fixes.
556
557 2000-08-01  Kazu Hirata  <kazu@hxi.com>
558
559         * config/obj-som.c: Fix formatting.
560         * config/obj-ieee.c: Likewise.
561         * config/tc-arm.c: Likewise.
562         * config/tc-v850.c: Likewise.
563
564 2000-08-01  Nick Clifton  <nickc@redhat.com>
565
566         * doc/c-m68k.texi (section M680x0 Options): Turn into a table
567         index by command line option.
568
569 2000-08-01  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
570
571         * doc/c-m68k.texi (@cindex @samp{--pcrel}): Rewrite option description.
572         (@node M68K-Branch): Rewrite to match the reality.
573
574 2000-07-31  Jason Eckhardt  <jle@cygnus.com>
575
576         * doc/c-i860.texi: New file.
577         * doc/Makefile.am (CPU_DOCS): Add c-i860.texi.
578         * doc/Makefile.in: Regenerate.
579         * doc/all.texi: Add I860 as relevant architecture.
580         * doc/as.texinfo: Include i860 dependent file c-i860.texi.
581
582 2000-07-31  Kazu Hirata  <kazu@hxi.com>
583
584         * config/tc-d30v.c: Fix formatting.
585
586 2000-07-31  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
587
588         * config/tc-m68k.c (flag_keep_pcrel, OPTION_PCREL): Add --pcrel option.
589         (md_convert_frag_1, md_estimate_size_before_relax): When making DBcc
590         long emit a long branch if available instead of an absolute jump, never
591         emit absolute jumps for anything with --pcrel.
592
593         * doc/c-m68k.texi: Document new command line option.
594
595 2000-07-29  Marek Michalkiewicz  <marekm@linux.org.pl>
596
597         * config/tc-avr.c: Use PARAMS macro in function declarations.
598         Don't declare md_pcrel_from_section (already in tc-avr.h).
599         (avr_operands): Use AVR_UNDEF_P and AVR_SKIP_P macros.
600         (avr_operand): Don't set (unsigned) op_mask to -1.
601
602 2000-07-28  Jason Eckhardt  <jle@cygnus.com>
603
604         * configure.in: Add bits for i860-stardent-{sysv4, elf}*.
605         * configure: Regenerated.
606         * config/obj-elf.c (obj_elf_type): Recognize a fifth type
607         of operand to the .type directive (.e.g, "type").
608
609 2000-07-28  Alan Modra  <alan@linuxcare.com.au>
610
611         * as.h (warn_comment, found_comment, found_comment_file): Declare.
612         * app.c (do_scrub_chars): Record where first comment found.
613         * read.c (read_a_source_file): Init found_comment on entry, and
614         notify whether comments found on exit.
615         * config/tc-hppa.c (md_shortopts): Add "c".
616         (md_longopts): Add warn-comment.
617         (md_parse_option): Handle it.
618         (md_show_usage): Show available options.
619         * config/tc-hppa.h (WARN_COMMENTS): Define if TE_LINUX
620
621 Thu Jul 27 11:25:01 2000  Andrew Cagney  <cagney@b1.cygnus.com>
622
623         * config/tc-mn10300.c (md_convert_frag): Fix printfs.
624         (tc_gen_reloc): Add cast when assigning bfd_abs_symbol to
625         sym_ptr_ptr
626         (md_estimate_size_before_relax): Don't fall off end of function.
627
628 2000-07-27  Kazu Hirata  <kazu@hxi.com>
629
630         * config/tc-avr.c: Fix formatting.
631         * config/tc-ns32k.c: Likewise.
632
633 2000-07-27  Alan Modra  <alan@linuxcare.com.au>
634
635         * config/tc-d10v.c (find_opcode): Remove extraneous `='.
636
637 2000-07-27  Kazu Hirata  <kazu@hxi.com>
638
639         * config/tc-d10v.c: Fix formatting.
640         * config/tc-z8k.c: Likewise.
641         * config/tc-sparc.c: Likewise.
642
643 2000-07-26  Dave Brolley  <brolley@redhat.com>
644
645         * cgen.c (queue_fixup): Declare opinfo.
646         (gas_cgen_parse_operand): Mark unused parameters with ATTRIBUTE_UNUSED.
647         (gas_cgen_md_operand): Ditto.
648         (gas_cgen_md_apply_fix3): Ditto.
649
650 2000-07-24  Mark Elbrecht  <snowball3@bigfoot.com>
651
652         * config/obj-coff.c (obj_frob_symbol): Don't merge
653         labels. Don't merge if the symbol isn't constant. Return
654         immediately if a symbol is merged.
655
656 2000-07-22  Alan Modra  <alan@linuxcare.com.au>
657
658         * frags.c (frag_align): Correct absolute section alignment.
659
660 2000-07-20  DJ Delorie  <dj@redhat.com>
661
662         * config/obj-coff.c (obj_frob_symbol): revert previous change,
663         it breaks linking against DLLs.
664
665 2000-07-20  Hans-Peter Nilsson  <hp@axis.com>
666
667         * configure.in: Add CRIS support.
668         * configure: Regenerate.
669         * Makefile.am: (CPU_TYPES): Add cris.
670         (CPU_OBJ_VALID) [aout]: Add cris.
671         (MULTI_CPU_TYPES): Add cris.
672         (MULTI_CPU_OBJ_VALID) [aout]: Add cris.
673         [coff]: Only i386 and mips are valid.
674         (TARGET_CPU_CFILES): Add config/tc-cris.c.
675         (TARGET_CPU_HFILES): Add config/tc-cris.h.
676         (MULTI_CFILES): Add config/e-crisaout.c and config/e-criself.c.
677         Regenerate dependencies.
678         * Makefile.in: Regenerate.
679         * aclocal.m4: Regenerate.
680         * as.c: Declare crisaout, criself.
681         * config/tc-cris.h, config/tc-cris.c: New.
682         * config/e-criself.c, config/e-crisaout.c: New.
683         * po/POTFILES.in, po/gas.pot: Regenerate.
684
685 2000-07-20  Kazu Hirata  <kazu@hxi.com>
686
687         * read.c: Fix formatting.
688         * write.c: Fix formatting.
689
690 2000-07-19  H.J. Lu  <hjl@gnu.org>
691
692         * sb.c: Include <stdlib.h> if exists for abort ().
693
694 2000-07-19  Alan Modra  <alan@linuxcare.com.au>
695
696         * config/tc-hppa.c (hppa_fix_adjustable): Correct LR%/RR% comment.
697         (arg_reloc_stub_needed): #ifdef OBJ_SOM, not #ifdef SOM.
698         (pa_type_args): Same here.
699
700 2000-07-17  Mark Elbrecht  <snowball3@bigfoot.com>
701
702         * config/obj-coff.c (obj_frob_symbol): Don't merge labels. Don't
703         merge if the symbol isn't constant. Don't call S_SET_EXTERNAL if
704         the storage class is already set.
705
706 2000-07-17  Kazu Hirata  <kazu@hxi.com>
707
708         * config/tc-m68hc11.c: Fix formatting.
709         * config/tc-mn10200.c: Likewise.
710         * config/tc-mn10300.c: Likewise.
711         * config/tc-pj.c: Likewise.
712         * config/tc-tic80.c: Likewise.
713         * config/tc-w65.c: Likewise.
714
715 2000-07-17  Frank Ch. Eigler  <fche@redhat.com>
716
717         * expr.c (operand): Permit %bin literals if LITERAL_PREFIXPERCENT_BIN
718         is defined.
719
720 2000-07-15  Ian Lance Taylor  <ian@zembu.com>
721
722         * doc/c-mips.texi (MIPS Opts): Remove erroneous space after
723         @code.
724
725 2000-07-15  Alan Modra  <alan@linuxcare.com.au>
726
727         * config/tc-hppa.c (hppa_fix_adjustable): Use the same checks for
728         ELF as are used for SOM (except the 32-bit reloc one) to decide
729         whether a symbol can be reduced to a section symbol.  Expand on
730         the comment for symbols involved in LR% and RR% expressions.
731
732 2000-07-14  Nick Clifton  <nickc@cygnus.com>
733
734         * config/tc-mips.c (mips_disable_float_construction): New
735         static variable.  Set to true if doubles should not be
736         constructed by loading two single width fp registers with
737         halves of the value.
738         (mips_ip): Test mips_disable_float_construction.
739         (md_longopts): Add command line switches --construct-floats
740         and --no-construct-floats.
741         (md_parse_option): Parse new command line options.
742         (md_show_usage): Describe new command line options.
743
744         * doc/c-mips.texi: Document new command line options.
745
746 2000-07-13  Koundinya K  <kk@ddeorg.soft.net>
747
748         * configure.in: Remove the test /usr/dde for mips-*-sysv4*MP*
749         * configure: Regenerate.
750
751 2000-07-13  Hans-Peter Nilsson  <hp@axis.com>
752
753         * configure.in (DEFAULT_EMULATION setting): Revert part of
754         2000-07-01 change that set te_multi=multi unless set to tmips.
755         * configure: Regenerate.
756
757 2000-07-12  Mark Elbrecht  <snowball3@bigfoot.com>
758
759         * config/obj-coff.c (coff_frob_section): Add padding to the last
760           section when aligning it increases its size.
761
762 2000-07-11  Kazu Hirata  <kazu@hxi.com>
763
764         * config/tc-tic54x.c: Fix formatting.
765
766 2000-07-10  Kazu Hirata  <kazu@hxi.com>
767
768         * config/tc-h8500.c: Fix formatting.
769         * config/tc-tic54x.c: Fix formatting.
770
771 2000-07-10  Alan Modra  <alan@linuxcare.com.au>
772
773         * config/tc-hppa.c (md_apply_fix): Check fmt 12 and 22 pc-rel
774         displacements correctly.
775
776         * read.h (s_abort): Add ATTRIBUTE_NORETURN.
777
778 2000-07-10  Ryan Bradetich  <rbradetich@uswest.net>
779
780         * hash.c (hash_insert): Add cast to obstruct_alloc to fix
781         warning.
782         (hash_jam): Ditto.
783
784 2000-07-09  Alan Modra  <alan@linuxcare.com.au>
785
786         From  David Huggins-Daines  <dhd@linuxcare.com>
787         * config/te-hppalinux64.h: Add a new emulation.
788         * configure.in (emulations): Add configure bits to support the
789         64-bit Linux/parisc target.
790         * configure: Regenerate.
791
792         * config/tc-hppa.c (md_parse_option): Support `-V' for ELF.
793         (md_shortopts): Add `V' for ELF.
794
795         * config/tc-hppa.c (arg_reloc_stub_needed): Define as zero except
796         when SOM or ELF_ARG_RELOC are defined.
797         (pa_type_args): Only set symbol_arg_reloc_info when SOM or
798         ELF_ARG_RELOC are defined.
799         (pa_stringer_aux): Don't pa_check_current_space_and_subspace here..
800         (pa_stringer): ..Do it here instead.  Fix comment typos.
801         (hppa_force_relocation): Cast enums to int before comparing with
802         ints.
803
804         From  Ryan Bradetich  <rbradetich@uswest.net>
805         * config/tc-hppa.c: Removed unneeded libbfd.h to fix macro
806         redifinition warning.
807         (md_apply_fix): Added cast from enum to int for fixP->fx_r_type.
808         (hppa_force_relocation): ditto
809         (md_apply_fix): Added cast to buf to fix warnings.
810
811         * config/tc-hppa.h (pa_define_label, parse_cons_expression_hppa,
812         cons_fix_new_hppa, hppa_force_relocation): Prototype.
813
814         * config/tc-hppa.c (reloc_type): It's an enum for OBJ_ELF.
815         (R_N0SEL, R_N1SEL): Define only for OBJ_SOM.
816         (tc_gen_reloc): Make `code' a reloc_type and `codes' a
817         reloc_type** to avoid warnings in switch.
818         (md_apply_fix): Make insn, val signed.  Zap buf_wd and read insn a
819         little earlier instead.
820
821         * config/tc-hppa.c (symbol_arg_reloc_info): Define for both som
822         and elf.
823         (pa_type_args): Use symbol_arg_reloc_info.
824         (struct pa_it): Make arg_reloc unsigned int.
825         (struct hppa_fix_struct): Likewise for fx_arg_reloc.
826         (pa_text, pa_data, pa_comm): Don't compile for TE_LINUX.
827         (pa_code): Delete.  pa_text duplicates this function.
828         (md_pseudo_table): Call obj_elf_text for ".code" if TE_LINUX.
829         (fix_new_hppa): Argument offset is offsetT, arg_reloc is unsigned
830         int.
831         (cons_fix_new_hppa): Actually change selector to e_fsel when
832         warning about assuming so.
833         (tc_gen_reloc): More example elf arg reloc code.
834         (md_apply_fix): Use arg_reloc_stub_needed for elf too.
835         (hppa_force_relocation): Likewise.
836
837         * config/tc-hppa.h: Use TARGET_ARCH_SIZE to select target include
838         files.
839         (pa_end_of_source): Prototype.
840         (hppa_fix_adjustable): Prototype.
841         (LABELS_WITHOUT_COLONS): Move it..
842         * config/te-hppa.h: To here.
843
844         * config/te-hppa64.h: New file.
845
846         * config/tc-hppa.c: Use TARGET_ARCH_SIZE to select target reloc
847         type.
848         (md_apply_fix): Pass stdoutput to bfd_hppa_insn2fmt.  Handle
849         format -10, -16, 16 relocs.
850         (hppa_elf_mark_end_of_function): Test for null
851         last_call_info->start_symbol
852
853         * config/tc-hppa.c (pa_ip): In case 'V', pass `strict' to
854         CHECK_FIELD, not INSERT_FIELD_AND_CONTINUE.  Don't pass opcode to
855         re_assesmble_* functions.  Delete extraneous statements.  Fix
856         typos in comments.
857         (md_apply_fix): Compare against 1048575 in case 21.  Don't pass
858         insn to re_assemble_*.
859
860 2000-07-08  Ulf Carlsson  <ulfc@engr.sgi.com>
861
862         * doc/internals.texi (Expressions): Fix typo.
863
864 2000-07-08  Kazu Hirata  <kazu@hxi.com>
865
866         * config/tc-sh.c: Fix formatting.
867         * config/tc-tic54x.c: Fix formatting.
868         * depend.c: Fix formatting.
869         * flonum-konst.c: Likewise.
870         * flonum-mult.c: Likewise.
871
872 2000-07-07  Kazu Hirata <kazu@hxi.com>
873
874         * config/tc-sh.c: Fix comments.
875         * config/obj-vms.c: Fix comments.
876         * config/tc-a29k.c: Likewise.
877         * config/tc-alpha.c: Likewise.
878         * config/tc-h8300.c: Likewise.
879         * config/tc-h8500.c: Likewise.
880         * config/tc-i370.c: Likewise.
881         * config/tc-ia64.c: Likewise.
882         * config/tc-m68hc11.c: Likewise.
883         * config/tc-m68k.c: Likewise.
884         * config/tc-mips.c: Likewise.
885         * config/tc-ns32k.c: Likewise.
886         * config/tc-ppc.c: Likewise.
887         * config/tc-z8k.c: Likewise.
888
889 2000-07-06  Mark Elbrecht  <snowball3@bigfoot.com>
890
891         * config/obj-coff.c (TC_COFF_SECTION_DEFAULT_ATTRIBUTES): New.
892         Default to '(SEC_LOAD | SEC_DATA)'.
893         (obj_coff_section) [BFD_ASSEMBLER]: Use it.
894
895         * doc/internals.texi (CPU Backend): Describe
896         TC_COFF_SECTION_DEFAULT_ATTRIBUTES.
897
898 Thu Jul  6 17:20:58 2000  Andrew Cagney  <cagney@b1.cygnus.com>
899
900         * as.c (parse_args): NULL terminate the long option list.
901
902 Tue Jul  4 14:08:28 2000  Andrew Cagney  <cagney@b1.cygnus.com>
903
904         * config/tc-d30v.h: Include "write.h" for fixS.
905         (d30v_start_line, md_pcrel_from_section): Add function prototypes.
906
907 2000-07-05  Nick Clifton  <nickc@cygnus.com>
908
909         * config/tc-d30v.c (write_2_short): Further changes to warning
910         messages produced when combining EITHER_BUT_PREFER_MU attributed
911         opcodes.
912
913 2000-07-05  DJ Delorie  <dj@redhat.com>
914
915         * MAINTAINERS: new
916
917 2000-07-04  Alexandre Oliva  <aoliva@redhat.com>
918
919         * config/tc-arm.c (psrs): Accept combinations of flags.
920
921 2000-07-03  Marek Michalkiewicz  <marekm@linux.org.pl>
922
923         * config/tc-avr.c: Change _ () to _() around all strings marked
924         for translation (exception from the usual coding style).
925         (avr_opt): New struct variable, how the new switches are set.
926         (OPTION_MMCU): Define as 'm' and actually use.
927         (md_longopts): Add -mall-opcodes, -mno-skip-bug, -mno-wrap.
928         (show_mcu_list): New function, display the list of known MCUs.
929         (md_show_usage): Document the new switches.  Call show_mcu_list.
930         (avr_set_arch): Change 'm' to OPTION_MMCU.
931         (md_parse_option): Call show_mcu_list if unknown MCU specified.
932         Handle the new switches.
933         (avr_operands): Disable warnings for undefined combinations of
934         operands if -mall-opcodes.  Disable warnings for skipping two-word
935         instructions if enhanced core or -mno-skip-bug.
936         (avr_operand): Accept all addressing modes on avr1 if -mall-opcodes.
937         (md_apply_fix3): Reject 8K wrap if >8K or -mno-wrap.
938         (md_assemble): Accept opcodes not supported by MCU if -mall-opcodes.
939         (avr_ldi_expression): Warn about implicit lo8().
940         * config/tc-avr.h (md_pcrel_from_section): Add prototype.
941
942 2000-07-01  Koundinya K  <kk@ddeorg.soft.net>
943
944         * configure.in: Add entry for mips-*-sysv4*MP*
945         * configure: Rebuild
946         * config/tc-mips.c (mips_target_format): Return elf32-tradbigmips or
947         elf32-tradlittlemips for traditional mips targets.
948         * config/tc-mips.c (md_estimate_size_before_relax): Duplicate the
949         test for Link Once sections as in adjust_reloc_syms.
950         * config/te-tmips.h: New file for traditional mips targets. Define
951         TE_TMIPS.
952
953 2000-06-29 Mark Elbrecht <snowball3@bigfoot.com>
954
955         * config/obj-coff.c (obj_coff_setcion) [BFD_ASSEMBLER]: If the
956         flags argument is not present, don't change an existing section's
957         section's attributes. If the flags argument is present, warn if the
958         attributes don't match the section's current attributes. When
959         long section names are supported, set SEC_LINK_ONCE and
960         SEC_LINK_DUPLICATES_DISCARD for a new .gnu.linkonce section.
961
962 Thu Jun 29 21:30:00 2000  Hans-Peter Nilsson  <hp@axis.com>
963
964         * config/obj-aout.c (obj_aout_type): Do not ignore for undefined
965         symbols; create them.
966
967 2000-06-29 Mark Elbrecht <snowball3@bigfoot.com>
968
969         * write.c (set_segment_vma): New: Set vma and lma for a segment.
970         (write_object_file) [BFD_ASSEMBLER && OBJ_COFF && TE_GO32]: Use it.
971
972 2000-06-27  Aldy Hernandez  <aldyh@redhat.com>
973
974         * config/tc-mips.c (mips_ip): handle "(foo-.-4)" type of
975         expressions.  Ignore the problem when handling 16 bit signed
976         immediates, because the assembler will take care of the relocation
977         later.
978
979 2000-06-27  Nick Clifton  <nickc@cygnus.com>
980
981         * config/tc-d30v.c (write_2_short): Do not allow opcodes with
982         the EITHER_BUT_PREFER_MU attribute to be combined into a reverse
983         sequential order, and emit warning messages if the input source
984         code contains constructs like that, or parallel constructs
985         containing such opcodes.
986
987 2000-06-26  Marek Michalkiewicz  <marekm@linux.org.pl>
988
989         * config/tc-avr.c (mcu_types): Rename avr4 to avr5, add avr4.
990         Add more MCU types for avr4 and avr5.  Replace at94k{10,20,40}
991         with just at94k.  Change AVR_ISA_85xx back to AVR_ISA_2xxx.
992         (md_show_usage): Update usage message.
993         (md_parse_option): Allow redefinition of MCU type within the
994         same avr[1-5] bfd machine type.  Show both old and new MCU type
995         in the error message.
996         (md_apply_fix3): Support 8K wrap if AVR_ISA_MEGA is not set.
997         Simplify 8K wrap code.
998
999 2000-06-25  Kazu Hirata  <kazu@hxi.com>
1000
1001         * config/obj-aout.c: Remove all uses of DEFUN.
1002         * config/obj-ieee.c: Likewise.
1003         * config/tc-sh.c: Fix comment typos.
1004         * config/tc-tahoe.c: Likewise.
1005         * config/tc-vax.c: Likewise.
1006         * config/tc-w65.c: Likewise.
1007         * config/tc-z8k.c: Likewise.
1008         * config/tc-h8300.c (build_bytes): Assemble ldmac correctly.
1009
1010 2000-06-24  DJ Delorie  <dj@cygnus.com>
1011
1012         * config/tc-i386.c (md_estimate_size_before_relax): Revert
1013         more changes from Sept 1999
1014         (tc_i386_fix_adjustable): ditto
1015         (md_apply_fix3): ditto
1016
1017 2000-06-24  Frank Ch. Eigler  <fche@redhat.com>
1018
1019         * cgen.c (expr_jmp_buf_p): New validity flag for expr_jmp_buf.
1020         (gas_cgen_parse_operand): Set it around expression() call.
1021         (gas_cgen_md_operand): Test for it before longjmp().
1022
1023 2000-06-24  Kazu Hirata  <kazu@hxi.com>
1024
1025         * config/tc-h8500.c: Remove all uses of DEFUN.
1026         * config/tc-sh.c: Likewise.
1027         * config/tc-w65.c: Likewise.
1028         * config/tc-z8k.c: Likewise.
1029
1030         * config/tc-h8500.c: Fix typos in comments.
1031
1032 2000-06-23  Frank Ch. Eigler  <fche@redhat.com>
1033
1034         * expr.c (operand): Permit $hex literals if LITERAL_PREFIXDOLLAR_HEX
1035         is defined.
1036
1037 2000-06-23  matthew green  <mrg@redhat.com>
1038
1039         * expr.c (operand): Do not as_bad() if RELAX_PAREN_GROUPING is
1040         defined.  Fix error message for `[' grouping.
1041
1042 2000-06-22  Kazu Hirata  <kazu@hxi.com>
1043
1044         * config/tc-h8300.c: Fix formatting and comment typos.
1045
1046 2000-06-22  Timothy Wall  <twall@cygnus.com>
1047
1048         * config/tc-ia64.c (note_register_values): Move premature QP
1049         notation clearing into the appropriate place.
1050
1051 2000-06-22  Alan Modra  <alan@linuxcare.com.au>
1052
1053         * dep-in.sed: Escape literal `.'s on patterns.  Trim off `../'
1054         first before anything else.  Add bin-bugs.h, emul.h and progress.h
1055         Sort list of files as for $(OBJS) in Makefile.am.
1056
1057         * Makefile.am (DEP): grep for leading `/' in DEPA, and fail if we
1058         find one.  Remake dependencies.
1059         ($(OBJS)): Add bin-bugs.h, emul.h, and progress.h  Sort the list.
1060         * Makefile.in: Regenerate.
1061         * doc/Makefile.in: Regenerate.
1062
1063         * config/tc-i386.c (i386_displacement): Don't assume a constant
1064         displacement is necessarily 16 bits when in 16 bit code mode.
1065         (md_assemble): Instead size the displacement here after we know
1066         for sure that a .code16gcc operand hasn't automatically added
1067         operand size prefixes.
1068
1069 2000-06-21  H.J. Lu  <hjl@gnu.org>
1070
1071         * Makefile.am: Rebuild dependency.
1072         * Makefile.in: Rebuild.
1073
1074 2000-06-21  Kazu Hirata  <kazu@hxi.com>
1075
1076         * config/tc-h8300.c (parse_reg): Make the function static.
1077         (parse_exp): Likewise.
1078
1079 2000-06-20  DJ Delorie  <dj@cygnus.com>
1080
1081         * config/tc-i386.c (tc_i386_fix_adjustable): Revert change from
1082         Sept 1999; RVA relocs need to be treated more like DIR32 relocs
1083         for cygwin import libraries to work properly.
1084
1085 2000-06-20  H.J. Lu  <hjl@gnu.org>
1086
1087         * Makefile.am: Rebuild dependency.
1088         * Makefile.in: Rebuild.
1089         * configure: Likewise.
1090         * doc/Makefile.in: Likewise.
1091
1092 2000-06-20  Timothy Wall  <twall@cygnus.com>
1093
1094         * doc/internals.texi (CPU backend): Add @itemx for
1095         TC_START_LABEL_WITHOUT_COLON.
1096         * doc/c-tic54x.texi: New.
1097         * doc/as.texinfo: Add tic54x features and include primary tic54x
1098         documentation file.
1099         * doc/all.texi: Add C54X.
1100         * doc/Makefile.am (CPU_DOCS): Add c-tic54x.texi.
1101         * doc/Makefile.in: Regenerate.
1102         * configure.in: Add tic54x and define LIBM for tic54x.
1103         * configure: Regenrate.
1104         * config/tc-tic54x.[ch]: New.
1105         * config/obj-coff.h: Add tic54x.
1106         * Makefile.am: (CPU_TYPES): Add tic54x.
1107         (TARGET_CPU_CFILES): Add 'tc-tic54x.c'.
1108         (TARGET_CPU_HFILES): Add 'tc-tic54x.h'.
1109         (as_new_LDADD): Add $(LIBM).
1110         * Makefile.in: Regenerate.
1111
1112 2000-06-18  Stephane Carrez  <stcarrez@worldnet.fr>
1113
1114         * doc/Makefile.am (CPU_DOCS): Added 68hc11 file.
1115         * doc/c-m68hc11.texi: Document 68HC11 and 68HC12 port.
1116         * doc/as.texinfo: Likewise.
1117
1118         * configure, Makefile.in: Regenerate.
1119         * configure.in (emulations): Recognize m6811 and m6812.
1120         * Makefile.am (CPU_TYPES, TARGET_CPU_CFILES, TARGET_CPU_HFILES):
1121         Added files for 68hc11 and 68hc12 assembler.
1122         * config/tc-m68hc11.c: Assembler for 68hc11 and 68hc12.
1123         * config/tc-m68hc11.h: Header definition for that assembler.
1124
1125 2000-06-18  Nick Clifton  <nickc@redhat.com>
1126
1127         * symbols.c (resolve_symbol_value): Use bfd_octets_per_byte
1128         instead of OCTETS_PER_BYTE.
1129
1130         * config/tc-v850.c: Fix compile time warnings.
1131         * config/tc-ppc.c: Fix compile time warnings.
1132
1133 2000-06-18  H.J. Lu <hjl@gnu.org>
1134
1135         * configure.in: Don't emulate i386-pc-pe-coff with i386coff.
1136         * configure: Rebuild.
1137
1138 2000-06-17 Mark Elbrecht <snowball3@bigfoot.com>
1139
1140         * config/obj-coff.c (obj_coff_weak): Typo fix: Change BFD_ASSEMLER
1141         to BFD_ASSEMBLER.
1142
1143 2000-06-16  Nick Clifton  <nickc@cygnus.com>
1144
1145         * config/tc-mips.c (md_parse_option): Accept RM5200,RM5230,
1146         RM5231, RM5261, RM5721 and RM7000 as r5000 cpu variants.
1147
1148         * doc/c-mips.texi: Document newly accepted cpu variants.
1149
1150 2000-06-15  Ulf Carlsson  <ulfc@engr.sgi.com>
1151
1152         * config/tc-mips.h: Remove definition of ONLY_STANDARD_ESCAPES.
1153
1154 2000-06-13  Ulf Carlsson  <ulfc@engr.sgi.com>
1155
1156         * macro.c (getstring): Make it possible to escape the quote
1157         character.
1158
1159 Tue Jun 13 20:58:28 2000  Catherine Moore <clm@redhat.com>
1160
1161         * config/tc-hppa.c (pa_export): Weak symbols can be global.
1162
1163 2000-06-13  H.J. Lu  <hjl@gnu.org>
1164
1165         * configure: Regenerate.
1166
1167 2000-06-09  Alan Modra  <alan@linuxcare.com.au>
1168
1169         * app.c (do_scrub_begin): Don't default lex[';'] as a line
1170         separator.
1171         * doc/internals.texi (line_separator_chars): Semicolon is no
1172         longer a default.  Mention null and newline as defaults.
1173
1174         * read.c (is_end_of_line): Remove ifdef TC_HPPA.
1175
1176         * config/tc-i386.h (line_separator_chars): Explicitly mention `;'
1177         * config/tc-i860.h (line_separator_chars): Likewise.
1178         * config/tc-h8300.c (line_separator_chars): Likewise.
1179         * config/tc-i960.c (line_separator_chars): Likewise.
1180         * config/tc-m68k.c (line_separator_chars): Likewise.
1181         * config/tc-mips.c (line_separator_chars): Likewise.
1182         * config/tc-ns32k.c (line_separator_chars): Likewise.
1183         * config/tc-sparc.c (line_separator_chars): Likewise.
1184         * config/tc-vax.c (line_separator_chars): Likewise.
1185
1186         * config/tc-h8300.c (comment_chars): Use string initialiser.
1187         * config/tc-i960.c (line_comment_chars): Likewise.
1188         * config/tc-z8k.c (comment_chars, line_comment_chars,
1189         line_separator_chars): Likewise.
1190
1191         * config/tc-arm.c (line_separator_chars): Always use `;', not just
1192         for TE_LINUX.
1193
1194 2000-06-08  Nick Clifton  <nickc@cygnus.com>
1195
1196         * config/tc-arm.c (cons_fix_new_arm): Assign correct reloc value
1197         for size 1 fixes.
1198
1199 2000-06-08  David O'Brien  <obrien@FreeBSD.org>
1200
1201         * configure.in (VERSION): Update to show this is the CVS mainline.
1202
1203 2000-06-08  Matthew Jacob  <mjacob@feral.com>
1204
1205         * config/tc-alpha.c (md_undefined_symbol): Properly understand that
1206         $at is the integer register $r28, vs. both $r28 and the floating
1207         point register $f28.
1208
1209 2000-06-08  James E. Wilson  <wilson@cygnus.com>
1210
1211         * config/tc-ia64.c (generate_unwind_image): Call ia64_flush_insns.
1212         (dot_endp): Don't call ia64_flush_insns.
1213         (emit_one_bundle): Don't delete prologue/body records from
1214         unwind_record list in first loop.  Rewrite second loop to account for
1215         this.
1216
1217 2000-06-07  David Mosberger  <davidm@hpl.hp.com>
1218
1219         * config/tc-ia64.c: Add missing prototypes.
1220         (generate_unwind_image): Cast argument to output_unw_records call.
1221
1222 Wed Jun  7 22:44:14 2000  Denis Chertykov  <denisc@overta.ru>
1223
1224         * config/tc-avr.c (avr_operand): fix the formatting of the comment.
1225
1226 Wed Jun  7 21:26:15 2000  Denis Chertykov  <denisc@overta.ru>
1227
1228         * config/tc-avr.c (AVR_ISA_???): moved to include/opcode/avr.h
1229         (REGISTER_P): likewise.
1230         (avr_opcodes): uses include/opcode/avr.h
1231         (avr_operand): enable ld r,Z or st r,Z for at90s1200.
1232
1233 2000-06-04  Alan Modra  <alan@linuxcare.com.au>
1234
1235         * read.c (is_end_of_line): No ';' for TC_HPPA.  Add missing
1236         initializers too.
1237
1238 2000-06-03  H.J. Lu  <hjl@gnu.org>
1239
1240         * read.c (is_end_of_line): Put back `;'.
1241
1242 2000-06-03  Alan Modra  <alan@linuxcare.com.au>
1243
1244         * config/tc-i386.c (md_shortopts): Remove 'm', add 'q' to non-elf.
1245
1246 2000-06-01  Alan Modra  <alan@linuxcare.com.au>
1247
1248         * expr.c (operand): Test is_end_of_line outside switch to catch
1249         line separator chars that are also operators.
1250         (operator): Return O_illegal for line separator chars.
1251
1252         * read.c (is_end_of_line): Use 1 instead of 99.  Don't set `;'
1253         entry (or `!' entry for TC_HPPA).
1254
1255         * config/tc-arm.c (my_get_float_expression): Cast to unsigned char
1256         before indexing is_end_of_line.  Remove redundant check for '\0'.
1257         (fp_op2): Likewise.
1258         * config/tc-h8500.c (md_assemble): Likewise.
1259         * config/tc-mcore.c (md_assemble): Likewise.
1260         * config/tc-tic30.c (tic30_find_parallel_insn): Likewise.
1261         (md_atof): Likewise
1262
1263         * config/tc-m88k.c (s_bss): Cast to unsigned char before indexing
1264         is_end_of_line.
1265         * config/tc-mcore.c (mcore_cons): Likewise.
1266         (mcore_float_cons): Likewise.
1267         (mcore_stringer): Likewise.
1268         * config/tc-tic30.c (tic30_find_parallel_insn): Likewise.
1269
1270 2000-06-01  Scott Bambrough <scottb@netwinder.org>
1271
1272         * config/tc-arm.c (do_mrs): Allow SPSR_BIT to be set correctly.
1273
1274 2000-05-29  Nick Clifton  <nickc@cygnus.com>
1275
1276         * config/tc-sh.c: Fix compile time warning messages.
1277
1278         * config/tc-mips.c: Fix compile time warning messages.
1279
1280 2000-05-29  Philip Blundell  <philb@gnu.org>
1281
1282         * doc/as.texinfo: Update copyright dates.
1283         (Local Labels): Delete misplaced mention of ARM.
1284         * NEWS: Mention ARM ELF support.
1285
1286 2000-05-27  Alexandre Oliva  <aoliva@cygnus.com>
1287
1288         * config/tc-mn10300.c (md_assemble): Copy size to real_size before
1289         it is modified, and use the real_size to compute the frag address
1290         for dwarf2 line info.
1291
1292 2000-05-27  Alan Modra  <alan@linuxcare.com.au>
1293
1294         * Makefile.am (DEP, DEP1, dep, dep-in, dep-am): Use a better sed
1295         line-matching scheme to cope with automake moving variables around.
1296         ($(TARG_CPU_O)): Remove dependency on TARG_CPU_DEP_@target_cpu_type@
1297         * Makefile.in: Regenerate.
1298
1299 2000-05-26  Jakub Jelinek  <jakub@redhat.com>
1300
1301         * config/tc-sparc.c (sparc_relax): New.
1302         (md_longopts): Add -relax and -no-relax options.
1303         (md_parse_options, md_show_usage): Likewise.
1304         (md_apply_fix3): Optimize tail call into branch always if possible.
1305
1306 Thu May  4 15:27:07 2000  Donald Lindsay  <dlindsay@cygnus.com>
1307
1308         * config/tc-d10v.c (write_2_short, parallel_ok, md_assemble,
1309         d10v_cleanup) implement Mitsubishi's newly explained branch-packing
1310         rules, with warning when a GAS statement specifies a packing that
1311         will result in an instruction being squashed.
1312         Added typdef packing_type and enumerals, changed various integer
1313         literals to use the enumerals.
1314
1315 2000-05-24  David Mosberger  <davidm@hpl.hp.com>
1316
1317         * config/tc-ia64.c (dot_restorereg_p): New function.
1318         (md_pseudo_table): Add restorereg.p.
1319         (output_X3_format): Fix typo: record type should be UNW_X3, not UNW_X1.
1320         (output_X4_format): Fix typo: record type should be UNW_X4, not UNW_X2.
1321
1322         * config/tc-ia64.h (unw_record_type): Add unwabi.
1323         (unw_r_record): Rename member MASK to GRMASK.  Add sub-structure
1324         called MASK with members for imask, and the masks produced by
1325         fr_mem, gr_mem, br_mem, and frgr_mem.
1326         (unw_p_record): Add members ABI and CONTEXT.
1327         (unw_x_record): Add member AB.
1328         * config/tc-ia64.c (enum reg_symbol): Add REG_PSP and REG_PRIUNAT
1329         as pseudo-register for use during unwind info generation.
1330         (AR_PFS, AR_LC): New macros.
1331         (enum pseudo_type): Add PSEUDO_FUNC_REG to permit declaring registers
1332         whose names start with an at sign (as in "@priunat").
1333         (pseudo_func): Add "svr4", "hpux", "nt" constants and "priunat"
1334         register.
1335         (unwind_list, unwind_tail, current_unwind_entry, proc_start,
1336         proc_end, unwind_info, personality_routine): Consolidate into
1337         "unwind" structure to reduce offset-table use.  Add member
1338         NEXT_SLOT_NUMBER to track the slot number for the next instruction
1339         to be emitted.
1340         (output_R1_format, output_R3_format, output_P3_format,
1341         output_P6_format): Initialize R with zero to reduce compiler warnings.
1342         (output_P7_format): Ditto.  Add `default' branch to switch
1343         statement to reduce compiler warnings.
1344         (output_P8_format, output_B1_format, output_B4_format): Ditto.
1345         (output_P4_format): Rename 2nd & 3rd arg to IMASK and IMASK_SIZE.
1346         (format_ab_reg): Rename from format_a_b_reg.  Merge A and B args
1347         into single argument.
1348         (output_X1_format, output_X3_format): Initialize R with zero to reduce
1349         compiler warnings.  Merge A and B args into single argument.
1350         (output_X2_format, output_X4_format): Remove unused variable R.  Merge
1351         A and B args into single argument.
1352         (free_record): Removed (wasn't used).
1353         (free_list_records): Also free imasks in prologue records.
1354         (output_prologue, output_prologue_gr): Initialize mask bits to zero.
1355         (output_spill_mask): Remove.
1356         (output_unwabi): New function.
1357         (output_epilogue, output_label_state, output_copy_state): Call
1358         alloc_record.
1359         (output_spill_psprel, output_spill_sprel, output_spill_psprel_p,
1360         output_spill_sprel_p, output_spill_reg, output_spill_reg_p): Add AB
1361         argument.
1362         (process_one_record): New locals FR_MASK and GR_MASK.  Ignore
1363         gr_mem, fr_mem, br_mem, and frgr_mem records and instead emit them
1364         as part of handling the prologue records.  Emit region's imask if
1365         we have one.  Handle unwabi, epilogue, label_state, copy_state,
1366         spill_psprel, spill_sprel, spill_reg, spill_psprel_p,
1367         spill_sprel_p, and spill_reg_p records.
1368         (set_imask, count_bits, slot_index): New function.
1369         (fixup_unw_records): Fix region size computation.  Handle
1370         epilogue, spill_reg, spill_sprel, spill_psprel, spill_reg_p,
1371         spill_sprel_p, and spill_psprel_p records.  Merge mask bits of
1372         frgr_mem, fr_mem, gr_mem, br_mem on a per-region basis and
1373         set_imask accordingly.  Update imask for gr_gr, and br_gr records.
1374         (convert_expr_to_ab_reg, convert_expr_to_xy_reg): New function.
1375         (dot_save): Use manifest constants for applicaton registers.
1376         Handle REG_PR and REG_PRIUNAT.
1377         (dot_restore): Don't just ignore it.
1378         (dot_restorereg): New function..
1379         (generate_unwind_image): Ensure unwind info is a multiple of eight
1380         bytes, not just four bytes.
1381         (dot_handlerdata, dot_unwentry): Demand empty rest of line.
1382         (dot_altrp): Don't just ignore it.
1383         (dot_savemem): New function.  Replaces dot_savesp() and
1384         dot_savepsp().  Use manifest constants for applicaton registers.
1385         Handle REG_PR and REG_PRIUNAT.
1386         (dot_savef): Simplify.
1387         (dot_saveb): Support generation of br_gr.
1388         (dot_spillreg, dot_spillmem, dot_spillreg_p, dot_spillmem_p,
1389          dot_label_state, dot_copy_state): New function.
1390         (dot_unwabi): Don't just ignore it.
1391         (md_pseudo_table): Add restorereg, spillreg, spillsp, spillpsp,
1392         spillreg.p, spillsp.p, spillpsp, label_state, copy_state,
1393         unwabi, vframesp, and vframepsp.  Fix typo alprp->altrp.
1394         (emit_one_bundle): Set slot number for prologue/body records
1395         *before* emitting the first insn.
1396         (emit_one_bundle): Set UNWIND.NEXT_SLOT_NUMBER.
1397         (md_begin): Declare "psp" pseudo-register.
1398         (md_operand): Handle PSEUDO_FUNC_REG.  Fix printing of error message
1399         so we don't get segfault.
1400         (output_psp_sprel): Output sp/psp relative offsets as 4-byte word
1401         counts as required per SW Conventions manual
1402         (output_rp_psprel, output_rp_sprel, output_pfs_psprel,output_pfs_sprel,
1403         output_preds_psprel, output_preds_sprel, output_spill_base,
1404         output_unat_psprel, output_unat_sprel, output_lc_psprel,
1405         output_lc_sprel, output_fpsr_psprel, output_fpsr_sprel,
1406         output_priunat_psprel, output_priunat_sprel, output_bsp_psprel,
1407         output_bsp_sprel, output_bspstore_psprel, output_bspstore_sprel,
1408         output_rnat_psprel, output_rnat_sprel, output_spill_psprel,
1409         output_spill_sprel, output_spill_psprel_p, output_spill_sprel_p):Ditto.
1410         (dot_vframe): Implement.
1411         (dot_vframesp, dot_vframepsp): New function.
1412
1413 Tue May 23 00:57:05 2000  Hans-Peter Nilsson  <hp@axis.com>
1414
1415         * configure.in (i386-*-freebsd a.out entry): Quote properly.
1416         * configure: Regenerate.
1417
1418 2000-05-23  Alan Modra  <alan@linuxcare.com.au>
1419
1420         * config/tc-i386.c (md_assemble): Pass jump reloc in fr_var...
1421         (md_estimate_size_before_relax): so we can use it here instead of
1422         old kludges.  Localise vars to blocks.  Comment.
1423
1424         * frags.c (frag_new): Update fr_var comments.
1425         * frags.h (struct frag): Ditto.
1426
1427 2000-05-22  Richard Henderson  <rth@cygnus.com>
1428
1429         * config/tc-ia64.c (FUNC_PC_RELATIVE): New.
1430         (pseudo_func): Add pcrel.
1431         (operand_match):  Handle IA64_OPND_TGT64.
1432         (build_insn): Likewise.
1433         (md_begin): Initialize pseudo_func[FUNC_PC_RELATIVE].
1434         (ia64_gen_real_reloc_type): Handle FUNC_PC_RELATIVE.
1435         (fix_insn): Handle all three 64-bit relocation types.
1436
1437 Mon May 22 22:43:32 2000  Hans-Peter Nilsson  <hp@axis.com>
1438
1439         * obj.h (struct format_ops): New members begin, app_file,
1440         s_set_other, s_set_desc, s_get_type, s_set_type,
1441         separate_stab_sections, init_stab_section.
1442
1443         * config/obj-multi.h: Update GPL notice to v2.
1444         (obj_begin): New.
1445         (obj_app_file): New.
1446         (S_SET_SIZE): Test s_set_size for NULL before calling.
1447         (S_SET_ALIGN): Similar for s_set_align.
1448         (S_SET_OTHER): New.
1449         (S_SET_DESC): New.
1450         (S_GET_TYPE): New.
1451         (S_SET_TYPE): New.
1452         (SEPARATE_STAB_SECTIONS): New.
1453         (INIT_STAB_SECTION): New.
1454         (EMIT_SECTION_SYMBOLS): New.
1455         (AOUT_STABS) [OBJ_MAYBE_AOUT]: Define.
1456
1457         * config/obj-elf.h: Update GPL notice to v2.
1458         Mention that this file is included from obj-multi.h.
1459         (obj_begin): Wrap definition in ifndef.
1460         (elf_file_symbol): Constify declaration.
1461         (obj_app_file): Ditto.
1462         (SEPARATE_STAB_SECTIONS, INIT_STAB_SECTION, OBJ_PROCESS_STAB):
1463         Wrap in ifndef SEPARATE_STAB_SECTIONS.
1464
1465         * config/obj-elf.c (elf_s_set_other): New.
1466         (elf_file_symbol): Constify argument.
1467         (elf_separate_stab_sections): New.
1468         (elf_init_stab_section): New.
1469         (elf_format_ops): Add new members.  Remove comma at end.
1470
1471         * config/obj-ecoff.c (ecoff_separate_stab_sections): New.
1472         (ecoff_format_ops): Add new fields.  Remove comma at end.
1473         Mention inconsistency for emit_section_symbols.
1474
1475         * config/obj-coff.h (c_dot_file_symbol): Constify declaration.
1476
1477         * config/obj-coff.c (c_dot_file_symbol): Constify argument.
1478         (coff_separate_stab_sections): New.
1479         (coff_format_ops): Add new members.
1480
1481         * config/obj-aout.c (obj_aout_sec_sym_ok_for_reloc): New.
1482         (obj_aout_s_set_other): New.
1483         (obj_aout_s_set_desc): New.
1484         (obj_aout_s_get_type): New.
1485         (obj_aout_s_set_type): New.
1486         (obj_aout_separate_stab_sections): New.
1487         (aout_format_ops): New members added.  Use obj_aout_process_stab,
1488         not 0.  Use obj_aout_sec_sym_ok_for_reloc, not 0.
1489         (obj_aout_frob_symbol): Add ATTRIBUTE_UNUSED to args as
1490         appropriate.
1491         (obj_aout_line, obj_aout_weak, obj_aout_type): Ditto.
1492
1493 2000-05-22  Alan Modra  <alan@linuxcare.com.au>
1494
1495         * config/tc-i386.c (tc_i386_fix_adjustable): Prevent adjustment
1496         for OBJ_MAYBE_ELF too.  Use S_IS_EXTERNAL instead of S_IS_EXTERN.
1497         (md_estimate_size_before_relax): Ensure jumps to weak and
1498         externally visible symbols are relocatable.
1499
1500 Sat May 20 16:41:55 2000  Hans-Peter Nilsson  <hp@axis.com>
1501
1502         * stabs.c (aout_process_stab): Make global.
1503         (s_desc): Add ATTRIBUTE_UNUSED to args as appropriate.
1504         * read.h (aout_process_stab): Declare.
1505
1506         * configure.in (EMULATIONS) [i386aout, i386coff, i386elf]:
1507         Generalize to *aout, *coff *elf.
1508         * configure: Regenerated.
1509
1510         * doc/internals.texi (Object format backend): Say
1511         SEPARATE_STAB_SECTIONS needs to be nonzero, not just defined.
1512
1513         * Makefile.am (TARG_ENV_HFILES): Delete te-multi.h.
1514         * Makefile.in: Regenerated.
1515
1516 2000-05-19  Catherine Moore  <clm@cygnus.com>
1517
1518         * cgen.h (GAS_CGEN_MAX_FIXUPS): Check if already defined.
1519
1520 2000-05-18  Alan Modra  <alan@linuxcare.com.au>
1521
1522         * config/tc-hppa.c (md_apply_fix): Mask out immediate bits of
1523         instruction to reflect change in re_assemble_*.
1524
1525 Thu May 18 10:52:14 2000  Jeffrey A Law  (law@cygnus.com)
1526
1527         * configure.in (hppa-*-hpux11*): If the cpu is hppa*64*, then
1528         build PA64 ELF tools.
1529         * configure: Rebuilt.
1530
1531 2000-05-17  Alan Modra  <alan@linuxcare.com.au>
1532
1533         * Makefile.am: Regenerate dependencies.
1534         * Makefile.in: Regenerate.
1535
1536 2000-05-15  Nick Clifton  <nickc@cygnus.com>
1537
1538         * config/tc-arm.c (struct asm_psr): Add boolean field
1539         distinguishing between CSPR and SPSR.  Rename 'number' field
1540         to 'field'.
1541         (psrs): Rearrange contents to match new asm_psr structure.
1542         (arm_psr_parse): Move next to psr_required_here.  Make it
1543         return an asm_psr structure.
1544         (psr_required_here): Use asm_psr structure returned by
1545         arm_psr_parse.
1546         (do_msr): Reorganise to allow psr_required_here to be called
1547         only once.
1548         (md_undefined_name): Mark 'name' parameter as unused, since
1549         the COFF target does not use it.
1550
1551 2000-05-14  David O'Brien  <obrien@FreeBSD.org>
1552
1553         * config/te-386bsd.h:  Clean up comments to adhere to the GNU coding
1554         standards.
1555         * config/te-aux.h:  Likewise.
1556         * config/te-dpx2.h:  Likewise.
1557         * config/te-go32.h:  Likewise.
1558         * config/te-hp300.h:  Likewise.
1559         * config/te-hppa.h:  Likewise.
1560         * config/te-i386aix.h:  Likewise.
1561         * config/te-ic960.h:  Likewise.
1562         * config/te-interix.h:  Likewise.
1563         * config/te-nbsd532.h:  Likewise.
1564         * config/te-pc532mach.h:  Likewise.
1565         * config/te-ppcnw.h:  Likewise.
1566         * config/te-psos.h:  Likewise.
1567         * config/te-sparcaout.h:  Likewise.
1568         * config/te-sun3.h:  Likewise.
1569         * config/te-sysv32.h:  Likewise.
1570
1571 2000-05-14  Alan Modra  <alan@linuxcare.com.au>
1572
1573         * config/tc-h8300.c (do_a_fix_imm): Don't rely on `short' being 16
1574         bits.  Instead explicitly mask and sign extend.  Do the 8 bit mask
1575         and sign extend without an if statement.
1576         (build_bytes): Likewise.
1577
1578 2000-05-14  Kazu Hirata  <kazu@hxi.com>
1579
1580         * config/tc-h8300.c (do_a_fix_imm): Output a reloc for no
1581         X_add_symbol L_32 case.
1582
1583 2000-05-14  David O'Brien  <obrien@FreeBSD.org>
1584
1585         * config/te-freebsd.h: New file.
1586
1587 2000-05-13  Alan Modra  <alan@linuxcare.com.au>
1588
1589         * asintl.h (gettext, dgettext, dcgettext, textdomain,
1590         bindtextdomain): Replace defines with those from intl/libgettext.h
1591         to quieten gcc warnings.
1592
1593         * NEWS: Mention x86 .arch and -q.
1594
1595         * config/tc-i386.c (quiet_warnings): New.
1596         (md_assemble): Use quiet_warnings.
1597         (md_parse_option): Set quiet_warnings from -q.
1598         (md_show_usage): Mention -q, delete -m.
1599         (flag_do_long_jump): Delete.
1600         (md_parse_option): Remove -m.
1601         (md_show_usage): Remove -m.
1602         (md_create_long_jump): Remove useless flag_do_long_jump code.
1603
1604         * as.c (parse_args): In case OPTION_DEFSYM, use a valueT to hold
1605         the symbol value, and use bfd_scan_vma if BFD_ASSEMBLER.
1606
1607 2000-05-13  Alan Modra  <alan@linuxcare.com.au>
1608             Alexander Sokolov <robocop@netlink.ru>
1609
1610         * doc/c-i386.texi (i386-Arch): New section.
1611         (i386-Syntax): Mention .intel_syntax and .att_syntax.
1612
1613         * config/tc-i386.c (cpu_arch_name, cpu_arch_flags): New.
1614         (smallest_imm_type): Use smallest opcode for shift by one if cpu
1615         architecture has been given and is not 486.
1616         (set_cpu_arch): New.
1617         (md_pseudo_table): Add .arch.
1618         (md_assemble): Warn if cpu architecture has been given and an
1619         unsupported instruction.
1620
1621         * config/tc-i386.h (SMALLEST_DISP_TYPE): Delete.
1622         Move operand_types bit defines after relevant template field.
1623         (template): Add cpu_flags.
1624         (Cpu*): Define.
1625         (arch_entry): New.
1626
1627 2000-05-12  Alexandre Oliva  <aoliva@cygnus.com>
1628
1629         * config/tc-mn10300.h (md_end): Define.
1630         (mn10300_finalize): Declare.
1631         * config/tc-mn10300.c: Include dwarf2dbg.h.
1632         (debug_line): Define.
1633         (md_assemble): Generate dwarf2 line info.
1634         (mn10300_finalize): New function.  Finalize dwarf2 info.
1635
1636 2000-05-11  Ulf Carlsson  <ulfc@engr.sgi.com>
1637
1638         * config/tc-mips.c (md_estimate_size_before_relax): Use the
1639         external version of the relocation for weak symbols.
1640
1641 2000-05-08  David Mosberger  <davidm@hpl.hp.com>
1642
1643         * config/tc-ia64.c (output_P7_format, case mem_stack_f): Output fixed
1644         frame size in units of 16 bytes, as required per SW Conventions manual.
1645         (output_unw_records): Output info-block header as a dword to get
1646         byte-order right.
1647
1648 2000-05-08  Alan Modra  <alan@linuxcare.com.au>
1649
1650         * as.h: #include "file", not <file> on files from ../include.
1651         (as_abort, as_fatal): Add ATTRIBUTE_NORETURN.
1652         * config/tc-m68k.c (m68k_ip): Fix signed/unsigned warnings.
1653         (md_convert_frag): Add ATTRIBUTE_UNUSED.
1654         (tc_coff_symbol_emit_hook): Ditto.
1655         (OPTCOUNT): Cast to int to avoid compiler warning.
1656         (md_begin): Fix signed/unsigned warnings.
1657
1658 2000-05-08  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
1659
1660         * config/tc-m68k.c (md_convert_frag_1): Abort if we end up in the
1661         ABRANCH LONG case for a conditional branch on a 68000.
1662         (md_estimate_size_before_relax): Likewise.  Also handle
1663         flag_short_refs correctly for ABRANCH, BCC68000, and DBCC.
1664         (m68k-ip: case ABSL): Relax absolute references to 16-bit
1665         PC-relative on all CPUs.
1666         (md_estimate_size_before_relax): Likewise.
1667
1668 2000-05-04  Alan Modra  <alan@linuxcare.com.au>
1669
1670         * as.c (parse_args): Just mention current year in printed
1671         copyright message.
1672
1673 2000-05-03  J.T. Conklin  <jtc@redback.com>
1674
1675         * config/tc-ppc.c (pre_defined_registers): Add entries for vector
1676         unit registers.
1677         (md_parse_option): Recognize -m7400.
1678
1679 2000-05-03  Ian Lance Taylor  <ian@zembu.com>
1680
1681         * config/atof-ieee.c (gen_to_words): When adding carry back in,
1682         don't permit lp to become less than the words array.
1683
1684 2000-05-03  Rodney Brown  <RodneyBrown@pmsc.com>
1685
1686         config/tc-mcore.c (md_apply_fix3): BFD_RELOC_MCORE_PCREL_IMM11BY2
1687         Fix little-endian case.
1688
1689 2000-05-03  David O'Brien  <obrien@NUXI.com>
1690
1691         * as.c (parse_args): Update copyright.
1692
1693 2000-05-03  Mark Elbrecht  <snowball3@bigfoot.com>
1694
1695         * gas/config/tc-i386.h (SUB_SEGMENT_ALIGN): If TE_GO32, return 4
1696         for the .bss section too.
1697
1698 2000-05-02  Alan Modra  <alan@linuxcare.com.au>
1699
1700         * configure.in: Set em=linux for hppa-*-linux.
1701         * configure: Regenerate.
1702         * doc/Makefile.in: Regenerate with correct automake.
1703
1704         * frags.c (frag_grow): Sanity check chunk_size.
1705
1706         * config/obj-elf.h: #include "bfd.h" not <bfd.h>
1707         * config/obj-som.h: Likewise.
1708         * config/obj-ieee.h: Likewise.
1709
1710         * config/tc-hppa.h: Test BFD_ARCH_SIZE, not BFD64.
1711
1712         * config/tc-hppa.c (log2): Only compile when OBJ_SOM.
1713         (md_pseudo_table): Fully initialise OBJ_ELF cases.
1714         (fix_new_hppa): Add ATTRIBUTE_UNUSED to args as appropriate.
1715         (pa_ip): low_sign_unext now returns via function value.  Use
1716         re_assemble_* instead of dis_assemble_* and
1717         INSERT_FIELD_AND_CONTINUE combination.  Don't call sign_unext
1718         unnecessarily.
1719         (md_convert_frag): Add ATTRIBUTE_UNUSED to args as appropriate.
1720         (md_section_align, md_parse_option, md_show_usage,
1721         md_undefined_symbol, pa_align, pa_block, pa_brtab, pa_try,
1722         pa_callinfo, pa_code, pa_comm, pa_end, pa_enter, pa_entry,
1723         pa_exit, pa_export, pa_import, pa_label, pa_leave, pa_level,
1724         pa_origin, pa_param, pa_proc, pa_procend, pa_space, pa_spnum,
1725         pa_version, pa_compiler, pa_copyright, pa_data, pa_fill, pa_lsym,
1726         pa_text): Likewise.
1727         (md_apply_fix): Change type of new_val to offsetT.  Delete w1, w2,
1728         w, resulti.  Add insn, val.  Move bfd_get_32 and bfd_put_32
1729         outside of switch.  Correct mask and shifting errors in case 10
1730         and case -11.  In case 21, compare against signed range to suit
1731         hppa_field_adjust changes.  In case 12, use re_assemble_12.  In
1732         case 17 and case 22, use offsetT variable to properly check range.
1733         Use re_assemble_* here too.
1734         (evaluate_absolute): Change type of value to offsetT.  Call
1735         hppa_field_adjust to do the work for us.
1736         (pa_parse_cmpb_64_cmpltr): Delete save_s.
1737         (pa_parse_cmpib_64_cmpltr): Ditto.
1738         (pa_build_unwind_subspace): Delete unused var subseg.  Change type
1739         of i to unsigned int.
1740         (pa_type_args): Conditionally declare symbol if OBJ_SOM.
1741         (pa_end_of_source): Return type is void.
1742
1743 Mon May  1 08:54:23 2000  Catherine Moore  <clm@cygnus.com>
1744
1745         * macro.c (macro_expand_body): Don't prepend macro number with zeroes.
1746
1747 Mon May  1 14:19:39 2000  Denis Chertykov  <denisc@overta.ru>
1748
1749         * config/tc-avr.c: ATTRIBUTE_UNUSED added to the necessary places.
1750         More comments added.
1751         (md_begin): Removed "construct symbols for each register name".
1752         Because register names conflicts with GCC generated function
1753         names.
1754         (avr_operand): Now constant numbers can be used as a register
1755         identifiers (0 as r0, 31 as r31).
1756         (md_assemble): use skip_space () before parsing instruction
1757         operands.
1758
1759 2000-05-01  Alan Modra  <alan@linuxcare.com.au>
1760
1761         * configure.in: Set bfd_gas=yes on i386-*-pe and i386-*-nt* to
1762         ensure all pe targets use bfd.  Remove unnecessary bfd_gas=yes on
1763         arm-*-netbsd* and arm-*-wince as this is set for all arm*.
1764         * configure: Regenerate.
1765
1766 2000-04-29  Andreas Jaeger  <aj@suse.de>
1767
1768         * as.h: Correctly check GCC version.
1769
1770 2000-04-26  David O'Brien  <obrien@FreeBSD.org>
1771
1772         * doc/as.1: Fix unbalanced brackets.
1773
1774         * config/tc-i386.c (comment_chars): Don't use '/' as comment start if
1775         TE_FreeBSD.
1776         (line_comment_chars): Set to '/' if TE_FreeBSD.
1777
1778 Tue Apr 25 11:02:02 2000  Jeffrey A Law  (law@cygnus.com)
1779
1780         * configure.in: Configury support for PA64 (currently disabled).
1781         * configure: Rebuilt.
1782
1783 2000-04-25  Machida Hiroyuki  <machida@sm.sony.co.jp>
1784
1785         * config/tc-mips.c (s_change_sec): Use record_alignment, not
1786         bfd_set_section_alignment.
1787
1788 2000-04-25  Alan Modra  <alan@linuxcare.com.au>
1789
1790         * config/tc-i386.c (offset_in_range): Ensure shift counts are less
1791         than 32.
1792
1793 2000-04-24  Nick Clifton  <nickc@cygnus.com>
1794
1795         * doc/c-arm.texi (ARM Directives): Document behaviour of .align 0.
1796         * doc/as.texinfo (Align): Include arm and strongarm in list of
1797         targets that have the second form of the behaviour of the .align
1798         directive.
1799
1800 2000-04-24  Mark Klein <mklein@dis.com>
1801
1802          * obj-som.c: Terminate obj_pseudo_table.
1803
1804 Mon Apr 24 15:21:11 2000  Clinton Popetz  <cpopetz@cygnus.com>
1805
1806         * as.c (parse_args): Allow md_parse_option to override -a listing
1807         option.
1808         * config/obj-coff.c (add_lineno): Change type of offset parameter
1809         from "int" to "bfd_vma."
1810         * config/tc-ppc.c (md_pseudo_table): Add "llong" and "machine."
1811         (ppc_mach, ppc_subseg_align, ppc_target_format): New.
1812         (ppc_change_csect): Align correctly for XCOFF64.
1813         (ppc_machine): New function, which discards "ppc_machine" line.
1814         (ppc_tc): Cons for 8 when code is 64 bit.
1815         (md_apply_fix3): Don't check operand->insert.  Handle 64 bit
1816         relocations.
1817         (md_parse_option): Handle -a64 and -a32.
1818         (ppc_xcoff64): New.
1819         * config/tc-ppc.h (TARGET_MACH): Define.
1820         (TARGET_FORMAT): Move to function.
1821         (SUB_SEGMENT_ALIGN): Use ppc_subseg_align.
1822
1823 Sun Apr 23 16:45:45 2000  Denis Chertykov  <denisc@overta.ru>
1824
1825         * config/tc-avr.c: New AVR_ISA_ defined.
1826         (md_assemble): Handle opcodes with optional operands (lpm,elpm).
1827         (avr_operand): Handle 'a', 'v' and 'z' constraint letters needed
1828         for `fmul', `movw' and `lpm R,Z' instructions.
1829         (avr_operands): Warn if current opcode is a two-word instruction
1830         and previous opcode was cpse/sbic/sbis/sbrc/sbrs.
1831         (avr_opcodes): New commands added.
1832         (REGISTER_P): Check 'a' and 'v' constraint letters.
1833         (mcu_types): New MCU added.
1834
1835 2000-04-22  Timothy Wall  <twall@cygnus.com>
1836
1837         * config/tc-ia64.c (pseudo_func[]): Add new "nat" entry equivalent
1838         to "natval".
1839         (operand_match): Conditionally insert default bit values for IMMU9.
1840
1841 2000-04-14  Matthew Green  <mrg@cygnus.com>
1842
1843         * configure.in: Add NetBSD/sparc ELF and NetBSD/sparc64 support.
1844         * configure: Rebuilt.
1845
1846 Fri Apr 21 14:29:43 2000  Jeffrey A Law  (law@cygnus.com)
1847                           Jason Eckhardt  <jle@cygnus.com>
1848
1849         * config/tc-hppa.c (md_apply_fix): Handle new PA2.0 formats.
1850
1851         * config/tc-hppa.c (CHECK_ALIGN): New macro.
1852         Added handling of new operand types l,y,&,fe,fE,fx.
1853
1854 Fri Apr 21 13:20:53 2000  Richard Henderson  <rth@cygnus.com>
1855                           David Mosberger  <davidm@hpl.hp.com>
1856                           Timothy Wall <twall@cygnus.com>
1857                           Andrew MacLeod  <amacleod@cygnus.com>
1858                           Jim Wilson  <wilson@cygnus.com>
1859
1860         * Makefile.am (CPU_TYPES): Add ia64.
1861         (TARGET_CPU_CFILES): Add config/tc-ia64.c.
1862         (TARGET_CPU_HFILES): Add config/tc-ia64.h.
1863         * Makefile.in: Rebuild.
1864         * app.c (do_scrub_chars): Handle DOUBLESLASH_COMMENTS.
1865         * configure: Rebuild.
1866         * configure.in: Recognize ia64 as cpu type.  Set bfd_gas.
1867         (ia64-*-elf*, ia64-*-linux-gnu*): New targets.
1868         * expr.c (expr): Handle md_optimize_expr.
1869         * read.c (LEX_HASH): Add comment.
1870         * config/tc-ia64.c, config/tc-ia64.h: New files.
1871
1872 2000-04-21  Richard Henderson  <rth@cygnus.com>
1873
1874         * config/tc-d30v.c (write_2_short): Disregard opcode1->ecc when
1875         bundling a non-delayed branch type instruction.
1876
1877 2000-04-20  Alexandre Oliva  <aoliva@cygnus.com>
1878
1879         * config/tc-mn10300.c (HAVE_AM30): Define.
1880         (md_assemble): Use it.
1881
1882 2000-04-19  Alan Modra  <alan@linuxcare.com.au>
1883
1884         * config/obj-elf.c (obj_elf_change_section): Check for changed
1885         section attributes.
1886
1887         * Makefile.am: (CPU_MULTI_VALID): Remove.
1888         (MULTI_CPU_TYPES): Define.
1889         (MULTI_CPU_OBJ_VALID): Define.
1890         (DEPTC): Use the above.
1891         (DEPOBJ): Same here.
1892         (DEP2): And here.
1893         Regenerate dependencies.
1894         * Makefile.in: Regenerate.
1895
1896 2000-04-19  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
1897
1898         * Makefile.am (YACC, LEX): Get them from configure.
1899
1900 2000-04-18  H.J. Lu  (hjl@gnu.org)
1901
1902         * config/tc-i386.c (offset_in_range): Use addressT instead of
1903         bfd_vma for non-bfd assemblers.
1904
1905 2000-04-17  Alan Modra  <alan@linuxcare.com.au>
1906
1907         * config/tc-i386.c (offset_in_range): Sign extend val so BFD64
1908         doesn't give spurious errors.
1909
1910 2000-04-14  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
1911
1912         * as.h (SEEK_SET): Define if undefined.
1913
1914 2000-04-13  Alan Modra  <alan@linuxcare.com.au>
1915
1916         * config/tc-arm.c (md_apply_fix3): Don't use UL suffix on
1917         constants, and don't assume offsetT is 32 bits.
1918
1919 2000-04-12  Andrew Cagney  <cagney@b1.cygnus.com>
1920
1921         * config/tc-d10v.h: Include "write.h" to get definition of fixS.
1922         (md_pcrel_from_section): Add prototype.
1923         (d10v_fix_adjustable): Add prototype.
1924         (d10v_force_relocation): Replace 'struct fix' with 'fixS'.
1925
1926         * config/tc-d10v.c (md_apply_fix3): Add paren around &&.
1927
1928 2000-04-12  Nick Clifton  <nickc@cygnus.com>
1929
1930         * config/tc-d10v.c (find_opcode): Correctly calculate position of
1931         symbol in frag chain.
1932
1933 2000-04-10  Alan Modra  <alan@linuxcare.com.au>
1934
1935         * config/tc-i386.c (fits_in_signed_byte): Change arg to offsetT.
1936         (fits_in_unsigned_byte, fits_in_unsigned_word): Ditto.
1937         (fits_in_signed_word, smallest_imm_type): Ditto.
1938         (md_assemble): Use an offsetT var to hold offsetT values, not a
1939         long.
1940         (offset_in_range): New.
1941         (md_assemble): Use it.
1942         (md_convert_frag): Change type of target_address, opcode_address,
1943         and displacement_from_opcode_start to offsetT.
1944         (md_create_short_jump): Change type of offset to offsetT.
1945         (md_create_long_jump): Ditto.
1946         (md_apply_fix3): Use -4, not 0xfffffffc for BFD_RELOC_386_PLT32.
1947         (md_chars_to_number): Remove.
1948         (output_invalid): Remove duplicate prototype.
1949
1950 2000-04-09  Nick Clifton  <nickc@cygnus.com>
1951
1952         * Makefile.am (CPU_TYPES): Add 'avr'.
1953         (TARGET_CPU_CFILES): Add 'tc-avr.c'.
1954         (TARGET_CPU_HFILES): Add 'tc-avr.h'.
1955
1956         * Makefile.in: Regenerate.
1957
1958         * doc/as.texinfo: Add M32R documentation.
1959
1960 Fri Apr  7 15:56:57 2000  Andrew Cagney  <cagney@b1.cygnus.com>
1961
1962         * configure.in (WARN_CFLAGS): Set to -W -Wall by default.  Add
1963         --enable-build-warnings option.
1964         * Makefile.am (AM_CFLAGS, WARN_CFLAGS): Add definitions.
1965         * Makefile.in, configure: Re-generate.
1966
1967 2000-04-07  Nick Clifton  <nickc@cygnus.com>
1968
1969         * config/tc-arm.c (md_apply_fix3): Treat BFD_RELOC_ARM_PCREL_BLX
1970         in the same way as BFD_RELOC_ARM_PCREL_BRANCH, and
1971         BFD_RELOC_THUMB_PCREL_BLX lie BFD_RELOC_THUMB_PCREL_BRANCH.
1972         (tc_gen_reloc): Accept BFD_RELOC_{ARM|THUMB}_PCREL_BLX.
1973         (arm_force_relocation): Force relocations for
1974         BFD_RELOC_{ARM|THUMB}_PCREL_BLX as well.
1975
1976 Wed Apr  5 22:26:32 2000  J"orn Rennecke <amylaar@cygnus.co.uk>
1977
1978         * config/tc-sh.c (get_operands): There's no third operand if the
1979         first operand is an immediate.
1980
1981 Wed Apr  5 22:07:19 2000  J"orn Rennecke <amylaar@cygnus.co.uk>
1982
1983         * config/tc-sh.c (immediate): Delete.
1984         (sh_operand_info): Add immediate member.
1985         (parse_reg): Use A_PC for pc.
1986         (parse_exp): Add second argument 'op'.  All callers changed.
1987         (parse_at): Expect pc to be coded as A_PC.
1988         Use immediate field in *op.
1989         (insert): Add fourth argument 'op'.  All callers changed.
1990         (build_relax): Add second argument 'op'.  All callers changed.
1991         (insert_loop_bounds): New function.
1992         (build_Mytes): Remove DISP_4.
1993         Split IMM_[48]{,BY[24]} into IMM[01]_[48]{,BY[24]}.  Add REPEAT.
1994         (assemble_ppi): Use immediate field in *operand.
1995         (sh_force_relocation): Handle BFD_RELOC_SH_LOOP_{START,END}.
1996         (md_apply_fix): Likewise.
1997         (tc_gen_reloc): Likewise.  Check for a pcrel BFD_RELOC_SH_LABEL.
1998
1999 Wed Apr  5 06:35:45 2000  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
2000
2001         * config/tc-sparc.c (sparc_ip): Avoid string pasting.
2002
2003 Tue Apr  4 19:27:50 2000  Hans-Peter Nilsson  <hp@axis.com>
2004
2005         * internals.texi (CPU backend): Document
2006         TC_CHECK_ADJUSTED_BROKEN_DOT_WORD.
2007
2008 2000-04-04  Alan Modra  <alan@linuxcare.com.au>
2009
2010         * po/gas.pot: Regenerate.
2011
2012         * as.c (show_usage): Restore translated part of bug string.
2013         * gasp.c (show_usage): Likewise.
2014
2015         * Makefile.am (MKDEP): Use gcc -MM rather than ../mkdep.
2016         (DEP): Quote when passing vars to sub-make.  Use "mv -f" rather
2017         than move-if-change.
2018         (DEP1): Modify for "gcc -MM".
2019         (DEPTC): Likewise.
2020         (DEPOBJ): Likewise.
2021         (DEP2): Likewise.
2022         (CLEANFILES): Add DEPTCA, DEPOBJA, DEP2a, DEPA.
2023         Update dependencies.
2024         * Makefile.in: Regenerate.
2025
2026 2000-04-03  Alexandre Oliva  <aoliva@cygnus.com>
2027
2028         * config/tc-mn10300.c (md_pseudo_table): Use constant names.
2029         (md_begin): Likewise.
2030         (HAVE_AM33): New macro.
2031         (md_assemble): Use it.  Match r_regs and xr_regs only if
2032         HAVE_AM33.
2033
2034 2000-04-03  Alan Modra  <alan@linuxcare.com.au>
2035
2036         * as.h: #include "bin-bugs.h"
2037         * as.c (show_usage): Use REPORT_BUGS_TO.
2038         * gasp.c: #include "bin-bugs.h"
2039         (show_usage): Use REPORT_BUGS_TO.
2040
2041         * config/tc-sparc.c (md_show_usage): Add a trailing newline.
2042
2043 Mon Apr  3 13:56:03 2000  Hans-Peter Nilsson  <hp@axis.com>
2044
2045         * write.c (write_object_file) [! WORKING_DOT_WORD]: If defined,
2046         call TC_CHECK_ADJUSTED_BROKEN_DOT_WORD for each word after
2047         adjustments.
2048
2049 2000-04-03  Alan Modra  <alan@linuxcare.com.au>
2050
2051         * config/tc-i386.c (i386_immediate): Don't assume a constant
2052         immediate is necessarily 16 bits when in 16 bit code mode.
2053         (md_assemble): Instead set guess_suffix here after we have checked
2054         registers.
2055
2056 2000-04-02  Richard Henderson  <rth@cygnus.com>
2057
2058         * config/tc-d30v.c (check_range): Allow signed or unsigned 32-bit
2059         quantities.  Correct right shift sign extension.
2060         (build_insn): Make `number' unsigned long.  Mask top 6 bits of
2061         32-bit value when shifting into place.
2062
2063 2000-04-01  Ian Lance Taylor  <ian@zembu.com>
2064
2065         * app.c: Add ATTRIBUTE_UNUSED as needed.
2066         * config/tc-ppc.c: Likewise.
2067         (ppc_size): Make unsigned long.
2068         (ppc_insert_operand): Add casts to avoid warnings.
2069
2070 2000-03-31  Nick Clifton  <nickc@cygnus.com>
2071
2072         * config/tc-d10v.h (md_flush_pending_output): Define.
2073
2074 2000-03-29  Nick Clifton  <nickc@cygnus.com>
2075
2076         * config/tc-sh.h (SEG_NAME): New macro: return the name of a
2077         segment.  Works for both BFD_ASSEMBLER and others.
2078         (SUB_SEGMENT_ALIGN): Use SEG_NAME.
2079
2080 2000-03-29  Nick Clifton <nickc@cygnus.com
2081
2082         * config/tc-arm.c (tinsns): Add "bal" instruction pattern.
2083
2084 2000-03-28  Alan Modra  <alan@linuxcare.com.au>
2085
2086         * listing.c (LISTING_LHS_WIDTH): Default depends on
2087         LISTING_WORD_SIZE.
2088         (LISTING_LHS_WIDTH_SECOND): Default to LISTING_LHS_WIDTH.
2089
2090 2000-03-27  Ian Lance Taylor  <ian@zembu.com>
2091
2092         * config/tc-sh.c (md_show_usage): Use backslash before newline in
2093         string literal.
2094
2095 2000-03-27  Alan Modra  <alan@linuxcare.com.au>
2096
2097         * config/tc-avr.h (TC_HANDLES_FX_DONE): Define.
2098
2099         * config/tc-avr.c (mcu_types): Add missing initialiser.
2100         (md_pcrel_from_section): Add prototype.
2101         (avr_operand): Remove redundant test of unsigned < 0.
2102         (avr_cons_fix_new): Ensure exp_mod_pm zero on function exit.
2103
2104 2000-03-27  Denis Chertykov  <denisc@overta.ru>
2105
2106         * config/tc-avr.c: New file for AVR support.
2107         * config/tc-avr.h: Likewise.
2108         * configure.in: Add AVR support.
2109         * configure: Regenerate.
2110
2111 2000-03-26  Timothy Wall <twall@cygnus.com>
2112
2113         * gasp.c (macro_op): Add new argument to check_macro call.
2114         Macro structure definitions moved to macro.h
2115         * sb.h:  Add argument to prototype for input_scrub_include_sb.
2116         * input-scrub.c (input_scrub_include_sb): Allow disabling of sb
2117         nesting checks with an additional flag.
2118         (struct input_save): Add flag to indicate whether current sb
2119         should be checked for proper macro/conditional nesting.
2120         (input_scrub_push/pop): Save/restore nest check flag.
2121         (input_scrub_next_buffer): Ditto.  Also call end of macro hook if
2122         defined.
2123         * macro.c (check_macro):  Allow caller to retrieve parsed macro
2124         information if a pointer is provided.  This information may be
2125         used by the new macro hooks.
2126         * macro.h: Update prototype for check_macro.  Macro struct
2127         definitions moved here from macro.c/gasp.c.
2128         * read.c (read_a_source_file): Add parameter to check_macro call,
2129         and pass macro info to the macro hook, if defined.
2130         (input_scrub_insert_line): New.  Allow insertion of a line of
2131         characters into the input stream.
2132         (input_scrub_insert_file): New.  Allow insertion of an arbitrary
2133         file into the input stream.
2134         (s_include): Use input_scrub_insert_file.
2135         * internals.texi: Document new macro hooks.
2136         * as.h: New prototypes added.
2137
2138 2000-03-26  Alan Modra  <alan@linuxcare.com.au>
2139
2140         * config/tc-i386.c: Don't start any as_bad or as_warn message with
2141         an initial capital letter.
2142         (i386_index_check): Reindent.
2143
2144 2000-03-19  Nick Clifton  <nickc@cygnus.com>
2145
2146         * config/tc-arm.c (md_apply_fix3): Fix bug detecting overflow of pc
2147         relative branches.
2148
2149 2000-03-17 Thomas de Lellis <tdel@windriver.com>
2150
2151         * config/tc-arm.c (do_t_adr): Flag "adr Rd,label"
2152         instruction operand bad if Rd > 7 when generating
2153         thumb instructions. Prevents for example,
2154         "adr r12,label" from silently failing and generating
2155         the wrong instruction.
2156
2157 2000-03-17  Nick Clifton  <nickc@cygnus.com>
2158
2159         * config/tc-arm.c (md_apply_fix3): Handle same-section relocations
2160         that have a destingation >= 0x400000.
2161         Fix compile time warning messages.
2162
2163 Thu Mar 16 23:45:16 2000  J"orn Rennecke <amylaar@cygnus.co.uk>
2164
2165         * config/tc-sh.c (md_begin): When encountering insn that are
2166         not supported by the current arch, only change the name if
2167         its contents are the same as prev_name.
2168         (get_specific): If the the architecture doesn't match, fail.
2169
2170 Thu Mar 16 21:18:13 2000  J"orn Rennecke <amylaar@cygnus.co.uk>
2171
2172         * config/tc-sh.c (IDENT_CHAR): Define.
2173         (parse_reg): Use it instead of isalnum.  Put r[0..7]_bank operand
2174         matching back where it came from.
2175
2176 Thu Mar 16 20:58:10 2000  J"orn Rennecke <amylaar@cygnus.co.uk>
2177
2178         * config/tc-sh.c (md_show_usage): Add description of -dsp.
2179
2180 2000-03-15  Jonathan Larmour  <jlarmour@redhat.co.uk>
2181
2182         * config/tc-sh.c (parse_reg): Match r[0..7]_bank operands before
2183         normal operands.
2184
2185 2000-03-15  Kazu Hirata  <kazu@hxi.com>
2186
2187         * config/tc-h8300.c: Add ATTRIBUTE_UNUSED as appropriate.
2188
2189 Mon Mar 13 22:02:59 2000  Hans-Peter Nilsson  <hp@axis.se>
2190
2191         * expr.c (operand) [case 'f']: When testing if '0f' can start a
2192         floating-point-number, make sure 'f' is in FLT_CHARS.
2193
2194 Sat Mar 11 00:01:39 2000  Hans-Peter Nilsson  <hp@axis.se>
2195
2196         * read.c (TC_IMPLICIT_LCOMM_ALIGNMENT): New default-definition.
2197         (s_lcomm_internal): Use it.
2198         * doc/internals.texi (CPU backend): Document it.
2199         * config/obj-evax.h (TC_IMPLICIT_LCOMM_ALIGNMENT): Set to 2**3
2200         bytes.
2201
2202 2000-03-10  Geoffrey Keating  <geoffk@cygnus.com>
2203
2204         * config/tc-mips.c (mips_ip): Don't put stuff in .rodata
2205         when embedded-pic.
2206
2207         * config/tc-mips.c (SWITCH_TABLE): The ELF embedded-pic
2208         implementation doesn't have special handling for switch
2209         statements.
2210         (macro_build): Allow for code in sections other than .text.
2211         (macro): Likewise.
2212         (mips_ip): Likewise.
2213         (md_apply_fix): Do pc-relative relocation madness for MIPS ELF.
2214         Don't perform relocs if we will be outputting them.
2215         (tc_gen_reloc): For ELF, just use fx_addnumber for pc-relative
2216         relocations.  Allow BFD_RELOC_16_PCREL_S2 relocs when
2217         embedded-pic.
2218
2219 2000-03-09  Catherine Moore  <clm@cygnus.com>
2220
2221         * config/tc-m32r.c (m32r_fix_adjustable):  Look up the
2222         relocation type based on the entry in the fixup structure.
2223         Put S_IS_EXTERN processing back in.
2224
2225 2000-03-08  H.J. Lu  (hjl@gnu.org)
2226
2227         * Makefile.am (install-exec-tooldir): Depend on
2228         install-exec-bindir for parallel make.
2229         * Makefile.in: Regenerated.
2230
2231 2000-03-06  Nick Clifton  <nickc@cygnus.com>
2232
2233         * config/tc-m32r.c (struct md_longopts): Add -m32r command line
2234         switch.
2235         (md_parse_option): Parse -m32r command line switch - disable m32rx
2236         compatability.
2237         (md_show_usage): Document new option.
2238
2239         * doc/Makefile.am (CPU_DOCS): Add c-m32r.texi.
2240         * doc/Makefile.in: Regenerate.
2241         * doc/c-m32r.texi (M32R-Opts): Document new command line switch.
2242
2243 2000-03-02  Michael Meissner  <meissner@redhat.com>
2244
2245         * config/tc-d30v.c (check_range): Remove code that incorrectly
2246         sign extended values where bits < 32.
2247
2248 2000-03-02  H.J. Lu  (hjl@gnu.org)
2249
2250         * configure.in: Support --enable-targets=all on ia32.
2251         * configure: Regenerated.
2252
2253 2000-03-01  Nick Clifton  <nickc@cygnus.com>
2254
2255         * gasp.c (do_align): Remove bogus check of alignment value.
2256
2257 2000-02-27  Thomas de Lellis  <tdel@windriver.com>
2258
2259         * config/obj-elf.c (elf_frob_symbol): Remove code which when
2260         TC_PPC was defined forced the type of a symbol with no other type
2261         to be BSF_OBJECT.
2262
2263 2000-02-27  Hans-Peter Nilsson  <hp@axis.com>
2264
2265         * doc/internals.texi (CPU backend): Mention that
2266         line_separator_chars do not break up comments.  Fix typos for
2267         LEX_AT and LEX_NAME descriptions.  Document operands for
2268         TC_EQUAL_IN_INSN, md_operand and md_section_align.  Correct
2269         description of md_create_short_jump usage.  Document argument for
2270         md_undefined_symbol.
2271
2272 2000-02-27  Jakub Jelinek  <jakub@redhat.com>
2273
2274         * config/tc-sparc.c (OPTION_UNDECLARED_REGS): New option.
2275         (md_parse_option): Handle it.
2276         (md_show_usage): Document it.
2277
2278 2000-02-27  Ian Lance Taylor  <ian@zembu.com>
2279
2280         * config/tc-alpha.c (md_assemble): Accept `1' and `9' in an
2281         opcode, for the instruction `pal19'.  From Andrea Arcangeli
2282         <andrea@suse.de>.
2283
2284 2000-02-26  Alan Modra  <alan@spri.levels.unisa.edu.au>
2285
2286         * config/tc-i386.c (i386_immediate): Move constant operand sizing
2287         from here..
2288         (md_assemble): To here, before template operands are matched.
2289         Also ensure a constant immediate is sign extended when we know the
2290         size is at most 16 bits.  This is to catch cases like "add
2291         $0xffc0,%ax" where we don't know the size, and thus that the
2292         immediate can be represented as Imm8S until after parsing the
2293         register operand.
2294         (i386_displacement): Similarly sign extend 16 bit constant
2295         displacements.
2296         (md_assemble): Relax 16-bit jump constant range check to suit sign
2297         extended displacements.
2298
2299 2000-02-26  Andreas Jaeger  <aj@suse.de>
2300
2301         * doc/c-mips.texi (MIPS Opts): Fix typo in last patch.
2302
2303 2000-02-25  Alan Modra  <alan@spri.levels.unisa.edu.au>
2304
2305         * config/tc-i386.c (md_assemble): Don't swap intersegment jmp and
2306         call operands when intel_syntax.
2307         (intel_float_operand): Return 2 for "fi...".
2308         (i386_operand_modifier): Change "DWORD PTR" test to suit above.
2309         Return SHORT_MNEM_SUFFIX for "WORD PTR" when "fi...".  Revert
2310         earlier "SHORT" change.
2311         (md_assemble): When determining suffix from Regs, exclude
2312         InOutPortReg.
2313
2314 2000-02-24  Nick Clifton  <nickc@cygnus.com>
2315
2316         * configure: Add arm-wince, mips-pe and sh-pe targets.
2317         * configure: Regenerate.
2318
2319         * config/obj-coff.h (COFF_WITH_PE): Define for mips-pe and
2320         sh-pe targets.
2321         (TARGET_FORMAT): Set to "pe-shl" for the sh-pe target and to
2322         "pe-mips" for the mips-pe target.
2323
2324         * config/tc-arm.c (insns): Change displacement encoded in BL
2325         and B instructions if the target port is arm-wince.
2326         (do_ldst): Do not bias the relocation offset if the target
2327         port is arm-wince.
2328         (md_pcrel_from): Add in missing relocation offset bias if the
2329         target os arm-wince.
2330
2331         * config/tc-mips.c (mips_target_format): Support COFF flavour.
2332         (md_begin): Disable -G support for mips-pe target.
2333         (md_apply_fix): Treat BFD_RELOC_RVA reloc as BFD_RELOC_32.
2334         * config/tc-mips.h (USE_GLOBAL_POINTER_OPT): Add support for
2335         COFF flavour.
2336
2337         * config/tc-sh.c (md_begin): sh-pe target is little endian.
2338         * config/tc-sh.h (SUB_SEGMENT_ALIGN): If using a BFD
2339         assembler, just set the alignment to 4.
2340
2341         * config/te-wince-pe.h: New file for WinCE targets.  Define
2342         TE_WINCE.
2343
2344 2000-02-25  Alan Modra  <alan@spri.levels.unisa.edu.au>
2345
2346         * config/tc-i386.c (md_assemble): Swap segments too for intel mode
2347         string instructions.
2348         (i386_operand_modifier): Set i.suffix = WORD_MNEM_SUFFIX for SHORT.
2349         (i386_intel_memory_operand): After finding a segment override,
2350         check again for no `[' before looking for a displacement.  Bomb if
2351         more than one displacement rather than silently discarding the
2352         second and subsequent ones.  Free strings malloc'd by
2353         build_displacement_string.
2354
2355 2000-02-24  Catherine Moore  <clm@cygnus.com>
2356
2357         * config/obj-som.c (obj_pseudo_table): Add "weak".
2358         (obj_som_weak): New routine.
2359
2360 2000-02-24  Alan Modra  <alan@spri.levels.unisa.edu.au>
2361
2362         * config/tc-i386.c (union i386_op): New.
2363         (struct _i386_insn): Delete disps[], imms[], regs[].  Add op[].
2364         Throughout file replace occurences of disps[n], imms[n], regs[n]
2365         with equivalent op[n].disps, op[n].imms, op[n].regs.  Simplify
2366         intel mode operand swapping.  Add assert in regKludge and
2367         fake_zero_displacement code.  Test i.types[n] when outputting
2368         displacements and immediates.  Combine output of Disp16 with
2369         Disp32.
2370         (md_assemble): Don't try to fix broken UNIXWARE_COMPAT opcodes
2371         when in intel mode by (not) reversing fsub and fdiv operands
2372         before the template search.  This fails for single operand
2373         shorthand forms of the instruction, and if UNIXWARE_COMPAT is
2374         undefined.  Instead fix the base_opcode after we've found the
2375         template.  Move base_opcode xor with found_reverse_match from
2376         opcode output code to before this fix so we test for the correct
2377         opcodes.
2378         (md_assemble): Don't use strcmp when deciding to ignore the suffix
2379         check in intel mode.  Instead compare opcodes.
2380
2381         * config/tc-i386.h (TC_RELOC): Delete.
2382         * config/tc-i386.c (TC_RELOC): Delete.  Replace usage of TC_RELOC
2383         with equivalent call to reloc.
2384
2385         * as.h (flag_m68k_mri): Move declaration after target include, and
2386         only declare when TC_M68K defined.  Define as zero otherwise.
2387         (LABELS_WITHOUT_COLONS, NO_PSEUDO_DOT): If undefined, define as 0.
2388         * app.c (scrub_m68k_mri): Declare only when TC_M68K defined.
2389         Define as zero otherwise.
2390         (do_scrub_begin): Use m68k_mri parameter only when TC_M68K defined.
2391         (struct app_save): Declare scrub_m68k_mri only when TC_M68K.
2392         (app_push, app_pop): Save scrub_m68k_mri only when TC_M68K.
2393         (do_scrub_chars): Use LABELS_WITHOUT_COLONS directly rather than
2394         testing whether defined.
2395         * cond.c (ignore_input): Use NO_PSEUDO_DOT directly.
2396         * expr.c (operand): #ifdef unused case labels when TC_M68K undefined.
2397         * read.c: Use LABELS_WITHOUT_COLONS and NO_PSEUDO_DOT directly
2398         rather than testing whether defined.
2399         (s_mri): Set flag_m68k_mri only when TC_M68K defined.
2400         (parse_mri_cons): Declare and use only when TC_M68K.
2401         * config/tc-hppa.h (LABELS_WITHOUT_COLONS): Define as 1.
2402         * config/tc-m68k.h (NO_PSEUDO_DOT): Define as 1.
2403         * config/tc-m88k.h (NO_PSEUDO_DOT): Define as 1.
2404
2405         * NEWS: Mention IBM 370 support.
2406
2407 2000-02-23  Richard Henderson  <rth@cygnus.com>
2408
2409         * config/tc-i386.c (md_assemble): When swapping operands for
2410         intel_syntax, assume everything that's not Imm or Disp is a
2411         register.
2412
2413 2000-02-23  Linas Vepstas <linas@linas.org>
2414
2415         * config/tc-i370.c, config/tc-i370.h: New files.
2416         * Makefile.am: Add support for Linux/IBM 370.
2417         * configure.in: Likewise.
2418         * app.c (do_scrub_begin): Don't lex single quote when TC_I370.
2419         * config/obj-elf.c: Include elf/i370.h
2420         (obj_elf_section): Don't do anything special for flag_mri if TC_I370.
2421
2422         * Makefile.in: Regenerate.
2423         * configure: Regenerate.
2424
2425         * doc/c-i370.texi: New file.
2426         * doc/all.texi: Include it.
2427         * doc/as.texinfo: And here.
2428         * doc/Makefile.am(CPU_DOCS): Add c-i370.texi.
2429         * doc/Makefile.in: Regenerate.
2430
2431 2000-02-19  Michael Meissner  <meissner@redhat.com>
2432
2433         * config/tc-d30v.c (parallel_ok): Use FLAG_NOT_WITH_ADDSUBppp to
2434         determine if an instruction can be used in parallel with an ADDppp
2435         or SUBppp instruction.
2436
2437 2000-02-22  Andrew Haley  <aph@cygnus.com>
2438
2439         * doc/c-mips.texi (MIPS Opts): Document -mgp32 and -mgp64.
2440
2441 1999-12-30  Andrew Haley  <aph@cygnus.com>
2442
2443         * config/tc-mips.c (mips_gp32): New variable.
2444         (macro_build) Use mips_gp32.
2445         (mips_ip): Ditto.
2446         (md_longopts): Add "-mgp32" and "-mgp64".
2447         (md_parse_option): Add OPTION_GP32 and OPTION_GP64.
2448
2449         (OPTION_M7900): Change offset
2450         (OPTION_NO_M7900): Ditto.
2451
2452 2000-02-22  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
2453
2454         * config/obj-coff.c (add_lineno): Accept non-positive lineno with
2455         warning, and bump it to 1.
2456
2457 2000-02-22  Ian Lance Taylor  <ian@zembu.com>
2458
2459         From Brad Lucier <lucier@math.purdue.edu>:
2460         * dwarf2dbg.c (print_stats): Add cast to force printf argument to
2461         match format.
2462
2463 2000-02-21  Catherine Moore  <clm@cygnus.com>
2464
2465         * config/tc-mips.c (MF_HILO_INSN): Define.
2466         (mips_7000_hilo_fix): Declare.
2467         (append_insn): Conditionally insert nops after an mfhi/mflo insn.
2468         (md_parse_option): Check for 7000_HILO_FIX options.
2469         (OPTION_M7000_HILO_FIX): Define.
2470         (OPTION_NO_M7000_HILO_FIX): Define.
2471         * doc/c-mips.texi (-mfix7000): Describe.
2472
2473 2000-02-21  Alan Modra  <alan@spri.levels.unisa.edu.au>
2474
2475         * listing.c (print_lines): Remove unused variable `end'.
2476
2477         * config/tc-i386.c (md_assemble): Use `reloc()' to select reloc
2478         type for JumpInterSegment output. Use enum bfd_reloc_code_real for
2479         reloc_type when BFD_ASSEMBLER.
2480         (md_estimate_size_before_relax): Use enum bfd_reloc_code_real for
2481         reloc_type when BFD_ASSEMBLER. Move common code out of switch
2482         statement and quell signed vs. unsigned comparison warning.
2483
2484 2000-02-18  Nick Clifton  <nickc@cygnus.com>
2485
2486         * config/tc-d10v.c (find_opcode): Add a symbol's value to
2487         the computed frag offset, rather than overwriting it.
2488
2489 Thu Feb 17 00:11:08 2000  J"orn Rennecke <amylaar@cygnus.co.uk>
2490
2491         * config/tc-sh.c ("elf/sh.h"): Include.
2492         (sh_dsp, valid_arch, reg_x, reg_y, reg_efg): New static variables.
2493         (md.begin): Initialize target_arch.
2494         Only include opcodes in has table that match selected architecture.
2495         (parse_reg): Recognize register names for sh-dsp.
2496         (parse_at): Recognize post-modify addressing.
2497         (get_operands): The leading space is now optional.
2498         (get_specific): Remove FDREG_N support.  Add support for sh-dsp
2499         arguments.  Update valid_arch.
2500         (build_Mytes): Add support for SDT_REG_N.
2501         (find_cooked_opcode): New function, broken out of md_assemble.
2502         (assemble_ppi, sh_elf_final_processing): New functions.
2503         (md_assemble): Use find_cooked_opcode and assemble_ppi.
2504         (md_longopts, md_parse_option): New option: -dsp.
2505         * config/tc-sh.h (elf_tc_final_processing): Define.
2506         (sh_elf_final_processing): Declare.
2507
2508 Fri Feb 11 14:21:51 2000  Jeffrey A Law  (law@cygnus.com)
2509
2510         * config/tc-hppa.c (pa_build_unwind_subspace): Use subseg_new to create
2511         the unwinder subspace.  Save the current seg/subseg before creating
2512         the new seg/subseg.
2513
2514 2000-02-10  Nick Clifton  <nickc@cygnus.com>
2515
2516         * config/tc-mcore.c (INST_BYTE0): Redefine to handle big and
2517         little endian targets.
2518         (INST_BYTE1): Redefine to handle big and little endian
2519         targets.
2520         (cpu_type): New type: Select between M340 and M210.
2521         (parse_psrmod): New function: Parse the PSRCLR and PSRSET
2522         instructions of the M340.
2523         (md_assemble): Add support for the MULSH and OPSR classes of
2524         instructions.
2525         (md_atof): Add support for little endian targets.
2526         (md_parse_option): Add support for -EL, -EB and -mcpu command
2527         line switches.
2528         (md_convert_frag): Add support for little endian targets.
2529         (md_apply_fix3): Add support for little endian targets.
2530         (md_number_to_chars): Add support for little endian targets.
2531
2532 2000-02-10  Timothy Wall  <twall@redhat.com>
2533
2534         * read.c (read_a_source_file): If TC_START_LABEL_WITHOUT_COLON is
2535         defined, use it to verify the symbol just read should be a label.
2536
2537 2000-02-10  Timothy Wall  <twall@redhat.com>
2538
2539         * app.c (do_scrub_chars): Handle "||" for parallel instructions
2540         when DOUBLEBAR_PARALLEL is defined.  Avoid stripping whitespace
2541         around colons when KEEP_WHITE_AROUND_COLON is defined.
2542         * doc/internals.texi (CPU backend): Document DOUBLEBAR_PARALLEL
2543         and KEEP_WHITE_AROUND_COLON.
2544
2545 2000-02-08  Timothy Wall  <twall@redhat.com>
2546
2547         * read.c (s_rept): Call do_repeat, which abstracts the repeat
2548         logic.
2549         (do_repeat): New.  Abstract repeat logic so that a "break" can be
2550         implemented.
2551         (end_repeat): New.  Provide support for a "break" out of the
2552         repeat loop.
2553         * read.h: Add prototypes for new functions.
2554
2555 2000-02-08  Timothy Wall  <twall@redhat.com>
2556
2557         * doc/internals.texi: Document NUMBERS_WITH_SUFFIX macro.
2558         * as.h: Provide a default NUMBERS_WITH_SUFFIX definition (zero).
2559         * expr.c: Handle numbers with suffixes if NUMBERS_WITH_SUFFIX is
2560         non-zero.
2561
2562 2000-02-08  Timothy Wall  <twall@redhat.com>
2563
2564         * read.c: Added elseif to directives table.
2565         * read.h: Added prototype for s_elseif.
2566         * doc/as.texinfo: Added description for elseif.
2567         * cond.c (s_elseif): New function
2568
2569 2000-02-04  Timothy Wall  <twall@redhat.com>
2570
2571         * listing.c (print_lines): Remove conditionals causing bug in
2572         listings.
2573
2574 2000-02-03  Timothy Wall  <twall@cygnus.com>
2575
2576         * as.h: Define OCTETS_PER_BYTE and OCTETS_PER_BYTE_POWER
2577         default values.
2578         * frags.c (frag_new): Calculate fr_fix in octets
2579         (frag_now_fix) Return offset as target address offset (bytes).
2580         (frag_now_fix_octets) New - Return offset in octets (8-bit
2581         quantities).
2582         * frags.h: Added prototype for frag_now_fix_octets().
2583         Distinguish between octets and bytes in field descriptions.
2584         * listing.c (calc_hex): Account for octets vs bytes when
2585         printing addresses/offsets.
2586         (print_lines) Ditto.  Also, if LISTING_WORD_SIZE is not 1, and
2587         target is little-endian, print the octets in a word in big-endian
2588         order so that the display looks like a proper hexadecimal number,
2589         instead of having the octets reversed.
2590         * read.c (do_align): When recording alignment, alignment power
2591         should be in terms of target bytes (minimum addressible unit)
2592         instead of octets.
2593         (do_org) Convert ORG target address (byte) argument into an
2594         octet offset when generating a variable fragment.
2595         * symbols.c (resolve_symbol_value): Symbol final value
2596         converted to a target address offset (bytes) from its octet offset.
2597         * config/obj-coff.c (coff_frob_symbol): Symbol target address
2598         offset (bytes) is adjusted by the frag offset (octets) converted
2599         to bytes.
2600         (coff_frob_section) Section alignment power is in terms of bytes;
2601         convert it to an octet alignment power when calculating size (and
2602         size mask) in octets.  Don't modify the section size in order to
2603         "align" it for TI COFF, since that format has a different method
2604         for storing alignment information.
2605
2606 2000-02-01  Timothy Wall  <twall@cygnus.com>
2607
2608         * stabs.c (generate_asm_file): Escape backslashes in stabs file
2609         entries, matching the way GCC generates them.  If not escaped, the
2610         filename is encoded incorrectly.
2611
2612 2000-01-31  Nick Clifton  <nickc@cygnus.com>
2613
2614         * config/tc-arm.c (reg_table): Add support for ATPCS register
2615         naming conventions.
2616
2617 2000-01-31  Geoff Keating  <geoffk@cygnus.com>
2618
2619         * config/obj-coff.h (OBJ_COPY_SYMBOL_ATTRIBUTES): Don't define if
2620         already defined.
2621         * config/tc-ppc.h [OBJ_XCOFF] (OBJ_COPY_SYMBOL_ATTRIBUTES):
2622         New macro.
2623         * config/tc-ppc.c (ppc_fix_adjustable): Don't look at the frag
2624         of a symbol when we really care about its value.
2625
2626 2000-01-19  Chandra Chavva   <cchavva@cygnus.com>
2627
2628         * config/tc-mcore.c (md_assemble): Give warning message if
2629         operands passes to instruction are more than the spec.
2630
2631 2000-01-27  Thomas de Lellis <tdel@windriver.com>
2632
2633         * config/tc-arm.c (armadjust_symtab): If the assembler is in
2634         Thumb mode but the label seen was not declared as '.thumb_func'
2635         then set the ST_INFO type to STT_ARM_16BIT mode.   This allows
2636         correct disassembly of Thumb code bounded by non function labels.
2637
2638 2000-01-27  Alan Modra  <alan@spri.levels.unisa.edu.au>
2639
2640         * Makefile.am (MULTI_CFILES): Add config/e-i386aout.c
2641         Add dependencies for e-i386aout.o.  Fix 2 comment lines.
2642
2643         * Makefile.in: Same here.
2644         Update copyright.
2645
2646         * configure.in: Set bfd_gas for i386-aout when primary target
2647         is bfd.  Handle i386aout emulation.  Don't use te_file=multi, as
2648         we may need the primary te_file.  Remove incorrect comment.
2649
2650         * configure: Regenerate.
2651
2652         * config/e-i386aout.c: New file.
2653
2654         * as.c (USE_EMULATIONS): Move to before print_version_id.
2655         (struct emulation): Add i386aout.
2656         (show_usage): Split text strings.  Reformat -a text.  Add --em
2657         help.
2658         Update copyright.
2659
2660         * obj.h (struct format_ops): Add s_get_other and s_get_desc.
2661         (aout_format_ops): New.
2662         Update copyright.
2663
2664         * read.c (s_lcomm_internal): Rewrite OBJ_AOUT,OBJ_BOUT
2665         preprocessor conditional and add aout USE_EMULATIONS tests.
2666         (read_a_source_file): Don't pass error strings to printf as
2667         format arg.
2668         Update copyright.
2669
2670         * gasp.c (exp_get_abs): Don't pass error strings to printf as
2671         format arg.
2672         (do_data): Same here.
2673         (process_file): And here.
2674         Update copyright.
2675
2676         * symbols.c (colon): Rewrite "already defined" fatal message
2677         code for aout with USE_EMULATIONS.
2678         Update copyright.
2679
2680         * config/obj-aout.c (OBJ_HEADER): Define.
2681         (obj_pseudo_table): Rename to aout_pseudo_table.  Init all
2682         fields of sentinel.
2683         (obj_aout_frob_symbol): Expand S_GET_DESC, S_GET_TYPE,
2684         S_GET_OTHER, S_SET_TYPE macros since we don't need obj-multi
2685         forms here.
2686         (obj_aout_type): Expand S_SET_OTHER here too.
2687         (obj_read_begin_hook): Remove.
2688         (aout_pop_insert): New.
2689         (obj_aout_s_get_other): New.
2690         (obj_aout_s_get_desc): New.
2691         (aout_format_ops): New.
2692         Update copyright.
2693
2694         * config/obj-aout.h (obj_pop_insert): Define so non-multi usage
2695         gets aout_pseudo_table.
2696         (aout_pseudo_table): Declare.
2697         (obj_read_begin_hook): Define.
2698         Update copyright.
2699
2700         * config/obj-coff.c (obj_pseudo_table): Rename to
2701         coff_pseudo_table.
2702         (coff_pop_insert): Use coff_pseudo_table.
2703         (coff_sec_sym_ok_for_reloc): Remove.
2704         (coff_format_ops): Add 0 entries for s_get_size, s_set_size,
2705         and comment all zero entries and remove #if 0 code.
2706         Update copyright.
2707
2708         * config/obj-coff.h (obj_pop_insert): Define.
2709         (coff_pseudo_table): Declare.
2710         Update copyright.
2711
2712         * config/obj-ecoff.c (ecoff_format_ops): Add 0 entries for
2713         s_get_size, s_set_size.  Comment all zero entries.
2714         Update copyright.
2715
2716         * config/obj-elf.c (elf_s_get_other): New function.
2717         (obj_read_begin_hook): Rename to elf_obj_read_begin_hook.
2718         (obj_symbol_new_hook): Rename to elf_obj_symbol_new_hook.
2719         (elf_format_ops): Add elf_s_get_other, 0 s_get_size entry, and
2720         comment.
2721         (obj_elf_parse_section_letters): Don't pass error strings to
2722         printf as format arg.
2723         Update copyright.
2724
2725         * config/obj-elf.h (ECOFF_DEBUGGING): Define when
2726         OBJ_MAYBE_ECOFF.
2727         (elf_s_get_other): Declare.
2728         (S_GET_OTHER) Define as elf_s_get_other if not already
2729         defined.
2730         (S_SET_OTHER): Only define when not already defined.
2731         (elf_obj_read_begin_hook): Declare.
2732         (obj_read_begin_hook): Define.
2733         (elf_obj_symbol_new_hook): Declare.
2734         (obj_symbol_new_hook): Define.
2735         Update copyright.
2736
2737         * config/obj-multi.h: Add copyright header and protect against
2738         multiple inclusion.  Add * to all function pointers.
2739         (OBJ_HEADER): If defined, include it rather than other defines
2740         in this file.
2741         (obj_frob_file_after_relocs): Test for NULL.
2742         (obj_symbol_new_hook): Here too.
2743         (obj_sec_sym_ok_for_reloc): And here.
2744         (S_GET_OTHER): Define.
2745         (S_GET_DESC): Define.
2746         (ECOFF_DEBUGGING): Remove as it's done in obj-elf.h
2747         (OBJ_MAYBE_ELF): Update comment.
2748
2749         * config/tc-i386.c (i386_immediate): Add OBJ_MAYBE_AOUT to
2750         OBJ_AOUT preprocessor conditional and handle emulation by
2751         testing OUTPUT_FLAVOR.
2752         (i386_displacement): Here too.
2753         (md_section_align): Similarly here.
2754         (i386_target_format): Conditionally compile when more than one
2755         of OBJ_MAYBE_{ELF,COFF,AOUT} defined.  Add aout case.
2756         (i386_immediate): Fix error message for aout BFD_ASSMBLER.
2757         (i386_displacement): Here too.
2758         Update copyright.
2759
2760         * config/tc-i386.h (AOUT_TARGET_FORMAT): Define for each TE_*.
2761         Define TARGET_FORMAT for aout only when not multi.
2762         Update copyright.
2763
2764         * config/te-multi.h: Delete file as it's identical to te-generic.h
2765
2766 2000-01-15  Alan Modra  <alan@spri.levels.unisa.edu.au>
2767
2768         * config/tc-i386.h (DWORD_MNEM_SUFFIX): Delete.
2769         * config/tc-i386.c (DWORD_MNEM_SUFFIX): Rename all occurrences to
2770         LONG_MNEM_SUFFIX.
2771
2772         * config/tc-i386.h (INTEL_DWORD_MNEM_SUFFIX): Rename to
2773         DWORD_MNEM_SUFFIX.
2774         * config/tc-i386.c (INTEL_DWORD_MNEM_SUFFIX): Here too.  Fix some
2775         comments.
2776
2777 2000-01-13  Clinton Popetz  <cpopetz@cygnus.com>
2778
2779         * config/tc-mips.c (mips_do_align): New function.
2780         * config/tc-mips.h (md_do_align): Define.
2781
2782 2000-01-10  Philip Blundell  <philb@gnu.org>
2783
2784         * doc/c-arm.texi (ARM Options): Fix typo.
2785         (ARM-Chars): Correct description of `#'.  Mention  that `;' is a
2786         line separator for Linux.
2787         * doc/as.texinfo (Comments): Mention the ARM.
2788
2789 2000-01-10  Philip Blundell  <pb@futuretv.com>
2790
2791         * configure.in (arm*-*-conix*): New target.
2792         (arm*-*-linux-gnu*): Match instead of arm-*-linux* and
2793         armv*-*-linux-gnu.
2794         * configure: Regenerate.
2795
2796 2000-01-03  Martin v. Loewis  <loewis@informatik.hu-berlin.de>
2797
2798         * config/obj-elf.c (elf_pseudo_table): Define visibility pseudos.
2799         (obj_elf_visibility): New function.
2800
2801         * doc/as.texinfo (Visibility): New node: document visibility
2802         pseudo ops.
2803
2804 1999-12-27  Alan Modra  <alan@spri.levels.unisa.edu.au>
2805
2806         * config/tc-i386.c (MATCH): Relax JumpAbsolute check.  Emit a
2807         warning for absolute jump/call without `*' in non-intel mode.  No
2808         need to set i.types[0] JumpAbsolute in intel mode.
2809
2810 1999-12-22  Philip Blundell  <pb@futuretv.com>
2811
2812         * config/tc-arm.c (arm_s_text): If OBJ_ELF, call the appropriate
2813         hook function when changing sections.
2814         (arm_s_data): Likewise.
2815
2816 1999-12-14  Nick Clifton  <nickc@cygnus.com>
2817
2818         * config/tc-arm.c (md_parse_option): Add support for -marm720
2819         command line switch.
2820
2821 Tue Nov 30 22:59:00 1999  Jeffrey A Law  (law@cygnus.com)
2822
2823         * config/tc-mn10300.c (md_pseudo_table): Add ".am33" pseudo-op.
2824         (r_registers, xr_registers): Define.
2825         (r_register_name, xr_register_name): New functions.
2826         (md_assemble): Handle new am33 operand types and instruction
2827         formats.
2828         (mn10300_insert_operand, check_operand): Likewise.
2829
2830 1999-11-29  Nick Clifton  <nickc@cygnus.com>
2831
2832         * config/tc-arm.c (thumb_mode): Turn into a tristate variable.
2833         (s_force_thumb): Set thumb_mode to 2.
2834         (md_assemble): Do not complain about thumb instructions on a
2835         non-thumb target if thumb_mode is set to 2.
2836
2837 1999-11-28  Michael Meissner  <meissner@cygnus.com>
2838
2839         * config/tc-alpha.c (toplevel): Include struc-symbol.h.
2840         (alpha_macro_arg): Add MACRO_{LITERAL,BASE,BYTOFF,JSR} cases.
2841         (O_...): Add new machine dependent expressions if we are handling
2842         explicit relocations.
2843         (alpha_reloc_op): New static table holding the explicit relocation
2844         information.
2845         (alpha_literal_hash): New static to hold the hash table for
2846         explicit relocations.
2847         (alpha_macros): Add support for explicit relocations.
2848         (md_begin): If explicit relocations, initialize hash table.
2849         (md_assemble): Don't print a second error if tokenize_arguments
2850         already printed an error message.
2851         (md_apply_fix): Add support for explicit relocations.
2852         (alpha_force_relocation): Ditto.
2853         (alpha_fix_adjustable): Ditto.
2854         (alpha_adjust_symtab): New function to support explicit
2855         relocations.
2856         (alpha_adjust_symtab_relocs): Ditto.
2857         (debug_exp): Debug stub compiled if DEBUG_ALPHA is defined.
2858         (tokenize_arguments): Add debug code if DEBUG_ALPHA is defined.
2859         Add support for explicit relocations.  Return -2 if an error
2860         message was already printed.
2861         (find_macro_match): Add support for explicit relocations.  Comment
2862         each of the cases.
2863         (emit_insn): Add support for explicit relocations.
2864         (assemble_tokens): Ditto.
2865         (emit_ldgp): Ditto.
2866         (load_expression): Ditto.
2867         (emit_lda): Ditto.
2868         (emit_ldah): Ditto.
2869         (emit_ir_load): Ditto.
2870         (emit_loadstore): Ditto.
2871         (emit_ldXu): Ditto.
2872         (emit_ldil): Ditto.
2873         (emit_sextX): Ditto.
2874         (emit_division): Ditto.
2875         (emit_jsrjmp): Ditto.
2876         (emit_retjcr): Ditto.
2877
2878         * config/tc-alpha.h (RELOC_OP_P): Enable explicit relocations if
2879         ELF object format.
2880         (tc_adjust_symtab): If explicit relocations, call the function
2881         alpha_adjust_symtab.
2882         (TC_FIX_TYPE): Add fields to be able to move explicit lituse
2883         relocations next to the literal relocation they reference.
2884         (TC_INIT_FIX_DATA): Initialize the new fields.
2885         (TC_FIX_DATA_PRINT): Print the new fields if DEBUG5 is defined.
2886
2887 Wed Nov 24 20:27:58 1999  Jeffrey A Law  (law@cygnus.com)
2888
2889         * config/tc-hppa.c (pa_ip): Handle PA2.0 unit completers.  Handle
2890         'B' operand for PA2.0 bb instruction.
2891
2892 1999-11-18  Nick Clifton  <nickc@cygnus.com>
2893
2894         * config/tc-mcore.h (TC_FORCE_RELOCATION): Define for Mcore-pe
2895         target.
2896
2897         * config/tc-mcore.c (tc_gen_reloc): Support generation of RVA
2898         relocs.
2899         (mcore_force_relocation): Force relocations to be generated for
2900         RVA relocs.
2901
2902 1999-11-16  Alan Modra  <alan@spri.levels.unisa.edu.au>
2903
2904         * config/tc-i386.c (i386_immediate): Disallow O_big immediates.
2905         (i386_displacement): Disallow O_big displacements.
2906
2907 Mon Nov 15 20:12:43 1999  Donald Lindsay  <dlindsay@cygnus.com>
2908
2909         * config/tc-arm.c (do_mia,do_mar,do_mra,do_pld,do_ldrl,do_co_reg):
2910         Small improvements in error checking.
2911         (md_assemble): Support for unconditional ARM instructions.
2912         (md_parse_option): Support for -m[arm]v5e flag.
2913
2914 1999-11-12  Nick Clifton  <nickc@cygnus.com>
2915
2916         * macro.c (buffer_and_nest): Do not check beyond the end of the
2917         buffer.
2918
2919 1999-11-11  Nick Clifton  <nickc@cygnus.com>
2920
2921         * macro.c (buffer_and_nest): Look for seperator after TO and
2922         FROM tokens.
2923
2924 1999-11-08  Andrew Haley  <aph@cygnus.com>
2925
2926         * app.c (do_scrub_chars): When in State 10, treat backslash
2927         characters in the same way as as symbol characters.
2928
2929 1999-11-07  Richard Henderson  <rth@cygnus.com>
2930
2931         * config/tc-alpha.c (alpha_align): Check, don't assert, that
2932         the previous label was in the current section before playing
2933         with auto-alignment.
2934
2935 1999-11-06  Nick Clifton  <nickc@cygnus.com>
2936
2937         * config/tc-v850.c (v850_force_relocation): Force relocation
2938         for weak symbols.
2939         (v850_pcrel_from_selection): Do not compute a pcrel offset if
2940         the symbol is weak.
2941
2942 1999-11-05  Michael Meissner  <meissner@cygnus.com>
2943
2944         * expr.h (operatorT): Increase machine dependent operators to 16.
2945         * expr.c (op_rank): Ditto.
2946
2947 1999-11-03  Ian Lance Taylor  <ian@zembu.com>
2948
2949         * read.c (pseudo_set): Reject attempts to set the value of a
2950         section symbol.
2951
2952         * config/obj-elf.c (obj_elf_ident): Call md_flush_pending_output
2953         if it is defined.
2954
2955         * config/obj-elf.c (elf_set_index): Add ATTRIBUTE_UNUSED.
2956
2957         * config/obj-elf.c (elf_frob_file_after_relocs): Don't pass NULL
2958         to bfd_set_section_contents.
2959
2960 1999-11-03  Nick Clifton  <nickc@cygnus.com>
2961
2962         * config/tc-mcore.h (TARGET_BYTES_BIG_ENDIAN): Change to false.
2963
2964 1999-11-01  Gavin Romig-Koch  <gavin@cygnus.com>
2965
2966         * config/tc-mips.c (macro_build): Use OPCODE_IS_MEMBER.
2967         (mips_ip): Use OPCODE_IS_MEMBER.
2968
2969 Wed Oct 27 16:50:44 1999  Don Lindsay  <dlindsay@cygnus.com>
2970
2971         * config/tc-arm.c (reg_required_here): Improve comments.
2972
2973         * config/tc-arm.c (thumb_opcode): Add "variants" field.
2974         (tinsns): Initialize variants field.
2975
2976         * config/tc-arm.c (bad_args, bad_pc): Renamed to BAD_ARGS and
2977         BAD_PC respectively.
2978
2979 1999-10-27  Scott Bambrough  <scottb@netwinder.org>
2980
2981         * config/tc-arm.c (reloc_map[]): Fix compiler warning.
2982         * config/tc-arm.h: Fix compile time warnings.
2983
2984 Mon Oct 18 18:11:10 MDT 1999    Diego Novillo <dnovillo@cygnus.com>
2985
2986         * tc_d10v.c (find_opcode): Allow ATSIGN to match expressions of the
2987         form @abs16, @(abs16) and @(abs16 + imm).
2988
2989 1999-10-21  Gavin Romig-Koch  <gavin@cygnus.com>
2990
2991         * config/tc-mips.c (ISA_HAS_COPROC_DELAYS) : New.
2992         (ISA_HAS_64_BIT_REGS) New.
2993         (gpr_interlocks,md_begin,reg_needs_delay,append_insn,
2994         mips_emit_delays,macro_build,load_register,load_addresss,
2995         macro,macro2,mips_ip,s_cprestore,s_cpadd): Simplify
2996         and/or use new ISA_xxx macros in expressions involving
2997         ISA, particularly mips_opts.isa.
2998
2999 1999-10-18  Michael Meissner  <meissner@cygnus.com>
3000
3001         * expr.h (operatorT): Add machine dependent operators md1..md8.
3002         (expressionS): Make X_op 8 bits instead of 7.  Add a X_md field
3003         for the machine dependent operators to use.
3004
3005         * expr.c (op_rank): Add machine dependent operators.
3006
3007         * config/tc-alpha.c (O_pregister): Define as a machine dependent
3008         operator.
3009         (O_cpregister): Ditto.
3010         (md_begin): Change X_op test that field is wide enough to use
3011         O_max instead of O_alpha_max.
3012         (cpu_types): Fill in missing initializer.
3013         (alpha_num_macros): Make unsigned.
3014         (md_assemble): Make opnamelen be size_t.
3015         (md_apply_fix): Cast alpha_num_operands to int before testing.
3016         (alpha_force_relocation): Ditto.
3017         (alpha_fix_adjustable): Ditto.
3018         (alpha_fix_adjustable): Mark unused arguments ATTRIBUTE_UNUSED.
3019         (tc_gen_reloc): Ditto.
3020         (tc_get_register): Ditto.
3021         (emit_ldgp): Ditto.
3022         (emit_lda): Ditto.
3023         (emit_ldah): Ditto.
3024         (emit_ldil): Ditto.
3025         (s_alpha_ent): Ditto.
3026         (s_alpha_end): Ditto.
3027         (s_alpha_frame): Ditto.
3028         (s_alpha_prologue): Ditto.
3029         (s_alpha_file): Ditto.
3030         (s_alpha_gprel32): Ditto.
3031         (s_alpha_proc): Ditto.
3032         (s_alpha_set): Ditto.
3033         (s_alpha_base): Ditto.
3034         (s_alpha_align): Ditto.
3035         (s_alpha_arch): Ditto.
3036         (alpha_align): Ditto.
3037         (assemble_insn): Suppress unused variable warning.
3038         (emit_insn): Ditto.
3039         (assemble_insn): Don't assume X_op and X_unsigned are in a given
3040         order in the structure.
3041         (s_alpha_coff_wrapper): Avoid int/unsigned comparison.
3042
3043 Sun Oct 17 17:15:58 1999  Jeffrey A Law  (law@cygnus.com)
3044
3045         * config/tc-hppa.c (md_apply_fix): Make "fmt" an int.
3046
3047 1999-10-12  Alan Modra  <alan@spri.levels.unisa.edu.au>
3048
3049         * config/tc-i386.c (i386_index_check): Correct #endif location.
3050
3051 Mon Oct 11 14:02:40 1999  Geoffrey Keating  <geoffk@cygnus.com>
3052
3053         * as.c (show_usage): Document new options.
3054         (parse_args): Add --no-warn, --warn, --fatal-warnings,
3055         which become 'W', OPTION_WARN, and OPTION_WARN_FATAL.
3056         (parse_args): Parse the new options.
3057         (main): If there were warnings, and --fatal-warnings
3058         was specified, print an error.
3059         * as.h: New variable, flag_fatal_warnings, for new option.
3060
3061 Sun Oct 10 01:47:23 1999  Jerry Quinn <jerry.quinn.adv91@alum.dartmouth.org>
3062
3063         * config/tc-hppa.c (pa_ip):  Add new codes 'cc', 'cd', 'cC', 'co',
3064         '@'.  Change autoincrement completers to fall through to cache control
3065         completers.
3066
3067         * config/tc-hppa.c (pa_ip):  Remove unused args.  Add code to '?W'
3068         arg.
3069         (pa_parse_addb_64_cmpltr):  New function.
3070
3071         * config/tc-hppa.c (pa_ip):  Change error message.
3072         (pa_ip,pa_parse_cmpb_64_cmpltr,pa_parse_cmpib_64_cmpltr)  Fix '?N' and
3073         '?Q' args to allow falling through.
3074
3075         * config/tc-hppa.c (pa_ip):  Implement conditional codes "?N", "?Q".
3076         Remove unused conditional codes.
3077         (pa_parse_cmpb_64_cmpltr,pa_parse_cmpib_64_cmpltr):  New.
3078
3079 Thu Oct  7 00:23:53 MDT 1999    Diego Novillo <dnovillo@cygnus.com>
3080
3081         * config/tc-d30v.c (CHAR_BIT): Define.
3082         (check_range): Fix bit operations to support integers bigger than
3083         32 bits.
3084
3085 Thu Oct  7 00:11:50 MDT 1999    Diego Novillo <dnovillo@cygnus.com>
3086
3087         * config/tc-d10v.c (check_range): Check range for RESTRICTED_NUM3
3088         operands.
3089
3090 Mon Oct  4 17:24:23 1999  Nick Clifton  <nickc@cygnus.com>
3091                           Doug Evans  <devans@cygnus.com>
3092
3093         Add support for m32rx.
3094         * config/tc-m32r.c (enable_m32rx): New static global.
3095         (enable_special,warn_explicit_parallel_conflicts,optimize): Ditto.
3096         (allow_m32rx): New function.
3097         (M32R_SHORTOPTS): Add `O'.
3098         (md_longopts): Add --m32rx plus several warning options.
3099         (md_parse_option): Handle new options.
3100         (md_show_usage): Print them.
3101         (md_begin): Enable m32rx.
3102         (OPERAND_IS_COND_BIT): New macro.
3103         (first_writes_to_seconds_operands): New function.
3104         (writes_to_pc,can_make_parallel,make_parallel): New functions.
3105         (target_make_parallel,assemble_two_insns): New functions.
3106         (md_assemble): Recognize "insn1 -> insn2" and "insn1 || insn2".
3107         If optimizing and m32rx, try to make consecutive insns parallel.
3108
3109 Tue Sep 28 14:06:44 1999  Geoffrey Keating  <geoffk@cygnus.com>
3110
3111         * config/tc-mips.c (nopic_need_relax): Allow for the
3112         .sdata.foo sections generated by -fdata-sections,
3113         and for the .gnu.linkonce.s sections generated by C++.
3114
3115 Thu Sep 23 07:13:45 1999  Jerry Quinn <jquinn@nortelnetworks.com>
3116
3117         * config/tc-hppa.c (pa_ip): Replace 'B', 'M', 'l' and 'g' handling
3118         with cleaner code using completer prefixes.   Add 'Y'.
3119
3120         * config/tc-hppa.c (pa_ip):  Add parens to silence compiler.
3121
3122 Wed Sep 22 09:37:19 1999  Jeffrey A Law  (law@cygnus.com)
3123
3124         * config/tc-hppa.c (pa_ip): Avoid ANSI specific initialization.
3125         (pa_ip, case 'm'): Failure to get a CBIT specifier just means the
3126         insn does not match and we should try the next insn in the table.
3127
3128 1999-09-22  Nick Clifton  <nickc@cygnus.com>
3129
3130         * config/tc-arm.c (MULTI_SET_PSR): Rename to LDM_TYPE_2_OR_3.
3131
3132 Mon Sep 20 04:01:41 1999  Jeffrey A Law  (law@cygnus.com)
3133
3134         * config/tc-hppa.c (pa_ip): Fix thinkos in recent cleanup
3135         of PA2.0 support.
3136
3137 1999-09-19  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
3138
3139         * config/tc-i386.c (md_shortopts): Check OBJ_MAYBE_ELF as well as
3140         OBJ_ELF.  If ELF, add "sq".
3141         (md_parse_option): If ELF, ignore -s and -q.
3142         (md_show_usage): Mention ELF options.
3143
3144 Sun Sep 19 10:43:31 1999  Jeffrey A Law  (law@cygnus.com)
3145
3146         * config/tc-hppa.c (pa_ip): Handle 'J', 'K' and 'cc'
3147         operands.
3148
3149         * config/tc-hppa.c (pa_ip); Handle "fe", and 'cJ'.
3150
3151         * config/tc-hppa.c (pa_ip): Handle 'd', '#' and 'cq'.
3152
3153         * config/tc-hppa.c (struct pa_it): New field "trunc".
3154         (pa_ip): Hadnle 'h', 'm', '=', '{', and '_' operands.
3155         (pa_parse_ftest_gfx_completer): New function
3156         (pa_parse_fp_cnv_format): New function.
3157
3158         * config/tc-hppa.c (pa_ip): Handle 'X' operand.
3159         (md_apply_fix): Handle 22bit pc-rel branches.
3160
3161         * config/tc-hppa.c (pa_ip): Handle 'B' operand.
3162
3163         * config/tc-hppa.c (pa_ip): Handle 'L' and 'M' operands.
3164
3165         * config/tc-hppa.c (pa_ip): Handle 'l' operand.
3166
3167         * config/tc-hppa.c (pa_ip): Handle 'g' operand.
3168
3169 Sat Sep 18 12:13:28 1999  Jeffrey A Law  (law@cygnus.com)
3170
3171         * config/tc-hppa.c (md_assemble): Fix dwarf2 line handling.
3172         (pa_ip): Handle 'fX'.
3173
3174 Fri Sep 17 11:57:34 1999  Jeffrey A Law  (law@cygnus.com)
3175
3176         * config/tc-hppa.c (pa_build_unwind_subspace): Do not build
3177         unwinds unless the function is in the text space.
3178         (pa_type_args): Set BSF_FUNCTION for an exproted data symbol.
3179
3180 Wed Sep 15 05:14:32 1999  Jeffrey A Law  (law@cygnus.com)
3181
3182         * config/tc-hppa.c (pa_ip): Move dwarf2 stuff from here.
3183         (md_assemble): To here.  Tweak address generation.
3184
3185         * config/tc-hppa.c: Include dwarf2dbg.h if OBJ_ELF.  Declare
3186         debug_line.
3187         (md_pseudo_table): Add .file and .line pseudo-ops for OBJ_ELF.
3188         (md_assemble): Call dwarf2_where for OBJ_ELF.
3189         (pa_ip): Call dwarf2_gen_line_info for OBJ_ELF.
3190         (pa_end_of_source): New function.
3191         * tc-hppa.h (md_end): Define for OBJ_ELF.
3192
3193 1999-09-14  Michael Meissner  <meissner@cygnus.com>
3194
3195         * configure.in (Canonicalization of target names): Remove adding
3196         ${CONFIG_SHELL} in front of $ac_config_sub, since autoconfig 2.14
3197         generates $ac_config_sub with a ${CONFIG_SHELL} already.
3198         * configure: Regenerate.
3199
3200 1999-09-14  Donn Terry  <donn@interix.com>
3201
3202         * config/te-interix.h (GLOBAL_OFFSET_TABLE_NAME): Define.
3203
3204 1999-09-13  Alan Modra  <alan@spri.levels.unisa.edu.au>
3205
3206         * config/tc-i386.c (md_assemble): Handle "jmp/call constant" as a
3207         pc-relative jmp/call to an absolute symbol.
3208         (md_apply_fix3): When OBJ_ELF, don't add the values in twice for
3209         absolute section symbols.
3210
3211         * config/tc-i386.c (md_assemble): Correct frag_var size.  Tidy
3212         jump handling code and comments.
3213
3214 1999-09-12  Ian Lance Taylor  <ian@zembu.com>
3215
3216         * config/tc-i386.c (md_apply_fix3): Add horrible adjustments to
3217         the value if TE_PE and a global defined symbol.
3218
3219 1999-09-11  Ian Lance Taylor  <ian@zembu.com>
3220
3221         * write.c (dump_section_relocs): Call print_symbol_value_1 to
3222         print the symbol, rather than printing it here.
3223
3224 1999-09-11  Donn Terry  <donn@interix.com>
3225
3226         * config/tc-i386.c (tc_i386_fix_adjustable): Don't adjust
3227         BFD_RELOC_RVA relocations.
3228
3229         * config/tc-i386.c (md_undefined_symbol): Compare the name against
3230         the macro GLOBAL_OFFSET_TABLE_NAME, rather than assuming that it
3231         starts with "_G".
3232
3233         * write.c (write_relocs): Call SET_SECTION_RELOCS if it is
3234         defined.
3235         * config/obj-coff.h (SET_SECTION_RELOCS): Define.
3236         * doc/internals.texi (Object format backend): Document
3237         SET_SECTION_RELOCS.
3238
3239         * config/tc-i386.c (tc_i386_fix_adjustable): Don't adjust
3240         relocations against global symbols if TE_PE.
3241
3242         * config/obj-coff.c (obj_coff_ident): Add BFD_ASSEMBLER version.
3243         (obj_pseudo_table): Always handle ".ident" with obj-coff_ident.
3244
3245         * config/obj-coff.c (coff_frob_symbol): Prohibit weak common
3246         symbols.
3247
3248         * config/obj-coff.c (obj_coff_endef): Don't merge labels, or
3249         symbols which do not have a constant value, or tags with
3250         non-tags.  Remove the symbol from the list before adding it at the
3251         end.
3252
3253         * config/obj-coff.c (obj_coff_endef) [BFD_ASSEMBLER]: Handle .ef
3254         C_FCN symbol differently if TE_PE.
3255         (obj_coff_line) [BFD_ASSEMBLER]: Always use the line number which
3256         appears in the pseudo-op, rather coff_line_base which is only set
3257         for a .bf symbol.
3258
3259         * config/obj-coff.c (obj_coff_loc): New static function.
3260         (obj_pseudo_table): Add "loc".
3261
3262         * config/obj-coff.c (add_lineno): Check that the line number is
3263         positive.
3264
3265         * config/atof-ieee.c (atof_ieee): Change what_kind to int.
3266         * config/atof-vax.c (flonum_gen2vax): Change format_letter to
3267         int.
3268         (md_atof): Return NULL rather than 0.
3269         * config/tc-i386.c (md_atof): Change type to int.
3270         * expr.c (expr): Change first parameter to int.
3271         * config/obj-coff.c: Add declarations for static functions.
3272         (coff_frob_symbol): Use SYM_AUXENT.
3273         * config/tc-i386.h (flag_16bit_code): Don't declare.
3274
3275         * config/obj-coff.c (obj_coff_section): Default to setting
3276         SEC_LOAD.  Don't set SEC_DATA for 'w' modifier.
3277
3278         * write.c (adjust_reloc_syms): Print adjusted fixup.
3279
3280         * expr.c (integer_constant): Correct too_many_digits calculation
3281         in base 10 case.
3282
3283 1999-09-09  Andreas Schwab  <schwab@suse.de>
3284
3285         * doc/c-arm.texi: Fix arguments of @var to not contain
3286         punctuation.
3287
3288 1999-09-08  Philip Blundell  <pb@nexus.co.uk>
3289
3290         * config/tc-arm.c (s_thumb_set): Only support interworking for ELF
3291         and COFF targets.
3292         (md_parse_option): Only support -k flag for ELF and COFF targets.
3293
3294 Tue Sep  7 13:28:59 1999  Jeffrey A Law  (law@cygnus.com)
3295
3296         * config/tc-hppa.c (pa_ip): Put strict register checks before
3297         call to pa_parse_number.
3298
3299         * config/tc-hppa.c (pa_ip): Support 'Z' argument.
3300
3301 1999-09-06  Ian Lance Taylor  <ian@zembu.com>
3302
3303         * config/obj-coff.c: Add ATTRIBUTE_UNUSED as needed for
3304         BFD_ASSEMBLER code.
3305
3306 1999-09-06  Donn Terry  <donn@interix.com>
3307
3308         * as.c (perform_an_assembly_pass): Set SEC_DATA for data_section.
3309
3310 Mon Sep  6 04:26:56 1999  Jeffrey A Law  (law@cygnus.com)
3311
3312         * config/tc-hppa.c (pa_ip): Get strict/non-strict mode from the
3313         candidate instruction.  Require registers for register arguments
3314         when in strict mode.  Require assemble-time constants for
3315         constants when in strict mode.
3316         (pa_get_absolute_expression): Require a constant when in strict
3317         mode.
3318
3319 1999-09-06  Nick Clifton  <nickc@cygnus.com>
3320
3321         * config/tc-m32r.c (md_longopts): Fix value for -Wnuh.
3322
3323 1999-09-04  Steve Chamberlain  <sac@pobox.com>
3324
3325         * config/tc-pj.c: New file, supports picoJava in ELF.
3326         * config/tc-pj.h: Ditto.
3327         * configure.in (pjl*, pj*): New targets.
3328         * Makefile.am: Rebuild dependencies.
3329         (CPU_TYPES): Add pj.
3330         (TARGET_CPU_CFILES): Add config/tc-pj.c.
3331         (TARGET_CPU_HFILES): Add config/tc-pj.h.
3332         * doc/c-pj.texi: New file.
3333         * doc/as.texinfo: Add some PJ specifics.
3334         * doc/all.texi: Add PJ to the list of all architectures, sort them
3335         all alphabetically.
3336         * doc/Makefile.in (CPU_DOCS): Add c-pj.texi.
3337         * configure, Makefile.in, doc/Makefile.in: Rebuild.
3338
3339 1999-09-02  Alan Modra  <alan@spri.levels.unisa.edu.au>
3340
3341         * config/obj-multi.h: Include obj-elf.h if OBJ_MAYBE_ELF. Reformat.
3342         (obj_frob_file): Test for null pointer.
3343         (OBJ_COPY_SYMBOL_ATTRIBUTES): Here too.
3344         (OBJ_PROCESS_STAB): And here.
3345         (elf_obj_sy): Remove
3346
3347         * config/obj-elf.h: #ifndef everything defined in obj-multi.h,
3348         except OBJ_PROCESS_STAB, which we #undef for ecoff.
3349         (elf_obj_sy): Remove #ifndef OBJ_SYMFIELD_TYPE.
3350
3351         * config/obj-coff.c (no_func): Remove.
3352         (coff_format_ops): Change occurrences of no_func to 0, as we test
3353         for 0 in obj-multi.h.
3354
3355         * configure.in:  Enable bfd for i386-coff when primary target is
3356         bfd.  Enable i386 elf,coff emulation support.  Don't set
3357         USE_EMULATIONS=1 or te_file=multi unless there is more than one
3358         emulation to support.
3359         *configure: Regenerate.
3360
3361 1999-09-02  Nick Clifton  <nickc@cygnus.com>
3362
3363         * config/tc-mcore.c (mcore_s_section): Do not dump literals if a
3364         .section .line directive is encountered.
3365
3366 1999-09-01  Nick Clifton  <nickc@cygnus.com>
3367
3368         * config/tc-arm.c (md_section_align): Do not align sections in ELF
3369         format.
3370
3371         * as.c (show_usage): Add --gdwarf2 to list of options displayed.
3372         * as.texinfo: Document --gdwarf2 command line option.
3373         Add additional documentation of ARM command line switches.
3374
3375 1999-08-30  Alan Modra  <alan@spri.levels.unisa.edu.au>
3376
3377         * config/tc-i386.c (i386_intel_memory_operand): Combine
3378         i386_is_reg and parse_register calls.  Remove END_STRING_AND_SAVE
3379         and RESTORE_END_STRING around parse_register calls.
3380         (i386_operand): Here too.
3381         (i386_is_reg): Remove.
3382         (parse_register): Move as_bad calls from within this function to
3383         callers.
3384
3385 1999-08-29  Alan Modra  <alan@spri.levels.unisa.edu.au>
3386
3387         Based on a patch from H.J. Lu  <hjl@gnu.org>
3388         * config/tc-i386.c (parse_register): Handle FP regs specially.
3389         (md_begin): Remove '(' and ')' from register_chars.
3390
3391 1999-08-29  Doug Evans  <devans@casey.cygnus.com>
3392
3393         * config/tc-m32r.c (md_parse_option): Delete unrecognized option
3394         error message (done elsewhere).
3395
3396 Sat Aug 28 01:23:11 1999  Jeffrey A Law  (law@cygnus.com)
3397
3398         * config/tc-hppa.c (pa_ip): Do not allow '*' in 32bit completers.
3399
3400 Sat Aug 28 00:26:26 1999  Jerry Quinn <jquinn@nortelnetworks.com>
3401
3402         * config/tc-hppa.c (pa_ip): Replace 'f' by 'v'.  Prefix float register
3403         args by 'f'.
3404
3405         * config/tc-hppa.c (pa_ip): Add args q, %, and |.
3406
3407         * config/tc-hppa.c (pa_ip):  Absorb white space in instructions
3408         between args.
3409         Add new completers.  Fix bug in 64 bit condition handling.
3410
3411         * config/tc-hppa.c (pa_ip):  Add completer codes 'a', 'ch', 'cH',
3412         'cS', and 'c*'.
3413
3414         * config/tc-hppa.c (pa_ip): Place completers behind prefix 'c'.
3415
3416         * config/tc-hppa.c (pa_ip):  Add cases for '.', '~'. '$'. and '!'
3417
3418         * config/tc-hppa.c (pa_ip):  Add case for 'I'.
3419
3420 1999-08-27  Jim Wilson  <wilson@cygnus.com>
3421
3422         * dwarf2dbg.c (MAX_SPECIAL_ADDR_DELTA): Correct typo in comment.
3423         (struct ls): Add frag field.  Initialize it to zero.
3424         (out_end_sequence): New local text_frag.  Set it while in text section.
3425         Replace address check with frag check.  Set ls.frag to text_frag if
3426         out_set_addr called.
3427         (dwarf2_gen_line_info): Add explanatory comment.  New local saved_frag.
3428         Set it before switching sections.  Replace address check with frag
3429         check.  Set ls.frag to saved_frag if out_set_addr called.
3430
3431 1999-08-26  David Mosberger  <davidm@hpl.hp.com>
3432
3433         * dwarf2dbg.c (out_end_sequence): If address changed, directly
3434         output "advance_pc" opcode instead of calling gen_addr_line().
3435         The latter has the undesired side-effect of creating a new row
3436         in the debug line info matrix.
3437
3438 1999-08-26  Jim Wilson  <wilson@cygnus.com>
3439
3440         * dwarf2dbg.c (out_end_sequence): Correct comments.  Set last to
3441         ls.last_filename if last is less than zero.  Set ls.last_filename
3442         when allocating new entry.
3443         (dwarf2_gen_line_info): Save seg and subseg info before subseg_new
3444         call.
3445
3446 1999-08-20  Alan Modra  <alan@spri.levels.unisa.edu.au>
3447
3448         * config/tc-i386.c (i386_index_check): Fix the displacement size
3449         when INFER_ADDR_PREFIX.
3450
3451 1999-08-18  Nick Clifton  <nickc@cygnus.com>
3452
3453         * config/tc-arm.c (md_apply_fix3): If an offset is invalid,
3454         display its value.
3455
3456 1999-08-17  Ian Lance Taylor  <ian@zembu.com>
3457
3458         * config/tc-ppc.c (md_assemble): Trim @ha constant to 16 bits, to
3459         handle 0xffffNNNN constants correctly.
3460
3461 1999-08-16  Nick Clifton  <nickc@cygnus.com>
3462
3463         * config/tc-arm.c (do_ldst): Look for register conflicts on stores
3464         as well as loads.
3465
3466 1999-08-13  Nick Clifton  <nickc@cygnus.com>
3467
3468         * config/tc-arm.c (validate_offset_imm): Work on unsigned values.
3469         (md_apply_fix3): Always pass positive values to
3470         validate_offset_imm.
3471
3472 1999-08-12  Nick Clifton  <nickc@cygnus.com>
3473
3474         * config/tc-arm.c (skip_whitespace): New macro.
3475         Formatting tidy ups.
3476
3477         (md_apply_fix3): Store relocation offset in addend for ELF based
3478         relocs.
3479         (arm_force_relocation): Always generate relocs for Thumb function
3480         calls.
3481
3482 1999-08-11  Alan Modra  <alan@spri.levels.unisa.edu.au>
3483
3484         * config/tc-i386.c (md_assemble): Remove dead code.  intel_syntax
3485         LONG_DOUBLE_MNEM_SUFFIX floating point is done in opcode/i386.h
3486
3487 Tue Aug 10 12:58:31 1999  Jeffrey A Law  (law@cygnus.com)
3488
3489         * config/tc-hppa.c (pa_build_unwind_subspace): Use sane section
3490         flags for the unwind subspace.
3491
3492         * config/tc-hppa.c (UNWIND_SECTION_NAME): Define for ELF.
3493         (pa_build_unwind_subspace): Remove #if 0 wrapper.  Select a
3494         suitable relocation based on the size of the target's pointer.
3495         Always Use subsegment zero for the unwinders.
3496         (pa_level): Handle "2.0w".
3497
3498 Mon Aug  9 20:02:22 1999  J"orn Rennecke  <amylaar@cygnus.co.uk>
3499
3500         * config/tc-d30v.c (write_2_short): Don't group repeat instructions
3501         with the following instruction unless this was specified.
3502
3503 1999-08-09  Ian Lance Taylor  <ian@zembu.com>
3504
3505         * config/tc-i386.h (SUB_SEGMENT_ALIGN): If TE_GO32, return 4 for
3506         certain sections, to match BFD changes.
3507
3508 1999-08-08  Mumit Khan  <khan@xraylith.wisc.edu>
3509
3510         * Makefile.am (noinst_SCRIPTS): Change .gdbinit to $(GDBINIT).
3511         (EXTRA_SCRIPTS): Define to keep automake happy.
3512         * Makefile.in: Rebuild.
3513
3514 1999-08-08  Ian Lance Taylor  <ian@zembu.com>
3515
3516         * Makefile.am: Rename .dep* files to DEP*.
3517         (MKDEP): Rename from DEP.  Change all uses.  Use $${srcdir} rather
3518         than $(srcdir).  Rename TCDEP targets to DEPTC.  Rename OBJDEP
3519         targets to DEPOBJ.
3520         * Makefile.in: Rebuild.
3521
3522 1999-08-08  Jakub Jelinek  <jj@ultra.linux.cz>
3523
3524         * config/tc-sparc.c (sparc_ip): Allow assembly of %lo()+%reg.
3525
3526 1999-08-08  Ian Lance Taylor  <ian@zembu.com>
3527
3528         * Makefile.am: Change all uses of itbl-test-ops to itbl-tops to
3529         avoid problems on DOS filesystems.
3530         * Makefile.in: Rebuild.
3531
3532         * doc/as.texinfo (Section): Document 's' flag for COFF version.
3533
3534 1999-08-08  Mumit Khan  <khan@xraylith.wisc.edu>
3535
3536         * config/obj-coff.c (obj_coff_section): Handle 's' (shared)
3537         section flag.
3538
3539 1999-08-08  Ian Lance Taylor  <ian@zembu.com>
3540
3541         * configure.in: Define and substitute GDBINIT.  Change AC_OUTPUT
3542         line to create ${GDBINIT} rather than .gdbinit.
3543         * configure, Makefile.in, doc/Makefile.in: Rebuild.
3544
3545 Fri Aug  6 12:12:44 1999  Jeffrey A Law  (law@cygnus.com)
3546
3547         * config/tc-hppa.c (pa_ip, case '?'): Add missing break.
3548
3549 Fri Aug  6 09:46:35 1999  Jerry Quinn <jquinn@nortelnetworks.com>
3550
3551         * config/tc-hppa.c (pa_ip):  Add 64 bit condition completers.
3552
3553 1999-08-06  Jakub Jelinek  <jj@ultra.linux.cz>
3554
3555         * config/tc-sparc.h (tc_fix_adjustable): Fix check for PIC local
3556         non-adjustable symbols.
3557
3558 Thu Aug  5 16:52:51 1999  Jerry Quinn <jquinn@nortelnetworks.com>
3559
3560         * config/tc-hppa.c (pa_ip): Change condition args to have '?' prefix.
3561
3562 Thu Aug  5 23:05:56 1999  J"orn Rennecke  <amylaar@cygnus.co.uk>
3563
3564         * config/tc-sh.c (md_assemble):  Call as_bad when there are excess
3565         operands.
3566
3567 1999-08-05  Donn Terry  <donn@interix.com>
3568
3569         * config/te-interix.h: New file.
3570         * configure.in (i386-*-interix*): New target.
3571         * configure: Rebuild.
3572
3573 Wed Aug  4 13:12:17 1999  Jeffrey A Law  (law@cygnus.com)
3574
3575         * config/tc-hppa.c (pa_chk_field_selector): Allow 3 byte
3576         selectors for ELF too.
3577         (selector_table): Add "ltp" and "rtp" selectors.
3578
3579 1999-08-04  Alan Modra  <alan@spri.levels.unisa.edu.au>
3580
3581         * config/tc-i386.c (i386_operand): No need to change
3582         operand_string pointer in segment reg case before goto
3583         do_memory_reference.  Initialise displacement_string_start and
3584         displacement_string_end after do_memory_reference label.
3585         (i386_index_check): Add operand_string param, and print error
3586         message on failure here.
3587         (i386_intel_memory_operand): Instead of here.
3588         (i386_operand): And here.
3589         (INFER_ADDR_PREFIX): Enable.
3590
3591         * doc/c-i386.texi (i386-16bit): Document .code16gcc.
3592
3593         * config/tc-i386.h (DefaultSize): Define.  Renumber following
3594         opcode_modifier defines.
3595
3596         From Etienne Lorrain  <etienne.lorrain@ibm.net>
3597         * config/tc-i386.c (stackop_size): New variable.
3598         (set_16bit_code_flag): Clear it here.
3599         (set_16bit_gcc_code_flag): New function.
3600         (md_pseudo_table): Add "code16gcc" entry.
3601         (md_assemble): Set i.suffix for insns with DefaultSize modifier.
3602
3603 1999-08-03  Ian Lance Taylor  <ian@zembu.com>
3604
3605         * config/obj-coff.c (coff_frob_symbol): Always update set_end with
3606         next_set_end even if the end symbol is being discarded.
3607
3608         * gasp.c: Add ATTRIBUTE_UNUSED as needed for non-BFD_ASSEMBLER.
3609         * output-file.c, symbols.c, config/tc-i386.c: Likewise.
3610         * config/obj-coff.c: Likewise.
3611         (seg_info_type): Remove.
3612         (seg_info_off_by_4): Change to array of segT.
3613         (s_get_segment): Adjust accordingly.
3614         (obj_pseudo_table): Fully initialize sentinel entry.
3615
3616         * config/tc-mips.c (append_insn): Correct INSN_SYNC test.  From
3617         Ralf Baechle <ralf@uni-koblenz.de>.
3618
3619 1999-08-03  Etienne Lorrain  <etienne.lorrain@ibm.net>
3620
3621         * config/tc-i386.c (f16_3): New. Fixes 16 bit 3 byte nop.
3622
3623 1999-08-03  Alan Modra  <alan@spri.levels.unisa.edu.au>
3624
3625         * config/tc-i386.c: Indentation and white space changes.
3626         (i386_index_check): New function.  Add INFER_ADDR_PREFIX code, but
3627         don't enable it by default.
3628         (i386_intel_operand): Remove redundant prototype.
3629         Move check on number of memory operands, and i.mem_operands++
3630         (i386_intel_memory_operand): To here.
3631         Remove i386_immediate code from here.  Remove special case code
3632         for input and output using (%dx).  Remove base/index checks and
3633         call i386_index_check instead.  Save initial operand_string
3634         argument for error message.
3635         (i386_operand): Remove redundant prototype.  Move base/index
3636         checks to i386_index_check.
3637         (i386_displacement): Move intel mode check for non-zero
3638         i.disp_operand
3639         (i386_intel_memory_operand): To here.
3640
3641 1999-07-30  Jakub Jelinek  <jj@ultra.linux.cz>
3642
3643         * config/tc-sparc.c (md_longopts): Add --no-undeclared-regs option.
3644         (sparc_ip): Warn if %g2 or %g3 register is used and not covered
3645         by .register pseudo-op if -64 and --no-undeclared-regs.
3646         (s_register, sparc_adjust_symtab): New functions.
3647         * config/tc-sparc.h (tc_adjust_symtab, sparc_adjust_symtab):
3648         Declare sparc_adjust_symtab as tc_adjust_symtab.
3649         * doc/c-sparc.texi: Add description of #ignore special literal
3650         for .register pseudo-op.
3651
3652 1999-07-30  Catherine Moore  <clm@cygnus.com>
3653
3654         * config/tc-arm.c (tc_gen_reloc): Record the vtable entry in
3655         the relocation's section offset.
3656
3657 1999-07-29  Alan Modra  <alan@spri.levels.unisa.edu.au>
3658
3659         * write.c (fixup_segment): Fix generic error check overflow test.
3660
3661         * config/tc-i386.c (pe): Change %d to %ld, %x to %lx, and cast
3662         X_add_number to long.
3663
3664 Wed Jul 28 02:04:24 1999  "Jerry Quinn" <jquinn@nortelnetworks.com>
3665
3666         * config/tc-hppa.c (pa_ip):  Add 'J' and 'K' code
3667         processing.
3668
3669 1999-07-27  Ian Lance Taylor  <ian@zembu.com>
3670
3671         * config/tc-sparc.h (tc_fix_adjustable): Don't adjust GOT, PLT, or
3672         VTABLE relocations.
3673
3674 1999-07-21  Mark Elbrecht  <snowball3@bigfoot.com>
3675
3676         * config/te-go32.h (COFF_LONG_SECTION_NAMES): Define.
3677
3678         * configure.bat: Remove; obsolete.
3679         * config/go32.cfg: Likewise.
3680
3681 1999-07-21  Brad M. Garcia  <bgarcia@fore.com>
3682
3683         * configure.in (i386-*-vxworks*): New target.
3684         * configure: Rebuild.
3685
3686 1999-07-16  Jakub Jelinek  <jj@ultra.linux.cz>
3687
3688         * doc/c-sparc.texi: Document .register and .nword pseudo-ops.
3689
3690 1999-07-16  Jakub Jelinek  <jj@ultra.linux.cz>
3691
3692         * config/tc-sparc.c (sparc_ip): Allow OLO10 relocations
3693         on -64 and not pic.
3694         (output_insn): Put OLO10's secondary addend into tc_fix_data.
3695         (md_apply_fix3): Handle BFD_RELOC_SPARC_OLO10.
3696         (tc_gen_reloc): Return two relocs for OLO10, LO10 and SPARC13.
3697         * config/tc-sparc.h (RELOC_EXPANSION_POSSIBLE,
3698         MAX_RELOC_EXPANSION): Define.
3699         (TC_FIX_TYPE, TC_INIT_FIX_DATA, TC_FIX_DATA_PRINT): Likewise.
3700
3701 1999-07-16  Alan Modra  <alan@spri.levels.unisa.edu.au>
3702
3703         * config/tc-i386.c (intel_float_operand): Add prototype, make static.
3704         (md_assemble): Localize *exp variable to if (fake_zero_displacement)
3705         block.  Print a warning if an 8-bit or 16-bit constant
3706         displacement or immediate is truncated on output.
3707         (i386_immediate): Ensure Imm16 is always legal for a 16-bit mode
3708         immediate.
3709         (i386_operand): Disallow immediate jump absolute operand.
3710
3711 1999-07-15  Ian Lance Taylor  <ian@zembu.com>
3712
3713         * configure.in: Bump version number to 2.9.5.
3714         * configure: Rebuild.
3715
3716         * dwarf2dbg.c (dwarf2_gen_line_info): Don't assume that long long
3717         or %llx work.
3718
3719 Thu Jul 15 02:45:30 1999  Jeffrey A Law  (law@cygnus.com)
3720
3721         * config/tc-hppa.c (md_pseudo_table): Add ".dword" pseudo-op.
3722         (cons_fix_new_hppa): Derive size of fixup from size of the object.
3723
3724 1999-07-14  Philip Blundell  <pb@nexus.co.uk>
3725
3726         * symbols.c (dollar_label_name): Prepend LOCAL_LABEL_PREFIX if it
3727         is defined.
3728         * config/tc-arm.h (LOCAL_LABEL_PREFIX): Define to '.' for ELF.
3729
3730         * config/tc-arm.c (md_begin): Set F_SOFTFLOAT in the output file
3731         if -mno-fpu was given.
3732         (tc_gen_reloc): Fix typo.  Delete bogus code related to GOTPC
3733         relocs.
3734         (cons_fix_new_arm): Remove misleading comments.
3735
3736 1999-07-14  Ian Lance Taylor  <ian@zembu.com>
3737
3738         * write.c (cvt_frag_to_fill): Use frag file and line in rs_org
3739         error message.
3740         (relax_segment): Likewise.  After giving a rs_org error, convert
3741         the frag to rs_align to avoid cascading errors.
3742
3743 1999-07-12  Andreas Schwab  <schwab@suse.de>
3744
3745         * config/tc-m68k.c: Add some ATTRIBUTE_UNUSED.
3746
3747 1999-07-11  Ian Lance Taylor  <ian@zembu.com>
3748
3749         * Many files: Changes to avoid gcc warnings: Add ATTRIBUTE_UNUSED
3750         as appropriate.  Fill in structure initializations.  Add variable
3751         initializations.  Add casts.
3752         * dwarf2dbg.c (print_stats): Change i to size_t.
3753         * listing.c (listing_listing): Change list_line to unsigned int.
3754
3755 1999-07-10  Ian Lance Taylor  <ian@zembu.com>
3756
3757         * config/tc-ppc.h (tc_fix_adjustable) [OBJ_ELF]: Call S_IS_LOCAL
3758         rather than checking for \001 and \002 in symbol name.
3759         * config/tc-sparc.h (tc_fix_adjustable) [OBJ_ELF]: Likewise.
3760
3761 Thu Jul  8 12:32:23 1999  John David Anglin <dave@hiauly1.hia.nrc.ca>
3762
3763         * configure.in (hppa*-linux-gnu*): New target.
3764         * configure: Rebuilt.
3765
3766 1999-07-08  Nick Clifton  <nickc@cygnus.com>
3767
3768         * doc/c-arm.texi (ARM Directives): Document .thumb_set directive.
3769
3770 1999-07-07  Nick Clifton  <nickc@cygnus.com>
3771
3772         * config/tc-v850.c (v850_comm): Use symbol_get_obj() rather than
3773         accessing symbolP directly.
3774
3775 Tue Jul  6 10:41:42 1999  Jeffrey A Law  (law@cygnus.com)
3776
3777         * config/tc-hppa.h (tc_frob_symbol): Always punt "$global$" symbol
3778         for ELF.
3779
3780 1999-07-05  Nick Clifton  <nickc@cygnus.com>
3781
3782         * config/tc-arm.c (ARM_EXT_V5): Define.
3783         (ARM_ARCH_V5, ARM_ARCH_V5T): Define.
3784         (md_begin): Detect ARM v5 architectures.
3785         (md_parse_option): Accept arm v5 specification.
3786         (md_show_usage): Documment -marmv5 switch.
3787
3788         * doc/c-arm.texi: Document -marmv5 command line option.
3789
3790         * config/tc-arm.c (do_adrl): New function.  Implement ADRL pseudo
3791         op.
3792         (validate_immediate_twopart): New function.  Determine if a
3793         constant can be computed by two ADD instructions.
3794         (output_inst): Remove its command line parameter - it was never
3795         used.
3796         (md_apply_fix3): Support BFD_RELOC_ARM_ADRL_IMMEDIATE, used to
3797         implememt the ADRL pseudo op.
3798         (tc_gen_reloc): Generate a suitable error message if an ADRL
3799         instruction tries to generate a real reloc.
3800
3801         * doc/c-arm.texi: Document NOP, ADR and ADRL pseudo ops.
3802
3803 Thu Jul  1 15:33:10 1999  Jeffrey A Law  (law@cygnus.com)
3804
3805         * config/tc-hppa.c (pa_ip): Convert the opcode and all completers
3806         into lower case.
3807
3808 1999-06-27  H.J. Lu  <hjl@gnu.org>
3809
3810         * subsegs.c (subseg_text_p): Use 1/0 instead of true/false for
3811         non BFD_ASSEMBLER case.
3812
3813 1999-06-26  Mumit Khan  <khan@xraylith.wisc.edu>
3814
3815         * config/obj-coff.c (obj_coff_section): Mark writable sections as
3816         data.
3817
3818 1999-06-26  David Mosberger  <davidm@hpl.hp.com>
3819
3820         * dwarf2dbg.c (dwarf2_gen_line_info): Don't call
3821         out_end_sequence() when the address decreases due to a new frag.
3822         (gen_dir_list): Set ls.file[i].dir to j + 1 (not j) because file
3823         numbering starts with 1.
3824
3825 1999-06-23  Nick Clifton  <nickc@cygnus.com>
3826
3827         * config/tc-mcore.c (md_pseudo_table): Add .comm for ELF and allow
3828         .section for COFF.
3829         (mcore_s_text): Call obj_elf_text for ELF target.
3830         (mcore_s_data): Call obj_elf_data for ELF target.
3831         (mcore_s_section): No longer ELF specific.  Call obj_coff_section
3832         for COFF target.
3833         (mcore_s_bss): New function:  Dump literal table before changing
3834         sections.
3835         (mcore_s_comm): New function:  Dump literal table before changing
3836         sections.
3837
3838         * config/obj-elf.c (obj_elf_common, obj_elf_data, obj_elf_text):
3839         No longer static functions.
3840         * config/obj-elf.h (obj_elf_common, obj_elf_data, obj_elf_text):
3841         Provide prototypes for these functions.
3842
3843 1999-06-22  Ian Lance Taylor  <ian@zembu.com>
3844
3845         * subsegs.c (subseg_text_p): Rewrite non BFD_ASSEMBLER case to use
3846         a list of names, to try obj_segment_name, and to try abbreviated
3847         names when using COFF without long section names.
3848
3849         * config/tc-alpha.c: More use of symbol accessor functions.
3850         * config/tc-arc.c: Likewise.
3851         * config/tc-d30v.c: Likewise.
3852         * config/tc-fr30.c: Likewise.
3853         * config/tc-i860.c: Likewise.
3854         * config/tc-m88k.c: Likewise.
3855         * config/tc-mcore.c: Likewise.
3856         * config/tc-ns32k.c: Likewise.
3857         * config/tc-sparc.c: Likewise.
3858         * config/tc-v850.c: Likewise.
3859
3860         * config/tc-arc.c (get_arc_exp_reloc_type): Change uses of
3861         sy_value with appropriate accessor functions.
3862         * config/tc-arm.c (md_apply_fix3): Likewise.
3863         * config/tc-d10v.c (AT_WORD_P): Likewise.
3864         * config/tc-v850.c (reg_name_search): Likewise.
3865
3866         * config/obj-ecoff.c (obj_ecoff_set_ext): Change uses of bsym to
3867         use symbol_get_bfdsym instead.
3868         * config/tc-ppc.c (md_assemble): Likewise.
3869         * config/tc-v850.c (v850_comm): Likewise.
3870
3871 1999-06-22  Jonathan Larmour  <jlarmour@cygnus.co.uk>
3872
3873         * config/tc-arc.c (tc_gen_reloc): Use symbol_get_bfdsym to get at
3874         the symbol, rather than accessing the bsym member.
3875         * config/tc-d10v.c (tc_gen_reloc): Likewise.
3876         * config/tc-d30v.c (tc_gen_reloc): Likewise.
3877         * config/tc-mcore.c (tc_gen_reloc): Likewise.
3878         * config/tc-mn10200.c (tc_gen_reloc): Likewise.
3879         * config/tc-mn10300.c (tc_gen_reloc): Likewise.
3880         * config/tc-ns32k.c (tc_gen_reloc): Likewise.
3881         * config/tc-tic30.c (tc_gen_reloc): Likewise.
3882         * config/tc-v850.c (tc_gen_reloc): Likewise.
3883
3884 Mon Jun 21 16:45:19 1999  Jeffrey A Law  (law@cygnus.com)
3885
3886         * tc-hppa.c (elf_hppa_reloc_type): Renamed from elf32_hppa_reloc_type.
3887         (hppa_gen_reloc_type): Conditionalize on BFD64.
3888         (tc_gen_reloc): Re-enable ELF relocations.
3889         * tc-hppa.h (TARGET_FORMAT): Handle elf64-hppa format.
3890
3891 1999-06-21  Ian Lance Taylor  <ian@zembu.com>
3892
3893         * config/tc-arm.c (ldst_extend): Add parentheses to avoid
3894         warning.
3895         (do_ldst): Move assignment out of if condition.
3896         (md_apply_fix3): Add casts to avoid printf format warnings.  Add
3897         parentheses to avoid warning.
3898
3899 1999-06-21  Nick Clifton  <nickc@cygnus.com>
3900
3901         * config/tc-arm.c (arm_adjust_symtab): Use symbol_get_bfdsym()
3902         macro to get at the BFD symbol associated with a GAS symbol.
3903
3904 1999-06-19  Ian Lance Taylor  <ian@zembu.com>
3905
3906         * config/tc-ppc.c: Update for symbol handling changes.
3907         * config/obj-coff.c: Likewise.
3908
3909 Fri Jun 18 14:34:18 1999  Jeffrey A Law  (law@cygnus.com)
3910
3911         * tc-hppa.c: General cleanups of ELF support.  No more spaces
3912         and subspaces for ELF.
3913         (GDB_DEBUG_SPACE_NAME): Delete definition for ELF.
3914         (GDB_STRINGS_SUBSPACE_NAME): Likewise.
3915         (GDB_SYMBOLS_SUBSPACE_NAME): Likewise
3916         (UNWIND_SECTION_NAME): Likewise.
3917         (space/subspace related structures): Conditionalize definitions
3918         on OBJ_SOM.
3919         (space/subspace directives and support routines): Conditionalize
3920         definitions and references/uses on OBJ_SOM.
3921         (label_symbol_struct): For ELF, track the symbol's segment.  For
3922         SOM track its space.
3923         (pa_define_label, pa_undefine_label, pa_get_label): Corresponding
3924         changes.
3925         (USE_ALIASES): Kill for both SOM & ELF.
3926         (pa_def_subspaces, pa_def_spaces): Corresponding changes.
3927         (pa_space, pa_subspace): Corresponding changes.
3928         (pa_spaces_begin): Corresponding chagnes.
3929         (md_begin): Do not muck around with space/subspace stuff for
3930         OBJ_ELF.
3931         (md_apply_fix): Temporarily disable argument relocation stuff
3932         for OBJ_ELF.
3933         (tc_gen_reloc): Temporarily disable relocation generation for
3934         OBJ_ELF
3935         (pa_build_unwind_subspace): Similarly.
3936
3937 1999-06-16  Nick Clifton  <nickc@cygnus.com>
3938
3939         * config/tc-arm.c (thumb_set): New pseudo op.
3940         (text, data, section): Override these pseudo ops with ARM
3941         specific versions.
3942         (s_thumb_set): New function: Perform the same as a .set pseudo
3943         op, but also mark the alias'ed symbol as being a Thumb
3944         function.
3945         (arm_s_text): New function: Perform the same as the .text
3946         pseudo op, but dump the literal pool before changing
3947         sections.
3948         (arm_s_data): New function: Perform the same as the .data
3949         pseudo op, but dump the literal pool before changing
3950         sections.
3951         (arm_s_section): New function: Perform the same as the
3952         .section pseudo op, but dump the literal pool before changing
3953         sections.
3954         (arm_cleanup): Do not reset the current section before dumping
3955         the literal pool.
3956
3957 1999-06-17  Nick Clifton  <nickc@cygnus.com>
3958
3959         * config/tc-m32r.c (md_longopts): Fix OPTION_WARN_UNMATCHED and
3960         OPTION_NO_WARN_UNMATCHED entries.
3961         (md_parse_option): Generate a warning message if an unrecognised
3962         option is encountered.
3963
3964         * config/tc-d10v.c (do_not_ignore_hash): New variable.
3965         (get_operands): When parsing an expression after an '@' symbol
3966         has been detected, do not ignore '#' symbols.
3967         (md_operand): Only ignore '#' symbols if do_not_ignore_hash is
3968         false.
3969
3970 1999-06-13  Ian Lance Taylor  <ian@zembu.com>
3971
3972         From K. Richard Pixley <rich@noir.com>:
3973         * configure.in (ppc-*-vxworks*): New target.
3974         * configure: Rebuild.
3975
3976 1999-06-12  Philip Blundell  <philb@gnu.org>
3977
3978         * config/tc-arm.c (tc_gen_reloc): Fix handling of GOTPC relocs.
3979
3980 1999-06-13  Ian Lance Taylor  <ian@zembu.com>
3981
3982         * write.c (adjust_reloc_syms): Rather than never reducing reloc
3983         which refer to symbols in linkonce sections, permit reducing the
3984         relocs if the symbol is local.
3985
3986 1999-06-12  Ian Lance Taylor  <ian@zembu.com>
3987
3988         * subsegs.c (subseg_text_p): New function.
3989         * as.h (subseg_text_p): Declare.
3990         * read.c (do_align): Use subseg_text_p to set the default fill.
3991         * write.c (subsegs_finish): Likewise.
3992         * config/obj-coff.c (write_object_file): Likewise.
3993         * config/tc-i386.h (md_maybe_text): Don't define.
3994         (md_do_align): Use subseg_text_p to set the default fill.
3995         * config/tc-m32r.c (m32r_do_align): Likewise.
3996         * config/tc-sh.c (sh_do_align): Likewise.
3997         * config/tc-sparc.h (md_do_align): Likewise.
3998
3999 1999-06-12  David O'Brien  <obrien@freebsd.org>
4000
4001         * configure.in: (i[3456]86-*-freebsd*): Now defaults to ELF.
4002         * configure: Rebuild.
4003
4004 1999-06-12  Ian Lance Taylor  <ian@zembu.com>
4005
4006         * dwarf2dbg.c: Include elf/dwarf2.h with "", not <>.
4007         * Makefile.am: Rebuild dependencies.
4008         * Makefile.in: Rebuild.
4009
4010         * config/tc-i386.c (i386_immediate): Remove unused label
4011         seg_unimplemented.
4012
4013         * struc-symbol.h: Put local_symbol code in ifdef BFD_ASSEMBLER.
4014         * symbols.c: Likewise.
4015         * config/obj-aout.c (obj_crawl_symbol_chain): Refer directly to
4016         sy_next field when taking address, rather than symbol_next.
4017
4018         * dwarf2dbg.c: Change bfd_vma to addressT and bfd_signed_vma to
4019         offsetT.
4020         (out_set_addr): Don't use BYTES_PER_ADDRESS.  Instead, get the
4021         value from the output file architecture.
4022         (dwarf2_gen_line_info): Ifdef BFD_ASSEMBLER specific code.
4023         * dwarf2dbg.h: Change bfd_vma to addressT.
4024
4025 1999-06-11  Ian Lance Taylor  <ian@zembu.com>
4026
4027         * dwarf2dbg.h: Use PARAMS in function declarations.
4028
4029 1999-06-11  Martin Dorey  <mdorey@madge.com>
4030
4031         * write.c (fixup_segment): Don't add symbol value for i960 ELF.
4032         * config/tc-i960.c (s_leafproc): Don't call tc_set_bal_of_cal if
4033         OBJ_ELF.
4034         (md_apply_fix): Simplify BFD_ASSEMBLER handling.
4035
4036 1999-06-11  Ian Lance Taylor  <ian@zembu.com>
4037
4038         * config/tc-i386.c (md_apply_fix3): Add default case to switch.
4039
4040         * config/tc-sparc.c (md_pseudo_table): Remove pushsection and
4041         popsection.
4042
4043         * config/tc-sparc.c (sparc_ip): Add default case to reloc switch.
4044
4045         * read.c (read_a_source_file): Only declare inescape if
4046         QUOTES_IN_INSN.
4047
4048         * itbl-ops.c (itbl_disassemble): Change sprintf format strings to
4049         match parameters.
4050         (find_entry_byval): Add parens to avoid warning.
4051
4052         * as.c: If HAVE_ITBL_CPU, include "itbl-ops.h".
4053
4054         * symbols.c (resolve_symbol_value): Don't permit subtraction of
4055         undefined symbols.
4056
4057 1999-06-10  Jakub Jelinek  <jj@ultra.linux.cz>
4058
4059         * config/tc-sparc.c (sparc_ip): Don't use side-effect expression
4060         with isoctal.
4061
4062         * config/tc-sparc.c (synthetize_setuw, synthetize_setsw,
4063         synthetize_setx): New functions.
4064         (md_assemble): Broken the special cases into the above
4065         functions. Make compiler happy if sizeof(bfd_vma)==4.
4066         Fix sethi generated from set/setuw. If instructions have a relloc,
4067         always clear the fields to be relocated in the opcode.
4068         (sparc_ip): Remove special_case global variable.
4069
4070 1999-06-10  Ian Lance Taylor  <ian@zembu.com>
4071
4072         Based on patches from John W. Woznack <jwoznack@concentric.net>:
4073         * itbl-ops.c (itbl_get_reg_val): Add pval parameter.  Return
4074         indication of success rather than a value.
4075         (itbl_get_val): Likewise.
4076         (itbl_get_field): Use strcspn.  Change delimiters to include
4077         parens.
4078         * itbl-ops.h (itbl_get_reg_val): Update declaration.
4079         (itbl_get_val): Likewise.
4080         * config/tc-mips.c (mips_ip): Update call to itbl_get_reg_val.
4081
4082         * symbols.c (copy_symbol_attributes): Convert local symbols to
4083         regular symbols.
4084
4085 1999-06-10  Nick Clifton  <nickc@cygnus.com>
4086
4087         * config/tc-arm.c (md_parse_option): Add support for ARM920 and
4088         ARM920t.
4089
4090 1999-06-07  Jakub Jelinek  <jj@ultra.linux.cz>
4091
4092         * config/tc-sparc.c (md_assemble): Fix up setx, support setsw.
4093         Optimize set if sizeof(bfd_vma) == 64.
4094         (sparc_ip): Fix sethi - without %hi() it should generate
4095         R_SPARC_22 reloc, not R_SPARC_HI22.
4096         (tc_gen_reloc): Handle BFD_RELOC_SPARC22.
4097
4098 1999-06-07  Jakub Jelinek  <jj@ultra.linux.cz>
4099
4100         * config/tc-sparc.c (md_begin): Handle native wordsize aliases.
4101         (s_ncons): New function.
4102         (native_op_table): New table.
4103         (sparc_ip): Be more strict on %hi() etc.; prepare assembler for
4104         R_SPARC_OLO10 handling.
4105
4106 Mon Jun  7 10:22:16 1999  Richard Henderson  <rth@cygnus.com>
4107
4108         * expr.h (struct expressionS): Revert last change; widen X_op.
4109         * config/tc-alpha.c (md_begin): Check the field is wide enough.
4110
4111 Mon Jun  7 11:25:16 1999  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
4112
4113         * Makefile.am (TARGET_CPU_CFILES): Add config/tc-fr30.c.
4114         (TARGET_CPU_HFILES): Add config/tc-fr30.h.
4115         (TARG_ENV_HFILES): Add config/te-epoc-pe.h.
4116         * Makefile.in: Regenerated.
4117
4118         * config/obj-elf.c (obj_elf_common): In MRI mode if called as
4119         `common' pass on to s_mri_common.
4120         (elf_pseudo_table): Pass 1 to obj_elf_common for `common'.
4121
4122 1999-06-06  Richard Henderson  <rth@cygnus.com>
4123
4124         * config/obj-elf.c (obj_elf_section): Don't free the return
4125         value of demand_copy_C_string.
4126
4127 1999-06-05  Richard Henderson  <rth@cygnus.com>
4128
4129         * dwarf2dbg.c (dwarf2_gen_line_info): Mirror the section symbol
4130         creation logic from obj_elf_create_section.
4131
4132         * config/obj-elf.c (elf_pseudo_tab): Add pushsection/popsection.
4133         (section_stack): New.
4134         (special_sections): Make const.
4135         (obj_elf_section): Gut and rewrite parsing.
4136         (obj_elf_change_section): New function broken out of obj_elf_section.
4137         (obj_elf_parse_section_letters): Likewise.
4138         (obj_elf_section_word): Likewise.
4139         (obj_elf_section_type): Likewise.
4140         (obj_elf_previous): Treat as a toggle.
4141         (obj_elf_popsection): New.
4142         * config/tc-ppc.c (ppc_section_word): Take str+len not ptr_str.
4143         (ppc_section_type): Likewise.
4144         * config/tc-ppc.h: Likewise.
4145
4146         * expr.h (struct expressionS): Don't make X_op a bitfield.
4147         * config/tc-alpha.c: Update for symbol handling changes.
4148         (md_apply_fix) [case GPREL]: Use now_seg instead of absolute_section.
4149         (load_expression, emit_ir_load, emit_loadstore, emit_jsrjmp): Likewise.
4150
4151 1999-06-05  Richard Henderson  <rth@cygnus.com>
4152
4153         * dwarf2dbg.c (*): Convert to K&R + prototypes.
4154         (dwarf2_gen_line_info): Kill unused variables.
4155         (dwarf2_finish): Likewise.
4156         (dwarf2_where): Likewise.
4157         (dwarf2_directive_file): If we've only got a string,
4158         hand off to s_app_file.
4159         * ecoff.c: Move the include of ecoff.h.
4160         * symbols.h (S_IS_FUNCTION): Prototype.
4161
4162         * read.c (LEX_HASH): Supply a default.
4163         (lex_type): Use it.
4164         (s_globl): Update `c' after skipping whitespace.
4165         * read.h (LEX_END_NAME, is_name_ender): New.
4166         * expr.c (get_symbol_end): Respect it.
4167
4168 1999-06-04  Mark Klein <mklein@dis.com>
4169
4170         * config/tc-hppa.c (md_begin): Convert local symbol dummy_symbol
4171         to real if OBJ_SOM
4172         (tc_gen_reloc): Still need bfd_abs_symbol in some relocs.
4173
4174         * config/tc-hppa.c: Update for symbol handling changes.
4175
4176 1999-06-03  Ian Lance Taylor  <ian@zembu.com>
4177
4178         * cgen.c: Update for symbol handling changes.
4179         * config/tc-m32r.c: Likewise.
4180
4181         * config/tc-hppa.h: Update for symbol handling changes.
4182         * config/tc-hppa.c: Likewise.
4183
4184         * config/tc-arm.h: Update for symbol handling changes.
4185         * config/tc-arm.c: Likewise.
4186         (symbol_make_empty): Remove.  Just use symbol_create.
4187
4188         * symbols.c (symbol_set_tc): Correct name.
4189
4190         * Makefile.am: Rebuild dependencies.
4191         ($(OBJS)): Don't depend upon struc-symbol.h.
4192         (.dep1, .tcdep, .objdep): Create itbl-parse.h.
4193         * dep-in.sed: Don't remove struc-symbol.h.
4194         * Makefile.in: Rebuild.
4195
4196         * doc/internals.texi (Symbols): Describe changes in symbol
4197         handling.
4198
4199 1999-06-03  Richard Henderson  <rth@cygnus.com>
4200
4201         * dwarf2dbg.c (dwarf2_gen_line_info): Use section_symbol
4202         instead of doing the work by hand.
4203
4204 1999-06-03  David Mosberger  <davidm@hpl.hp.com>
4205
4206         * dwarf2dbg.c (INITIAL_STATE): New macro encapsulating initial
4207         state of line state-machine.
4208         (struct ls): Collect DWARF2 line state-machine state in new member
4209         SM.  Add member EMPTY_SEQUENCE to keep track if a code sequence
4210         resulted in any DWARF2 directives.
4211         (reset_state_machine): New function.
4212         (out_end_sequence): Ditto.
4213         (dwarf2_gen_line_info): When switching sections or switching to a
4214         lower text address, call out_end_sequence() first to terminate the
4215         previous code sequence as code sequences MUST have monotonically
4216         increasing addresses.
4217         (dwarf2_finish): Call out_end_sequence() instead of open coding it.
4218
4219 1999-06-03  David Mosberger  <davidm@hpl.hp.com>
4220
4221         * as.c (parse_args): Add option -gdwarf2 to allow requesting
4222         DWARF2 debug info (line information only, at this point).
4223         * as.h: Update comment about supported debug formats.
4224         * dwarf2dbg.c, dwarf2dbg.h: New files.
4225         * Makefile.am (GAS_CFILES, HFILES, GENERIC_OBJS): Add them.
4226
4227         * expr.c (operand): Don't use [ for parens if we want an index op.
4228         (op_encoding): Switch [ into O_index, if desired.
4229         (op_rank): Renumber with O_index on bottom.
4230         (expr): If O_index, match closing bracket.
4231         * expr.h (O_index): New.
4232
4233         * read.c (read_a_source_file): Conditionally allow matched "
4234         in lines passed to md_assemble.
4235
4236         * config/obj-elf.c (elf_pseudo_table): Add `common'.
4237
4238 1999-06-03  Ian Lance Taylor  <ian@zembu.com>
4239
4240         Add support for storing local symbols in a small structure to save
4241         memory when assembling large files.
4242         * as.h: Don't include struc-symbol.h.
4243         (symbolS): Add typedef.
4244         * symbols.c: Include struc-symbol.h.
4245         (local_hash): New static variable.
4246         (save_symbol_name): New static function, from symbol_create.
4247         (symbol_create): Call save_symbol_name.
4248         (local_symbol_count): New static variable.
4249         (local_symbol_conversion_count): Likewise.
4250         (LOCAL_SYMBOL_CHECK): Define.
4251         (local_symbol_make): New static function.
4252         (local_symbol_convert): New static function.
4253         (colon): Handle local symbols.  Create local symbol for local
4254         label name.
4255         (symbol_table_insert): Handle local symbols.
4256         (symbol_find_or_make): Create local symbol for local label name.
4257         (symbol_find_base): Check for local symbol.
4258         (symbol_append, symbol_insert): Check for local symbols.
4259         (symbol_clear_list_pointers, symbol_remove): Likewise.
4260         (verify_symbol_chain): Likewise.
4261         (copy_symbol_attributes): Likewise.
4262         (resolve_symbol_value): Handle local symbols.
4263         (resolve_local_symbol): New static function.
4264         (resolve_local_symbol_values): New function.
4265         (S_GET_VALUE, S_SET_VALUE): Handle local symbols.
4266         (S_IS_FUNCTION, S_IS_EXTERNAL, S_IS_WEAK, S_IS_COMMON): Likewise.
4267         (S_IS_DEFINED, S_IS_DEBUG, S_IS_LOCAL, S_GET_NAME): Likewise.
4268         (S_GET_SEGMENT, S_SET_SEGMENT, S_SET_EXTERNAL): Likewise.
4269         (S_CLEAR_EXTERNAL, S_SET_WEAK, S_SET_NAME): Likewise.
4270         (symbol_previous, symbol_next): New functions.
4271         (symbol_get_value_expression): Likewise.
4272         (symbol_set_value_expression): Likewise.
4273         (symbol_set_frag, symbol_get_frag): Likewise.
4274         (symbol_mark_used, symbol_clear_used, symbol_used_p): Likewise.
4275         (symbol_mark_used_in_reloc): Likewise.
4276         (symbol_clear_used_in_reloc, symbol_used_in_reloc_p): Likewise.
4277         (symbol_mark_mri_common, symbol_clear_mri_common): Likewise.
4278         (symbol_mri_common_p): Likewise.
4279         (symbol_mark_written, symbol_clear_written): Likewise.
4280         (symbol_written_p): Likewise.
4281         (symbol_mark_resolved, symbol_resolved_p): Likewise.
4282         (symbol_section_p, symbol_equated_p): Likewise.
4283         (symbol_constant_p): Likewise.
4284         (symbol_get_bfdsym, symbol_set_bfdsym): Likewise.
4285         (symbol_get_obj, symbol_set_obj): Likewise.
4286         (symbol_get_tc, symbol_set_tc): Likewise.
4287         (symbol_begin): Initialize local_hash.
4288         (print_symbol_value_1): Handle local symbols.
4289         (symbol_print_statistics): Print local symbol statistics.
4290         * symbols.h: Include "struc-symbol.h" if not BFD_ASSEMBLER.
4291         Declare new symbols.c functions.  Move many declarations here from
4292         struc-symbol.h.
4293         (SYMBOLS_NEED_BACKPOINTERS): Define if needed.
4294         * struc-symbol.h (SYMBOLS_NEED_BACKPOINTERS): Don't set.
4295         (struct symbol): Move bsym to make it clearly the first field.
4296         Remove TARGET_SYMBOL_FIELDS.
4297         (symbolS): Don't typedef.
4298         (struct broken_word): Remove.
4299         (N_TYPE_seg, seg_N_TYPE): Move to symbol.h.
4300         (SEGMENT_TO_SYMBOL_TYPE, N_REGISTER): Likewise.
4301         (symbol_clear_list_pointers): Likewise.
4302         (symbol_insert, symbol_remove): Likewise.
4303         (symbol_previous, symbol_append): Likewise.
4304         (verify_symbol_chain, verify_symbol_chain_2): Likewise.
4305         (struct local_symbol): Define.
4306         (local_symbol_converted_p, local_symbol_mark_converted): Define.
4307         (local_symbol_resolved_p, local_symbol_mark_resolved): Define.
4308         (local_symbol_get_frag, local_symbol_set_frag): Define.
4309         (local_symbol_get_real_symbol): Define.
4310         (local_symbol_set_real_symbol): Define.
4311         Define.
4312         * write.c (write_object_file): Call resolve_local_symbol_values.
4313         * config/obj-ecoff.h (OBJ_SYMFIELD_TYPE): Define.
4314         (TARGET_SYMBOL_FIELDS): Don't define.
4315         * config/obj-elf.h (OBJ_SYMFIELD_TYPE): Add local field.  If
4316         ECOFF_DEBUGGING, add ECOFF fields.
4317         (ELF_TARGET_SYMBOL_FIELDS, TARGET_SYMBOL_FIELDS): Don't define.
4318         * config/obj-multi.h (struct elf_obj_sy): Add local field.  If
4319         ECOFF_DEBUGGING, add ECOFF fields.
4320         (ELF_TARGET_SYMBOL_FIELDS, TARGET_SYMBOL_FIELDS): Don't define.
4321         (ECOFF_DEBUG_TARGET_SYMBOL_FIELDS): Don't define.
4322         * config/tc-mcore.h: Don't include struc-symbol.h.
4323         (TARGET_SYMBOL_FIELDS): Don't define.
4324         (struct mcore_tc_sy): Define.
4325         (TC_SYMFIELD_TYPE): Define.
4326         * Many files: Use symbolS instead of struct symbol.  Use new
4327         accessor functions rather than referring to symbolS fields
4328         directly.
4329
4330         * read.c (s_mri_common): Don't add in value of line_label.
4331
4332         * config/tc-mips.c (md_apply_fix): Correct parenthesization when
4333         checking for SEC_LINK_ONCE.
4334
4335         * config/tc-sh.h (sh_fix_adjustable): Declare.
4336
4337         * app.c (input_buffer): New static variable.
4338         (app_push): Save saved_input in allocated buffer.
4339         (app_pop): Restored saved_input.
4340         (do_scrub_chars): Change get parameter to take char * and int as
4341         arguments.  Change GET macro to pass input_buffer to get
4342         function.  Don't save input into allocated buffer.
4343         * as.h (do_scrub_chars): Update declaration.
4344         * input-file.c (input_file_get): Change to take char * and int.
4345         Read data into passed in buffer.  Remove static buffer.
4346         * read.c (scrub_from_string): Change to take char * and int.  Copy
4347         data into passed in buffer.
4348
4349         * hash.h: Neaten.  Declare hash_traverse.
4350         * hash.c: Complete rewrite based on BFD hashing code.
4351         * gasp.c (chunksize): New variable.
4352         * macro.c (macro_expand_body): Call hash_jam with NULL rather than
4353         hash_delete.
4354
4355 1999-05-28  Nick Clifton  <nickc@cygnus.com>
4356
4357         * config/tc-arm.c (md_apply_fix3): Add pipeline offset into reloc
4358         addend unless the target uses an old ABI.
4359
4360 Mon May 24 13:36:55 1999  Doug Evans  <devans@canuck.cygnus.com>
4361
4362         -Wchar-subscripts cleanup
4363         * listing.c (listing_newline): Use unsigned char variable, so
4364         calls to isascii,iscntrl are correct.
4365         * atof-generic.c (atof_generic): Cast arg to isdigit, et. al. with
4366         (unsigned char).
4367         * ecoff.c (ecoff_directive_ent,ecoff_stab): Ditto.
4368         * config/obj-elf.c (obj_elf_vtable_inherit): Ditto.
4369         * config/tc-mips.c (mips_ip,mips16_ip): Ditto.
4370         (my_getSmallExpression,get_number,s_mips_ent): Ditto.
4371
4372 1999-05-28  Torbjorn Granlund  <tege@matematik.su.se>
4373
4374         * config/tc-m68k.c (m68k_ip): Check for disallowed index register
4375         width for Coldfire.
4376         (arch_coldfire_p): New #define.
4377         (m68k_ip, m68k_init_after_args): Use arch_coldfire_p.
4378
4379 1999-05-28  Linus Nordberg  <linus.nordberg@canit.se>
4380
4381         * config/tc-m68k.c (install_operand): Add places `n', `o'.
4382
4383         * config/tc-m68k.c (m68k_ip): Add formats `E', `G', `H'.
4384         (install_operand): Add place `N'.
4385         (init_table): Add registers ACC, MACSR, MASK.
4386
4387         * config/m68k-parse.h (m68k_register): Add ACC, MACSR, MASK.
4388
4389         * config/tc-m68k.c: Change mcf5200 --> mcf.
4390         (archs): Add mcf5206e, mcf5307.
4391         (m68k_ip): Add format `u'.
4392         (install_operand): Add place `m', `M', `h'.
4393         (init_table): Add upper/lower registers.
4394
4395         * config/m68k-parse.h (m68k_register): Add upper/lower registers.
4396
4397 1999-05-28  Martin Dorey  <mdorey@madge.com>
4398
4399         * config/tc-i960.c: Several minor changes to add ELF and
4400         BFD_ASSEMBLER support.
4401         * config/tc-i960.h: Likewise.
4402         * configure.in (i960-*-elf*): New target.
4403         * aclocal.m4, configure: Rebuild.
4404
4405 1999-05-25  Alan Modra  <alan@spri.levels.unisa.edu.au>
4406
4407         * config/tc-i386.c (md_apply_fix3): Only do 1999-05-17 fx_pcrel
4408         reloc changes when defined(BFD_ASSEMBLER).
4409
4410 1999-05-17  Alan Modra  <alan@spri.levels.unisa.edu.au>
4411
4412         * config/tc-i386.c (tc_gen_reloc): Remove F and MAP macros.
4413
4414         * write.c (write_print_statistics): Output to file, not stderr.
4415
4416         * expr.c (generic_bignum_to_int32,64): Prototype.
4417
4418         * read.c (s_lcomm_internal, sizeof_sleb128, sizeof_uleb128,
4419         output_sleb128, output_uleb128, output_big_sleb128,
4420         output_big_uleb128, output_big_leb128): Prototype.
4421         (output_big_sleb128, output_big_uleb128): Make inline.
4422         (output_big_leb128): Remove inline
4423
4424         From Maciej W. Rozycki <macro@ds2.pg.gda.pl>
4425         * config/tc-i386.c (md_apply_fix3): Convert BFD_RELOC_16 with
4426         fx_pcrel set to BFD_RELOC_16_PCREL.  Similarly for BFD_RELOC_8.
4427         Handle BFD_RELOC_16_PCREL and BFD_RELOC_8_PCREL.  Return changed
4428         value for correct overflow check in write.c:fixup_segment.
4429         * write.c (fixup_segment): Move bitfield overflow checks to after
4430         the md_apply_fix call.
4431         * config/obj-coff.c (fixup_segment): Likewise.
4432         * doc/internals.texi (CPU backend): Mention md_apply_fix modifying
4433         valueT *val argument.
4434
4435 Fri May 14 10:52:13 1999  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
4436
4437         * config/atof-ieee.c (gen_to_words): Correctly round a
4438         denormalized number.  Fix off-by-one in range checking for
4439         exponent in a denormal.
4440
4441 1999-05-10  Nick Clifton  <nickc@cygnus.com>
4442
4443         * config/tc-mcore.c (parse_reg): Accept 'sp' as a valid register
4444         name.
4445
4446 Thu May 13 09:46:59 1999  Joel Sherrill (joel@OARcorp.com)
4447
4448         * configure.in (i386-*-rtemself*, sh-*-rtemself*): New targets.
4449
4450 1999-05-12  Alan Modra  <alan@spri.levels.unisa.edu.au>
4451
4452         * config/tc-i386.h (InvMem): New flag.  Add to AnyMem.
4453         (ReverseRegRegmem): Remove.
4454         (ImmExt): New flag.  Renumber some of the opcode_modifier bits.
4455         * config/tc-i386.c (md_assemble): Test for PIII SIMD and AMD
4456         3DNow! via ImmExt opcode_modifier.  Remove ReverseRegRegmem
4457         kludge.
4458
4459         From  Doug Ledford <dledford@redhat.com>
4460         * config/tc-i386.h (RegXMM): New for P/III.
4461         * config/tc-i386.c: Add support for P/III.
4462
4463 Sat May  8 23:28:50 1999  Richard Henderson  <rth@cygnus.com>
4464
4465         * config/tc-ppc.c (md_parse_option): Recognize -mppc64bridge.
4466         (md_begin): Allow ppc32 insns in ppc64bridge mode.
4467         (ppc_insert_operand): Accept SIGNOPT in ppc64 mode.
4468
4469 Thu May  6 23:13:39 1999  Richard Henderson  <rth@cygnus.com>
4470
4471         * config/tc-i386.c (i386_immediate): Skip whitespace before
4472         complaining about junk after expression.
4473         (i386_displacement): Likewise.
4474
4475 Thu May  6 19:50:14 1999  Richard Henderson  <rth@cygnus.com>
4476
4477         * symbols.c (symbol_find_base): Use memcpy instead of strcpy.
4478         Don't copy before downcaseing.
4479
4480 1999-05-05  Catherine Moore  <clm@cygnus.com>
4481
4482         * tc-m68k.c: Include elf/m68k.h.
4483         (m68k_elf_final_processing): New routine.
4484         * tc-m68k.h (elf_tc_final_processing m68k_elf_final_processing):
4485         Define.
4486
4487 Mon May  3 10:26:03 1999  Jeffrey A Law  (law@cygnus.com)
4488
4489         * config/tc-hppa.c (md_apply_fix): Handle 22 bit fmt insn like a
4490         17 bit fmt insn.
4491
4492 1999-04-30  Nick Clifton  <nickc@cygnus.com>
4493
4494         * config/tc-mcore.c (mcore_s_section): Dump literals before
4495         changing section.
4496
4497 1999-04-29  Nick Clifton  <nickc@cygnus.com>
4498
4499         * config/tc-mcore.c (md_apply_fix3): Insert reloc addend into insn
4500         for COFF/PE port.
4501
4502 Mon Apr 26 12:34:37 1999  Doug Evans  <devans@canuck.cygnus.com>
4503
4504         * config/tc-fr30.h (TC_FIX_TYPE): Delete, cgen fields moved to write.h.
4505         (TC_INIT_FIX_DATA): Delete.
4506         * config/tc-m32r.h (TC_FIX_TYPE): Delete, cgen fields moved to write.h.
4507         (TC_INIT_FIX_DATA): Delete.
4508         * write.h (struct fix): New member fx_cgen, ifdef USING_CGEN.
4509         * write.c (fix_new_internal): Initialize fx_cgen member.
4510         * cgen.c (gas_cgen_record_fixup,gas_cgen_record_fixup_exp): Update.
4511         (gas_cgen_md_apply_fix3): Update.
4512         * config/tc-m32r.c (md_cgen_lookup_reloc): Update.
4513         (md_cgen_record_fixup_exp): Update.
4514         (FX_OPINFO_R_TYPE): Update.
4515
4516         * frags.c (frag_var,frag_variant): Initialize fr_cgen here.
4517         * config/tc-fr30.h (TC_FRAG_INIT): Delete.
4518         * config/tc-m32r.h (TC_FRAG_INIT): Delete.
4519         * frags.h (struct frag): Make opindex, opinfo ints.
4520
4521         * config/tc-fr30.c (FX_OPINFO_R_TYPE): Delete, unused.
4522
4523 1999-04-26  Tom Tromey  <tromey@cygnus.com>
4524
4525         * aclocal.m4, configure: Updated for new version of libtool.
4526
4527 1999-04-22  Nick Clifton  <nickc@cygnus.com>
4528
4529         * config/tc-mcore.c (md_apply_fix3): Renamed function from
4530         md_apply_fix.
4531         (md_apply_fix3): Do not fix up absolute relocations against
4532         symbolic values.
4533
4534         * config/tc-mcore.h (MD_APPLY_FIX3): Define.
4535
4536 1999-04-20  Nick Clifton  <nickc@cygnus.com>
4537
4538         * config/tc-mcore.c (md_pseudo_table): Add intercepts for section
4539         changes and data-in-text directives.
4540         (mcore_cons): New function: intercept cons() operations.
4541         (mcore_float_cons): New function: intercept float_cons()
4542         operations.
4543         (mcore_stringer): New function: intercept stringer() operations.
4544
4545 1999-04-18  Ian Lance Taylor  <ian@zembu.com>
4546
4547         * obj.h (struct format_ops): Change generate_asm_lineno field to
4548         take no parameters.
4549         * config/obj-ecoff.h (OBJ_GENERATE_ASM_LINENO): Don't define.
4550
4551         * config/tc-alpha.c (find_opcode_match): Add default case to
4552         switch.
4553         (find_macro_match): Likewise.
4554         (load_expression): Parenthesize && within ||.
4555
4556         * config/tc-alpha.h (TC_RELOC_RTSYM_LOC_FIXUP): Define.
4557
4558 1999-04-17  Nick Clifton  <nickc@cygnus.com>
4559
4560         * config/tc-mcore.c (md_pseudo_table): Add overrides for .bss
4561         .text .data .section pseudo ops.
4562         (mcore_s_section): New function.  Dump lits before changing secs.
4563         (mcore_s_text): New function.  Dump lits before changing secs.
4564         (mcore_s_data): New function.  Dump lits before changing secs.
4565
4566 1999-04-16  Gavin Romig-Koch  <gavin@cygnus.com>
4567
4568         * config/tc-mips.c (mips_32bitmode): New.
4569         (md_begin): Set mips_32bitmode if needed.
4570         (mips_elf_final_processing): Don't set EF_MIPS_ARCH.
4571         Set EF_MIPS_32BITMODE.
4572
4573 Fri Apr 16 12:26:39 1999  Bob Manson  <manson@charmed.cygnus.com>
4574
4575         * config/obj-coff.c (c_section_symbol): Fix typo in previous
4576         change.
4577
4578 1999-04-16  Nick Clifton  <nickc@cygnus.com>
4579
4580         * config/tc-mcore.h (LOCAL_LABELS_FB): Define to 1.
4581
4582 Thu Apr 15 16:52:09 1999  Jeffrey A Law  (law@cygnus.com)
4583
4584         * tc-hppa.c (pa_get_absolute_exression): Try to handle "5 %r3"
4585         expressions correctly.
4586
4587
4588 1999-04-15  Gavin Romig-Koch  <gavin@cygnus.com>
4589
4590         * config/tc-mips.c (mips_elf_final_processing): Set EF_MIPS_ARCH.
4591
4592 Mon Apr 12 23:45:07 1999  Jeffrey A Law  (law@cygnus.com)
4593
4594         * tc-hppa.c (pa_ip, case '3'): New case for PA2.0 fmpyfadd
4595         and fmpynfadd instructions.
4596
4597 1999-04-11  Richard Henderson  <rth@cygnus.com>
4598
4599         * as.h (environ): Declare it, if needed.
4600         * as.c (dump_statistics): Don't declare environ.
4601         * configure.in (environ): Detect declaration.
4602         * configure, config.in: Rebuild
4603
4604         * config/tc-i386.c (i386_immediate): Accept @GOT relocations.
4605         (i386_displacement): Allocate enough space for replacement buffer.
4606         Clean up replacement buffer initialization.
4607
4608 1999-04-11  Bob Manson <manson@charmed.cygnus.com>:
4609
4610         * subsegs.c (section_symbol): Don't create a new symbol if one
4611         already exists; instead, use the existing one, but set its segment
4612         and frag data if it hasn't already been defined.
4613         * config/obj-coff.c (c_section_symbol): Likewise.
4614
4615 Sat Apr 10 20:10:02 1999  Richard Henderson  <rth@cygnus.com>
4616
4617         * tc-alpha.c (load_expression): Call as_bad instead of abort.
4618
4619 1999-04-08  Nick Clifton  <nickc@cygnus.com>
4620
4621         * config/tc-mcore.c: New File: Support routines for MCore
4622         assembler.
4623         * config/tc-mcore.h: New File: Definitions for MCore assembler.
4624         * config/obj-coff.c: Add support for mcore-pe target.
4625
4626         * Makefile.am: Add support for MCore targets.
4627         * Makefile.in: Regenerate.
4628         * configure.in: Add support for MCore targets.
4629         * configure: Regenerate.
4630
4631         * doc/all.texi: Set MCORE.
4632         * doc/as.texinfo: Document MCore specific command line options.
4633
4634         * write.h: Prevent multiple inclusion.
4635
4636 1999-04-06  Ian Lance Taylor  <ian@zembu.com>
4637
4638         * asintl.h (LC_MESSAGES): Never define.
4639         * as.c (main): Don't pass LC_MESSAGES to setlocale if the system
4640         does not define it.
4641         * gasp.c (main): Don't pass LC_MESSAGES to setlocale if the system
4642         does not define it.
4643
4644         * Makefile.am (m68k-parse.c): If configuring in the source
4645         directory, copy m68k-parse.y into the local directory before
4646         running ylwrap, to remove spurious differences when generating
4647         snapshots.
4648         * Makefile.in: Rebuild.
4649
4650         * config/tc-sparc.h (md_do_align): Just allocate the number of
4651         bytes necessary, rather than always allocating 1024.
4652
4653 1999-04-04  Ian Lance Taylor  <ian@zembu.com>
4654
4655         * listing.c (listing_newline): Add cast to avoid warning.
4656         * read.c (generate_lineno_debug): Add cases to switch.  Reindent.
4657         * config/tc-i386.c (i386_scale): Add return value.
4658         (build_displacement_string): Remove unused local temp_disp2.
4659         (i386_intel_memory_operand): Add parentheses to avoid warning.
4660         (i386_intel_operand): Remove unused local end_of_operand_string.
4661         (i386_operand): Remove unused local operand_modifier.
4662         (i386_operand): Add parens to avoid warning.
4663
4664 1999-04-04  Don Bowman <don@pixsci.com>
4665
4666         * configure.in: Add mips*-*-vxworks* target; have it define
4667         MIPS_STABS_ELF.
4668         * configure, config.in: Rebuild.
4669
4670 1999-03-31  Nick Clifton  <nickc@cygnus.com>
4671
4672         * configure.in (emulations): Add support for arm-epoc-pe.
4673         * configure: Regenerate.
4674         * config/te-epoc-pe.h: New file.  Define macros specific to
4675         arm-epoc-pe target.
4676         * config/tc-arm.h: Select epoc-pe-arm target format if configured
4677         for arm-epoc-pe target.
4678
4679 Mon Mar 29 10:15:40 CST 1999  Catherine Moore  <clm@cygnus.com>
4680
4681         * tc-mips.c (md_apply_fix):  Adjust value for linkonce sections.
4682
4683 Wed Mar 24 14:11:10 1999  Jeffrey A Law  (law@cygnus.com)
4684
4685         * tc-hppa.c (pa_parse_nonneg_cmpsub_cmpltr): Clean up code to
4686         detect ",n" without a condition.
4687         (pa_parse_neg_cmpsub_cmpltr): Likewise.
4688
4689
4690 Tue Mar 23 11:28:23 1999  Jeffrey A Law  (law@cygnus.com)
4691
4692         * tc-hppa.c (pa_ip, case '~'): The condition for a branch on bit
4693         instruction is encoded with one bit.
4694
4695
4696 1999-03-23  Ian Lance Taylor  <ian@zembu.com>
4697
4698         * doc/internals.texi (CPU backend): Mention that
4699         line_separator_chars should not include newline.  From thi
4700         <ttn@mingle.glug.org>.
4701
4702 1999-03-22  Doug Evans  <devans@casey.cygnus.com>
4703
4704         * config/tc-fr30.c (md_begin): Update call to fr30_cgen_cpu_open.
4705         * config/tc-m32r.c (md_begin): Update call to m32r_cgen_cpu_open.
4706
4707 Sun Mar 21 18:08:18 1999  Richard Henderson  <rth@cygnus.com>
4708
4709         * tc-alpha.c (md_assemble): Allow '6' in an opcode.
4710
4711 Thu Mar 18 10:55:30 1999  Jeffrey A Law  (law@cygnus.com)
4712
4713         * tc-hppa.c (pa_ip, case 'a'): Do not call pa_parse_..._cmpsub_cmpltr.
4714
4715
4716 Thu Mar 18 02:30:07 1999  Jeffrey A Law  (law@cygnus.com)
4717
4718         * tc-hppa.c (pa_ip, case 'd'): Do not allow ",n".
4719
4720 1999-03-15  Martin Hunt  <hunt@cygnus.com>
4721
4722         * app.c (do_scrub_begin): Change '-' back to a symbol char
4723         so we can use multiple opcodes on a line again.
4724
4725         * config/tc-d30v.c: By default, warn if a symbol has
4726         the same name as a register.  Plus some minor
4727         updates from the branch.
4728
4729 1999-03-13  Nick Clifton  <nickc@cygnus.com>
4730
4731         * config/tc-d30v.c (md_apply_fix3): Handle BFD_RELOC_8,
4732         BFD_RELOC_16 and BFD_RELOC_64.
4733
4734 1999-03-12  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
4735
4736         * expr.c (expr): Add missing else.
4737
4738 1999-03-12  Nick Clifton  <nickc@cygnus.com>
4739
4740         * config/tc-arm.c (md_apply_fix3): Improve error message.
4741
4742 1999-03-11  Doug Evans  <devans@casey.cygnus.com>
4743
4744         * Makefile.am (CPU_TYPES): Add fr30.
4745         (cgen.o): Add $(CGEN_CPU_PREFIX)-desc.h dependency.
4746         (fr30,m32r dependencies): Update.
4747         * Makefile.in: Rebuild.
4748
4749         * cgen.c (gas_cgen_record_fixup): Update use of operand->type.
4750         (gas_cgen_record_fixup_exp): Ditto.
4751         (gas_cgen_finish_insn): Call cgen_operand_lookup_by_num.
4752         (gas_cgen_md_apply_fix3): Ditto.  Update call to set_vma_operand.
4753         * config/tc-fr30.c (md_begin): Update call to fr30_cgen_cpu_open.
4754         (md_cgen_lookup_reloc): Update use of operand->type.
4755         * config/tc-m32r.c (md_begin): Update call to fr30_cgen_cpu_open.
4756         (md_convert_frag): Call cgen_operand_lookup_by_num.
4757         (md_cgen_lookup_reloc): Update use of operand->type.
4758         (m32r_cgen_record_fixup_exp): Ditto.
4759
4760 1999-03-09  Jim Blandy  <jimb@zwingli.cygnus.com>
4761
4762         * config/tc-mips.c (md_show_usage): Fix message.
4763
4764 1999-03-03  Nick Clifton  <nickc@cygnus.com>
4765
4766         * doc/c-arm.texi (ARM Syntax): Document new command line switches
4767         and LDR reg,=<expr> instruction.
4768
4769         * config/tc-arm.c: Add support for -mcpu=arm810, -mcpu=arm9 and
4770         -mcpu=arm9tdmi.
4771
4772 Fri Feb 19 09:36:30 1999  Ian Lance Taylor  <ian@cygnus.com>
4773
4774         * doc/c-arm.texi (ARM-Chars): Fix typo in use of '@'.
4775
4776 1999-02-17  Nick Clifton  <nickc@cygnus.com>
4777
4778         This patch was created by: Scott Bambrough
4779         <scottb@corelcomputer.com>
4780
4781         * app.c:
4782           Special cased '@' character.  The '@' character is used as the
4783           ARM assembler comment character, as a special character
4784           and in ELF .symver pseudo-op's, and as a special character in
4785           .type and .section pseudo-ops.
4786         (symver_pseudo): New static variable.
4787         (symver_state): New static variable.
4788         (struct app_save): Add field 'symver_state'.
4789         (app_push): Save global symver_state int struct app_save.
4790         (app_pop): Restore global symver_state from struct app_save.
4791         (do_scrub_chars): Special case handling of '@' character in
4792         .symver pseudo-ops.
4793
4794         * configure.in: Modified to recognize armv* uname syntax from ARM
4795         Linux kernel.
4796         * configure: Regenerated.
4797
4798         * config/obj-elf.c (obj_elf_section): Allow '%' as well as '@' as
4799         a prefix to the section's type.
4800         (obj_elf_type): Allow '%' as well as '@' and '#' as prefixes to
4801         the type's typename.
4802
4803         * config/tc-arm.h: Add support for PIC generation:
4804         (pic_code): New boolean.
4805         (obj_relocate_extern): Define.
4806         (TC_RELOC_RTSYM_LOC_FIXUP): Define
4807         (TC_CONS_FIX_NEW): Define.
4808         (tc_fix_adjustable): Define.
4809         (GLOBAL_OFFSET_TABLE_NAME): Define.
4810
4811         * config/tc-arm.c: Add support for PIC generation:
4812         (line_seperator_chars): Allow ';' as a seperator for Linux.
4813         (is_immediate_prefix): New macro.
4814         (arm_parse_reloc): New function.
4815         (s_arm_elf_cons): New function.
4816         (do_branch): Special case for BFD_RELOC_ARM_PLT32.
4817         (md_undefined_symbol): Special case handling for the Global Offset
4818           Table's symbol.
4819         (md_apply_fix3): Handle PIC relocs.
4820         (tc_gen_reloc): Handle PIC relocs.
4821         (md_parse_option): Add support for '-k' command line switch to
4822           enable PIC generation.
4823         (cons_fix_new_arm): New function.
4824         (s_arm_elf_cons): New function.
4825
4826 Tue Feb 16 16:31:53 1999  Ian Lance Taylor  <ian@cygnus.com>
4827
4828         * configure.in: Add comments for uses of AC_DEFINE.
4829         * acinclude.m4: Likewise.
4830         * acconfig.h: Remove.
4831         * aclocal.m4: Rebuild.
4832         * configure: Rebuild.
4833         * Makefile.in: Rebuild.
4834         * config.in: Rebuild.
4835
4836 1999-02-15  Jim Lemke  <jlemke@cygnus.com>
4837
4838         * config/tc-mips.c (mips_ip: case 'o'): Fix assertion failure for
4839         non-constant offset from a base register.
4840
4841 1999-02-14  Ken Raeburn  <raeburn@raeburn.org>
4842
4843         * config/tc-alpha.c (md_show_usage): Put \ before newline in
4844         strings always.
4845
4846 Sat Feb 13 14:10:10 1999  Richard Henderson  <rth@cygnus.com>
4847
4848         * config/tc-alpha.c (cpu_types): Enable EV6 PALcode with -m21264.
4849         (emit_insn): Look for pc-relative and no-overflow specifiers on
4850         internal relocation types.
4851
4852 1999-02-13  Jim Blandy  <jimb@zwingli.cygnus.com>
4853
4854         * doc/c-mips.texi (MIPS Opts): Updated list of -mNNNN and
4855         -mcpu=NNNN flags.
4856
4857         * config/tc-mips.c: Remove all the mips_NNNN variables; just use
4858         mips_cpu instead.
4859         (mips_4650, mips_4010, mips_4100): Variables removed.
4860         (hilo_interlocks, gpr_interlocks, append_insn, macro_build, macro,
4861         macro2, mips16_macro, mips_ip): Test mips_cpu, not the mips_NNNN
4862         variables.
4863         (md_begin): Don't bother initializing the mips_NNNN variables;
4864         mips_cpu is set, and that's good enough now.
4865         (md_parse_option): Have the -mNNNN options set mips_cpu instead of
4866         the mips_NNNN variable.  The -no-mNNNN flags are now no-ops.
4867         (show): New function, to handle wrapping in the CPU lists.
4868         (md_show_usage): Update lists of -mcpu and -mNNNN switches.
4869
4870 Sat Feb 13 00:17:26 1999  Richard Henderson  <rth@cygnus.com>
4871
4872         * config/tc-i386.c (i386_intel_operand): Ignore `SHORT' rather
4873         than treat as an immediate specifier.
4874
4875 Thu Feb 11 16:18:31 1999  Richard Henderson  <rth@cygnus.com>
4876
4877         * config/tc-i386.c: Prototype many functions.
4878         (set_intel_syntax): Accept `prefix'/`noprefix' specifiers.
4879         (i386_immediate): Remove unused second argument.
4880         (i386_intel_operand): Fix i386_is_reg typo.
4881         (i386_operand): Use allow_naked_reg.
4882         (output_invalid): Make operand int for K&R.
4883
4884 Thu Feb 11 11:21:02 1999  Ian Lance Taylor  <ian@cygnus.com>
4885
4886         * Makefile.am (EXTRA_as_new_SOURCES): Uncomment--fixed by automake
4887         patch.
4888         * Makefile.in: Rebuild.
4889
4890 1999-02-09  Doug Evans  <devans@casey.cygnus.com>
4891
4892         * Makefile.am (DISTCLEANFILES): Change cgen-opc.h to cgen-desc.h.
4893         (cgen.o): Ditto.
4894         (EXTRA_as_new_SOURCES): Comment out.
4895         (.tcdep): <arch>-opc.h renamed to <arch>-desc.h.
4896         * Makefile.in: Rebuild.
4897         * doc/Makefile.in: Rebuild.
4898         * configure.in: Require autoconf 2.13.  Redo using_cgen handling.
4899         Delete call to AM_CYGWIN32.  Replace AM_EXEEXT with AC_EXEEXT.
4900         (AC_OUTPUT): <arch>-opc.h renamed to <arch>-desc.h.
4901         * configure: Rebuild.
4902         * aclocal.m4: Rebuild.
4903         * config.in: Rebuild.
4904         * cgen.c: Include cgen-desc.h, not cgen-opc.h.
4905         (*): CGEN_OPCODE_DESC renamed to CGEN_CPU_DESC.
4906         (gas_cgen_cpu_desc): Renamed from gas_cgen_opcode_desc.
4907         CGEN_INSN_ATTR renamed to CGEN_INSN_ATTR_VALUE.
4908         CGEN_OPERAND_ATTR renamed to CGEN_OPERAND_ATTR_VALUE.
4909         (gas_cgen_record_fixup): Remove unnecessary != 0 test.
4910         (gas_cgen_record_fixup_exp): Ditto.
4911         (gas_cgen_finish_insn): Ditto.  Refer to operand table via cpu
4912         descriptor, not global variable.
4913         (gas_cgen_md_apply_fix3): Refer to operand_table via cpu
4914         descriptor, not global variable.  Refer to insert_operand handler
4915         via cpu descriptor, not global function.
4916         * cgen.h (*): CGEN_OPCODE_DESC renamed to CGEN_CPU_DESC.
4917         * config/tc-fr30.c: Include opcodes/fr30-desc.h.
4918         (*): gas_cgen_opcode_desc renamed to gas_cgen_cpu_desc.
4919         CGEN_INSN_ATTR renamed to CGEN_INSN_ATTR_VALUE.
4920         Update call to CGEN_OPERAND_TYPE,CGEN_INSN_OPERANDS.
4921         * config/tc-m32r.c: Ditto.
4922         (assemble_two_insns): Update calls to cgen_lookup_get_insn_operands.
4923         (md_assemble): Ditto.
4924         (md_convert_frag): Update call to CGEN_OPERAND_ENTRY.
4925
4926 1999-02-09  Nick Clifton  <nickc@cygnus.com>
4927
4928         * config/tc-arm.c (md_apply_fix3): Fix handling of label1 - label2
4929         relocations for ELF targets.
4930
4931 1999-02-08  Nick Clifton  <nickc@cygnus.com>
4932
4933         * configure.in: Add support for StrongARM target.
4934         * configure: Regenerate.
4935
4936 1999-02-05  Nick Clifton  <nickc@cygnus.com>
4937
4938         * config/tc-arm.h: Tidy OBJ_ELF and OBJ_COFF definitions.
4939
4940         * config/tc-arm.c (md_apply_fix3): Fix BFD_RELOC_ARM_PCREL_BRANCH
4941         for COFF ports.
4942
4943 Wed Feb  3 11:35:47 1999  Richard Henderson  <rth@cygnus.com>
4944
4945         * config/tc-alpha.c (md_show_usage): Document pca56 and ev6 options.
4946
4947 Mon Feb  1 20:37:30 1999  Catherine Moore  <clm@cygnus.com>
4948
4949         * config/tc-i386.h (LONG_DOUBLE_MNEM_SUFFIX):  Define.
4950         (INTEL_DWORD_MNEM_SUFFIX):  Define.
4951         (BYTE_PTR):  Define.
4952         (WORD_PTR):  Define.
4953         (DWORD_PTR):  Define.
4954         (XWORD_PTR):  Define.
4955         (SHORT):  Define.
4956         (OFFSET_FLAT):  Define.
4957         (FLAT):  Define.
4958         (NONE_FOUND):  Define.
4959         (No_dSuf):  Define.
4960         (No_xSuf):  Define.
4961         * config/tc-i386.c  (set_intel_syntax):  New routine.
4962         (intel_syntax):  Declare.
4963         (allow_naked_reg):  Declare.
4964         (md_pseudo_table):  Support .intel_syntax and .att_syntax.
4965         (intel_float_operand):  New routine.
4966         (md_assemble):  Handle INTEL_DWORD_MNEM_SUFFIX.
4967         Handle brackets as well as parens.  Call i386_intel_operand for
4968         intel syntax.  Reverse operands if appropriate.  Handle new
4969         suffixes.  Handle movzx and movsx.
4970         (i386_is_reg):  New routine.
4971         (i386_immediate):  New routine.
4972         (i386_scale):  New routine.
4973         (i386_displacement):  New routine.
4974         (i386_operand_modifier):  New routine.
4975         (build_displacement_string):  New routine.
4976         (i386_parse_seg):  New routine.
4977         (i386_intel_memory_operand):  New routine.
4978         (i386_intel_operand):  New routine.
4979         (i386_operand):  Call i386_displacement, i386_immediate,
4980         i386_scale, etc.  instead of handling inline.
4981         (parse_register):  Handle registers without prefix.
4982
4983 Mon Feb  1 12:24:58 1999  Catherine Moore  <clm@cygnus.com>
4984
4985         * configure:  Regenerate.
4986         * configure.in (arm-*-oabi):  New.
4987         (thumb-*-oabi):  New.
4988         * config/tc-arm.c (target_oabi):  Declare.
4989         (md_apply_fix3): Support REL relocs.
4990         (md_parse_option):  Handle -oabi.
4991         (elf32_arm_target_format):  New routine.
4992         (md_longopts):  Add OPTION_OABI.
4993         * config/tc-arm.h:  Redefine TARGET_FORMAT.
4994
4995
4996 1999-01-28  Nick Clifton  <nickc@cygnus.com>
4997
4998         * write.c (write_relocs): Handle out of range error.
4999
5000         * config/tc-fr30.c (fr30_fix_adjustable): New function.
5001         (fr30_force_relocation): Default to 0.
5002
5003         * config/tc-fr30.h (obj_fix_adjustable): Define.
5004         (TC_FORCE_RELOCATION): Define.
5005
5006         * cgen.c (gas_cgen_md_apply_fix3): Do not apply fixes to VTABLE
5007         relocs.
5008
5009 1999-01-16  Nick Clifton  <nickc@cygnus.com>
5010
5011         * config/tc-d30v.c (write_2_short): Do not generate a sequential
5012         merge of two instructions if the left instruciton kills the right.
5013
5014 1999-01-11  Doug Evans  <devans@casey.cygnus.com>
5015
5016         * Makefile.in: Regenerate.
5017         * configure.in: Redo test for using cgen.
5018         * configure: Regenerate.
5019
5020 1999-01-09  Nick Clifton  <nickc@cygnus.com>
5021
5022         * config/obj-coff.h (obj_adjust_symtab): Prevent accidental
5023         redefinition of this macro.
5024
5025 Tue Jan  5 21:58:03 1999  Doug Evans  <devans@canuck.cygnus.com>
5026
5027         * config/tc-mips.c (mips_frob_file): Disable "Unmatched %hi reloc"
5028         warning.
5029
5030 1998-12-29  Gavin Romig-Koch  <gavin@cygnus.com>
5031
5032         * config/tc-mips.c (append_insn): For mips16, insert a nop between
5033         a read of HI or LO and an immediatly following branch.
5034
5035 1998-12-29  Gavin Romig-Koch  <gavin@cygnus.com>
5036
5037         * config/tc-mips.c (md_begin): Another correction to the setting of
5038         mips_eabi64.
5039
5040 1998-12-23  Gavin Romig-Koch  <gavin@cygnus.com>
5041
5042         * config/tc-mips.c (md_begin): Correct type-o in setting of
5043         mips_eabi64.
5044
5045 1998-12-21  Nick Clifton  <nickc@cygnus.com>
5046
5047         * config/tc-m32r.c (md_assemble): Emit a NOP after a relaxable 16
5048         bit insn when optimizing, so that parallelised instructions will
5049         start on a 32 bit boundary.
5050
5051 1998-12-19  Gavin Romig-Koch  <gavin@cygnus.com>
5052
5053         * config/tc-mips.c (mips_eabi64): New.
5054         (md_begin): Set mips_eabi64.
5055         (mips_elf_final_processing): Use it.
5056
5057 1998-12-18  Gavin Romig-Koch  <gavin@cygnus.com>
5058
5059         * config/tc-mips.c (mips_elf_final_processing):
5060         Correct setting of ABI in e_flags.
5061
5062 Wed Dec 16 16:17:22 1998  Dave Brolley  <brolley@cygnus.com>
5063
5064         * config/tc-fr30.c (md_assemble): Warn about invalid instructions
5065         in delay slots.
5066
5067 1998-12-16  Gavin Romig-Koch  <gavin@cygnus.com>
5068
5069         * config/tc-mips.c (md_begin,md_parse_option): Handle vr4111.
5070
5071 1998-12-15  Doug Evans  <devans@casey.cygnus.com>
5072
5073         * cgen.c (gas_cgen_md_apply_fix3): Mark as an error, rather than a
5074         warning, values that don't fit in the field.
5075
5076 1998-12-15  Gavin Romig-Koch  <gavin@cygnus.com>
5077
5078         * config/tc-mips.c (mips_abi_string): New.
5079         (md_parse_option,md_longopts): Add mabi.
5080         (mips_elf_final_processing): Set e_flags based on mabi flag.
5081
5082 1998-12-15  Gavin Romig-Koch  <gavin@cygnus.com>
5083
5084         * config/tc-mips.c (md_parse_option): Handle vr4111.
5085
5086 98-12-11  Ken Raeburn  <raeburn@cygnus.com>
5087
5088         * config/tc-h8300.c (build_bytes): Change message given if the
5089         instruction requires H8/300H mode and we're not in Hmode, to
5090         suggest that it may be the operand modes that are the problem, not
5091         necessarily the opcode.
5092
5093 1998-12-10  Nick Clifton  <nickc@cygnus.com>
5094
5095         * config/tc-fr30.c: Add line separator character.
5096
5097 Tue Dec  8 19:51:50 1998  Mark Klein  <mklein@dis.com>
5098
5099         * configure.in (hppa-*-mpeix*): New target.
5100         * config/obj-som.h (obj_som_compiler): Declare.
5101         * config/obj-som.c (compiler_seen): New static variable.
5102         (obj_som_compiler): New function.
5103         * config/tc-hppa.c: Update tc_data uses for change to bfd/som.h.
5104         (md_pseudo_table): Add "compiler" if OBJ_SOM.
5105         (pa_type_args): Set hppa_priv_level.
5106         (pa_compiler): New static function if OBJ_SOM.
5107         * configure: Rebuild.
5108
5109 Tue Dec  8 15:00:50 1998  Ian Lance Taylor  <ian@cygnus.com>
5110
5111         * read.c (output_leb128): Don't mark as inline.
5112
5113 1998-12-08  Andrew MacLeod  <amacleod@cygnus.com>
5114
5115         * config/tc-ppc.c (ppc_vbyte): Prototype and new function for
5116         AIX .vbyte unaligned data support.
5117         (md_pseudo_table): Add 'vbyte' to list of valid pseudos.
5118         (ppc_elf_validate_fix): Add eh_frame to list of ELF relocatable
5119         sections.
5120
5121 1998-12-07  Nick Clifton  <nickc@cygnus.com>
5122
5123         * config/tc-d30v.c (md_assemble, do_assemble): Improve erroneous
5124         input handling.
5125
5126 Mon Dec  7 09:48:34 1998  Catherine Moore  <clm@cygnus.com>
5127
5128         * config/tc-arm.c (elf32_arm_force_relocation):  Check for
5129         BFD_RELOC_ARM_PCREL_BRANCH.
5130
5131 Sun Dec  6 12:46:36 1998  Ian Lance Taylor  <ian@cygnus.com>
5132
5133         * configure.in: Define TARGET_BYTES_{BIG,LITTLE}_ENDIAN after
5134         checking the target type.
5135         (mips-dec-bsd*): Set endian to little.
5136         * configure: Rebuild.
5137
5138         COFF weak symbol support, based on patches from Mark Elbrecht
5139         <snowball3@usa.net>:
5140         * config/obj-coff.h (S_IS_WEAK): Define if not BFD_ASSEMBLER.
5141         * config/obj-coff.c (obj_coff_weak): New static function.
5142         (obj_coff_endef) [both versions]: Handle weak symbols.
5143         (coff_frob_symbol): Likewise.
5144         (yank_symbols): Likewise.
5145         (obj_pseudo_table): Add "weak".
5146
5147         * configure.in (m68k-*-gnu*): New target.  From Aymeric Vincent
5148         <aymeric.vincent@emi.u-bordeaux.fr>.
5149         * aclocal.m4: Rebuild with current tools.
5150         * configure: Rebuild.
5151
5152         * config/tc-alpha.c (emit_ldgp): Give an error message rather than
5153         an assertion failure for a case we can't handle when OBJ_ECOFF.
5154
5155         * expr.c (operator): And with 0xff to avoid problems with signed
5156         char.
5157
5158 1998-12-03  Nick Clifton  <nickc@cygnus.com>
5159
5160         * config/tc-fr30.c (md_cgen_lookup_reloc): Generate
5161         BFD_RELOC_FR30_48 instead of BFD_RELOC_FR30_32.
5162
5163 1998-12-02  Nick Clifton  <nickc@cygnus.com>
5164
5165         * config/tc-fr30.c (md_cgen_lookup_reloc): Enable relocs for
5166         LDI:20 insn.
5167
5168 Thu Nov 26 11:23:48 1998  Dave Brolley  <brolley@cygnus.com>
5169
5170         * config/tc-fr30.c (md_pcrel_from_section): Restore previous
5171         calculation of pcrel point.
5172
5173 Tue Nov 24 17:21:52 1998  Nick Clifton  <nickc@cygnus.com>
5174
5175         * config/tc-fr30.c (md_pcrel_from_section): Fix calculation of
5176         pcrel point.
5177
5178 Tue Nov 24 14:54:38 1998  Nick Clifton  <nickc@cygnus.com>
5179
5180         * config/tc-d10v.c (md_assemble): Make static 'etype' have file
5181         scope.
5182         (d10v_cleanup): Only generate previous insn if a multiline insn is
5183         not pending.
5184
5185 Fri Nov 20 11:41:13 1998  Nick Clifton  <nickc@cygnus.com>
5186
5187         * config/tc-fr30.c (md_cgen_lookup_reloc): Add support for
5188         FR30_OPERAND_I32.
5189
5190 Thu Nov 19 15:01:29 1998  Nick Clifton  <nickc@cygnus.com>
5191
5192         * config/tc-arm.c (md_parse_option): Add support for -marm7xxx and
5193         -marm6xxx command line switches.
5194
5195 1998-11-18  Doug Evans  <devans@casey.cygnus.com>
5196
5197         * Makefile.am (DEP): Use $(srcdir)/../mkdep.
5198         (itbl-ops.o): Delete duplicate dependencies.
5199         Rebuild dependencies.
5200         Add fr30 dependencies.
5201         * Makefile.in: Rebuild.
5202
5203 Tue Nov 17 13:42:42 1998  Nick Clifton  <nickc@cygnus.com>
5204
5205         * config/tc-fr30.c (md_cgen_lookup_reloc): Updated to match latest
5206         opcode list.
5207         * listing.c: Ignore line terminator characters found inside
5208         strings.
5209
5210 Thu Nov 12 19:21:24 1998  Dave Brolley  <brolley@cygnus.com>
5211
5212         * po/gas.pot: Regenerated.
5213
5214 Thu Nov 12 10:54:16 1998  Nick Clifton  <nickc@cygnus.com>
5215
5216         * config/tc-fr30.c (fr30_is_colon_insn): New name for
5217         fr30_is_label_start().  Also checks for delay slot insns.
5218
5219         * config/tc-fr30.c (fr30_is_label_start): New function: Handle
5220         FR30 instructions which contain a colon in the mnemonic.
5221
5222         * config/tc-fr30.h (TC_START_LABEL): Define this macro.
5223
5224 Wed Nov 11 09:58:21 1998  Nick Clifton  <nickc@cygnus.com>
5225
5226         * config/tc-fr30.c: Removed currently superflous code.
5227
5228 Tue Nov 10 13:13:05 1998  Nick Clifton  <nickc@cygnus.com>
5229
5230         * config/tc-fr30.h: New file.
5231         * config/tc-fr30.c: Tweaking so that it will compile.
5232
5233 Tue Nov 10 14:41:33 1998  Catherine Moore  <clm@cygnus.com>
5234
5235         * config/tc-d10v.h (obj_fix_adjustable):  Define.
5236         (TC_FORCE_RELOCATION):  Define.
5237         (d10v_force_relocation):  Declare.
5238         * config/tc-d10v.c (tc_gen_reloc):  Handle Vtable relocs.
5239         (md_apply_fix3):  Handle Vtable relocs.
5240         (d10v_fix_adjustable):  New.
5241         (d10v_force_relocation):  New.
5242
5243 Mon Nov  9 14:25:06 1998  Nick Clifton  <nickc@cygnus.com>
5244
5245         * config/tc-d30v.c: Change default behaviour to ignore potential
5246         conflicts between register name and symbol names.
5247
5248 Wed Nov  4 18:42:00 1998  Dave Brolley  <brolley@cygnus.com>
5249
5250         * configure.in: Add fr30-*-*.
5251         * config/tc-fr30.c: New file.
5252         * Makefile.in: Regenerated.
5253         * config.in: Regenerated.
5254         * configure: Regenerated.
5255         * doc/Makefile.in: Regenerated.
5256         * po/gas.pot: Regenerated.
5257
5258 Mon Nov  2 20:54:16 1998  Doug Evans  <devans@canuck.cygnus.com>
5259
5260         * config/tc-m32r.c (assemble_two_insns): Ensure both insns
5261         are 16 bit insns.
5262
5263 Mon Nov  2 20:10:18 1998  Martin von Loewis  <loewis@informatik.hu-berlin.de>
5264
5265         * app.c (do_scrub_begin): Set characters above 127 to be symbol
5266         characters.
5267         (do_scrub_chars): Add some casts to unsigned char to avoid
5268         unwanted sign extension.
5269         * read.c (lex_type): Set characters about 127 to be symbol
5270         characters.
5271         * config/tc-i386.c (md_begin): Set identifier_chars and
5272         operand_chars for values above 127.
5273
5274 Mon Nov  2 15:05:33 1998  Geoffrey Noer  <noer@cygnus.com>
5275
5276         * configure.in: detect cygwin* instead of cygwin32*
5277         * configure: regenerate
5278
5279 Tue Oct 27 13:18:40 1998  Nick Clifton  <nickc@cygnus.com>
5280
5281         * listing.c: Add support for producing a listing from piped
5282         input.
5283
5284 Tue Oct 27 08:56:44 1998  Gavin Romig-Koch  <gavin@cygnus.com>
5285
5286         * config/tc-mips.c (hilo_interlocks): Remove mips_3900.
5287         (append_insn): Account for the tx39's multiply behavior.
5288
5289 1998-10-26  Michael Meissner  <meissner@cygnus.com>
5290
5291         * config/tc-m32r.c (assemble_two_insns): Rename assemble_two_insns
5292         from assemble_parallel_insns.  Add support for '->' to indicate
5293         explicitly serializing the instructions.
5294         (md_assemble): Ditto.
5295
5296 Sat Oct 24 15:12:19 1998  Catherine Moore  <clm@cygnus.com>
5297
5298         * config/tc-sh.c (sh_fix_adjustable):  Adjust EXTERN and
5299         WEAK handling.
5300
5301 Thu Oct 22 12:41:33 1998  Catherine Moore  <clm@cygnus.com>
5302
5303         * cgen.c (gas_cgen_md_apply_fix3):  Revert last change.
5304
5305 Thu Oct 22 10:03:15 1998  Ron Unrau  <runrau@cygnus.com>
5306
5307         * config/tc-mips.c : support frame and regmask/fregmask when
5308           MIPS_STABS_ELF is specified.
5309
5310 Wed Oct 21 11;34:51 1998  Catherine Moore  <clm@cygnus.com>
5311
5312         * config/tc-sh.c (sh_fix_adjustable):  Only include if OBJ_ELF.
5313         (md_apply_fix):  Don't return 1 for VTABLE relocs.
5314         * config/tc-sh.h (obj_fix_adjustable):  Define only if OBJ_ELF.
5315
5316 Tue Oct 20 11:18:28 1998  Alan Modra  <alan@spri.levels.unisa.edu.au>
5317
5318         * doc/c-i386.texi: Replace occurences of "opcode" with
5319         "instruction mnemonic", "instruction", or "mnemonic" when
5320         referring to the name of an instruction.  Use "opcode" when
5321         referring to the sequence of machine bytes.
5322
5323         * config/tc-i386.c (opcode_chars): Rename to mnemonic_chars.
5324         (is_opcode_char): Rename to is_mnemonic_char.
5325         (md_assemble and i386_operand): Correct error messages from
5326         "opcode" to "instruction mnemonic"
5327         Rename throughout opcode[] -> mnemonic[], opp -> mnem_p,
5328         MAX_OPCODE_SIZE -> MAX_MNEM_SIZE,
5329         DWORD_OPCODE_SUFFIX -> DWORD_MNEM_SUFFIX,
5330         WORD_OPCODE_SUFFIX -> WORD_MNEM_SUFFIX,
5331         BYTE_OPCODE_SUFFIX -> BYTE_MNEM_SUFFIX,
5332         SHORT_OPCODE_SUFFIX -> SHORT_MNEM_SUFFIX
5333         LONG_OPCODE_SUFFIX -> LONG_MNEM_SUFFIX
5334
5335         * config/tc-i386.h (*_MNEM_SUFFIX): Rename from *_OPCODE_SUFFIX.
5336
5337         * config/tc-i386.c (i386_operand): Check for garbage after
5338         register name.
5339
5340 Tue Oct 20 10:49:42 1998  Ian Lance Taylor  <ian@cygnus.com>
5341
5342         * config/tc-i386.c (md_apply_fix3): Change handling of PCREL reloc
5343         for BFD_ASSEMBLER to only change value when COFF if TE_PE.
5344
5345 Mon Oct 19 20:20:42 1998  Catherine Moore  <clm@cygnus.com>
5346
5347         * config/tc-sh.h (obj_fix_adjustable):  Define.
5348         * config/tc-sh.c (sh_force_relocation):  Handle VT relocs.
5349         (md_apply_fix):  Likewise.
5350         (tc_gen_reloc):  Likewise.
5351         (sh_fix_adjustable):  New.
5352
5353 Mon Oct 19 12:35:43 1998  Doug Evans  <devans@seba.cygnus.com>
5354
5355         * cgen.c (gas_cgen_finish_insn): Update handling of CGEN_INT_INSN_P.
5356         * cgen.h (gas_cgen_finish_insn): Update prototype.
5357         * config/tc-m32r.c (m32r_insn): CGEN_INT_INSN -> CGEN_INT_INSN_P.
5358         cgen_insn_t -> CGEN_INSN_INT.
5359         (make_parallel): Update handling of CGEN_INT_INSN_P.
5360         (assemble_parallel_insn): Ditto.
5361         (target_make_parallel): New function.
5362         (md_assemble): Use it.
5363
5364 Mon Oct 19 13:16:12 1998  Catherine Moore  <clm@cygnus.com>
5365
5366         * config/tc-m32r.c (m32r_force_relocation):  Fix typo.
5367
5368 Sun Oct 18 18:48:57 1998  Jeffrey A Law  (law@cygnus.com)
5369
5370         * config/tc-sh.c (md_assemble): Make sure the entire opcode is
5371         converted into lower case.
5372
5373 Fri Oct 16 13:36:34 CDT Catherine Moore  <clm@cygnus.com>
5374
5375         * cgen.c (gas_cgen_md_apply_fix3):  Handle VTABLE relocs.
5376         (gas_cgen_tc_gen_reloc):  Likewise.
5377         * config/tc-m32r.h (obj_fix_adjustable):  Define.
5378         * config/tc-m32r.c (m32r_fix_adjustable):  New.
5379         (m32r_force_relocation):  Handle VTABLE relocs.
5380
5381 Wed Oct 14 11:33:38 1998  Nick Clifton  <nickc@cygnus.com>
5382
5383         * doc/c-arm.texi (ARM Directives): Document .ltorn directive.
5384
5385 Mon Oct 12 11:07:21 1998  Nick Clifton  <nickc@cygnus.com>
5386
5387         * config/tc-m32r.c (assemble_parallel_insn): Convert second opcode
5388         to lower case before parsing.
5389
5390         * config/tc-d30v.c (parallel_ok): Ignore conflicts when explicitly
5391         parallel insns modift buts in the PSW as a side effect.
5392
5393 Thu Oct  8 10:18:33 1998  Nick Clifton  <nickc@cygnus.com>
5394
5395         * config/tc-d30v.c (find_format): Test for missing flag and
5396         control registers.
5397
5398         (md_apply_fix3): Fix error messages to avoid
5399         assumption about presence of a symbol.
5400
5401         (parallel_ok): Disallow parallel instructions that both modify the
5402         same flag register.
5403
5404         (find_format): Generate a warning if an odd numbered register is
5405         used as the first register in a mutli-register instruction.
5406
5407 Wed Oct  7 14:09:14 1998  Nick Clifton  <nickc@cygnus.com>
5408
5409         * config/tc-d30v.c (md_apply_fix3): Do not assume that bad
5410         relocations are always associated with a symbol.
5411
5412 Tue Oct  6 09:31:15 1998  Catherine Moore  <clm@cygnus.com>
5413
5414         * tc-sparc.h (TC_FORCE_RELOCATION):  Define.
5415         (elf32_sparc_force_relocation):  Declare.
5416         * tc-sparc.c (md_apply_fix3):  Handle vtable relocs.
5417         (tc_gen_reloc):  Handle vtable relocs.
5418         (elf32_sparc_force_relocation):  New.
5419
5420 Mon Oct  5 09:25:32 1998  Catherine Moore  <clm@cygnsu.com>
5421
5422         * symbols.c (S_IS_FUNCTION):  New.
5423         * config/tc-v850.h (obj_fix_adjustable):  Define.
5424         (TC_FORCE_RELOCATION):  Define.
5425         (v850_force_relocation):  Declare.
5426         * config/tc-v850.c (tc_gen_reloc):  Use offset instead
5427         of fx_addnumber for VTABLE reloc addends.
5428         (md_apply_fix3):  Handle VTABLE relocs.
5429         (v850_fix_adjustable):  New.
5430         (v850_force_relocation):  New.
5431
5432 Mon Oct  5 00:48:52 1998  Jeffrey A Law  (law@cygnus.com)
5433
5434         * tc-hppa.c (fp_operand_format): Add some additional formats.
5435         (pa_ip): Do not automatically promote into pa2.0 mode.
5436         (pa_level): Handle ".level 2.0".
5437
5438 Sun Oct  4 20:57:43 1998  Alan Modra  <alan@spri.levels.unisa.edu.au>
5439
5440         * config/tc-i386.c (md_assemble): Handle AMD_3DNOW_OPCODE.
5441         * config/tc-i386.h (template.extension_opcode): Change to
5442         unsigned int to allow full range of 8-bit opcode suffixes.
5443         (None): Redefine as 0xffff.
5444
5445         From Jeff B Epler <jepler@usgs.gov>
5446         * doc/c-i386.texi (i386-SIMD): New section.
5447
5448 Thu Oct  1 15:37:54 1998  Richard Henderson  <rth@cygnus.com>
5449
5450         * read.c (discard_rest_of_line): New function.
5451         * read.h: Declare it.
5452         * config/tc-alpha.c (s_alpha_mask, s_alpha_frame): Use it.
5453
5454 Thu Oct  1 10:33:53 1998  Nick Clifton  <nickc@cygnus.com>
5455
5456         * config/tc-d10v.c (find_symbol_matching_register): New function.
5457         (find_opcode): Cope with the case where a register name matches
5458         a symbol name.
5459
5460 Wed Sep 30 10:52:32 1998  Nick Clifton  <nickc@cygnus.com>
5461
5462         * config/tc-v850.c (md_pcrel_from): Rename to
5463         v850_pcrel_from_section.
5464         (v850_pcrel_from_section): Do not resolves symbols in other
5465         sections.
5466
5467         * config/tc-v850.h (MD_PCREL_FROM_SECTION): Define.
5468
5469 Mon Sep 28 11:01:20 1998  Nick Clifton  <nickc@cygnus.com>
5470
5471         * config/tc-d10v.c (find_opcode): Generate an error if a register
5472         is supplied for an operand that should not be a register.
5473
5474 Fri Sep 25 10:04:21 1998  Nick Clifton  <nickc@cygnus.com>
5475
5476         * config/tc-d30v.c (write_2_short): But do allow delayed branch
5477         instructions to have another instruction in the right bin.
5478
5479 Thu Sep 24 09:28:34 1998  Nick Clifton  <nickc@cygnus.com>
5480
5481         * config/tc-d30v.c (write_2_short): Do not allow instructions in
5482         the right container if the left container holds a branch
5483         instruction.
5484
5485 Wed Sep 23 10:54:29 1998  Nick Clifton  <nickc@cygnus.com>
5486
5487         * config/tc-d30v.c (reg_name_search): Only warn if a name matches
5488         both a register name and symbol name.
5489         (find_format): Allow correct parsing of MVTSYS and MVFSYS insns.
5490
5491 Tue Sep 22 17:49:16 1998  Nick Clifton  <nickc@cygnus.com>
5492
5493         * config/tc-d30v.c (write_2_short): Implement EITHER_BUT_PREFER_MU
5494         execution unit class.
5495
5496         (reg_name_search): If a name matches a register and a symbol,
5497         prefer the register.
5498         (find_format): Disallow flag registers when a general purpose
5499         register is required.
5500         If a number is required, but a register has been given, check to
5501         see if a symbol with the same name as the register exists, and if
5502         so, use that symbol.
5503
5504 Tue Sep 22 16:40:52 1998  Jim Wilson  <wilson@cygnus.com>
5505
5506         * config/obj-elf.h (ECOFF_DEBUGGING): Add missing parens.
5507
5508 Tue Sep 22 15:44:21 1998  Nick Clifton  <nickc@cygnus.com>
5509
5510         * config/tc-d30v.c (find_format): Do not accept flag registers as
5511         general purpose registers.
5512         (find_format): If an immediate value is expected at a given place
5513         in a format, but a register name has been provided instead, check
5514         to see if that register name matches the name of a predefined
5515         symbol and if it does, then use the symbol instead.
5516         (reg_name_search): If a register name matches a symbol name,
5517         prefer the register name to the symbol name.
5518
5519 Mon Sep 21 10:42:57 1998  Nick Clifton  <nickc@cygnus.com>
5520
5521         * config/tc-m32r.c (m32r_do_align): After inserting NOPs, reset
5522         the previous insn to empty.
5523
5524 1998-09-20  Michael Meissner  <meissner@cygnus.com>
5525
5526         * config/tc-ppc.c (md_apply_fix3): Do not break string into two
5527         pieces, forcing the use of an ANSI compiler.
5528
5529 Sun Sep 20 00:58:12 1998  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
5530
5531         * config/tc-m68k.h (TC_FORCE_RELOCATION): New macro.  Force vtable
5532         relocs.
5533         * config/tc-m68k.c (md_apply_fix_2): Do nothing for vtable relocs.
5534
5535 Tue Sep 15 08:51:07 1998  Catherine Moore  <clm@cygnus.com>
5536
5537         * config/obj-elf.c (obj_elf_vtable_inherit):  Handle arm
5538         assembler syntax.
5539         (obj_elf_vtable_entry):  Likewise.
5540         * config/tc-arm.h:  Define TC_FORCE_RELOCATION for OBJ_ELF.
5541         * config/tc-arm.c (md_apply_fix3): Handle VTABLE relocations.
5542         (tc_gen_reloc): Likewise.
5543         (arm_fix_adjustable): Likewise.
5544         (elf32_arm_force_relocation): New.
5545         (armelf_frob_symbol):  Remove coff-style symbol support.
5546
5547 Wed Sep  9 11:27:16 1998  Richard Henderson  <rth@cygnus.com>
5548
5549         * config/tc-i386.c (i386_operand): Fix typo in last patch.
5550
5551 Tue Sep  8 18:10:01 1998  Catherine Moore  <clm@cygnus.com>
5552
5553         * config/tc-arm.c (arm_adjust_symtab):  Move #ifdef
5554         OBJ_COFF so that routine is defined for a.out format.
5555
5556 Tue Sep  8 15:56:19 1998  Richard Henderson  <rth@cygnus.com>
5557
5558         * config/tc-i386.c (i386_operand): Detect non-segment registers
5559         used as segment prefixes.
5560
5561 Sat Sep  5 19:00:38 1998  Ian Lance Taylor  <ian@cygnus.com>
5562
5563         * ehopt.c (check_eh_frame): Check the size of the FDE, and don't
5564         optimize across FDE boundaries.
5565
5566         * config/obj-coff.c (obj_coff_section): Preserve any link once
5567         flags when setting the section flags.
5568
5569 Fri Sep  4 17:07:14 1998  Nick Clifton  <nickc@cygnus.com>
5570
5571         * config/tc-arm.h (obj_adjust_symtab): Fixed typo.
5572         * config/tc-arm.c (armelf_adjust_symtab): Reformatted.
5573
5574 Fri Sep  4 13:57:43 1998  Jakub Jelinek <jj@sunsite.ms.mff.cuni.cz>
5575
5576         * config/tc-sparc.c (in_signed_range): Sign extend 32-bit words
5577         to the host width.
5578
5579 Wed Sep  2 11:31:14 1998  Richard Henderson  <rth@cygnus.com>
5580
5581         * frags.c (frag_grow): Include the size of the frag struct in the
5582         obstack chunk size.
5583
5584         * subsegs.c (subseg_set_rest): Adjust the seginfo frchain start
5585         if the new subseg comes before the old.
5586
5587 Tue Sep  1 15:01:33 1998  Jakub Jelinek <jj@sunsite.ms.mff.cuni.cz>
5588
5589         * config/tc-sparc.c (sparc_ip): Allow all digits in an instruction
5590         to handle edge8 and edge16.
5591
5592 Mon Aug 31 09:51:14 1998  Richard Henderson  <rth@cygnus.com>
5593
5594         * config/obj-elf.c (obj_elf_vtable_inherit): Print error message
5595         before we clobber the symbol involved.
5596
5597 Mon Aug 31 10:58:06 1998  Catherine Moore  <clm@cygnus.com>
5598
5599         * config/tc-arm.c:  Remove OBJ_ELF definitions for
5600         S_GET_STORAGE_CLASS and S_SET_STORAGE_CLASS.  Only
5601         use arm_adjust_symtab for OBJ_COFF.
5602         (armelf_adjust_symtab):  New Routine.
5603         * config/tc-arm.h:  Define obj_adjust_symtab to
5604         armelf_adjust_symtab for OBJ_ELF.
5605
5606 Sat Aug 29 22:18:51 1998  Richard Henderson  <rth@cygnus.com>
5607
5608         * configure.in: Make all i386-elf targets use bfd_gas.
5609         * config/tc-i386.c (tc_i386_force_relocation): New.
5610         (tc_i386_fix_adjustable): Don't fix vtable relocs.
5611         (md_apply_fix3): Likewise.
5612         (tc_gen_reloc): Handle them.
5613         * config/tc-i386.h (TC_FORCE_RELOCATION): Always define, calling
5614         tc_i386_force_relocation.
5615
5616 Mon Aug 24 13:40:21 1998  Nick Clifton  <nickc@cygnus.com>
5617
5618         * config/tc-arm.c (md_show_usage): Improve formatting of --help output.
5619
5620 Fri Aug 21 18:43:48 1998  Nick Clifton  <nickc@cygnus.com>
5621
5622         * config/tc-d30v.c (md_assemble): Copy previous opcode over
5623         current opcode after writing the first insturction of a reverse
5624         sequential pair.
5625
5626 Fri Aug 21 07:30:35 1998  Doug Evans  <devans@canuck.cygnus.com>
5627
5628         * read.h (generate_lineno_debug): Add prototype.
5629         * read.c (generate_lineno_debug): Make non-static.
5630
5631 Thu Aug 20 23:17:04 1998  Alan Modra  <alan@spri.levels.unisa.edu.au>
5632
5633         * config/tc-i386.c (md_assemble): Only warn for address/data size
5634         prefixes.
5635
5636 Thu Aug 20 14:45:08 1998  Nick Clifton  <nickc@cygnus.com>
5637
5638         * config/tc-arm.c (arm_fix_adjustable): Do not adjust relocations
5639         against Thumb function names, as the linker needs this information.
5640
5641 1998-08-20  Vladimir N. Makarov  <vmakarov@cygnus.com>
5642
5643         * expr.c (operand): Check also that there is no advance in operand
5644         after atof_generic in order to decide "is it label 0f or floating
5645         point number?".
5646
5647 Wed Aug 19 09:30:16 1998  Nick Clifton  <nickc@cygnus.com>
5648
5649         * config/tc-m32r.c: Replace double dash prefix to M32R specific
5650         command line options with a single dash.
5651         * doc/c-m32r.texi: Replace double dash prefix with a single dash.
5652
5653 Tue Aug 18 11:59:43 1998  Catherine Moore  <clm@cygnus.com>
5654
5655         * tc-arm.h: Define obj_fix_adjustable for OBJ_ELF.
5656         * tc-arm.c (arm_fix_adjustable): New routine.
5657
5658 1998-08-13  Vladimir N. Makarov  <vmakarov@cygnus.com>
5659
5660         * read.c (s_align, s_comm, s_mri_common, s_fail, s_globl, s_space,
5661         s_float_space, s_struct, cons_worker): Move ignore_rest_of_line or
5662         demand_empty_rest_of_line before mri_comment_end.
5663         (equals): Check garbage after expression before
5664         mri_comment_end in MRI mode.
5665
5666 Thu Aug 13 15:08:42 1998  Ian Lance Taylor  <ian@cygnus.com>
5667
5668         * config/tc-mips.c (macro): Correct M_SGE_I/M_SGEUI_I case for a
5669         small immediate constant to use the constant itself rather than
5670         always using 1.
5671
5672 Wed Aug 12 18:47:38 1998  Ian Lance Taylor  <ian@cygnus.com>
5673
5674         * config/tc-hppa.c (pa_enter): Call as_bad rather than abort.
5675         (pa_leave): Likewise.
5676
5677 Wed Aug 12 13:25:03 1998  Alan Modra  <alan@spri.levels.unisa.edu.au>
5678
5679         * config/tc-i386.c (md_assemble): Emit a warning for stand-alone
5680         prefixes.
5681         (i386_operand): Fix an error message.
5682
5683 Tue Aug 11 14:44:32 1998  Nick Clifton  <nickc@cygnus.com>
5684
5685         * doc/c-arm.texi (ARM Directives): Document .req directive.
5686
5687         * config/tc-arm.c (reg_required_here): Display erroneous string if
5688         the register name could not be decoded.
5689         Do not set inst.instruction if the sift is -1.
5690
5691 Mon Aug 10 15:39:56 1998  Richard Henderson  <rth@cygnus.com>
5692
5693         * config/tc-alpha.c (tc_gen_reloc): Bias WEAK symbols just as
5694         we do for EXTERN.
5695
5696 Mon Aug 10 15:06:18 1998  Nick Clifton  <nickc@cygnus.com>
5697
5698         * config/tc-d30v.c (d30v_align): Always perform alignment request,
5699         even if it is belived to be unnecessary.
5700
5701 Mon Aug 10 17:48:09 1998  Alan Modra  <alan@spri.levels.unisa.edu.au>
5702
5703         config/tc-i386.c (i386_operand): Size immediate constants by
5704         suffix (erroneously removed as part of July 7 change).
5705
5706 Sun Aug  9 20:45:32 1998  Catherine Moore  <clm@cygnus.com>
5707
5708         * config/obj-elf.h:  Check for redefinition of obj_frob_symbol.
5709         * config/tc-arm.c:  Define S_GET_STORAGE_CLASS and S_SET_STORAGE_CLASS.
5710         (armelf_frob_symbol):  New Routine.
5711         * config/tc-arm.h:  Define obj_frob_symbol if OBJ_ELF.
5712
5713 Sat Aug  8 15:21:28 1998  Richard Henderson  <rth@cygnus.com>
5714
5715         * config/tc-alpha.c (alpha_fix_adjustable): Don't adjust weak syms.
5716
5717 Wed Aug  5 15:54:14 1998  Nick Clifton  <nickc@cygnus.com>
5718
5719         * config/tc-arm.c (md_begin): Set BFD private flags depending upon
5720         command line switches passed to assembler.
5721
5722 Mon Aug  3 14:02:52 1998  Doug Evans  <devans@seba.cygnus.com>
5723
5724         * cgen.h (GAS_CGEN_MAX_FIXUPS): GAS_ prepended, all uses updated.
5725         (gas_cgen_opcode_desc): Declare.
5726         (gas_cgen_parse_operand): Declare.
5727         (*): Prepend gas_ to gas specific fns to denote them as such.
5728         All uses updated.
5729         * cgen.c (gas_cgen_opcode_desc): New global
5730         (gas_cgen_init_parse): Renamed from cgen_asm_init_parse.
5731         (queue_fixup): Renamed from cgen_queue_fixup.
5732         (*): Prepend gas_ to gas specific fns to denote them as such.
5733         All uses updated.
5734         (gas_cgen_md_apply_fix3): Update call to insert_operand.
5735         (gas_cgen_finish_insn): Renamed from cgen_asm_finish_insn.
5736         * config/tc-m32r.c (md_begin): Remove use of CGEN_SYM.
5737         Open opcode table and initialize it.
5738         (make_parallel): Use gas_cgen_opcode_desc.
5739         (assemble_parallel_insn): Ditto.  Remove use of CGEN_SYM.
5740         (md_assemble): Ditto.
5741
5742 Sat Aug  1 19:27:30 1998  Richard Henderson  <rth@cygnus.com>
5743
5744         * as.h (debug_info_type): Add entries for unspecified and dwarf*.
5745         * ecoff.c (ecoff_generate_asm_lineno): Take no arguments; call
5746         as_where ourselves.  Provide a stub for !ECOFF_DEBUGGING.
5747         * ecoff.h: Move ECOFF_DEBUGGING protection inside GAS_ECOFF_H.
5748         Move ecoff_generate_asm_lineno outside ECOFF_DEBUGGING protection.
5749         * read.c (generate_lineno_debug): Tidy ECOFF bits.  Use
5750         DEBUG_UNSPECIFIED rather than DEBUG_NONE for initial test.
5751         * config/obj-elf.h (ECOFF_DEBUGGING) [TC_ALPHA]: Define to a variable.
5752         (SEPARATE_STAB_SECTIONS): Conditionalize on value of ECOFF_DEBUGGING.
5753         (INIT_STAB_SECTION): Likewise.
5754         (OBJ_PROCESS_STAB): Likewise.
5755
5756         * config/tc-alpha.c (md_longopts): New options -mdebug/-no-mdebug.
5757         (md_parse_option): Watch for them.
5758         (alpha_cur_ent_sym, alpha_flag_mdebug): New variables.
5759         (md_begin): Kill neverdef code.
5760         (s_alpha_ent, s_alpha_end, s_alpha_mask, s_alpha_frame): New.
5761         (s_alpha_prologue): Watch alpha_cur_ent_sym.
5762         (s_alpha_coff_wrapper): New.
5763         (md_pseudo_table): Trap all ECOFF pseudos.
5764
5765 Fri Jul 31 16:45:54 1998  Ron Unrau <runrau@cygnus.com>
5766
5767         Start of changes to remove mdebug section from mips*-elf
5768         Based on MIPS_STAB_ELF definition
5769         * acconfig.h: undef if not configured
5770         * config.in: undef if not configured
5771         * config/mips-elf.h: only set ECOFF debugging if not stabs-in-elf
5772         * config/tc-mips.c (s_ent): set BSF_FUNCTION
5773         * stabs.c (s_stab_generic): flush frag
5774
5775 Fri Jul 31 16:14:45 1998  Catherine Moore  <clm@cygnus.com>
5776
5777         * configure.in: (arm-*-elf):  Handle.
5778         (thumb-*-elf): Handle.
5779         * configure:  Regenerate.
5780         * read.c (stringer): Fix typo in comment.
5781         * write.c (fixup_segment): Don't add symbol value to addend if
5782         TC_ARM and OBJ_ELF.
5783         * config/tc-arm.c (md_section_align):  Don't align dwarf debug
5784         sections.
5785         (tc_gen_reloc):  Always set the reloc addend to fixp->fx_offset
5786         for OBJ_ELF.
5787
5788 Thu Jul 30 21:38:43 1998  Frank Ch. Eigler  <fche@cygnus.com>
5789
5790         * config/tc-d30v.c ({cur,prev}_left_kills_right_p): New variables.
5791         (write_2_short): Emit warning if new flag is set.
5792         (do_assemble): Set flags if left instruction is one of special
5793         "right-instruction-killer" type.
5794
5795 Tue Jun 28 18:12:28 1998  Stan Cox  <scox@cygnus.com>
5796
5797         * config/tc-sparc.c (md_number_to_chars, cons_fix_new_sparc):
5798         Always output words in debug_info section as big endian.
5799         (sparc_target_format): Choose correct bfd target.
5800         (md_apply_fix3): Rename BFD_RELOC_SPARC_32LE to BFD_RELOC_SPARC_REV32.
5801
5802 Tue Jul 28 11:01:21 1998  Jeffrey A Law  (law@cygnus.com)
5803
5804         * config/tc-mn10300.c (md_assemble): Fix "errmsg" initialization
5805         to work with internationalization code.  Issue an error when two
5806         operands match that are not allowed to match.
5807
5808 Mon Jul 27 16:25:58 1998  Doug Evans  <devans@canuck.cygnus.com>
5809
5810         * configure.in (install_tooldir): Allow target to specify whether
5811         it wants to be installed in $(tooldir)/bin.
5812         * configure: Regenerate.
5813         * Makefile.am (install-exec-local): Set install-exec-tooldir
5814         dependency via configure.
5815         * Makefile.in: Regenerate.
5816
5817 Fri Jul 24 19:58:59 1998  Doug Evans  <devans@canuck.cygnus.com>
5818
5819         * Makefile.am (install-exec-local): Split into two ...
5820         (install-exec-bindir,install-exec-tooldir): New rules.
5821         * Makefile.in: Regenerate.
5822
5823 Fri Jul 24 16:31:49 1998  Ian Lance Taylor  <ian@cygnus.com>
5824
5825         * Makefile.am (install-exec-local): Don't remove the file before
5826         checking whether $(bindir) == $(tooldir)/bin.  From Maciej
5827         W. Rozycki <macro@ds2.pg.gda.pl>.
5828         * Makefile.in: Rebuild.
5829
5830 Fri Jul 24 09:13:46 1998  Doug Evans  <devans@canuck.cygnus.com>
5831
5832         * cgen.c: Include libiberty.h.
5833         (cgen_md_apply_fix3): Update call to md_cgen_lookup_reloc.
5834         (cgen_tc_gen_reloc): Use xmalloc, not bfd_alloc.
5835         * cgen.h (cgen_md_apply_fix3,cgen_tc_gen_reloc): Declare.
5836         (md_cgen_lookup_reloc)): Declare.
5837         (md_cgen_record_fixup_exp): Declare.
5838         * config/tc-m32r.h (md_pcrel_from_section): Declare.
5839         (m32r_relax_frag): Declare.
5840         (cgen_md_apply_fix3): Decls moved to cgen.h.
5841         (cgen_record_fixup_exp,cgen_tc_gen_reloc): Ditto.
5842         (m32r_cgen_record_fixup_exp): Delete decl.
5843         * config/tc-m32r.c (m32r_cpu_desc): #if 0 out.
5844         (assemble_nop): Delete.
5845         (expand_debug_syms): Delete unused `exp'.
5846         (md_cgen_lookup_reloc): Renamed from CGEN_SYM (lookup_reloc).
5847         Add default case for -Wall.
5848         (m32r_cgen_record_fixup_exp): Add default case for -Wall.
5849         (md_atof): Delete unused wordP.
5850
5851 Thu Jul 23 13:19:50 1998  Jeffrey A Law  (law@cygnus.com)
5852
5853         * config/tc-mn10300.c (md_assemble): Make sure "errmsg" has a non-NULL
5854         value.
5855
5856 Wed Jul 22 14:36:56 1998  Ian Lance Taylor  <ian@cygnus.com>
5857
5858         * doc/as.texinfo: Add documentation for .end, .exitm, .fail,
5859         .ifc, .ifeqs, .ifge, .ifgt, .ifle, .iflt, .ifnc, .ifne, .ifnes,
5860         .print, .purgem, and .struct.  Remove documentation for
5861         .app-file.
5862
5863 Tue Jul 21 16:50:52 1998  Doug Evans  <devans@seba.cygnus.com>
5864
5865         * cgen.c (cgen_md_apply_fix3): set_operand renamed to set_vma_operand.
5866         Update call to insert_operand.
5867
5868 Fri Jul 17 11:42:20 1998  Nick Clifton  <nickc@cygnus.com>
5869
5870         * config/tc-m32r.c (ms_show_usage): Formatting changes.
5871
5872 Wed Jul 15 15:38:28 1998  Ian Lance Taylor  <ian@cygnus.com>
5873
5874         * config/tc-i386.c (md_assemble): Don't get confused by trailing
5875         whitespace after a prefix operator.
5876
5877 Tue Jul 14 15:32:56 1998  Richard Henderson  <rth@cygnus.com>
5878
5879         * configure.in (i386-*-beos{pe,elf,}*): Recognize.
5880
5881 Tue Jul 14 12:33:44 1998  Chris Torek  <torek@bsdi.com>
5882
5883         * config/tc-sparc.c (log2): New static function.
5884         (s_reserve): Use log2 to convert alignment before calling
5885         record_alignment.
5886         (s_common): Use log2 to convert alignment before calling
5887         record_alignment and frag_align.
5888         (sparc_cons_align): Use log2.
5889
5890 Tue Jul 14 11:58:40 1998  Ian Lance Taylor  <ian@cygnus.com>
5891
5892         * config/tc-sparc.c (s_reserve): Set symbol size if OBJ_ELF.
5893         (s_common): Likewise.
5894
5895         * config/tc-sparc.c (sparc_handle_align): Reindent a bit.  Correct
5896         initialization of waddr.
5897         (sparc_elf_final_processing): Add default case to switch.
5898
5899 Tue Jul 14 11:00:16 1998  Alan Modra  <alan@spri.levels.unisa.edu.au>
5900
5901         * doc/c-i386.texi: Fix a typo.  Use the term 80-bit real rather
5902         than temporary real.
5903
5904 Mon Jul 13 13:55:42 1998  Ian Lance Taylor  <ian@cygnus.com>
5905
5906         * write.c (subsegs_finish): Don't align the segments if there were
5907         any errors.
5908
5909         * config/obj-coff.c (c_symbol_merge): Correct number of bytes when
5910         copying aux information.
5911
5912         * expr.c (make_expr_symbol): Catch attempts to turn an O_big
5913         expression into a symbol.
5914
5915 Mon Jul 13 13:29:04 1998  Alan Modra  <alan@spri.levels.unisa.edu.au>
5916
5917         * config/tc-i386.c (mode_from_disp_size): Change arg and return
5918         type to unsigned int.
5919         (md_assemble): Change type used to store offsets from unsigned
5920         long to long.
5921         (i386_operand): Switch error check to only call RESTORE_END_STRING
5922         once after parse_register.
5923
5924 Fri Jul 10 16:00:04 1998  Nick Clifton  <nickc@cygnus.com>
5925
5926         * config/tc-v850.c (md_show_usage): Changed format to match that
5927         of gcc, ld, etc.
5928
5929         * as.c (show_usage): Changed format to match that of gcc, ld, etc.
5930
5931 Thu Jul  9 12:09:57 1998  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
5932
5933         * config/tc-m68k.c (tc_m68k_fix_adjustable): Don't adjust vtable
5934         relocs.
5935         (md_apply_fix_2): Force the symbol of the vtable reloc to be
5936         weak.
5937
5938 Thu Jul  9 11:31:54 1998  Ian Lance Taylor  <ian@cygnus.com>
5939
5940         * doc/Makefile.am (MAINTAINERCLEANFILES): Define.
5941         * doc/Makefile.in: Rebuild.
5942
5943 Wed Jul  8 12:18:56 1998  Jeffrey A Law  (law@cygnus.com)
5944
5945         * config/tc-mips.c (mips_ip, case 'i' and 'j'): Mask off high bits
5946         for %lo expressions.
5947         (mips_ip, case 'u'): Move range check after code to mask
5948         off bits in %hi/%lo expressions.  Mask off high bits for
5949         %lo expressions.
5950
5951 Tue Jul  7 17:57:38 1998  Ian Lance Taylor  <ian@cygnus.com>
5952
5953         * doc/Makefile.am (gasver.texi): New target.
5954         (as.info, as.dvi): Depends upon gasver.texi.
5955         * doc/as.texinfo: Include gasver.texi.  Mention version number on
5956         title page and in top node.
5957         * doc/Makefile.in: Rebuild.
5958
5959 Tue Jul  7 11:42:16 1998  Richard Henderson  <rth@cygnus.com>
5960
5961         * listing.c (listing_listing): For EDICT_LIST, skip all lines up to
5962         but not including the line containing the edict.
5963         * listing.h (LISTING_EOF): New.
5964         * input-scrub.c (input_scrub_next_buffer): Call it.
5965
5966 Tue Jul  7 13:00:37 1998  Alan Modra  <alan@spri.levels.unisa.edu.au>
5967
5968         * config/tc-i386.c (i386_operand): Don't set the size of an
5969         immediate address based solely on the suffix and the mode.
5970
5971         * config/tc-i386.c (md_assemble): Add assertion to make sure
5972         overlap2 does not set Imm.
5973
5974         * config/tc-i386.c (space_chars): Remove. The scrubber converts
5975         sequences of whitespace to a single space.
5976         (is_space_chars): Just compare with space.
5977         (md_begin): Don't initialize space_chars.
5978         (md_assemble): Just skip a single whitespace character.
5979         (i386_operand): Rewrite base-index parsing to use new
5980         parse_register, and to skip white space.  Skip white space in a
5981         number of other places too.  Don't give error message if
5982         parse_register fails.
5983         (parse_register): Change reg_string parameter to be non-const.
5984         Add end_op parameter.  Skip white space after the `%', and return
5985         end of register string.  Give error message here rather than
5986         caller.
5987
5988 Fri Jul  3 15:34:34 1998  Ian Lance Taylor  <ian@cygnus.com>
5989
5990         Based on patch from Matt Semersky <matts@scd.hp.com>:
5991         * expr.c (op_encoding): Make const.
5992         (expr_set_precedence): New function.
5993         (expr_begin): Don't set operator rankings, just call
5994         expr_set_precedence.
5995         * expr.h (expr_set_precedence): Declare.
5996         * read.c (s_mri): Call expr_set_precedence.
5997
5998 Thu Jul  2 16:24:58 1998  Ian Lance Taylor  <ian@cygnus.com>
5999
6000         * doc/as.texinfo (Statements): Remove paragraph discussing
6001         continuing lines with a backslash.  This hasn't worked for years,
6002         if it ever did.
6003
6004 Thu Jul  2 14:06:22 1998  Klaus Kaempf  <kkaempf@rmi.de>
6005
6006         * obj-vms.c: Add C++ support with ctors/dtors sections.  Add weak
6007         symbol definitions.
6008         (Ctors_Symbols, Dtors_Symbols): New symbol chains.
6009         (ps_CTORS, ps_DTORS): New section types.
6010         (vms_fixup_xtors_section): New function
6011         (Ctors_Psect, Dtors_Psect): Define.
6012         (IS_GXX_XTOR): Define
6013         (global_symbol_directory): Change check of gxx_bug_fixed to 0.
6014         Filter static constructors/destructors and add to
6015         Ctors_Symbols/Dtors_Symbols chain.
6016         (vms_write_object_file): Write Ctors_Symbols/Dtors_Symbols to
6017         appropriate section.
6018
6019         * tc-alpha.h (TARGET_FORMAT): Rename "evax-alpha" to "vms-alpha".
6020         * makefile.vms: Merge vax/vms support.
6021
6022 Wed Jul  1 20:06:20 1998  Richard Henderson  <rth@cygnus.com>
6023
6024         * config/obj-elf.c (obj_elf_vtable_inherit, obj_elf_vtable_entry): New.
6025         (elf_pseudo_table): Add them.
6026         * config/tc-mips.c (mips_force_relocation): Force vtable relocs.
6027         (md_apply_fix): Accept them.
6028         (mips_fix_adjustable): Don't adjust them.
6029         (tc_gen_reloc): Mung BFD_RELOC_VTABLE_ENTRY for Rel.
6030         * config/tc-ppc.c (md_apply_fix3): Accept vtable relocs.
6031         * config/tc-ppc.h (TC_FORCE_RELOCATION_SECTION): Force vtable relocs.
6032         (tc_fix_adjustable): Don't adjust them.
6033
6034 Wed Jul  1 16:35:32 1998  Doug Evans  <devans@seba.cygnus.com>
6035
6036         * Makefile.am (CGEN_CPU_PREFIX): New variable.
6037         (cgen.o): Use it.
6038         * Makefile.in: Regenerate.
6039         * configure.in: AC_SUBST cgen_cpu_prefix.
6040         * configure: Regenerate.
6041
6042 Wed Jul  1 21:38:56 1998  J"orn Rennecke  <amylaar@cygnus.co.uk>
6043
6044         * config/tc-sh (COND_JUMP_DELAY, COND12_DELAY_LENGTH): Define.
6045         Changed all users of COND12_DELAY.
6046
6047 Fri Jun 26 11:21:11 1998  Jeffrey A Law  (law@cygnus.com)
6048
6049         * config/tc-mn10300.c (set_arch_mach): New function.
6050         (md_pseudo_table): Add pseudo-ops to set the current machine type.
6051         (md_begin): Default to mn10300 mode.
6052         (md_assemble): Only accept instructions for the core mn10300
6053         chip and the active machine type.
6054
6055 Wed Jun 24 19:06:04 1998  Ian Lance Taylor  <ian@cygnus.com>
6056
6057         * subsegs.h (segment_info_type): Give the struct a name.
6058         * config/tc-h8300.h (tc_reloc_mangle): Add prototype.
6059         * config/tc-h8500.h (tc_reloc_mangle): Declare.
6060         * config/tc-sh.h (sh_coff_reloc_mangle): Add prototype.
6061         * config/tc-w65.h (tc_reloc_mangle): Declare.
6062         * config/tc-z8k.h (tc_reloc_mangle): Declare.
6063
6064 Wed Jun 24 13:45:00 1998  Catherine Moore  <clm@cygnus.com>
6065
6066         * config/tc-v850.c (v850_comm):  Restore old section
6067         after common processing.
6068
6069 Wed Jun 24 11:50:54 1998  Klaus Kaempf  <kkaempf@progis.de>
6070
6071         * config/obj-vms.c (Create_VMS_Object_File): Force binary file.
6072
6073 Tue Jun 23 17:47:31 1998  Jim Wilson  <wilson@cygnus.com>
6074
6075         * config/tc-h8300.c (do_a_fix_imm, build_bytes): Replace cast to
6076         char with code that explicitly sign-extends.
6077
6078 Tue Jun 23 13:54:57 1998  Nick Clifton  <nickc@cygnus.com>
6079
6080         * config/tc-v850.c (md_begin): Restore text section as the current
6081         section after creating call table sections.
6082         * config/obj-coff.h (SYM_AUXINFO): New macro to conceal ugly
6083         code.
6084
6085         * config/obj-coff.c (c_symbol_merge): Replace complex expresion
6086         with call to macro SYM_AUXINFO.
6087
6088 Tue Jun 23 15:09:27 1998  Mike Stump  <mrs@wrs.com>
6089
6090         * Makefile.am (install-exec-local): Don't let EXEEXT interfere
6091         with the program transform name.
6092         * Makefile.in: Rebuild.
6093
6094 Mon Jun 22 19:52:42 1998  Ian Lance Taylor  <ian@cygnus.com>
6095
6096         * config/obj-coff.c (c_symbol_merge): Fix copying of auxiliary
6097         information.
6098
6099 Mon Jun 22 15:18:58 1998  Ian Lance Taylor  <ian@cygnus.com>
6100
6101         * config/tc-i386.c (i386_operand): Be prepared for a space between
6102         the open parenthesis and the start of the register operand,
6103         because of the June 16 change.
6104
6105 Sun Jun 21 21:27:03 1998  Ian Lance Taylor  <ian@cygnus.com>
6106
6107         * config/tc-sh.c (md_apply_fix): Handle weak symbols correctly if
6108         BFD_ASSEMBLER.
6109
6110 Sun Jun 21 12:26:36 1998  Nick Clifton  <nickc@cygnus.com>
6111
6112         * config/tc-d30v.c (d30v_align): Always perform alignment request,
6113         even if it is belived to be unnecessary.
6114
6115 Fri Jun 19 13:57:06 1998  Ian Lance Taylor  <ian@cygnus.com>
6116
6117         * write.c (adjust_reloc_syms): Never adjust relocs against weak
6118         symbols.
6119         * config/tc-mips.c (md_apply_fix): Adjust accordingly.
6120
6121 Fri Jun 19 09:50:17 1998  Jeffrey A Law  (law@cygnus.com)
6122
6123         * config/tc-mn10300.c (mn10300_insert_operand): Do not hardcode the
6124         shift amount for a repeated operand.  The shift amount for the
6125         repeated copy comes from the size of the operand.
6126
6127 Fri Jun 19 00:44:19 1998  Jeffrey A Law  (law@cygnus.com)
6128
6129         * config/tc-h8300.c (get_operand): Fix typos in ldm/stm support.
6130
6131 Wed Jun 17 13:07:05 1998  Ian Lance Taylor  <ian@cygnus.com>
6132
6133         * config/tc-mips.c (md_show_usage): Fix -mipsN usage.
6134
6135 Tue Jun 16 13:06:21 1998  Alan Modra  <alan@spri.levels.unisa.edu.au>
6136
6137         * app.c (do_scrub_begin): If tc_symbol_chars is defined, treat all
6138         characters in it as LEX_IS_SYMBOL_COMPONENT.
6139         * config/tc-i386.h (tc_symbol_chars): Define.
6140         (extra_symbol_chars): Declare.
6141         * config/tc-i386.c (extra_symbol_chars): Define.
6142         (comment_chars): Don't use '/' as comment start if TE_LINUX.
6143         (line_comment_chars): Set to '/' if TE_LINUX.
6144         * doc/c-i386.texi (i386-prefixes): Update.
6145         * doc/internals.texi (CPU backend): Document tc_symbol_chars.
6146
6147 Fri Jun 12 13:36:54 1998  Tom Tromey  <tromey@cygnus.com>
6148
6149         * po/Make-in (all-yes): If maintainer mode, depend on .pot file.
6150         ($(PACKAGE).pot): Unconditionally depend on POTFILES.
6151
6152 1998-06-12  Vladimir N. Makarov  <vmakarov@cygnus.com>
6153
6154         * config/tc-d10v.c (md_apply_fix3): Checking displacement
6155         constraint in instructions REP & REPI.
6156
6157 Thu Jun 11 08:56:46 1998  Nick Clifton  <nickc@cygnus.com>
6158
6159         * config/tc-d30v.c (md_apply_fix3): Catch BFD_RELOC_8,
6160         BFD_RELOC_16, BFD_RELOC_64 and issue appropriate error messages.
6161
6162         (check_range): If the operand is shifted, then shift the number
6163         before checking its range.
6164
6165         * write.c (adjust_reloc_syms): Add more checks for NULL pointers.
6166
6167         * config/tc-v850.c (v850_comm): Set SEC_COMMON bit on special
6168         common sections.
6169
6170 Wed Jun 10 17:26:35 1998  Nick Clifton  <nickc@cygnus.com>
6171
6172         * config/tc-v850.c (v850_comm): Create special sections as needed.
6173
6174 1998-06-10  Vladimir N. Makarov  <vmakarov@cygnus.com>
6175
6176         * config/tc-d10v.c (write_2_short): Addition of swapping
6177         instructions for sequential and reverse sequential order when
6178         given order is not possible.
6179
6180 Tue Jun  9 13:52:53 1998  Ian Lance Taylor  <ian@cygnus.com>
6181
6182         * Makefile.am: Rebuild dependencies.
6183         (DEP_INCLUDES): Fix reference to intl build directory.
6184         * Makefile.in: Rebuild.
6185
6186 Tue Jun  9 12:20:05 1998  Alan Modra  <alan@spri.levels.unisa.edu.au>
6187
6188         * doc/c-i386.texi: Update 16 bit documentation.
6189
6190         * config/tc-i386.h: Change Data16 to Size16, Data32 to Size32,
6191         IgnoreDataSize to IgnoreSize as they are used for address size as
6192         well as data size.
6193         * config/tc-i386.c: Likewise.  Add code to reject addr32/data32 in
6194         32-bit mode, similarly addr16/data16 and variants.
6195
6196 Mon Jun  8 18:32:01 1998  Nick Clifton  <nickc@cygnus.com>
6197
6198         * config/tc-d30v.c (md_assemble): Fix handling of reverse
6199         sequential word multiply instructions.
6200
6201         (do_assemble): Add extra command line argument, to allow mul32
6202         attribute to be preserved across parallel insns.
6203         (md_assemble): Insert NOPs between explicitly parallel insns which
6204         contain an 32 bit multiply and a 16 multiply.
6205
6206 Mon Jun  8 12:20:30 1998  Alan Modra  <alan@spri.levels.unisa.edu.au>
6207
6208         * config/tc-i386.c: REPNE renamed to REPNE_PREFIX_OPCODE, and
6209         likewise for REPE.
6210
6211         * config/tc-i386.c (reloc): Add braces.
6212
6213         * config/tc-i386.c (struct _i386_insn): Rename bi to sib to be
6214         consistent with Intel naming.
6215         * config/tc-i386.h (base_index_byte): Rename to sib_byte.  Don't
6216         use bitfields in sib_byte.
6217         (modrm_byte): Don't use bitfields here either.
6218
6219         * config/tc-i386.c (current_templates): Add const.
6220         (parse_register): Add const to return, param, and char *s.
6221         (i386_operand): Add const to reg_entry *r.
6222         * config/tc-i386.h (templates): Add const to start, end.
6223
6224         Inspired by code for 16 bit gas support from Martynas Kunigelis
6225         <martynas@nm3.ktu.lt>:
6226         * config/tc-i386.c (md_assemble): Add full support for 16 bit
6227         modrm, and Jump, JumpByte, JumpDword, JumpInterSegment insns.
6228         (uses_mem_addrmode): Remove.
6229         (md_estimate_size_before_relax): Add support here too.
6230         (md_relax_table): Rewrite interface to md_relax for 16 bit
6231         support.
6232         (BYTE, WORD, DWORD, UNKNOWN_SIZE): Remove.
6233         (opcode_suffix_to_type): Remove.
6234         (CODE16, SMALL, SMALL16, BIG, BIG16): Define.
6235         (SIZE_FROM_RELAX_STATE): Modify to suit above.
6236         (md_convert_frag): Likewise.
6237         (i386_operand): Add support for 16 bit base/index regs,
6238         immediates, and displacements.  Remove some unnecessary casts, and
6239         localise end_of_operand_string, displacement_string_start,
6240         displacement_string_end variables.  Add GCC_ASM_O_HACK.
6241         * config/tc-i386.h (NO_BASE_REGISTER_16): Define.
6242
6243         * config/tc-i386.c (prefix_hash): Remove.
6244         (md_begin): Rewrite without obstacks.  Remove prefix hash table
6245         handling.  Rewrite lexical table handling.
6246         (i386_print_statistics): Don't print prefix statistics.
6247         (md_assemble): Rewrite instruction parser so that line is not
6248         converted to lower case.  Don't do a hash_find for prefixes,
6249         instead recognise them via opcode modifier.
6250         (expecting_operand, paren_not_balanced): Localise variables.
6251         * config/tc-i386.h (IsPrefix): Define.
6252         (prefix_entry): Remove.
6253
6254         * config/tc-i386.h (PREFIX_SEPERATOR): Don't define.
6255         * config/tc-i386.c (PREFIX_SEPARATOR): Define here instead, using
6256         '\\' in case where comment_chars contains '/'.
6257
6258         * config/tc-i386.c (MATCH): Ensure given operand and template
6259         match for JumpAbsolute.  Makes e.g. `ljmp table(%ebx)' invalid;
6260         you must write `ljmp *table(%ebx)'.
6261
6262         From H.J. Lu <hjl@gnu.org>:
6263         * config/tc-i386.c (BFD_RELOC_16, BFD_RELOC_16_PCREL): Define
6264         as 0 ifndef BFD_ASSEMBLER.
6265         (md_assemble): Allow immediate operands without suffix or
6266         other reg operand to default in size to the current code size.
6267
6268 Mon Jun  8 09:45:00 1998  Catherine Moore  <clm@cygnus.com>
6269
6270         * config/tc-v850.c (md_begin):  Restore creation of
6271         .call_table_text and .call_table_data sections.
6272
6273 Sat Jun  6 00:02:41 1998  Nick Clifton  <nickc@cygnus.com>
6274
6275         * config/tc-d30v.c (md_assemble): Set execution type to unknown
6276         after emitting a word of noops.
6277
6278 Fri Jun  5 23:27:04 1998  Alan Modra  <alan@spri.levels.unisa.edu.au>
6279
6280         * config/tc-i386.c (mode_from_disp_size): Disp16 is mode 2.
6281         (i386_operand): Simplify checks for valid base/index combinations.
6282         Disallow `in 4(%dx),%al'.
6283
6284         * config/tc-i386.c (struct _i386_insn): Make regs, base_reg, and
6285         index_reg const.
6286         (add_prefix): Change parameter from char to int.
6287
6288         * config/tc-i386.h (Ugh): Define opcode modifier.
6289         * config/tc-i386.c (md_assemble): Print warnings for Ugh insns.
6290
6291         * config/tc-i386.c (md_assemble): Rewrite MATCH and
6292         CONSISTENT_REGISTER_MATCH macros to check register types more
6293         thoroughly.  Check for illegal suffix/operand combinations
6294         when matching insns with operands.  Handle new `s' suffix, and
6295         associated FloatMF opcode modifier for float insns with memory
6296         operands.
6297         * config/tc-i386.h (FloatMF): Define new opcode modifier.
6298         (No_sSuf, No_bSuf, No_wSuf, No_lSuf): Likewise.
6299         (SHORT_OPCODE_SUFFIX, LONG_OPCODE_SUFFIX): Define.
6300         * config/tc-i386.c: Rename WORD_PREFIX_OPCODE to
6301         DATA_PREFIX_OPCODE throughout.
6302
6303         * config/tc-i386.c (REGISTER_WARNINGS): Define.
6304         (md_assemble): Rewrite suffix/register operand checking code to be
6305         more thorough.  Remove Abs8,16,32.  Change occurrences of Mem to
6306         AnyMem, the better to grep.
6307         (pi): Remove Abs.
6308         (i386_operand): Don't set Mem bits in i.types[this_operand] when
6309         given a memory operand.  Don't set Abs bits either.
6310         (type_names): Remove Mem*, Abs*.
6311         * config/tc-i386.h (Mem8, Mem16, Mem32, Abs8, Abs16, Abs32): Don't
6312         define opcode_modifiers as these cases are handled by Disp8,
6313         Disp16, Disp32 and suffix checks.
6314         (COMES_IN_BOTH_DIRECTIONS): Remove.
6315         (FloatR): Define. It's OK to share the bit with ReverseRegRegmem.
6316
6317         * config/tc-i386.c (md_assemble): Don't emit operand size prefix
6318         if IgnoreDataSize modifier given.  Remove ShortformW modifier
6319         test.  Add test for ShortForm in W base_opcode modification.
6320         Merge Seg2ShortForm and Seg3ShortForm code.
6321         * config/tc-i386.h (ShortFormW): Remove.
6322         (IgnoreDataSize): Define.
6323
6324 Fri Jun  5 10:50:53 1998  Nick Clifton  <nickc@cygnus.com>
6325
6326         * config/tc-d30v.c (md_assemble): Store previous segment state
6327         with previous instruction.
6328
6329 Wed Jun  3 18:21:56 1998  Alan Modra  <alan@spri.levels.unisa.edu.au>
6330
6331         * config/tc-i386.c (SCALE1_WHEN_NO_INDEX): Define.
6332         (ebp, esp): Remove static variables.
6333         (MATCH): Remove test for InOutPortReg.
6334         (i386_operand): Properly handle InOutPortReg here instead.
6335         Disallows `inb (%dx,2)', `inb %es:(%dx)' and `mov (%dx),%ax'
6336         (md_assemble): Simplify and correct modrm and sib generation.
6337         (i386_operand): Add warning for scale without index.
6338         Rewrite checks for valid base/index combinations.
6339
6340         * config/tc-i386.c (END_STRING_AND_SAVE): Protect arguments of
6341         macros and enclose in do while(0).
6342         (RESTORE_END_STRING): Likewise.
6343         (md_assemble): Add one to printed operand number so we start
6344         from 1 not 0.  Add some more gettext invocations.
6345         (i386_operand): Fix `%%s' -> `%%%s'. Inc printed operand
6346         number here too.
6347
6348         * config/tc-i386.h (WAIT_PREFIX, LOCKREP_PREFIX, ADDR_PREFIX,
6349         DATA_PREFIX, SEG_PREFIX): Define.
6350         * config/tc-i386.c (struct _i386_insn): Remove wait_prefix field.
6351         (check_prefix): Remove function.
6352         (add_prefix): New function.  Add prefix to i.prefix as well as
6353         doing checks.
6354         (md_assemble): Changes for add_prefix.  Remove hack for wait
6355         prefix, instead always output prefixes in fixed order.  Test
6356         for jcxz/loop when selecting between word & dword operations,
6357         and add address size prefix rather than operand size prefix.
6358         Remove operand -> address size hack when emitting jcxz/loop.
6359         (i386_operand): Remove O_Absent check as it's done in expr.
6360
6361 Wed Jun  3 15:09:10 1998  Ian Lance Taylor  <ian@cygnus.com>
6362
6363         * configure.in: Recognize m5200 as a cpu_type of m68k.
6364         * aclocal.m4: Rebuild with current libtool.
6365         * configure: Rebuild.
6366
6367 Wed Jun  3 14:11:59 1998  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
6368
6369         * config/tc-m68k.c (md_estimate_size_before_relax): Add more calls
6370         to relaxable_symbol to prevent references to external symbol from
6371         being relaxed.
6372
6373 Wed Jun  3 14:10:36 1998  Ian Lance Taylor  <ian@cygnus.com>
6374
6375         * config/tc-m68k.c (relaxable_symbol): If TARGET_OS is "elf", all
6376         symbols are relaxable.
6377
6378 Wed Jun  3 09:16:00 1998  Catherine Moore  <clm@cygnus.com>
6379
6380         * config/tc-v850.c (md_begin):  Don't create special
6381         sections by default.
6382
6383 Tue Jun  2 14:52:56 1998  Jeffrey A Law  (law@cygnus.com)
6384
6385         * config/tc-mips.c (macro): For div and udiv, close the
6386         reorder block as soon as possible.
6387
6388 Tue Jun  2 15:36:13 1998  Ian Lance Taylor  <ian@cygnus.com>
6389
6390         From Matt Semersky <matts@scd.hp.com>:
6391         * macro.c (macro_mri_mode): New function.
6392         * macro.h (macro_mri_mode): Declare.
6393         * read.c (s_mri): Call macro_mri_mode when switching in and out of
6394         MRI mode.
6395
6396 Tue Jun  2 13:32:22 1998  Klaus Kaempf  <kkaempf@progis.de>
6397
6398         * config/tc-alpha.c (s_alpha_comm): Allow alignment parameter in
6399         OBJ_EVAX case.
6400
6401         * config/tc-alpha.c (s_alpha_comm): Defer restoring character
6402         until after xstrdup in OBJ_EVAX case.
6403
6404 Tue Jun  2 13:11:13 1998  Pat Rankin  <rankin@eql.caltech.edu>
6405
6406         * config/tc-vax.c (md_create_short_jump): Fix off by two bug in
6407         offset calculation.  Also, use VAX_BRW from vax-inst.h instead
6408         of hardcoded magic number.
6409         (md_create_long_jump): Use VAX_JMP and VAX_ABSOLUTE_MODE macros.
6410
6411 Tue Jun  2 09:25:34 1998  Doug Evans  <devans@canuck.cygnus.com>
6412
6413         * read.c (do_s_func): New function.
6414         (s_func): Call it.
6415         * read.h (do_s_func): Add prototype.
6416
6417 Mon Jun  1 12:47:30 1998  Doug Evans  <devans@canuck.cygnus.com>
6418
6419         * config/tc-m32r.c (m32r_do_align): Only fill code sections with
6420         nops if fill pattern not specified.
6421
6422 Mon Jun  1 14:08:35 1998  Ian Lance Taylor  <ian@cygnus.com>
6423
6424         From Andrew Crabtree <andrewc@typhoon.rose.hp.com>:
6425         * config/te-go32.h (TE_GO32): Define.
6426         * config/tc-i386.h (LOCAL_LABEL): Don't define if TE_GO32.
6427
6428 Sun May 31 15:43:06 1998  Doug Evans  <devans@canuck.cygnus.com>
6429
6430         Implement .func/.endfunc pseudo-ops.
6431         * read.h (stabs_generate_asm_func,stabs_generate_asm_endfunc): Declare.
6432         (s_func): Declare.
6433         * read.c (potable): Add .func,.endfunc.
6434         (s_func): New function.
6435         * stabs.c (stabs_generate_asm_func,stabs_generate_asm_endfunc): New
6436         functions.
6437         (in_doc_func_p,current_function_label): New static globals.
6438         (stabs_generate_asm_lineno): Emit function relative stabs if in .func.
6439
6440 Fri May 29 18:13:12 1998  Ian Lance Taylor  <ian@cygnus.com>
6441
6442         * config/tc-a29k.h (WORKING_DOT_WORD): Define.
6443         * config/tc-alpha.h (WORKING_DOT_WORD): Define.
6444         * config/tc-arm.h (WORKING_DOT_WORD): Define.
6445         * config/tc-h8300.h (WORKING_DOT_WORD): Define.
6446         * config/tc-h8500.h (WORKING_DOT_WORD): Define.
6447         * config/tc-hppa.h (WORKING_DOT_WORD): Define.
6448         * config/tc-i860.h (WORKING_DOT_WORD): Define.
6449         * config/tc-i960.h (WORKING_DOT_WORD): Define.
6450         * config/tc-tic30.h (WORKING_DOT_WORD): Define.
6451         * config/tc-w65.h (WORKING_DOT_WORD): Define.
6452         * config/tc-z8k.h (WORKING_DOT_WORD): Define.
6453         * config/tc-a29k.c: Don't define md_short_jump_size,
6454         md_long_jump_size, md_create_short_jump or md_create_long_jump.
6455         * config/tc-alpha.c: Likewise.
6456         * config/tc-alpha.h: Likewise.
6457         * config/tc-arm.c: Likewise.
6458         * config/tc-h8300.c: Likewise.
6459         * config/tc-h8500.c: Likewise.
6460         * config/tc-hppa.c: Likewise.
6461         * config/tc-i860.c: Likewise.
6462         * config/tc-i960.c: Likewise.
6463         * config/tc-ppc.c: Likewise.
6464         * config/tc-sh.c: Likewise.
6465         * config/tc-sparc.h: Likewise.
6466         * config/tc-tic30.c: Likewise.
6467         * config/tc-w65.c: Likewise.
6468         * config/tc-z8k.c: Likewise.
6469
6470 Fri May 29 16:03:26 1998  Pat Rankin  <rankin@eql.caltech.edu>
6471
6472         * config/tc-vax.c (_): Delete this macro used for placeholder
6473         values in vax_operand_width_size; it conflicts with the _() macro
6474         used for internationalization.
6475
6476 Fri May 29 13:46:07 1998  Ian Lance Taylor  <ian@cygnus.com>
6477
6478         * symbols.c (symbol_find_base): Fix case insensitive symbol name
6479         code.  From Chris Moller <moller@bops.com>.
6480
6481         Based on patch from Klaus Kaempf <kkaempf@progis.de>:
6482         * struc-symbol.h (struct broken_word): Add seg and subseg fields.
6483         * read.c (emit_expr): Initialize seg and subseg fields of a new
6484         broken word.
6485         * write.c (write_object_file): Switch to the appropriate segment
6486         and subsegment when processing a broken word.
6487
6488         * config/tc-m68k.c (mri_assemble): New static function.
6489         (build_mri_control_operand): Call mri_assemble rather than
6490         md_assemble.
6491         (s_mri_else, s_mri_break, s_mri_next, s_mri_for): Likewise.
6492         (s_mri_endf, s_mri_endw): Likewise.
6493
6494 Wed May 27 11:16:25 1998  Ian Lance Taylor  <ian@cygnus.com>
6495
6496         * read.c (s_org): Call md_flush_pending_output if it is defined.
6497
6498         * config/tc-sparc.c (md_show_usage): Add \n\ to new string.
6499
6500 Tue May 26 19:27:52 1998  Stan Cox  <scox@equinox.cygnus.com>
6501
6502         * config/tc-sparc.c (OPTION_LITTLE_ENDIAN_DATA): New.
6503         (md_parse_option): Add for same.
6504         (sparc_md_end): Set bfd_mach_sparc_sparclite_le.
6505         (md_apply_fix3, tc_gen_reloc): Allow BFD_RELOC_SPARC_32LE.
6506         (cons_fix_new_sparc): Added to create BFD_RELOC_SPARC_32LE.
6507
6508         * config/tc-sparc.h (cons_fix_new_sparc): Added.
6509
6510 Thu May 21 15:02:41 1998  Nick Clifton  <nickc@cygnus.com>
6511
6512         * config/tc-arm.c (find_real_start): Relax definition of local
6513         labels.
6514
6515 Tue May 19 16:59:44 1998  Nick Clifton  <nickc@cygnus.com>
6516
6517         * config/tc-d30v.c (d30v_align): Apply address adjustment to all
6518         symbols at the given address, not just the last one specified.
6519
6520 Tue May 19 08:25:19 1998  Catherine Moore <clm@cygnus.com>
6521
6522         * config/tc-sparc.c (sparc_handle_align): Use number_to_chars_bigendian
6523         or number_to_chars_littleendian to write data.
6524
6525 Mon May 18 17:09:30 1998  Nick Clifton  <nickc@cygnus.com>
6526
6527         * config/tc-v850.c (md_assemble): Remove artificially created
6528         register name symbols.
6529
6530 Mon May 18 13:47:06 1998  Doug Evans  <devans@canuck.cygnus.com>
6531
6532         * write.c (fixup_segment): Change "segment" to "section" in
6533         error message.
6534
6535 Mon May 18 16:55:40 1998  Michael Meissner  <meissner@cygnus.com>
6536
6537         * write.c (fixup_segment): Change sym1-sym2 message again.
6538
6539 Mon May 18 09:31:43 1998  Michael Meissner  <meissner@cygnus.com>
6540
6541         * write.c (fixup_segment): Improve error message for sym1-sym2
6542         errors when sym1 is in a different segment from sym2.
6543
6544 Wed May 13 10:16:37 1998  Doug Evans  <devans@canuck.cygnus.com>
6545
6546         * config/tc-m32r.c (warn_unmatched_high): New static local.
6547         (OPTION_WARN_PARALLEL): Rename from OPTION_WARN.
6548         (OPTION_NO_WARN_PARALLEL): Rename from OPTION_NO_WARN.
6549         (md_longopts): Recognize --{no-,}warn-unmatched-high.
6550         (md_parse_option): Likewise.
6551         (md_show_usage): Likewise.
6552         (m32r_frob_file): Likewise.
6553
6554         * read.c (generate_file_debug,generate_lineno_debug): New functions.
6555         (read_a_source_file): Call them.
6556         * read.h (stabs_generate_asm_file): Declare.
6557         * stabs.c (stabs_generate_asm_file): New function.
6558         (generate_asm_file): New function.
6559         (stabs_generate_asm_lineno): Move file name handling into
6560         generate_asm_file.
6561
6562 Tue May 12 12:03:44 1998  Richard Henderson  <rth@cygnus.com>
6563
6564         * config/tc-d30v.c (cur_mul32_p, prev_mul32_p): Make static.
6565         (d30v_current_align, d30v_current_align_seg): New variables.
6566         (d30v_last_label): New variable.
6567         (d30v_align, s_d30v_align, s_d30v_text): New functions.
6568         (s_d30v_data, s_d30v_section): Likewise.
6569         (md_pseudo_table): Call them.
6570         (md_begin): Initialize d30v_current_align_seg.
6571         (md_assemble): Call d30v_align when needed by known current alignment.
6572         (d30v_frob_label, d30v_cons_align): New functions.
6573         * config/tc-d30v.h (md_do_align): Remove.
6574         (tc_frob_label): Call d30v_frob_label.
6575         (md_cons_align): New.
6576
6577         * config/tc-d30v.c (find_format): Convert complex expressions to
6578         expression symbols before processing.  Clean up code formatting.
6579
6580 Sun May 10 22:35:02 1998  Jeffrey A Law  (law@cygnus.com)
6581
6582         * po/Make-in (install-info): New target.
6583
6584 Thu May  7 15:49:07 1998  Jeffrey A Law  (law@cygnus.com)
6585
6586         * config/tc-mn10200.c (md_assemble): Handle "bra" just like "jmp"
6587         instructions.
6588         * config/tc-mn10300.c (md_assemble): Likewise.
6589
6590 Thu May  7 11:47:22 1998  Doug Evans  <devans@canuck.cygnus.com>
6591
6592         * Makefile.am: Update with `make dep-am'.
6593         (HFILES): Add cgen.h.
6594         (cgen.o): Depend on cgen.h.
6595         * Makefile.in: Regenerate.
6596
6597         * cgen.c (cgen_md_apply_fix3): Don't pass newline to as_warn_where.
6598
6599 Thu May  7 13:20:56 1998  Anders Blomdell  <anders.blomdell@control.lth.se>
6600
6601         * gasp.c (grab_label): Permit a label to be a preprocessor
6602         variable by permitting a label to start with a backslash.
6603
6604 Thu May  7 12:50:33 1998  Frank Ch. Eigler  <fche@cygnus.com>
6605
6606         * config/tc-mips.c (validate_mips_insn): Removed hack
6607         for previously inaccessible bitfields in some INSN_TRAP
6608         instructions.
6609
6610 Thu May  7 11:13:00 1998  Frank Ch. Eigler  <fche@cygnus.com>
6611
6612         * config/tc-d30v.c (do_assemble): Abort with error message
6613         if opcode operands do not match.
6614
6615 Thu May  7 09:36:06 1998  Frank Ch. Eigler  <fche@cygnus.com>
6616
6617         * config/tc-mips.c (macro_build, validate_mips_insn): Implement
6618         'q' operand format for 20-bit "break"/"sdbbp" instructions.
6619         (mips_ip): Truncate overflowed "break" 'c' operand.  Implement
6620         similar new 'q' operand.
6621
6622 Thu May  7 07:47:14 1998  Michael Meissner  <meissner@cygnus.com>
6623
6624         * cgen.c (cgen_asm_finish_insn): Fix typo.
6625
6626 Thu May  7 02:19:14 1998  Doug Evans  <devans@charmed.cygnus.com>
6627
6628         * cgen.h: New file.
6629         * cgen.c: Include it.
6630         (MAX_FIXUPS): Renamed to CGEN_MAX_FIXUPS.
6631         (cgen_asm_finish_insn): Result is now void.  New arg `result'.
6632         All callers updated.
6633         * config/tc-m32r.c: Include cgen.h.
6634         (m23r_insn): New members num_fixups,fixups.
6635
6636 Wed May  6 16:29:19 1998  Jeffrey A Law  (law@cygnus.com)
6637
6638         * config/tc-hppa.c (md_apply_fix): Slightly rework some code
6639         to avoid compiler warning.
6640
6641 Wed May  6 15:26:34 1998  Klaus Kaempf  <kkaempf@progis.de>
6642
6643         * makefile.vms: Run dec c with /nodebug.  Pass CC value when
6644         calling make.
6645
6646         * makefile.vms (OBJS): Add ehopt.obj
6647
6648 Wed May  6 15:11:12 1998  Klaus Kaempf  <kkaempf@progis.de>
6649
6650         * doc/c-vax.texi: Correct and extend vax/vms documentation.
6651
6652 Wed May  6 11:51:51 1998  Richard Henderson  <rth@cygnus.com>
6653
6654         * config/tc-d30v.c (do_assemble): Accept a new parameter requesting
6655         a short format insn.
6656         (md_assemble): Set it for explicitly packed insns.
6657
6658 Tue May  5 13:23:13 1998  Nick Clifton  <nickc@cygnus.com>
6659
6660         * config/obj-coff.c (c_symbol_merge): Do not take address of
6661         native fields when performing the memcpy.
6662
6663 Tue May  5 13:10:41 1998  Gavin Koch  <gavin@cygnus.com>
6664
6665         * config/tc-mips.c (macro,macro2): Implement
6666         M_DMULO_I, M_MULO_I, M_DMULOU_I, and M_MULOU_I.
6667
6668 Mon May  4 17:49:14 1998  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
6669
6670         * config/tc-m68k.h (TC_RELOC_RTSYM_LOC_FIXUP): Changed to keep
6671         relocations against globally visible symbols.
6672         * config/tc-m68k.c (relaxable_symbol): New macro.
6673         (m68k_ip, md_estimate_size_before_relax): Use it.
6674         (tc_m68k_fix_adjustable): Also handle weak symbols.
6675
6676 Mon May  4 16:12:23 1998  Ian Lance Taylor  <ian@cygnus.com>
6677
6678         * config/tc-i386.h (TC_RELOC_RTSYM_LOC_FIXUP): Keep relocs for all
6679         references to externally visible symbols.
6680         * config/tc-i386.c (md_apply_fix3): When OBJ_ELF, don't add the
6681         values in twice for a PC relative reloc if the symbol is
6682         externally defined.
6683
6684         * config/tc-sparc.h (tc_fix_adjustable) [OBJ_AOUT]: When PIC,
6685         don't adjust a PC relative reloc against an externally visible
6686         symbol.
6687         * config/tc-sparc.c (md_apply_fix3): When generating a.out PIC,
6688         for a PC relative fixup against an externally visible defined
6689         symbol, arrange to store object file and addend values as though
6690         the symbol were not defined.
6691         (tc_gen_reloc): Likewise.
6692
6693 Thu Apr 30 13:09:39 1998  Fred Fish  <fnf@ninemoons.com>
6694
6695         * read.c (sizeof_leb128): Referenced externally by write.c so
6696         don't inline.
6697
6698 Wed Apr 29 15:45:57 1998  Michael Meissner  <meissner@cygnus.com>
6699
6700         * config/tc-m32r.c ({,expand_}debug_sym): New functions to record
6701         and expand a 'debug' symbol associated with the next instruction
6702         that does not cause a short instruction to be filled with a NOP.
6703         (md_pseudo_table): Add support for .debugsym.
6704         (assemble_parallel_insn): Add calls to expand_debug_sym as
6705         appropriate.
6706         (md_assemble): Ditto.
6707
6708 Tue Apr 28 19:16:26 1998  Tom Tromey  <tromey@cygnus.com>
6709
6710         * as.c (main): Conditionally call setlocale.
6711         * gasp.c (main): Likewise.
6712         * asintl.h: Include <locale.h> if HAVE_LOCALE_H.
6713         (LC_MESSAGES): Now can be defined even when ENABLE_NLS.
6714
6715 Tue Apr 28 18:33:23 1998  Frank Ch. Eigler  <fche@cygnus.com>
6716
6717         * config/tc-d30v.c (md_show_usage): Correct gettext typo.
6718
6719 Tue Apr 28 12:16:30 1998  Ian Lance Taylor  <ian@cygnus.com>
6720
6721         * config/tc-hppa.c: Change all calls to bzero to use memset.
6722         (pa_ip): Add cast to avoid warning.
6723         (tc_gen_reloc, md_apply_fix): Likewise.
6724         (pa_find_space_by_number): Likewise.
6725         (hppa_force_relocation): Likewise.
6726         (pa_block): Change i to unsigned int.
6727         * config/obj-som.h (obj_som_copyright): Declare.
6728
6729 Tue Apr 28 11:35:56 1998  Frank Ch. Eigler  <fche@cygnus.com>
6730
6731         * ecoff.c (ecoff_build_lineno): Do not use dummy first_lineno
6732         for line numbers for assembly source.
6733
6734 Mon Apr 27 15:58:46 1998  Ian Lance Taylor  <ian@cygnus.com>
6735
6736         * configure.in: Change version number to 2.9.4
6737         * configure: Rebuild.
6738
6739 Mon Apr 27 12:07:33 1998  Doug Evans  <devans@seba.cygnus.com>
6740
6741         * cgen.c (cgen_asm_finish_insn): New arg relax_p.  All callers updated.
6742
6743 Mon Apr 27 15:16:12 1998  Ian Lance Taylor  <ian@cygnus.com>
6744
6745         * ecoff.h: Change symbolS in function declaration to struct
6746         symbol.
6747
6748 Sun Apr 26 13:44:22 1998  Ian Lance Taylor  <ian@cygnus.com>
6749
6750         * config/tc-sh.c (parse_reg): Add casts to avoid warnings.
6751         (md_convert_frag): Fix i18n typo.
6752
6753 Sat Apr 25 20:12:02 1998  Richard Henderson  <rth@cygnus.com>
6754
6755         * ecoff.c (ecoff_get_cur_proc_sym): New function.
6756         * ecoff.h: Protoype it.
6757         * config/tc-alpha.c [ELF] (s_alpha_prologue): New function.
6758         [EVAX] (s_alpha_prologue): Delete.
6759         (md_pseudo_table): Update.
6760
6761 Sat Apr 25 14:00:52 1998  Ian Lance Taylor  <ian@cygnus.com>
6762
6763         * config/tc-i960.c (md_assemble): Change bp_error_msg from static
6764         array to local pointer.
6765         (get_args, parse_expr): Add casts to avoid warnings.
6766
6767 Fri Apr 24 12:47:42 1998  Philippe De Muyter  <phdm@macqel.be>
6768
6769         * read.c (s_set): Cast xmalloc return value to fragS *.
6770         * config/tc-m68k.c (m68k_ip): Function made static to match
6771         previous forward declaration.
6772         (insert_reg, init_regtable, md_convert_frag_1): Likewise.
6773
6774 Fri Apr 24 09:26:46 1998  Nick Clifton  <nickc@cygnus.com>
6775
6776         * config/tc-v850.c: Add internationalisation macros to error
6777         strings.
6778
6779         * config/tc-m32r.c (can_make_parallel): Add internationalisation
6780         macros to error strings.
6781
6782 Thu Apr 23 19:23:23 1998  Ian Lance Taylor  <ian@cygnus.com>
6783
6784         * config/tc-ppc.c (ppc_fix_adjustable): Correct test of whether a
6785         reloc is in the TOC csect.
6786         (md_apply_fix3): Correct gettext typo.
6787
6788 Thu Apr 23 14:58:31 1998  Nick Clifton  <nickc@cygnus.com>
6789
6790         * config/tc-arm.c (find_real_start): Ignore symbols starting with
6791         .L - they are local labels and the branches are not really
6792         function calls but rather far jumps.
6793
6794 Wed Apr 22 15:57:21 1998  Tom Tromey  <tromey@cygnus.com>
6795
6796         * po/Make-in (MKINSTALLDIRS): Don't look in $(top_srcdir).
6797
6798 Wed Apr 22 14:52:36 1998  Ian Lance Taylor  <ian@cygnus.com>
6799
6800         * config/tc-i386.c (md_assemble): Print operand number rather than
6801         using ordinal_names.
6802         (i386_operand): Likewise.
6803
6804 Tue Apr 21 22:34:25 1998  Tom Tromey  <tromey@scribbles.cygnus.com>
6805
6806         * Makefile.am (INTLLIBS): Define to work around apparent automake
6807         bug.
6808         All Makefiles: Regenerated.
6809
6810         * Many files: Added gettext invocations around user-visible
6811         strings.
6812         * acconfig.h (ENABLE_NLS, HAVE_CATGETS, HAVE_GETTEXT, HAVE_STPCPY,
6813         HAVE_LC_MESSAGES): Define.
6814         * dep-in.sed: Added asintl.h.
6815         * po/Make-in: New file.
6816         * gasp.c (main): Call setlocale, bindtextdomain, and textdomain.
6817         Include "asintl.h".
6818         * read.c (Z_): Renamed from `_'.
6819         * Makefile.am (SUBDIRS): Added po.
6820         (POTFILES): new macro.
6821         (po/POTFILES.in): New target.
6822         ($(OBJS)): Added asintl.h.
6823         (HFILES): Likewise.
6824         (INCLUDES): Added -DLOCALEDIR, -I$(top_srcdir)/../intl.
6825         (as_new_LDADD): Added $(INTLLIBS).
6826         (as_new_DEPENDENCIES): Added $(INTLDEPS).
6827         (gasp_new_LDADD): Added $(INTLLIBS).
6828         (gasp_new_DEPENDENCIES): New macro.
6829         * configure, aclocal.m4: Rebuilt.
6830         * configure.in: Call CY_GNU_GETTEXT.  Generate po/Makefile.in and
6831         po/Makefile.
6832         (ALL_LINGUAS): Define.
6833         * macro.c: Include "asintl.h".
6834         * as.c (main): Call setlocale, bindtextdomain, and textdomain.
6835         * as.h: Include "asintl.h".
6836         * config/tc-i386.c (ordinal_names): Removed.
6837         (md_assemble): Changed error text to avoid ordinal_names.
6838         (i386_operand): Likewise.
6839         (reloc): Added as_bad to avoid i18n problems.
6840         (tc_gen_reloc): Likewise.
6841         * config/tc-arm.c (bad_args): Now a #define.
6842         (bad_pc): Likewise.
6843         * config/obj-vms.c (VMS_stab_parse): Changed type of
6844         `long_const_msg'.
6845         (global_symbol_directory): Unified strings to avoid i18n
6846         problems.
6847         * config/tc-m68k.c (get_reloc_code): Added some as_bad calls to
6848         avoid i18n problems.
6849         * config/tc-ns32k.c (reloc): Added as_bad to avoid i18n problems.
6850         * config/tc-ppc.c (md_apply_fix3): Added as_bad_where to avoid
6851         i18n problems.
6852         * config/tc-sh.c (md_convert_frag): Added as_bad to avoid i18n
6853         problems.
6854         * config/tc-v850.c (md_assemble): Changed C++ comment into C
6855         comment.
6856         * config/tc-vax.c (md_assemble): Added as_warn to avoid i18n
6857         problems.
6858         * as.c (print_version_id): Added an fprintf to avoid i18n
6859         problems.
6860         * cond.c (cond_finish_check): Added as_bad call to avoid i18n
6861         problems.
6862         * expr.c (expr): Added as_warn call to avoid i18n problems.
6863         * messages.c (as_assert): Changed code to avoid i18n problems.
6864         (as_abort): Likewise.
6865         * read.c (pseudo_set): Added as_bad call to avoid i18n problems.
6866         (s_space): Likewise.
6867         * po/Make-in, po/POTFILES.in, po/gas.pot: New files.
6868
6869 Tue Apr 21 17:01:22 1998  Alan Modra  <alan@spri.levels.unisa.edu.au>
6870
6871         * config/tc-i386.c (check_prefix): New static function, split out
6872         from md_assemble.
6873         (struct _i386_insn): Add wait_prefix field.
6874         (md_assemble): Remove wait_prefix local variable.  Use
6875         check_prefix when adding a prefix.
6876
6877         * config/tc-i386.c (current_templates): New static variable.
6878         (md_assemble): Remove current_templates local variable.
6879         (md_assemble, i386_operand): Improve error and warning messages in
6880         many places.  Add RESTORE_END_STRING in many places before error
6881         return.  Clarify some comments.
6882
6883         * config/tc-i386.c (struct _i386_insn): Change seg field to a two
6884         element array.
6885         (md_assemble): Parse string instruction operands, looking for
6886         segment override prefixes.  Check for invalid segment prefixes on
6887         string instruction.
6888         (i386_operand): i.seg[] and max mem_operand changes for string
6889         insns.
6890         * config/tc-i386.h (EsSeg): Define.
6891
6892         * config/tc-i386.h (regKludge): Define.
6893         (iclrKludge, imulKludge): Don't define.
6894         * config/tc-i386.c (md_assemble): Merge imulKludge and iclrKludge
6895         code.  Move ReverseRegRegmem fudges into Modrm case.  Reorder
6896         opcode_modifier checks to look for more common cases first.  Add
6897         default_seg for IsString case.
6898
6899 Tue Apr 21 16:18:12 1998  Ian Lance Taylor  <ian@cygnus.com>
6900
6901         * configure.in: Call AM_PROG_LEX rather than AC_PROG_LEX and
6902         AC_DECL_YYTEXT.
6903         * configure: Rebuild with new automake and libtool.
6904         * aclocal.m4, Makefile.in: Likewise.
6905
6906         * doc/Makefile.am (as.dvi): New target.
6907         * doc/Makefile.in: Rebuild.
6908
6909 Sat Apr 18 01:21:04 1998  Stan Cox  <scox@cygnus.com>
6910
6911         * configure.in: Added sparc86x support.
6912
6913         * configure: Rebuild.
6914
6915         * config/tc-sparc.c (lookup_arch): Added arch_type to struct
6916         sparc_arch.
6917         (md_parse_option): Warn if -EL is not supported for this architecture.
6918
6919         * config/tc-sparc.h (SPARC_BIENDIAN) Always define.
6920
6921 Sat Apr 18 01:19:01 1998  Jeffrey A Law  (law@cygnus.com)
6922
6923         * config/tc-mips.c (mips_ip): Note when we use get match on
6924         the full instruction name.
6925
6926 Wed Apr 15 15:17:27 1998  Richard Henderson  <rth@cygnus.com>
6927
6928         * symbols.c (resolve_symbol_value) [O_symbol]: Also store the symbol
6929         back into the expression to handle add/sub simplification correctly.
6930
6931 Wed Apr 15 07:06:04 1998  Catherine Moore  <clm@cygnus.com>
6932
6933         * config/tc-mips.c (hilo_interlocks): Remove 4300.
6934
6935 Mon Apr 13 16:51:04 1998  Nick Clifton  <nickc@cygnus.com>
6936
6937         * config/tc-arm.c (do_msr): Support undocumented 'msr cpsr_flg,
6938         #<n>' instruction.
6939
6940 Thu Apr  9 10:29:42 1998  Doug Evans  <devans@canuck.cygnus.com>
6941
6942         * symbols.c (max_indent_level): New global.
6943         (print_symbol_value_1): Use it.
6944         * expr.h (expr_build_dot): Declare.
6945         * expr.c (expr_build_dot): New function.
6946
6947 Wed Apr  8 16:16:11 1998  Doug Evans  <devans@canuck.cygnus.com>
6948
6949         * symbols.c (print_binary): New function.
6950         (print_expr_1): Call it.
6951
6952 Mon Apr  6 12:06:39 1998  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
6953
6954         * config/tc-m68k.c (m68k_ip, case "#B"): Install the offset of the
6955         operand in the opcode.
6956
6957 Fri Apr  3 11:58:19 1998  Alan Modra  <alan@spri.levels.unisa.edu.au>
6958
6959         * config/tc-i386.h: Reorder operand flags and opcode modifier
6960         flags for clarity.  Remove unused definitions: Unknown,
6961         ImmUnknown, DispUnknown, NoModrm.
6962         * config/tc-i386.c (type_names): Add missing Debug type.
6963         (md_assemble): Better duplicate prefix checking.  Quicker string
6964         instruction check via new opcode_modifier flag.
6965
6966 Fri Apr  3 11:44:34 1998  Ian Lance Taylor  <ian@cygnus.com>
6967
6968         * doc/as.texinfo (Invoking): Clarify -Wa example.
6969
6970 Fri Apr  3 09:12:23 1998  Gavin Koch  <gavin@cetus.cygnus.com>
6971
6972         * config/tc-mips.c (mips_pseudo_table): Add weakext entry.
6973         (s_mips_weakext): Define.
6974         * ecoff.c (ecoff_directive_weakext): Don't define if defined(TC_MIPS).
6975         * config/obj-ecoff.c (obj_pseudo_table): Don't add weakext if
6976         defined(TC_MIPS).
6977
6978 Thu Apr  2 22:42:02 1998  Jeffrey A Law  (law@cygnus.com)
6979
6980         * config/tc-mn10200.c (tc_gen_reloc): The difference of two symbols
6981         is an error if the value can not be computed at assembly time.
6982         * config/tc-mn10300.c (tc_gen-reloc): Likewise.
6983
6984 Thu Apr  2 16:36:47 1998  Ian Lance Taylor  <ian@cygnus.com>
6985
6986         * gasp.c (main): Set next field of new include_path structure to
6987         NULL.  From Avery Pennarun <averyp@gdc.ca>.
6988
6989         * read.c (s_mri_sect): Call as_bad rather than abort for an
6990         unsupported MRI target.
6991
6992 Wed Apr  1 11:08:27 1998  Nick Clifton  <nickc@cygnus.com>
6993
6994         * config/tc-arm.c (arm_validate_fix): New function.  Determine if
6995         the destination of a branch instruction should be altered.
6996         (find_real_start): New function:  Locate the real, Thumb coded
6997         start of a Thumb function.
6998         (do_t_branch23): Alter the destination of branches to Thumb
6999         functions.
7000
7001         * config/tc-arm.h: Define TC_VALIDATE_FIX.
7002
7003 Tue Mar 31 13:27:33 1998  Dean M. Deaver  <deaver@amt.tay1.dec.com>
7004
7005         * config/tc-arm.c (decode_shift): Handle addressing mode 2 w/rrx
7006         also.
7007
7008 Wed Apr  1 13:13:20 1998  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
7009
7010         * doc/as.texinfo: Use @itemx for a secondary item in a table.
7011         * doc/c-hppa.texi: Likewise.
7012
7013 Tue Mar 31 17:52:40 1998  Ian Lance Taylor  <ian@cygnus.com>
7014
7015         * Makefile.am: Rebuild dependencies.
7016         * Makefile.in: Rebuild.
7017
7018         * Makefile.am (DEP_INCLUDES): New variable.
7019         (.dep1): Change to work when srcdir is not an absolute path.
7020         (.tcdep, .objdep, .dep2, dep.sed): Likewise.
7021         * Makefile.in: Rebuild.
7022
7023 Mon Mar 30 12:46:48 1998  Ian Lance Taylor  <ian@cygnus.com>
7024
7025         * config/tc-i386.h, config/tc-i386.c: Revert March 24
7026         LinearAddress patch.
7027
7028         * configure.in: Set version to 2.9.1.
7029         * configure: Rebuild.
7030
7031         * Branched binutils 2.9.
7032
7033 Mon Mar 30 11:22:08 1998  Alan Modra  <alan@spri.levels.unisa.edu.au>
7034
7035         * config/tc-i386.h (FWait): Define.
7036         * config/tc-i386.c (md_assemble): Emit fwait prefix before any
7037         other prefixes.  Check FWait flag in opcode table to see which
7038         instructions require an fwait prefix.
7039
7040 Mon Mar 30 10:12:00 1998  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
7041
7042         * stabs.c (get_stab_string_offset): Always create a stab string
7043         section.
7044
7045 Sat Mar 28 22:28:02 1998  Ian Lance Taylor  <ian@cygnus.com>
7046
7047         Fix some gcc -Wall warnings:
7048         * atof-generic.c (atof_generic): Add casts to avoid warnings.
7049         * ehopt.c (eh_frame_code_alignment): Likewise.
7050         * expr.c (integer_constant, operand): Likewise.
7051         * frags.c (frag_align): Likewise.
7052         * gasp.c (level_0, change_base, doinstr): Likewise.
7053         * hash.c (hash_ask): Likewise.
7054         * listing.c (listing_page, calc_hex, print_lines): Likewise.
7055         (debugging_pseudo): Likewise.
7056         * macro.c (define_macro, check_macro): Likewise.
7057         * read.c (read_a_source_file, s_align, s_float_space): Likewise.
7058         (ignore_rest_of_line, float_cons): Likewise.
7059         * symbols.c (decode_local_label_name): Likewise.
7060         * write.c (record_alignment, cvs_frag_to_fill): Likewise.
7061         (fixup_segment, number_to_chars_bigendian): Likewise.
7062         (number_to_chars_littleendian): Likewise.
7063         * config/atof-ieee.c (gen_to_words): Likewise.
7064         * config/tc-sparc.c (md_begin, md_assemble): Likewise.
7065         (sparc_ip, parse_keyword_arg, s_common): Likewise.
7066         * read.c (output_big_sleb128): Initialize locals to avoid
7067         warnings.
7068         (output_big_uleb128, equals): Likewise.
7069         * atof-generic.c (atof_generic): Change number_of_digits_* locals
7070         to unsigned int.  Change zeros to unsigned int.
7071         * cond.c (s_if): Add return to default case.
7072         * frags.c (frag_now_fix): Change return type to addressT.
7073         * frags.h (frag_now_fix): Update declaration.
7074         * listing.c (file_info_struct): Change linenum to unsigned int.
7075         (struct list_info_struct): Change hll_line to unsigned int.
7076         (print_source): Update format string.
7077         * read.c (emit_expr): Change scan to unsigned int, and don't
7078         bother to initialize it.
7079         * symbols.c (dollar_label_count): Change to unsigned long.
7080         * write.c (adjust_reloc_syms): Remove unused label reduce_fixup.
7081         * config/tc-sparc.c (sparc_memory_model): Only define if OBJ_ELF.
7082         * config/tc-sparc.c (tc_gen_reloc): Add return to default case.
7083
7084 Fri Mar 27 12:46:47 1998  Ian Lance Taylor  <ian@cygnus.com>
7085
7086         * config/tc-m68k.c (m68k_ip): Check legal addressing modes for
7087         mcf5200 just as we do for m68000.
7088         (m68k_init_after_args): Likewise.
7089         (md_estimate_size_before_relax): Likewise.
7090
7091 Fri Mar 27 10:30:01 1998  Catherine Moore  <clm@cygnus.com>
7092
7093         * config/tc-v850.c (md_assemble):  Store relocation addend in
7094         fixup instead of instruction.
7095
7096 Thu Mar 26 23:07:18 1998  Alan Modra  <alan@spri.levels.unisa.edu.au>
7097
7098         * config/tc-i386.c (md_assemble): Swap template arguments to
7099         CONSISTENT_REGISTER_MATCH macro in reverse direction test.
7100         This macro is currently symmetric, so passing them the wrong
7101         way didn't cause any problem, but may if the macro is changed
7102         in the future.
7103         After copying template to i.tm, use i.tm. rather than t-> to
7104         access fields, and make t a const*
7105         Move i.tm.operand_types[] swap to immediately after the copy.
7106
7107 Wed Mar 25 13:44:18 1998  Doug Evans  <devans@canuck.cygnus.com>
7108
7109         * expr.h (expr_build_uconstant): Add prototype.
7110         (expr_build_unary,expr_build_binary): Add prototypes.
7111         * expr.c (expr_build_uconstant): New function.
7112         (expr_build_unary,expr_build_binary): New functions.
7113
7114 Wed Mar 25 13:10:42 1998  Bruno Haible  <bruno@linuix.mathematik.uni-karlsruhe.de>
7115
7116         * gasp.c (IS*): Cast argument to unsigned char, not unsigned int.
7117         * macro.c (macro_expand_body): Increase buffer size.
7118         * messages.c (as_warn): Likewise.
7119         (as_warn_where, as_bad, as_bad_where): Likewise.
7120
7121 Wed Mar 25 12:59:07 1998  Ian Lance Taylor  <ian@cygnus.com>
7122
7123         Based on patch from H.J. Lu  <hjl@gnu.org>:
7124         * Makefile.am (DISTSTUFF): New variable.
7125         (diststuff): New target.
7126         * Makefile.in: Rebuild.
7127
7128 Tue Mar 24 16:51:29 1998  Nick Clifton  <nickc@cygnus.com>
7129
7130         * config/tc-m32r.h (md_cleanup, md_elf_section_change_hook): Call
7131         m32r_elf_section_change_hook.
7132
7133         * config/tc-m32r.c (m32r_elf_section_change_hook): New function to
7134         emit a nop if a section ends with a 16 bit instruction.
7135
7136 Tue Mar 24 19:48:09 1998  Ian Lance Taylor  <ian@cygnus.com>
7137
7138         * config/obj-coff.c (obj_coff_bss): Compile unconditionally.  Call
7139         s_lcomm rather than obj_coff_lcomm.
7140         (obj_pseudo_table): Compile .bss pseudo-op unconditionally.
7141
7142 Tue Mar 24 18:30:58 1998  H.J. Lu  <hjl@gnu.org>
7143
7144         * config/tc-i386.h (LinearAddress): Define.
7145         * config/tc-i386.c (md_assemble): If LinearAddress is set for the
7146         instruction, don't use a default segment.
7147
7148 Mon Mar 23 18:53:40 1998  Joel Sherrill  <joel@OARcorp.com>
7149
7150         * configure.in: (sh*-*-rtems*): Switched from ELF to COFF.
7151         * configure: Rebuild.
7152
7153 Fri Mar 20 19:15:44 1998  Ian Lance Taylor  <ian@cygnus.com>
7154
7155         * aclocal.m4, configure: Rebuild with libtool 1.2.
7156
7157 Thu Mar 19 16:03:12 1998  Nick Clifton  <nickc@cygnus.com>
7158
7159         * config/tc-arm.c (md_apply_fix3): fix code to test the range of
7160         PC relative branches.  Patch courtesy of Jonathan Walton.
7161
7162
7163 Wed Mar 18 09:29:51 1998  Nick Clifton  <nickc@cygnus.com>
7164
7165         * configure.in (emulations): Add thumb-pe target.
7166
7167         * configure (emulations): Add thumb-pe target.
7168
7169 1998-03-17  Ken Raeburn  <raeburn@cygnus.com>
7170
7171         * itbl-lex.l (yywrap): Don't define if already defined as a
7172         macro.
7173
7174 Fri Mar 13 16:31:38 1998  Tom Tromey  <tromey@cygnus.com>
7175
7176         * depend.c (quote_string_for_make): New function.
7177         (wrap_output): Use it.
7178
7179 Thu Mar 12 18:28:22 1998  Nick Clifton  <nickc@cygnus.com>
7180
7181         * config/obj-elf.c (obj_elf_section): Set bss flag in seg_info
7182         structure if type is SHT_NOBITS.  [Bug fix courtesy of rth]
7183
7184 Sat Feb 28 17:28:55 1998  Richard Henderson  <rth@cygnus.com>
7185
7186         * config/tc-alpha.c (md_shortopts, md_longopts, md_parse_option):
7187         Recognize -GN and -relax.
7188         (md_begin): Initialize gp size from -G switch.
7189         (alpha_force_relocation): Always force if -relax.
7190         (alpha_align): Take a new argument that will specify when to
7191         emit an R_ALPHA_ALIGN relocation (though we don't do that now).
7192         Change all callers.  Emit nop alignment padding as nop+unop pair.
7193
7194 Sat Feb 28 17:06:22 1998  Richard Henderson  <rth@cygnus.com>
7195
7196         * config/obj-elf.c [TC_ALPHA]: Include <elf/alpha.h>.
7197         * config/tc-alpha.h (ELF_TC_SPECIAL_SECTIONS): New.
7198
7199 Thu Feb 26 15:49:04 1998  Michael Meissner  <meissner@cygnus.com>
7200
7201         * config/tc-d30v.c (write_2_short): Delayed jsr instructions don't
7202         require padding to the next long word boundary.
7203
7204 Mon Feb 23 11:29:06 1998  Doug Evans  <devans@seba.cygnus.com>
7205
7206         * cgen.c: #include symcat.h.
7207         * config/tc-m32r.c: Likewise.
7208
7209 Mon Feb 23 10:27:40 1998  Jeffrey A Law  (law@cygnus.com)
7210
7211         * config/tc-mips.c (mips_ip, case 'P'): Make 'P' arguments be
7212         absolute expressions instead of '$' prefixed register names.
7213
7214 Sat Feb 21 22:36:52 1998  Richard Henderson  <rth@cygnus.com>
7215
7216         * read.c (s_set): Record file and line info for symbols when -as.
7217         (pseudo_set): Don't overwrite that dummy fragment.
7218
7219 Fri Feb 20 15:03:13 1998  Ian Lance Taylor  <ian@cygnus.com>
7220
7221         * config/tc-ppc.c (md_pseudo_table): Add "section".
7222         (ppc_named_section): New static function.
7223
7224 Thu Feb 19 22:25:42 1998  Richard Henderson  <rth@cygnus.com>
7225
7226         * tc-ppc.c (ppc_biei): Cache the last symbol we inserted
7227         so we don't have to scan the entire list.
7228
7229 Tue Feb 17 17:02:15 1998  Fred Fish  <fnf@cygnus.com>
7230
7231         * config/tc-d30v.c (parallel_ok): For the explicitly parallel
7232         case, allow the parallel instructions to modify the same flag
7233         bits.
7234
7235 Thu Feb 19 16:08:15 1998  Richard Henderson  <rth@cygnus.com>
7236
7237         * listing.c (list_symbol_table): Categorize symbols by
7238         undefined_section rather than sy_frag->line == NULL.
7239
7240 Wed Feb 18 23:39:46 1998  Richard Henderson  <rth@cygnus.com>
7241
7242         * Makefile.am (install-exec-local): Install properly when ln
7243         fails or tooldir == prefix.
7244
7245 Tue Feb 17 18:58:51 1998  Doug Evans  <devans@seba.cygnus.com>
7246
7247         * cgen.c (cgen_md_apply_fix3): Delete call to validate_operand.
7248         Test result of insert_operand for error.
7249
7250 Fri Feb 13 16:41:42 1998  Ian Lance Taylor  <ian@cygnus.com>
7251
7252         * Makefile.am (AUTOMAKE_OPTIONS): Add cygnus.
7253         * configure, Makefile.in, aclocal.m4: Rebuild with automake 1.2e.
7254         * doc/Makefile.am (AUTOMAKE_OPTIONS): Define.
7255         * doc/Makefile.in: Rebuild.
7256
7257 Fri Feb 13 00:47:44 1998  Ian Lance Taylor  <ian@cygnus.com>
7258
7259         * config/tc-mips.c (macro_build): Handle operand type 'C'.
7260         (macro): Fix handling of M_COP[0-3].
7261
7262 Thu Feb 12 14:06:59 1998  Ian Lance Taylor  <ian@cygnus.com>
7263
7264         Based on patches from Ross Harvey <ross@teraflop.com>:
7265         * macro.c (ISSEP): Only treat '<' and '>' as separator characters
7266         if macro_alternate or macro_mri.
7267         (getstring): Remove support for byte constants between < and >.
7268         (get_any_string): '<' only starts a string if macro_alternate or
7269         macro_mri.
7270         (macro_expand_body): Permit keyword parameters following
7271         positional parameters.
7272
7273         NetBSD patches from Gordon W. Ross <gwr@mc.com>:
7274         * configure.in (alpha*-*-netbsd*): New target.
7275         * config/te-nbsd.h (LOCAL_LABELS_FB): Define.
7276         * configure: Rebuild.
7277
7278         * as.h (flag_warn_suppress_instructionswap): Move from here...
7279         * config/tc-d10v.c (flag_warn_suppress_instructionswap): ...to
7280         here, and make static.
7281
7282         * ehopt.c (eh_frame_code_alignment): Only use seg_info if
7283         BFD_ASSEMBLER or MANY_SEGMENTS.
7284
7285         * as.c (show_usage): Update bug-gnu-utils address.
7286         * gasp.c (show_usage): Likewise.
7287         * doc/as.texinfo (Bug Reporting): Likewise.
7288
7289 Wed Feb 11 23:26:28 1998  Jeffrey A Law  (law@cygnus.com)
7290
7291         * config/tc-mips.c (load_address): Don't use mips III or mips IV
7292         insns regardless of the size of a pointer if we're in mips I or
7293         MIPS II mode.
7294         (macro, macro2, s_cprestore, s_cpadd): Likewise.
7295
7296 Thu Feb 12 03:41:00 1998  J"orn Rennecke  <amylaar@cygnus.co.uk>
7297
7298         Fix rac to accept only a0:
7299         * tc-d10v.c (parallel_ok, find_opcode):
7300         Split OPERAND_ACC into OPERAND_ACC0 and OPERAND_ACC1.
7301         Introduce OPERAND_GPR.
7302
7303 Wed Feb 11 16:28:13 1998  Richard Henderson  <rth@cygnus.com>
7304
7305         * read.c (s_fill): Handle non-constant repeat counts by creating
7306         an rs_space fragment.
7307
7308 Tue Feb 10 18:31:31 1998  Ian Lance Taylor  <ian@cygnus.com>
7309
7310         * config/tc-i386.c (i386_operand): Change error added Jan 2 1998
7311         from as_bad to as_warn.
7312
7313 Tue Feb 10 18:04:00 1998  Jim Lemke  <jlemke@cygnus.com>
7314
7315         * as.c: (perform_an_assembly_pass): Use [TEXT|DATA|BSS]_SECTION_NAME
7316         * as.h: Define default values of [TEXT|DATA|BSS]_SECTION_NAME
7317         * config/obj-elf.c (elf_begin): Use [TEXT|DATA|BSS]_SECTION_NAME
7318
7319 Tue Feb 10 17:58:18 1998  Ian Lance Taylor  <ian@cygnus.com>
7320
7321         * ehopt.c (eh_frame_code_alignment): If not BFD_ASSEMBLER, use
7322         seg_fix_rotP rather than fix_root from seg_info.
7323
7324 Tue Feb 10 15:32:22 1998  Ian Carmichael  <iancarm@cygnus.com>
7325
7326         * expr.c: Add support for 0x1_2_3_4 bignums.
7327
7328 Tue Feb 10 14:43:40 1998  Ian Lance Taylor  <ian@cygnus.com>
7329
7330         * configure.in: Change -linux* to -linux-gnu*.
7331         * configure: Rebuild.
7332
7333         * app.c (do_scrub_begin): Treat \r as whitespace.
7334
7335 Mon Feb  9 14:16:11 1998  Ian Lance Taylor  <ian@cygnus.com>
7336
7337         * Makefile.am: Update dependencies.
7338         * Makefile.in: Rebuild.
7339
7340 Sat Feb  7 15:33:51 1998  Ian Lance Taylor  <ian@cygnus.com>
7341
7342         * configure, aclocal.m4: Rebuild with new libtool.
7343
7344 Fri Feb  6 16:08:30 1998  Jeffrey A Law  (law@cygnus.com)
7345
7346         * config/tc-mips.c (md_begin): If mips_cpu is set, then use it as
7347         the argument to bfd_set_arch_mach.
7348         (load_address): Use bfd_arch_bits_per_address to determine the
7349         bit size of an address instead of looking at the isa level.
7350         (macro, macro2, s_cprestore, s_cpadd): Likewise.
7351
7352 Fri Feb  6 14:44:34 1998  Nick Clifton  <nickc@cygnus.com>
7353
7354         * config/tc-v850.c (md_parse_option): Add -mv850any command line option.
7355
7356 Thu Feb  5 12:39:08 1998  Ian Lance Taylor  <ian@cygnus.com>
7357
7358         * ehopt.c: New file.
7359         * as.h (enum _relax_state): Add rs_cfa.
7360         (check_eh_frame, eh_frame_estimate_size_before_relax): Declare.
7361         (eh_frame_relax_frag, eh_frame_convert_frag): Declare.
7362         * read.c (emit_expr): Call check_eh_frame.
7363         * write.c (cvt_frag_to_fill): Handle rs_cfa.
7364         (relax_segment): Likewise.
7365         * Makefile.am: Rebuild dependencies.
7366         (GAS_CFILES): Add ehopt.c.
7367         (GENERIC_OBJS): Add ehopt.o.
7368         * doc/internals.texi (Frags): Document rs_cfa.
7369
7370         * as.c (show_usage): Mention --traditional-format.
7371         (parse_args): Accept --traditional-format.
7372         * as.h (flag_traditional_format): Declare.
7373         * output-file.c (output_file_create): If flag_traditional_format,
7374         set BFD_TRADITIONAL_FORMAT on stdoutput.
7375         * doc/as.texinfo, doc/as.1: Document --traditional-format.
7376
7377         * config/tc-mips.c (append_insn): Make sure that if we have a
7378         fixup for an unmatched %hi reloc, it does not associated with a
7379         variant frag.
7380
7381         * configure, Makefile.in, aclocal.m4: Rebuild with new libtool.
7382         * doc/Makefile.in: Likewise.
7383
7384 Wed Feb  4 15:41:54 1998  Nick Clifton  <nickc@cygnus.com>
7385
7386         * config/tc-m32r.c (check_for_side_effects): New function.
7387         (can_make_parallel): Add checks for instruction side effects
7388         clashing with the other instruction.
7389         (assemble_parallel_insn): Improve warning messages.  Return error
7390         message from non-swapped instruction order.
7391
7392 Wed Feb  4 20:00:26 1998  James G. Smith  <jsmith@teknema.demon.co.uk>
7393
7394         * config/tc-arm.c: Rename arm_after_pass_hook() to arm_cleanup().
7395
7396         * config/tc-arm.h: Replace md_after_pass_hook definition with a
7397         md_cleanup definition.  This moves the forced literal output to
7398         the end of the source pass, and avoids macro's inserting literals
7399         into the code immediately after the macro expansion.
7400
7401 Wed Feb  4 13:17:19 1998  Ian Lance Taylor  <ian@cygnus.com>
7402
7403         * config/tc-sparc.h (tc_fix_adjustable) [OBJ_ELF]: A reloc against
7404         a gas internal symbol is adjustable.
7405         * config/tc-ppc.h (tc_fix_adjustable): Likewise.
7406
7407         * as.h: If gcc version greater than 2.6, use `__format__' and
7408         `__printf__' in function attributes, rather than `format' and
7409         `printf'.
7410
7411 Mon Feb  2 18:38:18 1998  Ian Lance Taylor  <ian@cygnus.com>
7412
7413         * config/tc-sparc.c: Only include elf/sparc.h if OBJ_ELF.
7414
7415 Mon Feb  2 18:30:34 1998  Steve Haworth  <steve@pm.cse.rmit.EDU.AU>
7416
7417         Add tms320c30 support:
7418         * config/tc-tic30.h: New file.
7419         * config/tc-tic30.c: New file.
7420         * config/obj-coff.h: If TC_TIC30, include coff/tic30.h and define
7421         TARGET_FORMAT as "coff-tic30".
7422         * configure.in (tic30-*-*aout*, tic30-*-*coff*): New targets.
7423         * Makefile.am: Rebuild dependencies.
7424         (CPU_TYPES): Add tic30.
7425         (CPU_OBJ_VALID): tic30-aout is valid.
7426         (TARGET_CPU_CFILES): Add config/tc-tic30.c.
7427         (TARGET_CPU_HFILES): Add config/tc-tic30.h.
7428         * configure, Makefile.in: Rebuild.
7429
7430 Mon Feb  2 10:20:37 1998  Nick Clifton  <nickc@cygnus.com>
7431
7432         * config/tc-v850.c (md_assemble): Improvements to error messages.
7433
7434 Mon Feb  2 12:39:05 1998  Geoff Keating  <geoffk@ozemail.com.au>
7435
7436         * config/tc-ppc.c (md_apply_fix3): Change BFD_RELOC_HI16 and
7437         BFD_RELOC_HI16_S to store the high bits of any value.
7438
7439         * config/tc-ppc.h (tc_fix_adjustable): Undo change of Fri Jun 27.
7440         (TC_RELOC_RTSYM_LOC_FIXUP): Don't let the
7441         assembler calculate relocations to any external symbol at all.
7442         * config/tc-ppc.c (md_apply_fix3) [OBJ_ELF]: Correct bugs
7443         involving generation of pc-relative relocs.
7444         (md_pcrel_from_section) [OBJ_ELF]: The job this code used to do
7445         has been moved to md_apply_fix3.
7446
7447         * config/tc-ppc.c (md_apply_fix3): Fix test for too-far branch.
7448         (ppc_elf_suffix): Warn about 'identifier+constant@got' syntax,
7449         which actually means (the address of identifier's GOT entry) +
7450         constant, which is not particularly useful.
7451
7452 Fri Jan 30 11:02:35 1998  Doug Evans  <devans@canuck.cygnus.com>
7453
7454         * read.h (include_dirs): Declare.
7455         (include_dir_count,include_dir_maxlen): Declare.
7456
7457 Fri Jan 30 11:47:02 1998  Ian Lance Taylor  <ian@cygnus.com>
7458
7459         * configure.in: Correct check for shared opcodes library.
7460         * configure: Rebuild.
7461
7462         * listing.c (buffer_line): If we can't open the file, set at_end.
7463         (listing_print): Remove unused local variable fi.
7464
7465         * config/m68k-parse.y (reglistpair): Handle register list in
7466         either order.
7467
7468         * config/vms-conf.h: Don't undef VERSION.
7469
7470 Thu Jan 29 14:42:44 1998  Pat Rankin  <rankin@eql.caltech.edu>
7471
7472         * Makefile.am (CONFIG_OBJS): New variable, containing part of old
7473         OBJS variable.
7474         (GENERIC_OBJS): New variable, with the rest of the old OBJS
7475         variable.
7476         (OBJS): Now just $(CONFIG_OBJS) and $(GENERIC_OBJS).
7477         ($(srcdir)/make-gas.com): Rename from make-gas.com.
7478         (stamp-mk.com): Replace $(OBJS) with $(GENERIC_OBJS).
7479         (EXTRA_DIST): Define.
7480         * vmsconf.sh: Handle {targ-cpu, obj-format, atof-targ} modules
7481         explicitly rather than via the list of object files.
7482         (gcc-as.opt): New file created when make-gas.com is run.
7483         * config-gas.com: Create {targ-cpu.h, obj-format.h, targ-env.h,
7484         itbl-cpu.h} to #include appropriate file rather than copying that
7485         file.
7486         * config/vms-conf.h: Synchronize with current config.in.
7487         * Makefile.in: Rebuild.
7488
7489 Thu Jan 29 18:48:19 1998  Bill Moyer  <billm@cygnus.com>
7490
7491         * config/tc-d30v.c (do_assemble): Added flag_explicitly_parallel.
7492         (parallel_ok): Relaxed parallel subinstruction dependency check.
7493
7494 Wed Jan 28 14:35:00 1998  Bill Moyer <billm@cygnus.com>
7495
7496         * as.h (flag_warn_suppress_instructionswap): added new flag.
7497         * tc-d10v.c (md_parse_option,md_longopts): added "--nowarnswap"
7498         command line argument.
7499         * tc-d10v.c (write_2_short): emit "Swapping instructions"
7500         warning only if flag_warn_suppress_instructionswap is false.
7501
7502 Wed Jan 28 16:41:19 1998  J.J. van der Heijden  <J.J.vanderHeijden@student.utwente.nl>
7503
7504         * configure.in (i386-*-mingw32*): New target.
7505         * configure: Rebuild.
7506
7507 Wed Jan 28 14:51:18 1998  Ian Lance Taylor  <ian@cygnus.com>
7508
7509         * symbols.c (resolve_symbol_value): Don't set the segment if it
7510         hasn't changed, and this is OBJ_AOUT without BFD_ASSEMBLER.
7511
7512         * config/obj-aout.h (S_IS_LOCAL): Correct typo--pass argument to
7513         S_GET_SEGMENT.
7514
7515 Wed Jan 28 13:54:50 1998  Pat Rankin  <rankin@eql.caltech.edu>
7516
7517         as.h (unlink): Reverse 13-Feb-97 change; use of unlink vs remove
7518         depends upon HAVE_{UNLINK,REMOVE} values rather than host
7519         compiler.
7520
7521 Wed Jan 28 13:48:08 1998  Ian Lance Taylor  <ian@cygnus.com>
7522
7523         * config/obj-coff.h (RESOLVE_SYMBOL_REDEFINITION): Define.
7524
7525 Wed Jan 28 09:52:00 1998  Nick Clifton  <nickc@cygnus.com>
7526
7527         * config/tc-v850.c (v850_insert_operand): Display instruction when
7528         an error is encountered.
7529
7530 Tue Jan 27 13:32:01 1998  Robert Lipe  <robertl@dgii.com>
7531
7532         * configure.in (i386-*-sco3.2v5*): Defaults to ELF now.
7533         (i386-*-sco3.2v5*coff): New target.
7534         (i386-*-sco3.2*): New target.
7535         * configure: Rebuild.
7536
7537 Tue Jan 27 11:06:52 1998  Nick Clifton  <nickc@cygnus.com>
7538
7539         * config/tc-v850.c: Tidy error message production.
7540
7541 Tue Jan 27 12:24:32 1998  Ian Lance Taylor  <ian@cygnus.com>
7542
7543         * config/tc-arm.c (md_apply_fix3): Add new variable newimm to hold
7544         validate_immediate return value in the right type for comparisons
7545         to FAIL.
7546
7547 Tue Jan 27 06:51:59 1998  Richard Henderson  <rth@cygnus.com>
7548
7549         * listing.c (MAX_BYTES): Use listing variables not constants.
7550         (data_buffer): No longer an array, but a pointer.
7551         (calc_hex): sizeof(data_buffer) -> MAX_BYTES.
7552         (listing_listing): Allocate data_buffer.
7553
7554 Tue Jan 27 06:38:35 1998  Richard Henderson  <rth@cygnus.com>
7555
7556         * as.c (parse_args): Add --listing-lhs-width, --listing-lhs-width2,
7557         --listing-rhs-width, --listing-cont-lines.
7558         (show_usage): Update.
7559         * listing.c (listing_lhs_width, listing_lhs_width_second): New vars.
7560         (listing_lhs_cont_lines, listing_rhs_width): New vars.
7561         (print_lines): Use the variables instead of the constants.
7562         (listing_listing): Likewise.
7563         * listing.h: Declare the new vars.
7564
7565 Tue Jan 27 05:32:05 1998  Richard Henderson  <rth@cygnus.com>
7566
7567         * as.c (parse_args): Add --keep-locals alias for -L.
7568         Add --strip-local-absolute.
7569         (show_usage): Update.
7570         * as.h (flag_strip_local_absolute): New flag.
7571         * symbols.c (S_IS_LOCAL): Use it.
7572         * config/obj-aout.h (S_IS_LOCAL): Likewise.
7573         * config/obj-bout.h (S_IS_LOCAL): Likewise.
7574         * config/obj-coff.h (S_IS_LOCAL): Likewise.
7575
7576 Mon Jan 26 13:07:41 1998  Nick Clifton  <nickc@cygnus.com>
7577
7578         * config/tc-m32r.c: Detect if explicitly parallel instructions
7579         might have an io conflict and issue a warning message.
7580
7581 Thu Jan 22 17:51:44 1998  Nick Clifton  <nickc@cygnus.com>
7582
7583         * cgen.c (cgen_save_fixups, cgen_restore_fixups,
7584         cgen_swap_fixups): Functions to save, restore and swap the fixup
7585         chain with a backup copy.
7586         (cgen_asm_finish_insn): Returns address of constructed insn.
7587
7588 Wed Jan 21 16:49:10 1998  Richard Henderson  <rth@cygnus.com>
7589
7590         * listing.c (file_info_struct): Remove FILE, add POS.
7591         (last_open_file_info, last_open_file): New; a one entry FILE* cache.
7592         (file_info): Don't open the file.
7593         (buffer_line): Check for the file in the last_open cache, updating
7594         as necessary.
7595         (print_source): Don't reference file_info->file.
7596         (listing_listing): Likewise.
7597         (listing_print): Close the file in the cache, if any.
7598
7599 Fri Jan 16 14:51:48 1998  Ian Lance Taylor  <ian@cygnus.com>
7600
7601         * read.c (dwarf_file_string): New file static variable.
7602         (emit_expr): Look for constant sequence that leads up to a file
7603         name in DWARF debugging output.
7604         (stringer): Use dwarf_file_string to decide whether to accept a
7605         string as a file name.
7606
7607 Fri Jan 16 11:30:37 1998  Richard Henderson  <rth@cygnus.com>
7608
7609         * tc-m68k.c (m68k_ip): Remove absl->reglst MRI hack.
7610         (crack_operand): Add reg->reglst MRI hack.
7611         (r_seg): Put reglst symbols in reg_section.
7612         (m68k_frob_symbol): Frob reglst symbols into absolute_section.
7613
7614 Thu Jan 15 14:19:01 1998  Richard Henderson  <rth@cygnus.com>
7615
7616         * tc-sh.c (get_specific): Handle SGR & DBR.
7617
7618 Thu Jan 15 13:46:48 1998  Richard Henderson  <rth@cygnus.com>
7619
7620         * tc-h8300.c (parse_reg): Take the length of the symbol into
7621         account when attempting to match a register name.
7622         * tc-h8500.c (parse_reg): Likewise.
7623
7624 Wed Jan 14 17:52:33 1998  Nick Clifton  <nickc@cygnus.com>
7625
7626         * cgen.c: Formatting changes to improve readability.
7627
7628 Wed Jan 14 15:41:41 1998  Jeffrey A Law  (law@cygnus.com)
7629
7630         * config/tc-mips.c (macro): Rework division code to avoid unfilled
7631         delay slot.
7632
7633 Wed Jan 14 18:04:20 1998  Michael Meissner  <meissner@cygnus.com>
7634
7635         Based on a patch from Jim Wilson
7636         * config/tc-d30v.c (do_assemble): Remove non-ansi default case.
7637         (tc_gen_reloc): Handle cross section PC relative relocs
7638         correctly.
7639
7640 Wed Jan 14 15:02:19 1998  Doug Evans  <devans@seba.cygnus.com>
7641
7642         * config/tc-mips.c (mips_ip): Don't test pinfo flags if INSN_MACRO.
7643
7644 Mon Jan 12 13:04:57 1998  Doug Evans  <devans@seba.cygnus.com>
7645
7646         * cgen.c: #include setjmp.h.  Clean up pass over `struct foo' usage.
7647         (expr_jmp_buf): New static local.
7648         (cgen_parse_operand): Allow use of longjmp in parsing to handle errors.
7649         (cgen_md_operand): New function.
7650         * tc-m32r.c: Clean up pass over `struct foo' usage.
7651         (md_estimate_size_before_relax): Use CGEN_INSN_MNEMONIC.
7652
7653 Tue Jan  6 15:36:02 1998  Richard Henderson  <rth@cygnus.com>
7654
7655         * symbols.c (S_SET_SEGMENT): Don't set the segment for section syms.
7656         (S_IS_EXTERNAL, S_IS_LOCAL): Correct parenthetication.
7657
7658 Fri Jan  2 16:08:54 1998  Ian Lance Taylor  <ian@cygnus.com>
7659
7660         * config/tc-i386.c (i386_operand): Give an error if there are
7661         unrecognized characters after an expression.
7662
7663 For older changes see ChangeLog-9697