4519acd7add64ded14a36df7995748dbe9c4d430
[external/binutils.git] / gas / ChangeLog
1 1999-02-05  Nick Clifton  <nickc@cygnus.com>
2
3         * config/tc-arm.h: Tidy OBJ_ELF and OBJ_COFF definitions.
4
5         * config/tc-arm.c (md_apply_fix3): Fix BFD_RELOC_ARM_PCREL_BRANCH
6         for COFF ports.
7
8 start-sanitize-cygnus
9 Thu Feb  4 10:35:47 1999  Jeffrey A Law  (law@cygnus.com)
10
11         * config/tc-mn10300.c (md_assemble): "exreg0", "exreg1", "exregother",
12         and "all" are not valid operands when not in am33 mode.
13
14 end-sanitize-cygnus
15 Wed Feb  3 11:35:47 1999  Richard Henderson  <rth@cygnus.com>
16
17         * config/tc-alpha.c (md_show_usage): Document pca56 and ev6 options.
18
19 Mon Feb  1 20:37:30 1999  Catherine Moore  <clm@cygnus.com>
20
21         * config/tc-i386.h (LONG_DOUBLE_MNEM_SUFFIX):  Define.
22         (INTEL_DWORD_MNEM_SUFFIX):  Define.
23         (BYTE_PTR):  Define.
24         (WORD_PTR):  Define.
25         (DWORD_PTR):  Define.
26         (XWORD_PTR):  Define.
27         (SHORT):  Define.
28         (OFFSET_FLAT):  Define.
29         (FLAT):  Define.
30         (NONE_FOUND):  Define.
31         (No_dSuf):  Define.
32         (No_xSuf):  Define.
33         * config/tc-i386.c  (set_intel_syntax):  New routine.
34         (intel_syntax):  Declare.
35         (allow_naked_reg):  Declare.
36         (md_pseudo_table):  Support .intel_syntax and .att_syntax.
37         (intel_float_operand):  New routine.
38         (md_assemble):  Handle INTEL_DWORD_MNEM_SUFFIX.
39         Handle brackets as well as parens.  Call i386_intel_operand for
40         intel syntax.  Reverse operands if appropriate.  Handle new
41         suffixes.  Handle movzx and movsx.
42         (i386_is_reg):  New routine.
43         (i386_immediate):  New routine.
44         (i386_scale):  New routine.
45         (i386_displacement):  New routine.
46         (i386_operand_modifier):  New routine.
47         (build_displacement_string):  New routine.
48         (i386_parse_seg):  New routine.
49         (i386_intel_memory_operand):  New routine.
50         (i386_intel_operand):  New routine.
51         (i386_operand):  Call i386_displacement, i386_immediate,
52         i386_scale, etc.  instead of handling inline.
53         (parse_register):  Handle registers without prefix.
54
55 Mon Feb  1 12:24:58 1999  Catherine Moore  <clm@cygnus.com>
56
57         * configure:  Regenerate.
58         * configure.in (arm-*-oabi):  New.
59         (thumb-*-oabi):  New.
60         * config/tc-arm.c (target_oabi):  Declare.
61         (md_apply_fix3): Support REL relocs.
62         (md_parse_option):  Handle -oabi.
63         (elf32_arm_target_format):  New routine.
64         (md_longopts):  Add OPTION_OABI.
65         * config/tc-arm.h:  Redefine TARGET_FORMAT.
66
67
68 1999-01-28  Nick Clifton  <nickc@cygnus.com>
69
70         * write.c (write_relocs): Handle out of range error.
71
72         * config/tc-fr30.c (fr30_fix_adjustable): New function.
73         (fr30_force_relocation): Default to 0.
74
75         * config/tc-fr30.h (obj_fix_adjustable): Define.
76         (TC_FORCE_RELOCATION): Define.
77
78         * cgen.c (gas_cgen_md_apply_fix3): Do not apply fixes to VTABLE
79         relocs. 
80
81 1999-01-16  Nick Clifton  <nickc@cygnus.com>
82
83         * config/tc-d30v.c (write_2_short): Do not generate a sequential
84         merge of two instructions if the left instruciton kills the right.
85
86 1999-01-11  Doug Evans  <devans@casey.cygnus.com>
87
88         * Makefile.in: Regenerate.
89         * configure.in: Redo test for using cgen.
90         * configure: Regenerate.
91
92 1999-01-09  Nick Clifton  <nickc@cygnus.com>
93
94         * config/obj-coff.h (obj_adjust_symtab): Prevent accidental
95         redefinition of this macro.
96
97 start-sanitize-cygnus
98 1999-01-06  Doug Evans  <devans@casey.cygnus.com>
99
100         * config/tc-m32r.c (OPERAND_IS_COND_BIT): Add check for psw.
101
102 end-sanitize-cygnus
103 Tue Jan  5 21:58:03 1999  Doug Evans  <devans@canuck.cygnus.com>
104
105         * config/tc-mips.c (mips_frob_file): Disable "Unmatched %hi reloc"
106         warning.
107
108 1998-12-29  Gavin Romig-Koch  <gavin@cygnus.com>
109
110         * config/tc-mips.c (append_insn): For mips16, insert a nop between
111         a read of HI or LO and an immediatly following branch.
112
113 1998-12-29  Gavin Romig-Koch  <gavin@cygnus.com>
114
115         * config/tc-mips.c (md_begin): Another correction to the setting of
116         mips_eabi64.
117
118 1998-12-23  Gavin Romig-Koch  <gavin@cygnus.com>
119
120         * config/tc-mips.c (md_begin): Correct type-o in setting of mips_eabi64.
121
122 1998-12-21  Nick Clifton  <nickc@cygnus.com>
123
124         * config/tc-m32r.c (md_assemble): Emit a NOP after a relaxable 16
125         bit insn when optimizing, so that parallelised instructions will
126         start on a 32 bit boundary.
127
128 1998-12-19  Gavin Romig-Koch  <gavin@cygnus.com>
129
130         * config/tc-mips.c (mips_eabi64): New.
131         (md_begin): Set mips_eabi64.
132         (mips_elf_final_processing): Use it.
133
134 1998-12-18  Gavin Romig-Koch  <gavin@cygnus.com>
135
136         * config/tc-mips.c (mips_elf_final_processing): 
137         Correct setting of ABI in e_flags.
138
139 Wed Dec 16 16:17:22 1998  Dave Brolley  <brolley@cygnus.com>
140
141         * config/tc-fr30.c (md_assemble): Warn about invalid instructions in delay slots.
142
143 start-sanitize-vr4xxx
144 1998-12-16  Gavin Romig-Koch  <gavin@cygnus.com>
145
146         * config/tc-mips.c (md_begin,md_parse_option): Handle vr4111.
147         
148 end-sanitize-vr4xxx
149 1998-12-15  Doug Evans  <devans@casey.cygnus.com>
150
151         * cgen.c (gas_cgen_md_apply_fix3): Mark as an error, rather than a
152         warning, values that don't fit in the field.
153
154 1998-12-15  Gavin Romig-Koch  <gavin@cygnus.com>
155
156         * config/tc-mips.c (mips_abi_string): New.
157         (md_parse_option,md_longopts): Add mabi.
158         (mips_elf_final_processing): Set e_flags based on mabi flag.
159
160 start-sanitize-vr4xxx
161 1998-12-15  Gavin Romig-Koch  <gavin@cygnus.com>
162
163         * config/tc-mips.c (md_parse_option): Handle vr4111. 
164
165 1998-12-13  Gavin Romig-Koch  <gavin@cygnus.com>
166
167         * config/tc-mips.c (mips_4121): New.
168         (md_begin,mips_ip,md_longopts,md_parse_option): Add vr4121.
169
170 end-sanitize-vr4xxx
171 98-12-11  Ken Raeburn  <raeburn@cygnus.com>
172
173         * config/tc-h8300.c (build_bytes): Change message given if the
174         instruction requires H8/300H mode and we're not in Hmode, to
175         suggest that it may be the operand modes that are the problem, not
176         necessarily the opcode.
177
178 1998-12-10  Nick Clifton  <nickc@cygnus.com>
179
180         * config/tc-fr30.c: Add line separator character.
181
182 start-sanitize-sky
183 Wed Dec  9 17:06:48 1998  Doug Evans  <devans@canuck.cygnus.com>
184
185         Thu Nov 19 16:57:01 EST 1998  Frank Ch. Eigler <fche@cygnus.com>
186
187         * config/tc-mips.c (append_insn): Don't move INSN_SYNC
188         instructions into delay slot.
189
190         Tue Oct 13 14:06:18 1998  Doug Evans  <devans@canuck.cygnus.com>
191
192         * config/tc-dvp.h (md_end): Define.
193         * config/tc-dvp.c (dvp_end): New function.
194
195 end-sanitize-sky
196 start-sanitize-r5900
197 Wed Dec  9 12:29:23 1998  Jeffrey A Law  (law@cygnus.com)
198
199         * config/tc-mips.c (gpr_interlocks): The r5900 always has
200         gpr interlocks.
201
202 end-sanitize-r5900
203 Tue Dec  8 19:51:50 1998  Mark Klein  <mklein@dis.com>
204
205         * configure.in (hppa-*-mpeix*): New target.
206         * config/obj-som.h (obj_som_compiler): Declare.
207         * config/obj-som.c (compiler_seen): New static variable.
208         (obj_som_compiler): New function.
209         * config/tc-hppa.c: Update tc_data uses for change to bfd/som.h.
210         (md_pseudo_table): Add "compiler" if OBJ_SOM.
211         (pa_type_args): Set hppa_priv_level.
212         (pa_compiler): New static function if OBJ_SOM.
213         * configure: Rebuild.
214
215 Tue Dec  8 15:00:50 1998  Ian Lance Taylor  <ian@cygnus.com>
216
217         * read.c (output_leb128): Don't mark as inline.
218
219 1998-12-08  Andrew MacLeod  <amacleod@cygnus.com>
220
221         * config/tc-ppc.c (ppc_vbyte): Prototype and new function for 
222         AIX .vbyte unaligned data support.
223         (md_pseudo_table): Add 'vbyte' to list of valid pseudos.
224         (ppc_elf_validate_fix): Add eh_frame to list of ELF relocatable 
225         sections.
226
227 1998-12-07  Nick Clifton  <nickc@cygnus.com>
228
229         * config/tc-d30v.c (md_assemble, do_assemble): Improve erroneous
230         input handling. 
231
232 Mon Dec  7 09:48:34 1998  Catherine Moore  <clm@cygnus.com>
233
234         * config/tc-arm.c (elf32_arm_force_relocation):  Check for
235         BFD_RELOC_ARM_PCREL_BRANCH.
236
237 Sun Dec  6 12:46:36 1998  Ian Lance Taylor  <ian@cygnus.com>
238
239         * configure.in: Define TARGET_BYTES_{BIG,LITTLE}_ENDIAN after
240         checking the target type.
241         (mips-dec-bsd*): Set endian to little.
242         * configure: Rebuild.
243
244         COFF weak symbol support, based on patches from Mark Elbrecht
245         <snowball3@usa.net>:
246         * config/obj-coff.h (S_IS_WEAK): Define if not BFD_ASSEMBLER.
247         * config/obj-coff.c (obj_coff_weak): New static function.
248         (obj_coff_endef) [both versions]: Handle weak symbols.
249         (coff_frob_symbol): Likewise.
250         (yank_symbols): Likewise.
251         (obj_pseudo_table): Add "weak".
252
253         * configure.in (m68k-*-gnu*): New target.  From Aymeric Vincent
254         <aymeric.vincent@emi.u-bordeaux.fr>.
255         * aclocal.m4: Rebuild with current tools.
256         * configure: Rebuild.
257
258         * config/tc-alpha.c (emit_ldgp): Give an error message rather than
259         an assertion failure for a case we can't handle when OBJ_ECOFF.
260
261         * expr.c (operator): And with 0xff to avoid problems with signed
262         char.
263
264 1998-12-03  Nick Clifton  <nickc@cygnus.com>
265
266         * config/tc-fr30.c (md_cgen_lookup_reloc): Generate
267         BFD_RELOC_FR30_48 instead of BFD_RELOC_FR30_32.
268
269 1998-12-02  Nick Clifton  <nickc@cygnus.com>
270
271         * config/tc-fr30.c (md_cgen_lookup_reloc): Enable relocs for
272         LDI:20 insn.
273
274 Thu Nov 26 11:23:48 1998  Dave Brolley  <brolley@cygnus.com>
275
276         * config/tc-fr30.c (md_pcrel_from_section): Restore previous calculation
277         of pcrel point.
278
279 Tue Nov 24 17:21:52 1998  Nick Clifton  <nickc@cygnus.com>
280
281         * config/tc-fr30.c (md_pcrel_from_section): Fix calculation of
282         pcrel point.
283
284 start-sanitize-vr4xxx
285 1998-11-24  Gavin Romig-Koch  <gavin@cygnus.com>
286
287         * config/tc-mips.c (md_begin): Added mip64vr4xxx as a 
288         possible CPU_TARGET.
289
290 end-sanitize-vr4xxx
291 Tue Nov 24 14:54:38 1998  Nick Clifton  <nickc@cygnus.com>
292
293         * config/tc-d10v.c (md_assemble): Make static 'etype' have file
294         scope.
295         (d10v_cleanup): Only generate previous insn if a multiline insn is
296         not pending.
297
298 Fri Nov 20 11:41:13 1998  Nick Clifton  <nickc@cygnus.com>
299
300         * config/tc-fr30.c (md_cgen_lookup_reloc): Add support for
301         FR30_OPERAND_I32. 
302
303 Thu Nov 19 15:01:29 1998  Nick Clifton  <nickc@cygnus.com>
304
305         * config/tc-arm.c (md_parse_option): Add support for -marm7xxx and
306         -marm6xxx command line switches.
307
308 1998-11-18  Doug Evans  <devans@casey.cygnus.com>
309
310         * Makefile.am (DEP): Use $(srcdir)/../mkdep.
311         (itbl-ops.o): Delete duplicate dependencies.
312         Rebuild dependencies.
313         Add fr30 dependencies.
314         * Makefile.in: Rebuild.
315
316 Tue Nov 17 13:42:42 1998  Nick Clifton  <nickc@cygnus.com>
317
318         * config/tc-fr30.c (md_cgen_lookup_reloc): Updated to match latest
319         opcode list.
320         * listing.c: Ignore line terminator characters found inside
321         strings. 
322
323 Thu Nov 12 19:21:24 1998  Dave Brolley  <brolley@cygnus.com>
324
325         * po/gas.pot: Regenerated.
326
327 Thu Nov 12 10:54:16 1998  Nick Clifton  <nickc@cygnus.com>
328
329         * config/tc-fr30.c (fr30_is_colon_insn): New name for
330         fr30_is_label_start().  Also checks for delay slot insns.
331
332         * config/tc-fr30.c (fr30_is_label_start): New function: Handle
333         FR30 instructions which contain a colon in the mnemonic.
334
335         * config/tc-fr30.h (TC_START_LABEL): Define this macro.
336
337 Wed Nov 11 09:58:21 1998  Nick Clifton  <nickc@cygnus.com>
338
339         * config/tc-fr30.c: Removed currently superflous code.
340
341 Tue Nov 10 13:13:05 1998  Nick Clifton  <nickc@cygnus.com>
342
343         * config/tc-fr30.h: New file.
344         * config/tc-fr30.c: Tweaking so that it will compile.
345
346 Tue Nov 10 14:41:33 1998  Catherine Moore  <clm@cygnus.com>
347
348         * config/tc-d10v.h (obj_fix_adjustable):  Define.
349         (TC_FORCE_RELOCATION):  Define.
350         (d10v_force_relocation):  Declare.
351         * config/tc-d10v.c (tc_gen_reloc):  Handle Vtable relocs.
352         (md_apply_fix3):  Handle Vtable relocs.
353         (d10v_fix_adjustable):  New.
354         (d10v_force_relocation):  New.
355
356 Mon Nov  9 14:25:06 1998  Nick Clifton  <nickc@cygnus.com>
357
358         * config/tc-d30v.c: Change default behaviour to ignore potential
359         conflicts between register name and symbol names.
360
361 Wed Nov  4 18:42:00 1998  Dave Brolley  <brolley@cygnus.com>
362
363         * configure.in: Add fr30-*-*.
364         * config/tc-fr30.c: New file.
365         * Makefile.in: Regenerated.
366         * config.in: Regenerated.
367         * configure: Regenerated.
368         * doc/Makefile.in: Regenerated.
369         * po/gas.pot: Regenerated.
370
371 Mon Nov  2 20:54:16 1998  Doug Evans  <devans@canuck.cygnus.com>
372
373         * config/tc-m32r.c (assemble_two_insns): Ensure both insns
374         are 16 bit insns.
375
376 Mon Nov  2 20:10:18 1998  Martin von Loewis  <loewis@informatik.hu-berlin.de>
377
378         * app.c (do_scrub_begin): Set characters above 127 to be symbol
379         characters.
380         (do_scrub_chars): Add some casts to unsigned char to avoid
381         unwanted sign extension.
382         * read.c (lex_type): Set characters about 127 to be symbol
383         characters.
384         * config/tc-i386.c (md_begin): Set identifier_chars and
385         operand_chars for values above 127.
386
387 Mon Nov  2 15:05:33 1998  Geoffrey Noer  <noer@cygnus.com>
388
389         * configure.in: detect cygwin* instead of cygwin32*
390         * configure: regenerate
391
392 Tue Oct 27 13:18:40 1998  Nick Clifton  <nickc@cygnus.com>
393
394         * listing.c: Add support for producing a listing from piped
395         input. 
396
397 Tue Oct 27 08:56:44 1998  Gavin Romig-Koch  <gavin@cygnus.com>
398
399         * config/tc-mips.c (hilo_interlocks): Remove mips_3900.
400         (append_insn): Account for the tx39's multiply behavior.
401
402 1998-10-26  Michael Meissner  <meissner@cygnus.com>
403
404         * config/tc-m32r.c (assemble_two_insns): Rename assemble_two_insns
405         from assemble_parallel_insns.  Add support for '->' to indicate
406         explicitly serializing the instructions.
407         (md_assemble): Ditto.
408
409 Sat Oct 24 15:12:19 1998  Catherine Moore  <clm@cygnus.com>
410
411         * config/tc-sh.c (sh_fix_adjustable):  Adjust EXTERN and
412         WEAK handling.
413
414 Thu Oct 22 12:41:33 1998  Catherine Moore  <clm@cygnus.com>
415
416         * cgen.c (gas_cgen_md_apply_fix3):  Revert last change.
417
418 Thu Oct 22 10:03:15 1998  Ron Unrau  <runrau@cygnus.com>
419
420         * config/tc-mips.c : support frame and regmask/fregmask when
421           MIPS_STABS_ELF is specified.
422
423 Wed Oct 21 11;34:51 1998  Catherine Moore  <clm@cygnus.com>
424
425         * config/tc-sh.c (sh_fix_adjustable):  Only include if OBJ_ELF.
426         (md_apply_fix):  Don't return 1 for VTABLE relocs.
427         * config/tc-sh.h (obj_fix_adjustable):  Define only if OBJ_ELF.
428
429 Tue Oct 20 11:18:28 1998  Alan Modra  <alan@spri.levels.unisa.edu.au>
430
431         * doc/c-i386.texi: Replace occurences of "opcode" with
432         "instruction mnemonic", "instruction", or "mnemonic" when
433         referring to the name of an instruction.  Use "opcode" when
434         referring to the sequence of machine bytes.
435
436         * config/tc-i386.c (opcode_chars): Rename to mnemonic_chars.
437         (is_opcode_char): Rename to is_mnemonic_char.
438         (md_assemble and i386_operand): Correct error messages from
439         "opcode" to "instruction mnemonic"
440         Rename throughout opcode[] -> mnemonic[], opp -> mnem_p,
441         MAX_OPCODE_SIZE -> MAX_MNEM_SIZE,
442         DWORD_OPCODE_SUFFIX -> DWORD_MNEM_SUFFIX,
443         WORD_OPCODE_SUFFIX -> WORD_MNEM_SUFFIX,
444         BYTE_OPCODE_SUFFIX -> BYTE_MNEM_SUFFIX,
445         SHORT_OPCODE_SUFFIX -> SHORT_MNEM_SUFFIX
446         LONG_OPCODE_SUFFIX -> LONG_MNEM_SUFFIX
447
448         * config/tc-i386.h (*_MNEM_SUFFIX): Rename from *_OPCODE_SUFFIX.
449
450         * config/tc-i386.c (i386_operand): Check for garbage after
451         register name.
452
453 Tue Oct 20 10:49:42 1998  Ian Lance Taylor  <ian@cygnus.com>
454
455         * config/tc-i386.c (md_apply_fix3): Change handling of PCREL reloc
456         for BFD_ASSEMBLER to only change value when COFF if TE_PE.
457
458 Mon Oct 19 20:20:42 1998  Catherine Moore  <clm@cygnus.com>
459
460         * config/tc-sh.h (obj_fix_adjustable):  Define.
461         * config/tc-sh.c (sh_force_relocation):  Handle VT relocs.
462         (md_apply_fix):  Likewise.
463         (tc_gen_reloc):  Likewise.
464         (sh_fix_adjustable):  New.
465
466 Mon Oct 19 12:35:43 1998  Doug Evans  <devans@seba.cygnus.com>
467
468         * cgen.c (gas_cgen_finish_insn): Update handling of CGEN_INT_INSN_P.
469         * cgen.h (gas_cgen_finish_insn): Update prototype.
470         * config/tc-m32r.c (m32r_insn): CGEN_INT_INSN -> CGEN_INT_INSN_P.
471         cgen_insn_t -> CGEN_INSN_INT.
472         (make_parallel): Update handling of CGEN_INT_INSN_P.
473         (assemble_parallel_insn): Ditto.
474         (target_make_parallel): New function.
475         (md_assemble): Use it.
476
477 Mon Oct 19 13:16:12 1998  Catherine Moore  <clm@cygnus.com>
478
479         * config/tc-m32r.c (m32r_force_relocation):  Fix typo.
480
481 Sun Oct 18 18:48:57 1998  Jeffrey A Law  (law@cygnus.com)
482
483         * config/tc-sh.c (md_assemble): Make sure the entire opcode is
484         converted into lower case.
485
486 Fri Oct 16 13:36:34 CDT Catherine Moore  <clm@cygnus.com>
487
488         * cgen.c (gas_cgen_md_apply_fix3):  Handle VTABLE relocs.
489         (gas_cgen_tc_gen_reloc):  Likewise.
490         * config/tc-m32r.h (obj_fix_adjustable):  Define.
491         * config/tc-m32r.c (m32r_fix_adjustable):  New.
492         (m32r_force_relocation):  Handle VTABLE relocs.
493
494 Wed Oct 14 11:33:38 1998  Nick Clifton  <nickc@cygnus.com>
495
496         * doc/c-arm.texi (ARM Directives): Document .ltorn directive.
497
498 Mon Oct 12 11:07:21 1998  Nick Clifton  <nickc@cygnus.com>
499
500         * config/tc-m32r.c (assemble_parallel_insn): Convert second opcode
501         to lower case before parsing.
502
503         * config/tc-d30v.c (parallel_ok): Ignore conflicts when explicitly
504         parallel insns modift buts in the PSW as a side effect.
505
506 Thu Oct  8 10:18:33 1998  Nick Clifton  <nickc@cygnus.com>
507
508         * config/tc-d30v.c (find_format): Test for missing flag and
509         control registers.
510         
511         (md_apply_fix3): Fix error messages to avoid
512         assumption about presence of a symbol.
513
514         (parallel_ok): Disallow parallel instructions that both modify the
515         same flag register.
516
517         (find_format): Generate a warning if an odd numbered register is
518         used as the first register in a mutli-register instruction.
519
520 Wed Oct  7 14:09:14 1998  Nick Clifton  <nickc@cygnus.com>
521
522         * config/tc-d30v.c (md_apply_fix3): Do not assume that bad
523         relocations are always associated with a symbol.
524
525 Tue Oct  6 09:31:15 1998  Catherine Moore  <clm@cygnus.com>
526
527         * tc-sparc.h (TC_FORCE_RELOCATION):  Define.
528         (elf32_sparc_force_relocation):  Declare.
529         * tc-sparc.c (md_apply_fix3):  Handle vtable relocs.
530         (tc_gen_reloc):  Handle vtable relocs.
531         (elf32_sparc_force_relocation):  New.
532
533 Mon Oct  5 09:25:32 1998  Catherine Moore  <clm@cygnsu.com>
534
535         * symbols.c (S_IS_FUNCTION):  New.
536         * config/tc-v850.h (obj_fix_adjustable):  Define.
537         (TC_FORCE_RELOCATION):  Define.
538         (v850_force_relocation):  Declare.
539         * config/tc-v850.c (tc_gen_reloc):  Use offset instead
540         of fx_addnumber for VTABLE reloc addends.
541         (md_apply_fix3):  Handle VTABLE relocs.
542         (v850_fix_adjustable):  New.
543         (v850_force_relocation):  New.
544
545 Mon Oct  5 00:48:52 1998  Jeffrey A Law  (law@cygnus.com)
546
547         * tc-hppa.c (fp_operand_format): Add some additional formats.
548         (pa_ip): Do not automatically promote into pa2.0 mode.
549         (pa_level): Handle ".level 2.0".
550 start-sanitize-cygnus
551         (struct pa_it): New field "trunc".
552         (pa_parse_fp_cnv_format): New function.
553         (pa_parse_ftest_gfx_completer): New function.
554         (pa_ip): Handle various new letters for PA2.0 support.
555 end-sanitize-cygnus
556
557 Sun Oct  4 20:57:43 1998  Alan Modra  <alan@spri.levels.unisa.edu.au>
558
559         * config/tc-i386.c (md_assemble): Handle AMD_3DNOW_OPCODE.
560         * config/tc-i386.h (template.extension_opcode): Change to
561         unsigned int to allow full range of 8-bit opcode suffixes.
562         (None): Redefine as 0xffff.
563
564         From Jeff B Epler <jepler@usgs.gov>
565         * doc/c-i386.texi (i386-SIMD): New section.
566
567 Thu Oct  1 15:37:54 1998  Richard Henderson  <rth@cygnus.com>
568
569         * read.c (discard_rest_of_line): New function.
570         * read.h: Declare it.
571         * config/tc-alpha.c (s_alpha_mask, s_alpha_frame): Use it.
572
573 Thu Oct  1 10:33:53 1998  Nick Clifton  <nickc@cygnus.com>
574
575         * config/tc-d10v.c (find_symbol_matching_register): New function.
576         (find_opcode): Cope with the case where a register name matches
577         a symbol name.
578
579 Wed Sep 30 10:52:32 1998  Nick Clifton  <nickc@cygnus.com>
580
581         * config/tc-v850.c (md_pcrel_from): Rename to
582         v850_pcrel_from_section.
583         (v850_pcrel_from_section): Do not resolves symbols in other
584         sections. 
585
586         * config/tc-v850.h (MD_PCREL_FROM_SECTION): Define.
587
588 Mon Sep 28 11:01:20 1998  Nick Clifton  <nickc@cygnus.com>
589
590         * config/tc-d10v.c (find_opcode): Generate an error if a register
591         is supplied for an operand that should not be a register.
592
593 Fri Sep 25 10:04:21 1998  Nick Clifton  <nickc@cygnus.com>
594
595         * config/tc-d30v.c (write_2_short): But do allow delayed branch
596         instructions to have another instruction in the right bin.
597
598 Thu Sep 24 09:28:34 1998  Nick Clifton  <nickc@cygnus.com>
599
600         * config/tc-d30v.c (write_2_short): Do not allow instructions in
601         the right container if the left container holds a branch
602         instruction. 
603
604 Wed Sep 23 10:54:29 1998  Nick Clifton  <nickc@cygnus.com>
605
606         * config/tc-d30v.c (reg_name_search): Only warn if a name matches
607         both a register name and symbol name.
608         (find_format): Allow correct parsing of MVTSYS and MVFSYS insns.
609
610 Tue Sep 22 17:49:16 1998  Nick Clifton  <nickc@cygnus.com>
611
612         * config/tc-d30v.c (write_2_short): Implement EITHER_BUT_PREFER_MU
613         execution unit class.
614
615         (reg_name_search): If a name matches a register and a symbol,
616         prefer the register.
617         (find_format): Disallow flag registers when a general purpose
618         register is required.
619         If a number is required, but a register has been given, check to
620         see if a symbol with the same name as the register exists, and if
621         so, use that symbol.
622
623 Tue Sep 22 16:40:52 1998  Jim Wilson  <wilson@cygnus.com>
624
625         * config/obj-elf.h (ECOFF_DEBUGGING): Add missing parens.
626
627 Tue Sep 22 15:44:21 1998  Nick Clifton  <nickc@cygnus.com>
628
629         * config/tc-d30v.c (find_format): Do not accept flag registers as
630         general purpose registers.
631         (find_format): If an immediate value is expected at a given place
632         in a format, but a register name has been provided instead, check
633         to see if that register name matches the name of a predefined
634         symbol and if it does, then use the symbol instead.
635         (reg_name_search): If a register name matches a symbol name,
636         prefer the register name to the symbol name.
637
638 start-sanitize-sky
639 Mon Sep 21 13:08:01 1998  Doug Evans  <devans@canuck.cygnus.com>
640
641         * config/tc-dvp.c (md_begin): Set st_other field of mpgloc_sym.
642         (assemble_vif,create_vuoverlay_section,s_endmpg,s_vu): Ditto.
643
644 end-sanitize-sky
645 Mon Sep 21 10:42:57 1998  Nick Clifton  <nickc@cygnus.com>
646
647         * config/tc-m32r.c (m32r_do_align): After inserting NOPs, reset
648         the previous insn to empty.
649
650 1998-09-20  Michael Meissner  <meissner@cygnus.com>
651
652         * config/tc-ppc.c (md_apply_fix3): Do not break string into two
653         pieces, forcing the use of an ANSI compiler.
654
655 Sun Sep 20 00:58:12 1998  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
656
657         * config/tc-m68k.h (TC_FORCE_RELOCATION): New macro.  Force vtable
658         relocs.
659         * config/tc-m68k.c (md_apply_fix_2): Do nothing for vtable relocs.
660
661 start-sanitize-sky
662 Tue Sep 15 17:04:43 EDT 1998  Jim Lemke  <jlemke@cygnus.com>
663
664         * config/tc-dvp.c (parse_float): Strtol() will not convert
665         0xFfffFfff properly, it returns 0x7fffFfff.
666         Changed to use strtoul() which does work properly.
667
668 end-sanitize-sky
669 Tue Sep 15 08:51:07 1998  Catherine Moore  <clm@cygnus.com>
670  
671         * config/obj-elf.c (obj_elf_vtable_inherit):  Handle arm
672         assembler syntax.
673         (obj_elf_vtable_entry):  Likewise.
674         * config/tc-arm.h:  Define TC_FORCE_RELOCATION for OBJ_ELF.
675         * config/tc-arm.c (md_apply_fix3): Handle VTABLE relocations.
676         (tc_gen_reloc): Likewise.
677         (arm_fix_adjustable): Likewise.
678         (elf32_arm_force_relocation): New.
679         (armelf_frob_symbol):  Remove coff-style symbol support.
680
681 start-sanitize-sky
682 Mon Sep 14 22:28:24 1998  Doug Evans  <devans@canuck.cygnus.com>
683
684         * config/tc-dvp.c (parse_float): Support 0fNNN.
685         (tc_gen_reloc): Don't crash if given a pc-relative reloc for .word,
686         just signal an error.
687
688 end-sanitize-sky
689 Wed Sep  9 11:27:16 1998  Richard Henderson  <rth@cygnus.com>
690
691         * config/tc-i386.c (i386_operand): Fix typo in last patch.
692
693 Tue Sep  8 18:10:01 1998  Catherine Moore  <clm@cygnus.com>
694  
695         * config/tc-arm.c (arm_adjust_symtab):  Move #ifdef
696         OBJ_COFF so that routine is defined for a.out format.
697
698 Tue Sep  8 15:56:19 1998  Richard Henderson  <rth@cygnus.com>
699
700         * config/tc-i386.c (i386_operand): Detect non-segment registers
701         used as segment prefixes.
702
703 Sat Sep  5 19:00:38 1998  Ian Lance Taylor  <ian@cygnus.com>
704
705         * ehopt.c (check_eh_frame): Check the size of the FDE, and don't
706         optimize across FDE boundaries.
707
708         * config/obj-coff.c (obj_coff_section): Preserve any link once
709         flags when setting the section flags.
710
711 Fri Sep  4 17:07:14 1998  Nick Clifton  <nickc@cygnus.com>
712
713         * config/tc-arm.h (obj_adjust_symtab): Fixed typo.
714         * config/tc-arm.c (armelf_adjust_symtab): Reformatted.
715
716 Fri Sep  4 13:57:43 1998  Jakub Jelinek <jj@sunsite.ms.mff.cuni.cz>
717
718         * config/tc-sparc.c (in_signed_range): Sign extend 32-bit words
719         to the host width.
720
721 Wed Sep  2 11:31:14 1998  Richard Henderson  <rth@cygnus.com>
722
723         * frags.c (frag_grow): Include the size of the frag struct in the
724         obstack chunk size.
725
726         * subsegs.c (subseg_set_rest): Adjust the seginfo frchain start
727         if the new subseg comes before the old.
728
729 Tue Sep  1 15:01:33 1998  Jakub Jelinek <jj@sunsite.ms.mff.cuni.cz>
730
731         * config/tc-sparc.c (sparc_ip): Allow all digits in an instruction
732         to handle edge8 and edge16.
733
734 Mon Aug 31 09:51:14 1998  Richard Henderson  <rth@cygnus.com>
735
736         * config/obj-elf.c (obj_elf_vtable_inherit): Print error message
737         before we clobber the symbol involved.
738
739 Mon Aug 31 10:58:06 1998  Catherine Moore  <clm@cygnus.com>
740
741         * config/tc-arm.c:  Remove OBJ_ELF definitions for 
742         S_GET_STORAGE_CLASS and S_SET_STORAGE_CLASS.  Only
743         use arm_adjust_symtab for OBJ_COFF.
744         (armelf_adjust_symtab):  New Routine.
745         * config/tc-arm.h:  Define obj_adjust_symtab to
746         armelf_adjust_symtab for OBJ_ELF.
747         
748 Sat Aug 29 22:18:51 1998  Richard Henderson  <rth@cygnus.com>
749
750         * configure.in: Make all i386-elf targets use bfd_gas.
751         * config/tc-i386.c (tc_i386_force_relocation): New.
752         (tc_i386_fix_adjustable): Don't fix vtable relocs.
753         (md_apply_fix3): Likewise.
754         (tc_gen_reloc): Handle them.
755         * config/tc-i386.h (TC_FORCE_RELOCATION): Always define, calling
756         tc_i386_force_relocation.
757
758 Mon Aug 24 13:40:21 1998  Nick Clifton  <nickc@cygnus.com>
759
760         * config/tc-arm.c (md_show_usage): Improve formatting of --help output.
761
762 Fri Aug 21 18:43:48 1998  Nick Clifton  <nickc@cygnus.com>
763
764         * config/tc-d30v.c (md_assemble): Copy previous opcode over
765         current opcode after writing the first insturction of a reverse
766         sequential pair. 
767         
768 Fri Aug 21 07:30:35 1998  Doug Evans  <devans@canuck.cygnus.com>
769
770         * read.h (generate_lineno_debug): Add prototype.
771         * read.c (generate_lineno_debug): Make non-static.
772 start-sanitize-sky
773         * config/tc-dvp.c (insert_mpg_marker): Call generate_lineno_debug.
774 end-sanitize-sky
775
776 Thu Aug 20 23:17:04 1998  Alan Modra  <alan@spri.levels.unisa.edu.au>
777
778         * config/tc-i386.c (md_assemble): Only warn for address/data size
779         prefixes.
780
781 Thu Aug 20 14:45:08 1998  Nick Clifton  <nickc@cygnus.com>
782
783         * config/tc-arm.c (arm_fix_adjustable): Do not adjust relocations
784         against Thumb function names, as the linker needs this information.
785
786 1998-08-20  Vladimir N. Makarov  <vmakarov@cygnus.com>
787
788         * expr.c (operand): Check also that there is no advance in operand
789         after atof_generic in order to decide "is it label 0f or floating
790         point number?".
791
792 Wed Aug 19 09:30:16 1998  Nick Clifton  <nickc@cygnus.com>
793
794         * config/tc-m32r.c: Replace double dash prefix to M32R specific
795         command line options with a single dash.
796         * doc/c-m32r.texi: Replace double dash prefix with a single dash.
797
798 Tue Aug 18 11:59:43 1998  Catherine Moore  <clm@cygnus.com>
799
800        * tc-arm.h: Define obj_fix_adjustable for OBJ_ELF.
801        * tc-arm.c (arm_fix_adjustable): New routine.
802
803 1998-08-13  Vladimir N. Makarov  <vmakarov@cygnus.com>
804
805         * read.c (s_align, s_comm, s_mri_common, s_fail, s_globl, s_space,
806         s_float_space, s_struct, cons_worker): Move ignore_rest_of_line or
807         demand_empty_rest_of_line before mri_comment_end.
808         (equals): Check garbage after expression before
809         mri_comment_end in MRI mode.
810
811 Thu Aug 13 15:08:42 1998  Ian Lance Taylor  <ian@cygnus.com>
812
813         * config/tc-mips.c (macro): Correct M_SGE_I/M_SGEUI_I case for a
814         small immediate constant to use the constant itself rather than
815         always using 1.
816
817 Wed Aug 12 18:47:38 1998  Ian Lance Taylor  <ian@cygnus.com>
818
819         * config/tc-hppa.c (pa_enter): Call as_bad rather than abort.
820         (pa_leave): Likewise.
821
822 Wed Aug 12 13:25:03 1998  Alan Modra  <alan@spri.levels.unisa.edu.au>
823
824         * config/tc-i386.c (md_assemble): Emit a warning for stand-alone
825         prefixes.
826         (i386_operand): Fix an error message.
827
828 Tue Aug 11 14:44:32 1998  Nick Clifton  <nickc@cygnus.com>
829
830         * doc/c-arm.texi (ARM Directives): Document .req directive.
831
832         * config/tc-arm.c (reg_required_here): Display erroneous string if
833         the register name could not be decoded.
834         Do not set inst.instruction if the sift is -1.
835
836 Mon Aug 10 15:39:56 1998  Richard Henderson  <rth@cygnus.com>
837
838         * config/tc-alpha.c (tc_gen_reloc): Bias WEAK symbols just as
839         we do for EXTERN.
840
841 Mon Aug 10 15:06:18 1998  Nick Clifton  <nickc@cygnus.com>
842
843         * config/tc-d30v.c (d30v_align): Always perform alignment request,
844         even if it is belived to be unnecessary.
845
846 Mon Aug 10 17:48:09 1998  Alan Modra  <alan@spri.levels.unisa.edu.au>
847
848         config/tc-i386.c (i386_operand): Size immediate constants by
849         suffix (erroneously removed as part of July 7 change).
850
851 Sun Aug  9 20:45:32 1998  Catherine Moore  <clm@cygnus.com>
852
853         * config/obj-elf.h:  Check for redefinition of obj_frob_symbol.
854         * config/tc-arm.c:  Define S_GET_STORAGE_CLASS and S_SET_STORAGE_CLASS.
855         (armelf_frob_symbol):  New Routine.
856         * config/tc-arm.h:  Define obj_frob_symbol if OBJ_ELF.
857
858 Sat Aug  8 15:21:28 1998  Richard Henderson  <rth@cygnus.com>
859
860         * config/tc-alpha.c (alpha_fix_adjustable): Don't adjust weak syms.
861
862 Wed Aug  5 15:54:14 1998  Nick Clifton  <nickc@cygnus.com>
863
864         * config/tc-arm.c (md_begin): Set BFD private flags depending upon
865         command line switches passed to assembler.
866
867 Mon Aug  3 14:02:52 1998  Doug Evans  <devans@seba.cygnus.com>
868
869         * cgen.h (GAS_CGEN_MAX_FIXUPS): GAS_ prepended, all uses updated.
870         (gas_cgen_opcode_desc): Declare.
871         (gas_cgen_parse_operand): Declare.
872         (*): Prepend gas_ to gas specific fns to denote them as such.
873         All uses updated.
874         * cgen.c (gas_cgen_opcode_desc): New global
875         (gas_cgen_init_parse): Renamed from cgen_asm_init_parse.
876         (queue_fixup): Renamed from cgen_queue_fixup.
877         (*): Prepend gas_ to gas specific fns to denote them as such.
878         All uses updated.
879         (gas_cgen_md_apply_fix3): Update call to insert_operand.
880         (gas_cgen_finish_insn): Renamed from cgen_asm_finish_insn.
881         * config/tc-m32r.c (md_begin): Remove use of CGEN_SYM.
882         Open opcode table and initialize it.
883         (make_parallel): Use gas_cgen_opcode_desc.
884         (assemble_parallel_insn): Ditto.  Remove use of CGEN_SYM.
885         (md_assemble): Ditto.
886
887 Sat Aug  1 19:27:30 1998  Richard Henderson  <rth@cygnus.com>
888
889         * as.h (debug_info_type): Add entries for unspecified and dwarf*.
890         * ecoff.c (ecoff_generate_asm_lineno): Take no arguments; call
891         as_where ourselves.  Provide a stub for !ECOFF_DEBUGGING.
892         * ecoff.h: Move ECOFF_DEBUGGING protection inside GAS_ECOFF_H.
893         Move ecoff_generate_asm_lineno outside ECOFF_DEBUGGING protection.
894         * read.c (generate_lineno_debug): Tidy ECOFF bits.  Use
895         DEBUG_UNSPECIFIED rather than DEBUG_NONE for initial test.
896         * config/obj-elf.h (ECOFF_DEBUGGING) [TC_ALPHA]: Define to a variable.
897         (SEPARATE_STAB_SECTIONS): Conditionalize on value of ECOFF_DEBUGGING.
898         (INIT_STAB_SECTION): Likewise.
899         (OBJ_PROCESS_STAB): Likewise.
900         
901         * config/tc-alpha.c (md_longopts): New options -mdebug/-no-mdebug.
902         (md_parse_option): Watch for them.
903         (alpha_cur_ent_sym, alpha_flag_mdebug): New variables.
904         (md_begin): Kill neverdef code.
905         (s_alpha_ent, s_alpha_end, s_alpha_mask, s_alpha_frame): New.
906         (s_alpha_prologue): Watch alpha_cur_ent_sym.
907         (s_alpha_coff_wrapper): New.
908         (md_pseudo_table): Trap all ECOFF pseudos.
909         
910 Fri Jul 31 16:45:54 1998  Ron Unrau <runrau@cygnus.com>
911
912         Start of changes to remove mdebug section from mips*-elf
913         Based on MIPS_STAB_ELF definition
914         * acconfig.h: undef if not configured
915         * config.in: undef if not configured
916         * config/mips-elf.h: only set ECOFF debugging if not stabs-in-elf
917         * config/tc-mips.c (s_ent): set BSF_FUNCTION
918         * stabs.c (s_stab_generic): flush frag
919
920 Fri Jul 31 16:14:45 1998  Catherine Moore  <clm@cygnus.com>
921
922         * configure.in: (arm-*-elf):  Handle.
923         (thumb-*-elf): Handle.
924         * configure:  Regenerate.
925         * read.c (stringer): Fix typo in comment.
926         * write.c (fixup_segment): Don't add symbol value to addend if
927         TC_ARM and OBJ_ELF.
928         * config/tc-arm.c (md_section_align):  Don't align dwarf debug
929         sections.
930         (tc_gen_reloc):  Always set the reloc addend to fixp->fx_offset
931         for OBJ_ELF.
932
933 Thu Jul 30 21:38:43 1998  Frank Ch. Eigler  <fche@cygnus.com>
934
935         * config/tc-d30v.c ({cur,prev}_left_kills_right_p): New variables.
936         (write_2_short): Emit warning if new flag is set.
937         (do_assemble): Set flags if left instruction is one of special
938         "right-instruction-killer" type.
939
940 Tue Jun 28 18:12:28 1998  Stan Cox  <scox@cygnus.com>
941         
942         * config/tc-sparc.c (md_number_to_chars, cons_fix_new_sparc):
943         Always output words in debug_info section as big endian.
944         (sparc_target_format): Choose correct bfd target.
945         (md_apply_fix3): Rename BFD_RELOC_SPARC_32LE to BFD_RELOC_SPARC_REV32.
946         
947 Tue Jul 28 11:01:21 1998  Jeffrey A Law  (law@cygnus.com)
948
949         * config/tc-mn10300.c (md_assemble): Fix "errmsg" initialization
950         to work with internationalization code.  Issue an error when two
951         operands match that are not allowed to match.
952
953 Mon Jul 27 16:25:58 1998  Doug Evans  <devans@canuck.cygnus.com>
954
955         * configure.in (install_tooldir): Allow target to specify whether
956         it wants to be installed in $(tooldir)/bin.
957 start-sanitize-sky
958         (dvp-*-*): Don't install in $(tooldir)/bin.
959 end-sanitize-sky
960         * configure: Regenerate.
961         * Makefile.am (install-exec-local): Set install-exec-tooldir
962         dependency via configure.
963         * Makefile.in: Regenerate.
964
965 Fri Jul 24 19:58:59 1998  Doug Evans  <devans@canuck.cygnus.com>
966
967         * Makefile.am (install-exec-local): Split into two ...
968         (install-exec-bindir,install-exec-tooldir): New rules.
969         * Makefile.in: Regenerate.
970
971 Fri Jul 24 16:31:49 1998  Ian Lance Taylor  <ian@cygnus.com>
972
973         * Makefile.am (install-exec-local): Don't remove the file before
974         checking whether $(bindir) == $(tooldir)/bin.  From Maciej
975         W. Rozycki <macro@ds2.pg.gda.pl>.
976         * Makefile.in: Rebuild.
977
978 Fri Jul 24 09:13:46 1998  Doug Evans  <devans@canuck.cygnus.com>
979
980         * cgen.c: Include libiberty.h.
981         (cgen_md_apply_fix3): Update call to md_cgen_lookup_reloc.
982         (cgen_tc_gen_reloc): Use xmalloc, not bfd_alloc.
983         * cgen.h (cgen_md_apply_fix3,cgen_tc_gen_reloc): Declare.
984         (md_cgen_lookup_reloc)): Declare.
985         (md_cgen_record_fixup_exp): Declare.
986         * config/tc-m32r.h (md_pcrel_from_section): Declare.
987         (m32r_relax_frag): Declare.
988         (cgen_md_apply_fix3): Decls moved to cgen.h.
989         (cgen_record_fixup_exp,cgen_tc_gen_reloc): Ditto.
990         (m32r_cgen_record_fixup_exp): Delete decl.
991         * config/tc-m32r.c (m32r_cpu_desc): #if 0 out.
992         (assemble_nop): Delete.
993         (expand_debug_syms): Delete unused `exp'.
994         (md_cgen_lookup_reloc): Renamed from CGEN_SYM (lookup_reloc).
995         Add default case for -Wall.
996         (m32r_cgen_record_fixup_exp): Add default case for -Wall.
997         (md_atof): Delete unused wordP.
998
999 start-sanitize-sky
1000         * config/tc-dvp.c (assemble_vif): Make label at start of overlay
1001         a local label.
1002         (create_vuoverlay_section): Put __start_ label at start of overlay
1003         for gdb.
1004
1005 end-sanitize-sky
1006 Thu Jul 23 13:19:50 1998  Jeffrey A Law  (law@cygnus.com)
1007
1008         * config/tc-mn10300.c (md_assemble): Make sure "errmsg" has a non-NULL
1009         value.
1010
1011 start-sanitize-sky
1012 Wed Jul 22 17:39:28 1998  Frank Ch. Eigler  <fche@cygnus.com>
1013
1014         * config/tc-dvp.c (parse_float): Accept 0xhex constants
1015         also for VU LOI operand.
1016
1017 end-sanitize-sky
1018 Wed Jul 22 14:36:56 1998  Ian Lance Taylor  <ian@cygnus.com>
1019
1020         * doc/as.texinfo: Add documentation for .end, .exitm, .fail,
1021         .ifc, .ifeqs, .ifge, .ifgt, .ifle, .iflt, .ifnc, .ifne, .ifnes,
1022         .print, .purgem, and .struct.  Remove documentation for
1023         .app-file.
1024
1025 Tue Jul 21 16:50:52 1998  Doug Evans  <devans@seba.cygnus.com>
1026
1027         * cgen.c (cgen_md_apply_fix3): set_operand renamed to set_vma_operand.
1028         Update call to insert_operand.
1029
1030 start-sanitize-cygnus
1031 Tue Jul 21 10:58:47 1998  Jeffrey A Law  (law@cygnus.com)
1032
1033         * config/tc-mn10300.c (md_assemble): Handle autoincrement addressing
1034         modes.
1035
1036 end-sanitize-cygnus
1037 Fri Jul 17 11:42:20 1998  Nick Clifton  <nickc@cygnus.com>
1038
1039         * config/tc-m32r.c (ms_show_usage): Formatting changes.
1040
1041 Wed Jul 15 15:38:28 1998  Ian Lance Taylor  <ian@cygnus.com>
1042
1043         * config/tc-i386.c (md_assemble): Don't get confused by trailing
1044         whitespace after a prefix operator.
1045
1046 start-sanitize-beos
1047 Tue Jul 14 15:32:56 1998  Richard Henderson  <rth@cygnus.com>
1048
1049         * configure.in (i386-*-beos{pe,elf,}*): Recognize.
1050
1051 end-sanitize-beos
1052 Tue Jul 14 12:33:44 1998  Chris Torek  <torek@bsdi.com>
1053
1054         * config/tc-sparc.c (log2): New static function.
1055         (s_reserve): Use log2 to convert alignment before calling
1056         record_alignment.
1057         (s_common): Use log2 to convert alignment before calling
1058         record_alignment and frag_align.
1059         (sparc_cons_align): Use log2.
1060
1061 Tue Jul 14 11:58:40 1998  Ian Lance Taylor  <ian@cygnus.com>
1062
1063         * config/tc-sparc.c (s_reserve): Set symbol size if OBJ_ELF.
1064         (s_common): Likewise.
1065
1066         * config/tc-sparc.c (sparc_handle_align): Reindent a bit.  Correct
1067         initialization of waddr.
1068         (sparc_elf_final_processing): Add default case to switch.
1069
1070 Tue Jul 14 11:00:16 1998  Alan Modra  <alan@spri.levels.unisa.edu.au>
1071
1072         * doc/c-i386.texi: Fix a typo.  Use the term 80-bit real rather
1073         than temporary real.
1074
1075 Mon Jul 13 13:55:42 1998  Ian Lance Taylor  <ian@cygnus.com>
1076
1077         * write.c (subsegs_finish): Don't align the segments if there were
1078         any errors.
1079
1080         * config/obj-coff.c (c_symbol_merge): Correct number of bytes when
1081         copying aux information.
1082
1083         * expr.c (make_expr_symbol): Catch attempts to turn an O_big
1084         expression into a symbol.
1085
1086 Mon Jul 13 13:29:04 1998  Alan Modra  <alan@spri.levels.unisa.edu.au>
1087
1088         * config/tc-i386.c (mode_from_disp_size): Change arg and return
1089         type to unsigned int.
1090         (md_assemble): Change type used to store offsets from unsigned
1091         long to long.
1092         (i386_operand): Switch error check to only call RESTORE_END_STRING
1093         once after parse_register.
1094
1095 Fri Jul 10 16:00:04 1998  Nick Clifton  <nickc@cygnus.com>
1096
1097         * config/tc-v850.c (md_show_usage): Changed format to match that
1098         of gcc, ld, etc.
1099
1100         * as.c (show_usage): Changed format to match that of gcc, ld, etc.
1101
1102 Thu Jul  9 12:09:57 1998  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
1103
1104         * config/tc-m68k.c (tc_m68k_fix_adjustable): Don't adjust vtable
1105         relocs.
1106         (md_apply_fix_2): Force the symbol of the vtable reloc to be
1107         weak.
1108
1109 Thu Jul  9 11:31:54 1998  Ian Lance Taylor  <ian@cygnus.com>
1110
1111         * doc/Makefile.am (MAINTAINERCLEANFILES): Define.
1112         * doc/Makefile.in: Rebuild.
1113
1114 Wed Jul  8 12:18:56 1998  Jeffrey A Law  (law@cygnus.com)
1115
1116         * config/tc-mips.c (mips_ip, case 'i' and 'j'): Mask off high bits
1117         for %lo expressions.
1118         (mips_ip, case 'u'): Move range check after code to mask
1119         off bits in %hi/%lo expressions.  Mask off high bits for
1120         %lo expressions.
1121
1122 Tue Jul  7 17:57:38 1998  Ian Lance Taylor  <ian@cygnus.com>
1123
1124         * doc/Makefile.am (gasver.texi): New target.
1125         (as.info, as.dvi): Depends upon gasver.texi.
1126         * doc/as.texinfo: Include gasver.texi.  Mention version number on
1127         title page and in top node.
1128         * doc/Makefile.in: Rebuild.
1129
1130 Tue Jul  7 11:42:16 1998  Richard Henderson  <rth@cygnus.com>
1131
1132         * listing.c (listing_listing): For EDICT_LIST, skip all lines up to
1133         but not including the line containing the edict.
1134         * listing.h (LISTING_EOF): New.
1135         * input-scrub.c (input_scrub_next_buffer): Call it.
1136
1137 Tue Jul  7 13:00:37 1998  Alan Modra  <alan@spri.levels.unisa.edu.au>
1138
1139         * config/tc-i386.c (i386_operand): Don't set the size of an
1140         immediate address based solely on the suffix and the mode.
1141
1142         * config/tc-i386.c (md_assemble): Add assertion to make sure
1143         overlap2 does not set Imm.
1144
1145         * config/tc-i386.c (space_chars): Remove. The scrubber converts
1146         sequences of whitespace to a single space.
1147         (is_space_chars): Just compare with space.
1148         (md_begin): Don't initialize space_chars.
1149         (md_assemble): Just skip a single whitespace character.
1150         (i386_operand): Rewrite base-index parsing to use new
1151         parse_register, and to skip white space.  Skip white space in a
1152         number of other places too.  Don't give error message if
1153         parse_register fails.
1154         (parse_register): Change reg_string parameter to be non-const.
1155         Add end_op parameter.  Skip white space after the `%', and return
1156         end of register string.  Give error message here rather than
1157         caller.
1158
1159 Fri Jul  3 15:34:34 1998  Ian Lance Taylor  <ian@cygnus.com>
1160
1161         Based on patch from Matt Semersky <matts@scd.hp.com>:
1162         * expr.c (op_encoding): Make const.
1163         (expr_set_precedence): New function.
1164         (expr_begin): Don't set operator rankings, just call
1165         expr_set_precedence.
1166         * expr.h (expr_set_precedence): Declare.
1167         * read.c (s_mri): Call expr_set_precedence.
1168
1169 Thu Jul  2 16:24:58 1998  Ian Lance Taylor  <ian@cygnus.com>
1170
1171         * doc/as.texinfo (Statements): Remove paragraph discussing
1172         continuing lines with a backslash.  This hasn't worked for years,
1173         if it ever did.
1174
1175 Thu Jul  2 14:06:22 1998  Klaus Kaempf  <kkaempf@rmi.de>
1176
1177         * obj-vms.c: Add C++ support with ctors/dtors sections.  Add weak
1178         symbol definitions.
1179         (Ctors_Symbols, Dtors_Symbols): New symbol chains.
1180         (ps_CTORS, ps_DTORS): New section types.
1181         (vms_fixup_xtors_section): New function
1182         (Ctors_Psect, Dtors_Psect): Define.
1183         (IS_GXX_XTOR): Define
1184         (global_symbol_directory): Change check of gxx_bug_fixed to 0.
1185         Filter static constructors/destructors and add to
1186         Ctors_Symbols/Dtors_Symbols chain.
1187         (vms_write_object_file): Write Ctors_Symbols/Dtors_Symbols to
1188         appropriate section.
1189
1190         * tc-alpha.h (TARGET_FORMAT): Rename "evax-alpha" to "vms-alpha".
1191         * makefile.vms: Merge vax/vms support.
1192
1193 Wed Jul  1 20:06:20 1998  Richard Henderson  <rth@cygnus.com>
1194
1195         * config/obj-elf.c (obj_elf_vtable_inherit, obj_elf_vtable_entry): New.
1196         (elf_pseudo_table): Add them.
1197         * config/tc-mips.c (mips_force_relocation): Force vtable relocs.
1198         (md_apply_fix): Accept them.
1199         (mips_fix_adjustable): Don't adjust them.
1200         (tc_gen_reloc): Mung BFD_RELOC_VTABLE_ENTRY for Rel.
1201         * config/tc-ppc.c (md_apply_fix3): Accept vtable relocs.
1202         * config/tc-ppc.h (TC_FORCE_RELOCATION_SECTION): Force vtable relocs.
1203         (tc_fix_adjustable): Don't adjust them.
1204
1205 Wed Jul  1 16:35:32 1998  Doug Evans  <devans@seba.cygnus.com>
1206
1207         * Makefile.am (CGEN_CPU_PREFIX): New variable.
1208         (cgen.o): Use it.
1209         * Makefile.in: Regenerate.
1210         * configure.in: AC_SUBST cgen_cpu_prefix.
1211         * configure: Regenerate.
1212
1213 Wed Jul  1 21:38:56 1998  J"orn Rennecke  <amylaar@cygnus.co.uk>
1214
1215         * config/tc-sh (COND_JUMP_DELAY, COND12_DELAY_LENGTH): Define.
1216         Changed all users of COND12_DELAY.
1217
1218 start-sanitize-cygnus
1219 Mon Jun 29 14:58:36 1998  Jeffrey A Law  (law@cygnus.com)
1220
1221         * config/tc-mn10300.c (r_registers): Fix typo and add some missing
1222         registers.
1223
1224 end-sanitize-cygnus
1225 start-sanitize-branchbug4011
1226 Mon Jun 29 09:36:27 1998  Gavin Koch  <gavin@cygnus.com>
1227
1228         * config/tc-mips.c (prev_insn_labels): New.
1229         (mips_fix_4011_branch_bug): New.
1230         (append_insn): Watch for and handle branchs with labels.
1231         (mips_no_prev_insn): Initialize prev_insn_labels.
1232         (md_longopts,md_parse_option): Add {no-}fix-4011-branch-bug option.
1233
1234 end-sanitize-branchbug4011
1235 Fri Jun 26 11:21:11 1998  Jeffrey A Law  (law@cygnus.com)
1236
1237         * config/tc-mn10300.c (set_arch_mach): New function.
1238         (md_pseudo_table): Add pseudo-ops to set the current machine type.
1239         (md_begin): Default to mn10300 mode.
1240         (md_assemble): Only accept instructions for the core mn10300
1241         chip and the active machine type.
1242
1243 Wed Jun 24 19:06:04 1998  Ian Lance Taylor  <ian@cygnus.com>
1244
1245         * subsegs.h (segment_info_type): Give the struct a name.
1246         * config/tc-h8300.h (tc_reloc_mangle): Add prototype.
1247         * config/tc-h8500.h (tc_reloc_mangle): Declare.
1248         * config/tc-sh.h (sh_coff_reloc_mangle): Add prototype.
1249         * config/tc-w65.h (tc_reloc_mangle): Declare.
1250         * config/tc-z8k.h (tc_reloc_mangle): Declare.
1251
1252 Wed Jun 24 13:45:00 1998  Catherine Moore  <clm@cygnus.com>
1253
1254         * config/tc-v850.c (v850_comm):  Restore old section
1255         after common processing.
1256
1257 Wed Jun 24 11:50:54 1998  Klaus Kaempf  <kkaempf@progis.de>
1258
1259         * config/obj-vms.c (Create_VMS_Object_File): Force binary file.
1260
1261 start-sanitize-cygnus
1262 Wed Jun 24 09:38:10 1998  Jeffrey A Law  (law@cygnus.com)
1263
1264         * config/tc-mn10300.c (r_registers): Add a0-a3,d0-d3 and e0-e7
1265         as synonyms for "rN" registers.
1266         (xr_registers): Add mcrh, mcrl, mcvf, mdrq and sp as synonyms
1267         for "xrN" registers.
1268         (md_assemble): Fix typo computing the size of relocations.
1269
1270 end-sanitize-cygnus
1271 Tue Jun 23 17:47:31 1998  Jim Wilson  <wilson@cygnus.com>
1272
1273         * config/tc-h8300.c (do_a_fix_imm, build_bytes): Replace cast to
1274         char with code that explicitly sign-extends.
1275
1276 Tue Jun 23 13:54:57 1998  Nick Clifton  <nickc@cygnus.com>
1277         
1278         * config/tc-v850.c (md_begin): Restore text section as the current
1279         section after creating call table sections.
1280         * config/obj-coff.h (SYM_AUXINFO): New macro to conceal ugly
1281         code. 
1282
1283         * config/obj-coff.c (c_symbol_merge): Replace complex expresion
1284         with call to macro SYM_AUXINFO.
1285
1286 Tue Jun 23 15:09:27 1998  Mike Stump  <mrs@wrs.com>
1287
1288         * Makefile.am (install-exec-local): Don't let EXEEXT interfere
1289         with the program transform name.
1290         * Makefile.in: Rebuild.
1291
1292 Mon Jun 22 19:52:42 1998  Ian Lance Taylor  <ian@cygnus.com>
1293
1294         * config/obj-coff.c (c_symbol_merge): Fix copying of auxiliary
1295         information.
1296
1297 start-sanitize-cygnus
1298 Mon Jun 22 13:45:19 1998  Jeffrey A Law  (law@cygnus.com)
1299
1300         * config/tc-mn10300: Handle FMT_D10 instructions.
1301
1302 end-sanitize-cygnus
1303 Mon Jun 22 15:18:58 1998  Ian Lance Taylor  <ian@cygnus.com>
1304
1305         * config/tc-i386.c (i386_operand): Be prepared for a space between
1306         the open parenthesis and the start of the register operand,
1307         because of the June 16 change.
1308
1309 start-sanitize-r5900
1310 Mon Jun 22 11:08:07 1998  Frank Ch. Eigler  <fche@cygnus.com>
1311
1312         * config/tc-mips.c (mips_ip): Allow VU vi and vf registers
1313         to be named with a `$' prefix.  Likewise, allow CFC2/CTC2 to
1314         refer to "$viNN" registers.
1315
1316 end-sanitize-r5900
1317 Sun Jun 21 21:27:03 1998  Ian Lance Taylor  <ian@cygnus.com>
1318
1319         * config/tc-sh.c (md_apply_fix): Handle weak symbols correctly if
1320         BFD_ASSEMBLER.
1321
1322 Sun Jun 21 12:26:36 1998  Nick Clifton  <nickc@cygnus.com>
1323
1324         * config/tc-d30v.c (d30v_align): Always perform alignment request,
1325         even if it is belived to be unnecessary.
1326
1327 start-sanitize-r5900
1328 Fri Jun 19 19:56:50 1998  Jeffrey A Law  (law@cygnus.com)
1329
1330         * config/tc-mips.c (hilo_interlocks): Check mips_5900, not
1331         mips_cpu == 5900.
1332
1333 end-sanitize-r5900
1334 start-sanitize-cygnus
1335 Fri Jun 19 16:49:56 1998  Jeffrey A Law  (law@cygnus.com)
1336
1337         * config/tc-mn10300.c (md_assemble): Handle FMT_D8 and FMT_D9
1338         instruction formats.  Handle MN10300_OPERAND_24BIT modifier.
1339         (mn10300_insert_operand): Likewise.
1340         (mn10300_check_operand): Likewise.
1341         
1342 end-sanitize-cygnus
1343 Fri Jun 19 13:57:06 1998  Ian Lance Taylor  <ian@cygnus.com>
1344
1345         * write.c (adjust_reloc_syms): Never adjust relocs against weak
1346         symbols.
1347         * config/tc-mips.c (md_apply_fix): Adjust accordingly.
1348
1349 Fri Jun 19 09:50:17 1998  Jeffrey A Law  (law@cygnus.com)
1350
1351 start-sanitize-cygnus
1352         * config/tc-mn10300.c (r_registers): Add missing registers.
1353         (xr_registers): New set of registers.
1354         (xr_register_name): New function.
1355         (md_assemble): Handle XRREG and PLUS operands.  Tweak handling of
1356         RREG operand insertion.  Handle new D6 and D7 instruction formats.
1357 end-sanitize-cygnus
1358         * config/tc-mn10300.c (mn10300_insert_operand): Do not hardcode the
1359         shift amount for a repeated operand.  The shift amount for the
1360         repeated copy comes from the size of the operand.
1361
1362 Fri Jun 19 00:44:19 1998  Jeffrey A Law  (law@cygnus.com)
1363
1364         * config/tc-h8300.c (get_operand): Fix typos in ldm/stm support.
1365
1366 start-sanitize-sky
1367 Fri Jun 19 00:04:26 1998  Doug Evans  <devans@seba.cygnus.com>
1368
1369         * config/tc-dvp.c (md_apply_fix3): Handle new relocs
1370         BFD_RELOC_MIPS_DVP_11_S4, BFD_RELOC_MIPS_DVP_U15_S3.
1371
1372 end-sanitize-sky
1373 start-sanitize-cygnus
1374 Wed Jun 17 18:09:03 1998  Jeffrey A Law  (law@cygnus.com)
1375
1376         * config/tc-mn10300.c (r_registers): New register table.
1377         (r_register_name): New function.
1378         (md_assemble): Handle new am33 operand types.
1379
1380 end-sanitize-cygnus
1381 Wed Jun 17 13:07:05 1998  Ian Lance Taylor  <ian@cygnus.com>
1382
1383         * config/tc-mips.c (md_show_usage): Fix -mipsN usage.
1384
1385 Tue Jun 16 13:06:21 1998  Alan Modra  <alan@spri.levels.unisa.edu.au>
1386
1387         * app.c (do_scrub_begin): If tc_symbol_chars is defined, treat all
1388         characters in it as LEX_IS_SYMBOL_COMPONENT.
1389         * config/tc-i386.h (tc_symbol_chars): Define.
1390         (extra_symbol_chars): Declare.
1391         * config/tc-i386.c (extra_symbol_chars): Define.
1392         (comment_chars): Don't use '/' as comment start if TE_LINUX.
1393         (line_comment_chars): Set to '/' if TE_LINUX.
1394         * doc/c-i386.texi (i386-prefixes): Update.
1395         * doc/internals.texi (CPU backend): Document tc_symbol_chars.
1396
1397 Fri Jun 12 13:36:54 1998  Tom Tromey  <tromey@cygnus.com>
1398
1399         * po/Make-in (all-yes): If maintainer mode, depend on .pot file.
1400         ($(PACKAGE).pot): Unconditionally depend on POTFILES.
1401
1402 start-sanitize-sky
1403 Fri Jun 12 12:46:57 1998  Doug Evans  <devans@canuck.cygnus.com>
1404
1405         * config/tc-dvp.c (create_vuoverlay_section): Don't set a non-zero
1406         section vma.
1407
1408 end-sanitize-sky
1409 1998-06-12  Vladimir N. Makarov  <vmakarov@cygnus.com>
1410
1411         * config/tc-d10v.c (md_apply_fix3): Checking displacement
1412         constraint in instructions REP & REPI.
1413
1414 Thu Jun 11 08:56:46 1998  Nick Clifton  <nickc@cygnus.com>
1415
1416         * config/tc-d30v.c (md_apply_fix3): Catch BFD_RELOC_8,
1417         BFD_RELOC_16, BFD_RELOC_64 and issue appropriate error messages.  
1418
1419         (check_range): If the operand is shifted, then shift the number
1420         before checking its range.
1421
1422         * write.c (adjust_reloc_syms): Add more checks for NULL pointers. 
1423
1424         * config/tc-v850.c (v850_comm): Set SEC_COMMON bit on special
1425         common sections.
1426
1427 Wed Jun 10 17:26:35 1998  Nick Clifton  <nickc@cygnus.com>
1428
1429         * config/tc-v850.c (v850_comm): Create special sections as needed.
1430
1431 1998-06-10  Vladimir N. Makarov  <vmakarov@cygnus.com>
1432
1433         * config/tc-d10v.c (write_2_short): Addition of swapping
1434         instructions for sequential and reverse sequential order when
1435         given order is not possible.
1436
1437 start-sanitize-sky
1438 Tue Jun  9 12:20:44 1998  Doug Evans  <devans@canuck.cygnus.com>
1439
1440         * config/tc-dvp.c (assemble_vu): Print better error message if
1441         lower insn is missing.
1442
1443 end-sanitize-sky
1444 Tue Jun  9 13:52:53 1998  Ian Lance Taylor  <ian@cygnus.com>
1445
1446         * Makefile.am: Rebuild dependencies.
1447         (DEP_INCLUDES): Fix reference to intl build directory.
1448         * Makefile.in: Rebuild.
1449
1450 Tue Jun  9 12:20:05 1998  Alan Modra  <alan@spri.levels.unisa.edu.au>
1451
1452         * doc/c-i386.texi: Update 16 bit documentation.
1453
1454         * config/tc-i386.h: Change Data16 to Size16, Data32 to Size32,
1455         IgnoreDataSize to IgnoreSize as they are used for address size as
1456         well as data size.
1457         * config/tc-i386.c: Likewise.  Add code to reject addr32/data32 in
1458         32-bit mode, similarly addr16/data16 and variants.
1459
1460 Mon Jun  8 18:32:01 1998  Nick Clifton  <nickc@cygnus.com>
1461
1462         * config/tc-d30v.c (md_assemble): Fix handling of reverse
1463         sequential word multiply instructions.
1464         
1465         (do_assemble): Add extra command line argument, to allow mul32
1466         attribute to be preserved across parallel insns.
1467         (md_assemble): Insert NOPs between explicitly parallel insns which
1468         contain an 32 bit multiply and a 16 multiply.
1469
1470 start-sanitize-sky
1471 Mon Jun  8 15:41:43 1998  Doug Evans  <devans@canuck.cygnus.com>
1472
1473         * config/tc-dvp.c (dvp_relax_frag): Adjust target address by stretch.
1474
1475 end-sanitize-sky
1476 Mon Jun  8 12:20:30 1998  Alan Modra  <alan@spri.levels.unisa.edu.au>
1477
1478         * config/tc-i386.c: REPNE renamed to REPNE_PREFIX_OPCODE, and
1479         likewise for REPE.
1480
1481         * config/tc-i386.c (reloc): Add braces.
1482
1483         * config/tc-i386.c (struct _i386_insn): Rename bi to sib to be
1484         consistent with Intel naming.
1485         * config/tc-i386.h (base_index_byte): Rename to sib_byte.  Don't
1486         use bitfields in sib_byte.
1487         (modrm_byte): Don't use bitfields here either.
1488
1489         * config/tc-i386.c (current_templates): Add const.
1490         (parse_register): Add const to return, param, and char *s.
1491         (i386_operand): Add const to reg_entry *r.
1492         * config/tc-i386.h (templates): Add const to start, end.
1493
1494         Inspired by code for 16 bit gas support from Martynas Kunigelis
1495         <martynas@nm3.ktu.lt>:
1496         * config/tc-i386.c (md_assemble): Add full support for 16 bit
1497         modrm, and Jump, JumpByte, JumpDword, JumpInterSegment insns.
1498         (uses_mem_addrmode): Remove.
1499         (md_estimate_size_before_relax): Add support here too.
1500         (md_relax_table): Rewrite interface to md_relax for 16 bit
1501         support.
1502         (BYTE, WORD, DWORD, UNKNOWN_SIZE): Remove.
1503         (opcode_suffix_to_type): Remove.
1504         (CODE16, SMALL, SMALL16, BIG, BIG16): Define.
1505         (SIZE_FROM_RELAX_STATE): Modify to suit above.
1506         (md_convert_frag): Likewise.
1507         (i386_operand): Add support for 16 bit base/index regs,
1508         immediates, and displacements.  Remove some unnecessary casts, and
1509         localise end_of_operand_string, displacement_string_start,
1510         displacement_string_end variables.  Add GCC_ASM_O_HACK.
1511         * config/tc-i386.h (NO_BASE_REGISTER_16): Define.
1512
1513         * config/tc-i386.c (prefix_hash): Remove.
1514         (md_begin): Rewrite without obstacks.  Remove prefix hash table
1515         handling.  Rewrite lexical table handling.
1516         (i386_print_statistics): Don't print prefix statistics.
1517         (md_assemble): Rewrite instruction parser so that line is not
1518         converted to lower case.  Don't do a hash_find for prefixes,
1519         instead recognise them via opcode modifier.
1520         (expecting_operand, paren_not_balanced): Localise variables.
1521         * config/tc-i386.h (IsPrefix): Define.
1522         (prefix_entry): Remove.
1523
1524         * config/tc-i386.h (PREFIX_SEPERATOR): Don't define.
1525         * config/tc-i386.c (PREFIX_SEPARATOR): Define here instead, using
1526         '\\' in case where comment_chars contains '/'.
1527
1528         * config/tc-i386.c (MATCH): Ensure given operand and template
1529         match for JumpAbsolute.  Makes e.g. `ljmp table(%ebx)' invalid;
1530         you must write `ljmp *table(%ebx)'.
1531
1532         From H.J. Lu <hjl@gnu.org>:
1533         * config/tc-i386.c (BFD_RELOC_16, BFD_RELOC_16_PCREL): Define
1534         as 0 ifndef BFD_ASSEMBLER.
1535         (md_assemble): Allow immediate operands without suffix or
1536         other reg operand to default in size to the current code size.
1537
1538 Mon Jun  8 09:45:00 1998  Catherine Moore  <clm@cygnus.com>
1539  
1540         * config/tc-v850.c (md_begin):  Restore creation of
1541         .call_table_text and .call_table_data sections.
1542
1543 Sat Jun  6 00:02:41 1998  Nick Clifton  <nickc@cygnus.com>
1544
1545         * config/tc-d30v.c (md_assemble): Set execution type to unknown
1546         after emitting a word of noops.
1547
1548 Fri Jun  5 23:27:04 1998  Alan Modra  <alan@spri.levels.unisa.edu.au>
1549
1550         * config/tc-i386.c (mode_from_disp_size): Disp16 is mode 2.
1551         (i386_operand): Simplify checks for valid base/index combinations.
1552         Disallow `in 4(%dx),%al'.
1553
1554         * config/tc-i386.c (struct _i386_insn): Make regs, base_reg, and
1555         index_reg const.
1556         (add_prefix): Change parameter from char to int.
1557
1558         * config/tc-i386.h (Ugh): Define opcode modifier.
1559         * config/tc-i386.c (md_assemble): Print warnings for Ugh insns.
1560
1561         * config/tc-i386.c (md_assemble): Rewrite MATCH and
1562         CONSISTENT_REGISTER_MATCH macros to check register types more
1563         thoroughly.  Check for illegal suffix/operand combinations
1564         when matching insns with operands.  Handle new `s' suffix, and
1565         associated FloatMF opcode modifier for float insns with memory
1566         operands.
1567         * config/tc-i386.h (FloatMF): Define new opcode modifier.
1568         (No_sSuf, No_bSuf, No_wSuf, No_lSuf): Likewise.
1569         (SHORT_OPCODE_SUFFIX, LONG_OPCODE_SUFFIX): Define.
1570         * config/tc-i386.c: Rename WORD_PREFIX_OPCODE to
1571         DATA_PREFIX_OPCODE throughout.
1572
1573         * config/tc-i386.c (REGISTER_WARNINGS): Define.
1574         (md_assemble): Rewrite suffix/register operand checking code to be
1575         more thorough.  Remove Abs8,16,32.  Change occurrences of Mem to
1576         AnyMem, the better to grep.
1577         (pi): Remove Abs.
1578         (i386_operand): Don't set Mem bits in i.types[this_operand] when
1579         given a memory operand.  Don't set Abs bits either.
1580         (type_names): Remove Mem*, Abs*.
1581         * config/tc-i386.h (Mem8, Mem16, Mem32, Abs8, Abs16, Abs32): Don't
1582         define opcode_modifiers as these cases are handled by Disp8,
1583         Disp16, Disp32 and suffix checks.
1584         (COMES_IN_BOTH_DIRECTIONS): Remove.
1585         (FloatR): Define. It's OK to share the bit with ReverseRegRegmem.
1586
1587         * config/tc-i386.c (md_assemble): Don't emit operand size prefix
1588         if IgnoreDataSize modifier given.  Remove ShortformW modifier
1589         test.  Add test for ShortForm in W base_opcode modification.
1590         Merge Seg2ShortForm and Seg3ShortForm code.
1591         * config/tc-i386.h (ShortFormW): Remove.
1592         (IgnoreDataSize): Define.
1593
1594 Fri Jun  5 10:50:53 1998  Nick Clifton  <nickc@cygnus.com>
1595
1596         * config/tc-d30v.c (md_assemble): Store previous segment state
1597         with previous instruction.
1598
1599 Wed Jun  3 18:21:56 1998  Alan Modra  <alan@spri.levels.unisa.edu.au>
1600
1601         * config/tc-i386.c (SCALE1_WHEN_NO_INDEX): Define.
1602         (ebp, esp): Remove static variables.
1603         (MATCH): Remove test for InOutPortReg.
1604         (i386_operand): Properly handle InOutPortReg here instead.
1605         Disallows `inb (%dx,2)', `inb %es:(%dx)' and `mov (%dx),%ax'
1606         (md_assemble): Simplify and correct modrm and sib generation.
1607         (i386_operand): Add warning for scale without index.
1608         Rewrite checks for valid base/index combinations.
1609
1610         * config/tc-i386.c (END_STRING_AND_SAVE): Protect arguments of
1611         macros and enclose in do while(0).
1612         (RESTORE_END_STRING): Likewise.
1613         (md_assemble): Add one to printed operand number so we start
1614         from 1 not 0.  Add some more gettext invocations.
1615         (i386_operand): Fix `%%s' -> `%%%s'. Inc printed operand
1616         number here too.
1617
1618         * config/tc-i386.h (WAIT_PREFIX, LOCKREP_PREFIX, ADDR_PREFIX,
1619         DATA_PREFIX, SEG_PREFIX): Define.
1620         * config/tc-i386.c (struct _i386_insn): Remove wait_prefix field.
1621         (check_prefix): Remove function.
1622         (add_prefix): New function.  Add prefix to i.prefix as well as
1623         doing checks.
1624         (md_assemble): Changes for add_prefix.  Remove hack for wait
1625         prefix, instead always output prefixes in fixed order.  Test
1626         for jcxz/loop when selecting between word & dword operations,
1627         and add address size prefix rather than operand size prefix.
1628         Remove operand -> address size hack when emitting jcxz/loop.
1629         (i386_operand): Remove O_Absent check as it's done in expr.
1630
1631 Wed Jun  3 15:09:10 1998  Ian Lance Taylor  <ian@cygnus.com>
1632
1633         * configure.in: Recognize m5200 as a cpu_type of m68k.
1634         * aclocal.m4: Rebuild with current libtool.
1635         * configure: Rebuild.
1636
1637 Wed Jun  3 14:11:59 1998  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
1638
1639         * config/tc-m68k.c (md_estimate_size_before_relax): Add more calls
1640         to relaxable_symbol to prevent references to external symbol from
1641         being relaxed.
1642
1643 Wed Jun  3 14:10:36 1998  Ian Lance Taylor  <ian@cygnus.com>
1644
1645         * config/tc-m68k.c (relaxable_symbol): If TARGET_OS is "elf", all
1646         symbols are relaxable.
1647
1648 start-sanitize-sky
1649 Wed Jun  3 10:26:04 1998  Doug Evans  <devans@canuck.cygnus.com>
1650
1651         * config/tc-dvp.c (md_begin): Change alignment of .DVP.ovlytab to 4.
1652         (create_vuoverlay_section): Entries are 4 bytes not 8.
1653
1654 end-sanitize-sky
1655 Wed Jun  3 09:16:00 1998  Catherine Moore  <clm@cygnus.com>
1656  
1657         * config/tc-v850.c (md_begin):  Don't create special
1658         sections by default.
1659  
1660 Tue Jun  2 14:52:56 1998  Jeffrey A Law  (law@cygnus.com)
1661
1662         * config/tc-mips.c (macro): For div and udiv, close the
1663         reorder block as soon as possible.
1664
1665 Tue Jun  2 15:36:13 1998  Ian Lance Taylor  <ian@cygnus.com>
1666
1667         From Matt Semersky <matts@scd.hp.com>:
1668         * macro.c (macro_mri_mode): New function.
1669         * macro.h (macro_mri_mode): Declare.
1670         * read.c (s_mri): Call macro_mri_mode when switching in and out of
1671         MRI mode.
1672
1673 Tue Jun  2 13:32:22 1998  Klaus Kaempf  <kkaempf@progis.de>
1674
1675         * config/tc-alpha.c (s_alpha_comm): Allow alignment parameter in
1676         OBJ_EVAX case.
1677
1678         * config/tc-alpha.c (s_alpha_comm): Defer restoring character
1679         until after xstrdup in OBJ_EVAX case.
1680
1681 Tue Jun  2 13:11:13 1998  Pat Rankin  <rankin@eql.caltech.edu>
1682
1683         * config/tc-vax.c (md_create_short_jump): Fix off by two bug in
1684         offset calculation.  Also, use VAX_BRW from vax-inst.h instead
1685         of hardcoded magic number.
1686         (md_create_long_jump): Use VAX_JMP and VAX_ABSOLUTE_MODE macros.
1687
1688 Tue Jun  2 09:25:34 1998  Doug Evans  <devans@canuck.cygnus.com>
1689
1690         * read.c (do_s_func): New function.
1691         (s_func): Call it.
1692         * read.h (do_s_func): Add prototype.
1693 start-sanitize-sky
1694         * config/tc-dvp.c (md_pseudo_table): Add .func/.endfunc.
1695         (s_dvp_func): New function.
1696 end-sanitize-sky
1697
1698 start-sanitize-r5900
1699 Mon Jun  1 17:04:56 1998  Jeffrey A Law  (law@cygnus.com)
1700
1701         * config/tc-mips.c (hilo_interlocks): The r5900 has HILO interlocks.
1702
1703 end-sanitize-r5900
1704 Mon Jun  1 12:47:30 1998  Doug Evans  <devans@canuck.cygnus.com>
1705
1706         * config/tc-m32r.c (m32r_do_align): Only fill code sections with
1707         nops if fill pattern not specified.
1708
1709 Mon Jun  1 14:08:35 1998  Ian Lance Taylor  <ian@cygnus.com>
1710
1711         From Andrew Crabtree <andrewc@typhoon.rose.hp.com>:
1712         * config/te-go32.h (TE_GO32): Define.
1713         * config/tc-i386.h (LOCAL_LABEL): Don't define if TE_GO32.
1714
1715 Sun May 31 15:43:06 1998  Doug Evans  <devans@canuck.cygnus.com>
1716
1717         Implement .func/.endfunc pseudo-ops.
1718         * read.h (stabs_generate_asm_func,stabs_generate_asm_endfunc): Declare.
1719         (s_func): Declare.
1720         * read.c (potable): Add .func,.endfunc.
1721         (s_func): New function.
1722         * stabs.c (stabs_generate_asm_func,stabs_generate_asm_endfunc): New
1723         functions.
1724         (in_doc_func_p,current_function_label): New static globals.
1725         (stabs_generate_asm_lineno): Emit function relative stabs if in .func.
1726
1727 start-sanitize-sky
1728         * config/tc-dvp.h (ELF_TC_SPECIAL_SECTIONS): Delete .vuoverlay_table.
1729         (VUOVERLAY_SECTION_PREFIX,VUOVERLAY_TABLE_SECTION_NAME): Delete.
1730         * config/tc-dvp.c (vuoverlay_string_section): New static global.
1731         (md_begin): Create overlay string section.
1732         (create_vuoverlay_section): Put section name in overlay string section.
1733         Put string's offset in overlay table entry.  Set SEC_CODE flag for
1734         overlay sections.
1735
1736 end-sanitize-sky
1737 Fri May 29 18:13:12 1998  Ian Lance Taylor  <ian@cygnus.com>
1738
1739         * config/tc-a29k.h (WORKING_DOT_WORD): Define.
1740         * config/tc-alpha.h (WORKING_DOT_WORD): Define.
1741         * config/tc-arm.h (WORKING_DOT_WORD): Define.
1742         * config/tc-h8300.h (WORKING_DOT_WORD): Define.
1743         * config/tc-h8500.h (WORKING_DOT_WORD): Define.
1744         * config/tc-hppa.h (WORKING_DOT_WORD): Define.
1745         * config/tc-i860.h (WORKING_DOT_WORD): Define.
1746         * config/tc-i960.h (WORKING_DOT_WORD): Define.
1747         * config/tc-tic30.h (WORKING_DOT_WORD): Define.
1748         * config/tc-w65.h (WORKING_DOT_WORD): Define.
1749         * config/tc-z8k.h (WORKING_DOT_WORD): Define.
1750         * config/tc-a29k.c: Don't define md_short_jump_size,
1751         md_long_jump_size, md_create_short_jump or md_create_long_jump.
1752         * config/tc-alpha.c: Likewise.
1753         * config/tc-alpha.h: Likewise.
1754         * config/tc-arm.c: Likewise.
1755         * config/tc-h8300.c: Likewise.
1756         * config/tc-h8500.c: Likewise.
1757         * config/tc-hppa.c: Likewise.
1758         * config/tc-i860.c: Likewise.
1759         * config/tc-i960.c: Likewise.
1760         * config/tc-ppc.c: Likewise.
1761         * config/tc-sh.c: Likewise.
1762         * config/tc-sparc.h: Likewise.
1763         * config/tc-tic30.c: Likewise.
1764         * config/tc-w65.c: Likewise.
1765         * config/tc-z8k.c: Likewise.
1766
1767 Fri May 29 16:03:26 1998  Pat Rankin  <rankin@eql.caltech.edu>
1768
1769         * config/tc-vax.c (_): Delete this macro used for placeholder
1770         values in vax_operand_width_size; it conflicts with the _() macro
1771         used for internationalization.
1772
1773 Fri May 29 13:46:07 1998  Ian Lance Taylor  <ian@cygnus.com>
1774
1775         * symbols.c (symbol_find_base): Fix case insensitive symbol name
1776         code.  From Chris Moller <moller@bops.com>.
1777
1778         Based on patch from Klaus Kaempf <kkaempf@progis.de>:
1779         * struc-symbol.h (struct broken_word): Add seg and subseg fields.
1780         * read.c (emit_expr): Initialize seg and subseg fields of a new
1781         broken word.
1782         * write.c (write_object_file): Switch to the appropriate segment
1783         and subsegment when processing a broken word.
1784
1785         * config/tc-m68k.c (mri_assemble): New static function.
1786         (build_mri_control_operand): Call mri_assemble rather than
1787         md_assemble.
1788         (s_mri_else, s_mri_break, s_mri_next, s_mri_for): Likewise.
1789         (s_mri_endf, s_mri_endw): Likewise.
1790
1791 start-sanitize-sky
1792 Thu May 28 16:23:08 1998  Doug Evans  <devans@canuck.cygnus.com>
1793
1794         * config/tc-dvp.h (ELF_TC_SPECIAL_SECTIONS): Add .vuoverlay_table.
1795         (dvp_frob_file): Declare.
1796         (tc_frob_file): Define.
1797         (VUOVERLAY_SECTION_PREFIX,VUOVERLAY_TABLE_SECTION_NAME): New macros.
1798         * config/tc-dvp.c (VUOVERLAY_START_PREFIX): New macro.
1799         (vuoverlay_section_name,create_vuoverlay_section): New functions.
1800         (vuoverlay_section,vuoverlay_table_section): New static globals.
1801         (ovlysym_table): New static global.
1802         (md_begin): Create .vuoverlay_table section.
1803         (assemble_vif): Call create_vuoverlay_section for each mpg.
1804         (dvp_frob_label): Record vu labels in ovlysym_table for later
1805         movement from absolute section to their overlay section.
1806         (dvp_frob_file): New function.
1807         (md_apply_fix3): For 8/16/32/64 bit relocs, only process if fx_done.
1808
1809 end-sanitize-sky
1810 Wed May 27 11:16:25 1998  Ian Lance Taylor  <ian@cygnus.com>
1811
1812         * read.c (s_org): Call md_flush_pending_output if it is defined.
1813
1814         * config/tc-sparc.c (md_show_usage): Add \n\ to new string.
1815
1816 Tue May 26 19:27:52 1998  Stan Cox  <scox@equinox.cygnus.com>
1817
1818         * config/tc-sparc.c (OPTION_LITTLE_ENDIAN_DATA): New.
1819         (md_parse_option): Add for same.
1820         (sparc_md_end): Set bfd_mach_sparc_sparclite_le.
1821         (md_apply_fix3, tc_gen_reloc): Allow BFD_RELOC_SPARC_32LE.
1822         (cons_fix_new_sparc): Added to create BFD_RELOC_SPARC_32LE.
1823
1824         * config/tc-sparc.h (cons_fix_new_sparc): Added.
1825         
1826 start-sanitize-sky
1827 Fri May 22 11:47:01 1998  Doug Evans  <devans@canuck.cygnus.com>
1828
1829         * config/tc-dvp.c (assemble_one_insn): Parse suffix operands
1830         even when missing in input string.
1831
1832 end-sanitize-sky
1833 Thu May 21 15:02:41 1998  Nick Clifton  <nickc@cygnus.com>
1834
1835         * config/tc-arm.c (find_real_start): Relax definition of local
1836         labels.
1837
1838 Tue May 19 16:59:44 1998  Nick Clifton  <nickc@cygnus.com>
1839
1840         * config/tc-d30v.c (d30v_align): Apply address adjustment to all
1841         symbols at the given address, not just the last one specified.
1842
1843 Tue May 19 08:25:19 1998  Catherine Moore <clm@cygnus.com>
1844
1845         * config/tc-sparc.c (sparc_handle_align): Use number_to_chars_bigendian
1846         or number_to_chars_littleendian to write data.
1847
1848 Mon May 18 17:09:30 1998  Nick Clifton  <nickc@cygnus.com>
1849
1850         * config/tc-v850.c (md_assemble): Remove artificially created
1851         register name symbols.
1852
1853 Mon May 18 13:47:06 1998  Doug Evans  <devans@canuck.cygnus.com>
1854
1855         * write.c (fixup_segment): Change "segment" to "section" in
1856         error message.
1857
1858 Mon May 18 16:55:40 1998  Michael Meissner  <meissner@cygnus.com>
1859
1860         * write.c (fixup_segment): Change sym1-sym2 message again.
1861
1862 start-sanitize-r5900
1863 Mon May 18 11:49:04 1998  Jeffrey A Law  (law@cygnus.com)
1864
1865         * config/tc-mips.c (validate_mips_insn): Handle ';' opcode completer.
1866         (mips_ip): Likewise.
1867
1868 Mon May 18 12:37:38 1998  Frank Ch. Eigler  <fche@cygnus.com>
1869
1870         * config/tc-mips.c (macro): For R5900, use "B" operand format for
1871         "break" instructions generated in macro (div etc.) instructions.
1872
1873 end-sanitize-r5900
1874 Mon May 18 09:31:43 1998  Michael Meissner  <meissner@cygnus.com>
1875
1876         * write.c (fixup_segment): Improve error message for sym1-sym2
1877         errors when sym1 is in a different segment from sym2.
1878
1879 Wed May 13 10:16:37 1998  Doug Evans  <devans@canuck.cygnus.com>
1880
1881         * config/tc-m32r.c (warn_unmatched_high): New static local.
1882         (OPTION_WARN_PARALLEL): Rename from OPTION_WARN.
1883         (OPTION_NO_WARN_PARALLEL): Rename from OPTION_NO_WARN.
1884         (md_longopts): Recognize --{no-,}warn-unmatched-high.
1885         (md_parse_option): Likewise.
1886         (md_show_usage): Likewise.
1887         (m32r_frob_file): Likewise.
1888
1889         * read.c (generate_file_debug,generate_lineno_debug): New functions.
1890         (read_a_source_file): Call them.
1891         * read.h (stabs_generate_asm_file): Declare.
1892         * stabs.c (stabs_generate_asm_file): New function.
1893         (generate_asm_file): New function.
1894         (stabs_generate_asm_lineno): Move file name handling into
1895         generate_asm_file.
1896
1897 Tue May 12 12:03:44 1998  Richard Henderson  <rth@cygnus.com>
1898
1899         * config/tc-d30v.c (cur_mul32_p, prev_mul32_p): Make static.
1900         (d30v_current_align, d30v_current_align_seg): New variables.
1901         (d30v_last_label): New variable.
1902         (d30v_align, s_d30v_align, s_d30v_text): New functions.
1903         (s_d30v_data, s_d30v_section): Likewise.
1904         (md_pseudo_table): Call them.
1905         (md_begin): Initialize d30v_current_align_seg.
1906         (md_assemble): Call d30v_align when needed by known current alignment.
1907         (d30v_frob_label, d30v_cons_align): New functions.
1908         * config/tc-d30v.h (md_do_align): Remove.
1909         (tc_frob_label): Call d30v_frob_label.
1910         (md_cons_align): New.
1911
1912         * config/tc-d30v.c (find_format): Convert complex expressions to 
1913         expression symbols before processing.  Clean up code formatting.
1914
1915 start-sanitize-sky
1916 Mon May 11 12:48:33 1998  Doug Evans  <devans@canuck.cygnus.com>
1917
1918         * config/tc-dvp.c (md_begin): Set type of output file to mips:r5900.
1919
1920 end-sanitize-sky
1921 Sun May 10 22:35:02 1998  Jeffrey A Law  (law@cygnus.com)
1922
1923         * po/Make-in (install-info): New target.
1924
1925 Thu May  7 15:49:07 1998  Jeffrey A Law  (law@cygnus.com)
1926
1927         * config/tc-mn10200.c (md_assemble): Handle "bra" just like "jmp"
1928         instructions.
1929         * config/tc-mn10300.c (md_assemble): Likewise.
1930
1931 Thu May  7 11:47:22 1998  Doug Evans  <devans@canuck.cygnus.com>
1932
1933         * Makefile.am: Update with `make dep-am'.
1934         (HFILES): Add cgen.h.
1935         (cgen.o): Depend on cgen.h.
1936         * Makefile.in: Regenerate.
1937
1938         * cgen.c (cgen_md_apply_fix3): Don't pass newline to as_warn_where.
1939
1940 Thu May  7 13:20:56 1998  Anders Blomdell  <anders.blomdell@control.lth.se>
1941
1942         * gasp.c (grab_label): Permit a label to be a preprocessor
1943         variable by permitting a label to start with a backslash.
1944
1945 Thu May  7 12:50:33 1998  Frank Ch. Eigler  <fche@cygnus.com>
1946
1947         * config/tc-mips.c (validate_mips_insn): Removed hack
1948         for previously inaccessible bitfields in some INSN_TRAP
1949         instructions.
1950
1951 Thu May  7 11:13:00 1998  Frank Ch. Eigler  <fche@cygnus.com>
1952
1953         * config/tc-d30v.c (do_assemble): Abort with error message
1954         if opcode operands do not match.
1955         
1956 Thu May  7 09:36:06 1998  Frank Ch. Eigler  <fche@cygnus.com>
1957
1958         * config/tc-mips.c (macro_build, validate_mips_insn): Implement
1959         'q' operand format for 20-bit "break"/"sdbbp" instructions.
1960         (mips_ip): Truncate overflowed "break" 'c' operand.  Implement
1961         similar new 'q' operand.
1962
1963 Thu May  7 07:47:14 1998  Michael Meissner  <meissner@cygnus.com>
1964
1965         * cgen.c (cgen_asm_finish_insn): Fix typo.
1966
1967 Thu May  7 02:19:14 1998  Doug Evans  <devans@charmed.cygnus.com>
1968
1969         * cgen.h: New file.
1970         * cgen.c: Include it.
1971         (MAX_FIXUPS): Renamed to CGEN_MAX_FIXUPS.
1972         (cgen_asm_finish_insn): Result is now void.  New arg `result'.
1973         All callers updated.
1974         * config/tc-m32r.c: Include cgen.h.
1975         (m23r_insn): New members num_fixups,fixups.
1976 start-sanitize-cygnus
1977         (assemble_parallel_insn): Initialize debug_sym_link for each insn.
1978         (md_assemble): Simplify code to pack two insns in parallel.
1979         When swapping two insns, update their fixups.
1980 end-sanitize-cygnus
1981
1982 start-sanitize-sky
1983 Wed May  6 16:26:57 1998  Doug Evans  <devans@canuck.cygnus.com>
1984
1985         * config/tc-dvp.c: Delete inclusion of "sysdep.h".
1986
1987 end-sanitize-sky
1988 Wed May  6 16:29:19 1998  Jeffrey A Law  (law@cygnus.com)
1989
1990         * config/tc-hppa.c (md_apply_fix): Slightly rework some code
1991         to avoid compiler warning.
1992
1993 Wed May  6 15:26:34 1998  Klaus Kaempf  <kkaempf@progis.de>
1994
1995         * makefile.vms: Run dec c with /nodebug.  Pass CC value when
1996         calling make.
1997
1998         * makefile.vms (OBJS): Add ehopt.obj
1999
2000 Wed May  6 15:11:12 1998  Klaus Kaempf  <kkaempf@progis.de>
2001
2002         * doc/c-vax.texi: Correct and extend vax/vms documentation.
2003
2004 Wed May  6 11:51:51 1998  Richard Henderson  <rth@cygnus.com>
2005
2006         * config/tc-d30v.c (do_assemble): Accept a new parameter requesting
2007         a short format insn.
2008         (md_assemble): Set it for explicitly packed insns.
2009         
2010 Tue May  5 13:23:13 1998  Nick Clifton  <nickc@cygnus.com>
2011
2012         * config/obj-coff.c (c_symbol_merge): Do not take address of
2013         native fields when performing the memcpy.
2014
2015 Tue May  5 13:10:41 1998  Gavin Koch  <gavin@cygnus.com>
2016
2017         * config/tc-mips.c (macro,macro2): Implement 
2018         M_DMULO_I, M_MULO_I, M_DMULOU_I, and M_MULOU_I.
2019
2020 Mon May  4 17:49:14 1998  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
2021
2022         * config/tc-m68k.h (TC_RELOC_RTSYM_LOC_FIXUP): Changed to keep
2023         relocations against globally visible symbols.
2024         * config/tc-m68k.c (relaxable_symbol): New macro.
2025         (m68k_ip, md_estimate_size_before_relax): Use it.
2026         (tc_m68k_fix_adjustable): Also handle weak symbols.
2027
2028 Mon May  4 16:12:23 1998  Ian Lance Taylor  <ian@cygnus.com>
2029
2030         * config/tc-i386.h (TC_RELOC_RTSYM_LOC_FIXUP): Keep relocs for all
2031         references to externally visible symbols.
2032         * config/tc-i386.c (md_apply_fix3): When OBJ_ELF, don't add the
2033         values in twice for a PC relative reloc if the symbol is
2034         externally defined.
2035
2036         * config/tc-sparc.h (tc_fix_adjustable) [OBJ_AOUT]: When PIC,
2037         don't adjust a PC relative reloc against an externally visible
2038         symbol.
2039         * config/tc-sparc.c (md_apply_fix3): When generating a.out PIC,
2040         for a PC relative fixup against an externally visible defined
2041         symbol, arrange to store object file and addend values as though
2042         the symbol were not defined.
2043         (tc_gen_reloc): Likewise.
2044
2045 Thu Apr 30 13:09:39 1998  Fred Fish  <fnf@ninemoons.com>
2046
2047         * read.c (sizeof_leb128): Referenced externally by write.c so
2048         don't inline.
2049
2050 Wed Apr 29 15:45:57 1998  Michael Meissner  <meissner@cygnus.com>
2051
2052         * config/tc-m32r.c ({,expand_}debug_sym): New functions to record
2053         and expand a 'debug' symbol associated with the next instruction
2054         that does not cause a short instruction to be filled with a NOP.
2055         (md_pseudo_table): Add support for .debugsym.
2056         (assemble_parallel_insn): Add calls to expand_debug_sym as
2057         appropriate.
2058         (md_assemble): Ditto.
2059
2060 Tue Apr 28 19:16:26 1998  Tom Tromey  <tromey@cygnus.com>
2061
2062         * as.c (main): Conditionally call setlocale.
2063         * gasp.c (main): Likewise.
2064         * asintl.h: Include <locale.h> if HAVE_LOCALE_H.
2065         (LC_MESSAGES): Now can be defined even when ENABLE_NLS.
2066
2067 Tue Apr 28 18:33:23 1998  Frank Ch. Eigler  <fche@cygnus.com>
2068
2069         * config/tc-d30v.c (md_show_usage): Correct gettext typo.
2070         
2071 Tue Apr 28 12:16:30 1998  Ian Lance Taylor  <ian@cygnus.com>
2072
2073         * config/tc-hppa.c: Change all calls to bzero to use memset.
2074         (pa_ip): Add cast to avoid warning.
2075         (tc_gen_reloc, md_apply_fix): Likewise.
2076         (pa_find_space_by_number): Likewise.
2077         (hppa_force_relocation): Likewise.
2078         (pa_block): Change i to unsigned int.
2079         * config/obj-som.h (obj_som_copyright): Declare.
2080
2081 Tue Apr 28 11:35:56 1998  Frank Ch. Eigler  <fche@cygnus.com>
2082
2083         * ecoff.c (ecoff_build_lineno): Do not use dummy first_lineno
2084         for line numbers for assembly source.
2085
2086 Mon Apr 27 15:58:46 1998  Ian Lance Taylor  <ian@cygnus.com>
2087
2088         * configure.in: Change version number to 2.9.4
2089         * configure: Rebuild.
2090
2091 Mon Apr 27 12:07:33 1998  Doug Evans  <devans@seba.cygnus.com>
2092
2093         * cgen.c (cgen_asm_finish_insn): New arg relax_p.  All callers updated.
2094 start-sanitize-cygnus
2095         * config/tc-m32r.c (assemble_parallel_insn): No need to try
2096         non-relaxable variant any more.  Simplify test for nop insn.
2097         (md_assemble): Only scan operands if m32rx.  Set orig_insn in case
2098         scan of operands yields an insn different from original (e.g. a macro).
2099         Fix call to can_make_parallel.
2100 end-sanitize-cygnus
2101
2102 Mon Apr 27 15:16:12 1998  Ian Lance Taylor  <ian@cygnus.com>
2103
2104         * ecoff.h: Change symbolS in function declaration to struct
2105         symbol.
2106
2107 Sun Apr 26 13:44:22 1998  Ian Lance Taylor  <ian@cygnus.com>
2108
2109         * config/tc-sh.c (parse_reg): Add casts to avoid warnings.
2110         (md_convert_frag): Fix i18n typo.
2111
2112 Sat Apr 25 20:12:02 1998  Richard Henderson  <rth@cygnus.com>
2113
2114         * ecoff.c (ecoff_get_cur_proc_sym): New function.
2115         * ecoff.h: Protoype it.
2116         * config/tc-alpha.c [ELF] (s_alpha_prologue): New function.
2117         [EVAX] (s_alpha_prologue): Delete.
2118         (md_pseudo_table): Update.
2119
2120 Sat Apr 25 14:00:52 1998  Ian Lance Taylor  <ian@cygnus.com>
2121
2122         * config/tc-i960.c (md_assemble): Change bp_error_msg from static
2123         array to local pointer.
2124         (get_args, parse_expr): Add casts to avoid warnings.
2125
2126 Fri Apr 24 12:47:42 1998  Philippe De Muyter  <phdm@macqel.be>
2127
2128         * read.c (s_set): Cast xmalloc return value to fragS *.
2129         * config/tc-m68k.c (m68k_ip): Function made static to match
2130         previous forward declaration.
2131         (insert_reg, init_regtable, md_convert_frag_1): Likewise.
2132
2133 Fri Apr 24 09:26:46 1998  Nick Clifton  <nickc@cygnus.com>
2134
2135         * config/tc-v850.c: Add internationalisation macros to error
2136         strings.  
2137
2138         * config/tc-m32r.c (can_make_parallel): Add internationalisation
2139         macros to error strings.
2140
2141 Thu Apr 23 19:23:23 1998  Ian Lance Taylor  <ian@cygnus.com>
2142
2143         * config/tc-ppc.c (ppc_fix_adjustable): Correct test of whether a
2144         reloc is in the TOC csect.
2145         (md_apply_fix3): Correct gettext typo.
2146
2147 Thu Apr 23 14:58:31 1998  Nick Clifton  <nickc@cygnus.com>
2148
2149         * config/tc-arm.c (find_real_start): Ignore symbols starting with
2150         .L - they are local labels and the branches are not really
2151         function calls but rather far jumps.
2152
2153 start-sanitize-sky
2154 Thu Apr 23 11:09:34 1998  Doug Evans  <devans@canuck.cygnus.com>
2155
2156         * config/tc-dvp.c (dvp_frob_label): Don't emit _$ versions of
2157         local labels ($ prefix).
2158
2159 end-sanitize-sky
2160 Wed Apr 22 15:57:21 1998  Tom Tromey  <tromey@cygnus.com>
2161
2162         * po/Make-in (MKINSTALLDIRS): Don't look in $(top_srcdir).
2163
2164 Wed Apr 22 14:52:36 1998  Ian Lance Taylor  <ian@cygnus.com>
2165
2166         * config/tc-i386.c (md_assemble): Print operand number rather than
2167         using ordinal_names.
2168         (i386_operand): Likewise.
2169
2170 Tue Apr 21 22:34:25 1998  Tom Tromey  <tromey@scribbles.cygnus.com>
2171
2172         * Makefile.am (INTLLIBS): Define to work around apparent automake
2173         bug.
2174         All Makefiles: Regenerated.
2175
2176         * Many files: Added gettext invocations around user-visible
2177         strings.
2178         * acconfig.h (ENABLE_NLS, HAVE_CATGETS, HAVE_GETTEXT, HAVE_STPCPY,
2179         HAVE_LC_MESSAGES): Define.
2180         * dep-in.sed: Added asintl.h.
2181         * po/Make-in: New file.
2182         * gasp.c (main): Call setlocale, bindtextdomain, and textdomain.
2183         Include "asintl.h".
2184         * read.c (Z_): Renamed from `_'.
2185         * Makefile.am (SUBDIRS): Added po.
2186         (POTFILES): new macro.
2187         (po/POTFILES.in): New target.
2188         ($(OBJS)): Added asintl.h.
2189         (HFILES): Likewise.
2190         (INCLUDES): Added -DLOCALEDIR, -I$(top_srcdir)/../intl.
2191         (as_new_LDADD): Added $(INTLLIBS).
2192         (as_new_DEPENDENCIES): Added $(INTLDEPS).
2193         (gasp_new_LDADD): Added $(INTLLIBS).
2194         (gasp_new_DEPENDENCIES): New macro.
2195         * configure, aclocal.m4: Rebuilt.
2196         * configure.in: Call CY_GNU_GETTEXT.  Generate po/Makefile.in and
2197         po/Makefile.
2198         (ALL_LINGUAS): Define.
2199         * macro.c: Include "asintl.h".
2200         * as.c (main): Call setlocale, bindtextdomain, and textdomain.
2201         * as.h: Include "asintl.h".
2202         * config/tc-i386.c (ordinal_names): Removed.
2203         (md_assemble): Changed error text to avoid ordinal_names.
2204         (i386_operand): Likewise.
2205         (reloc): Added as_bad to avoid i18n problems.
2206         (tc_gen_reloc): Likewise.
2207         * config/tc-arm.c (bad_args): Now a #define.
2208         (bad_pc): Likewise.
2209         * config/obj-vms.c (VMS_stab_parse): Changed type of
2210         `long_const_msg'.
2211         (global_symbol_directory): Unified strings to avoid i18n
2212         problems.
2213         * config/tc-m68k.c (get_reloc_code): Added some as_bad calls to
2214         avoid i18n problems.
2215         * config/tc-ns32k.c (reloc): Added as_bad to avoid i18n problems.
2216         * config/tc-ppc.c (md_apply_fix3): Added as_bad_where to avoid
2217         i18n problems.
2218         * config/tc-sh.c (md_convert_frag): Added as_bad to avoid i18n
2219         problems.
2220         * config/tc-v850.c (md_assemble): Changed C++ comment into C
2221         comment.
2222         * config/tc-vax.c (md_assemble): Added as_warn to avoid i18n
2223         problems.
2224         * as.c (print_version_id): Added an fprintf to avoid i18n
2225         problems.
2226         * cond.c (cond_finish_check): Added as_bad call to avoid i18n
2227         problems.
2228         * expr.c (expr): Added as_warn call to avoid i18n problems.
2229         * messages.c (as_assert): Changed code to avoid i18n problems.
2230         (as_abort): Likewise.
2231         * read.c (pseudo_set): Added as_bad call to avoid i18n problems.
2232         (s_space): Likewise.
2233         * po/Make-in, po/POTFILES.in, po/gas.pot: New files.
2234
2235 Tue Apr 21 17:01:22 1998  Alan Modra  <alan@spri.levels.unisa.edu.au>
2236
2237         * config/tc-i386.c (check_prefix): New static function, split out
2238         from md_assemble.
2239         (struct _i386_insn): Add wait_prefix field.
2240         (md_assemble): Remove wait_prefix local variable.  Use
2241         check_prefix when adding a prefix.
2242
2243         * config/tc-i386.c (current_templates): New static variable.
2244         (md_assemble): Remove current_templates local variable.
2245         (md_assemble, i386_operand): Improve error and warning messages in
2246         many places.  Add RESTORE_END_STRING in many places before error
2247         return.  Clarify some comments.
2248
2249         * config/tc-i386.c (struct _i386_insn): Change seg field to a two
2250         element array.
2251         (md_assemble): Parse string instruction operands, looking for
2252         segment override prefixes.  Check for invalid segment prefixes on
2253         string instruction.
2254         (i386_operand): i.seg[] and max mem_operand changes for string
2255         insns.
2256         * config/tc-i386.h (EsSeg): Define.
2257
2258         * config/tc-i386.h (regKludge): Define.
2259         (iclrKludge, imulKludge): Don't define.
2260         * config/tc-i386.c (md_assemble): Merge imulKludge and iclrKludge
2261         code.  Move ReverseRegRegmem fudges into Modrm case.  Reorder
2262         opcode_modifier checks to look for more common cases first.  Add
2263         default_seg for IsString case.
2264
2265 Tue Apr 21 16:18:12 1998  Ian Lance Taylor  <ian@cygnus.com>
2266
2267         * configure.in: Call AM_PROG_LEX rather than AC_PROG_LEX and
2268         AC_DECL_YYTEXT.
2269         * configure: Rebuild with new automake and libtool.
2270         * aclocal.m4, Makefile.in: Likewise.
2271
2272         * doc/Makefile.am (as.dvi): New target.
2273         * doc/Makefile.in: Rebuild.
2274
2275 start-sanitize-sky
2276 Mon Apr 20 12:49:33 1998  Doug Evans  <devans@canuck.cygnus.com>
2277
2278         * config/tc-dvp.c (VU_LABEL_PREFIX): Make "_$".
2279
2280 end-sanitize-sky
2281 Sat Apr 18 01:21:04 1998  Stan Cox  <scox@cygnus.com>
2282
2283         * configure.in: Added sparc86x support.
2284         
2285         * configure: Rebuild.
2286         
2287         * config/tc-sparc.c (lookup_arch): Added arch_type to struct
2288         sparc_arch.
2289         (md_parse_option): Warn if -EL is not supported for this architecture.
2290
2291         * config/tc-sparc.h (SPARC_BIENDIAN) Always define.
2292         
2293 Sat Apr 18 01:19:01 1998  Jeffrey A Law  (law@cygnus.com)
2294
2295         * config/tc-mips.c (mips_ip): Note when we use get match on
2296         the full instruction name.
2297 start-sanitize-r5900
2298         (mips_ip): For '&' DEST completer handling, if we got a full match
2299         then the DEST completer is implicitly .wxyz.
2300 end-sanitize-r5900
2301
2302 start-sanitize-sky
2303 Thu Apr 16 11:48:18 1998  Doug Evans  <devans@canuck.cygnus.com>
2304
2305         * config/tc-dvp.c (unpackloc_sym): Delete.  All uses deleted.
2306         (vif_insn_type): New function.
2307         (md_apply_fix3): Don't validate user specified length if unpack insn
2308         and wl > cl.
2309
2310 end-sanitize-sky
2311 Wed Apr 15 15:17:27 1998  Richard Henderson  <rth@cygnus.com>
2312
2313         * symbols.c (resolve_symbol_value) [O_symbol]: Also store the symbol
2314         back into the expression to handle add/sub simplification correctly.
2315
2316 start-sanitize-r5900
2317 Wed Apr 15 10:35:59 1998  Frank Ch. Eigler <fche@cygnus.com>
2318  
2319         * config/tc-mips.c (mips_ip): Specs changed for
2320         VCALLMSR instruction.
2321  
2322 end-sanitize-r5900
2323 start-sanitize-cygnus
2324 Wed Apr 15 07:06:04 1998  Catherine Moore  <clm@cygnus.com>
2325  
2326         * config/tc-mips.c (hilo_interlocks): Remove VR5400.
2327  
2328 end-sanitize-cygnus
2329 Wed Apr 15 07:06:04 1998  Catherine Moore  <clm@cygnus.com>
2330
2331         * config/tc-mips.c (hilo_interlocks): Remove 4300.
2332
2333 Mon Apr 13 16:51:04 1998  Nick Clifton  <nickc@cygnus.com>
2334
2335         * config/tc-arm.c (do_msr): Support undocumented 'msr cpsr_flg,
2336         #<n>' instruction.
2337
2338 start-sanitize-sky
2339 Mon Apr 13 12:18:53 1998  Doug Evans  <devans@canuck.cygnus.com>
2340
2341         * config/tc-dvp.c (md_apply_fix3): Mark fixup for mpg loaded vu
2342         branch error as being done so we don't try to emit a reloc.
2343
2344 end-sanitize-sky
2345 Thu Apr  9 10:29:42 1998  Doug Evans  <devans@canuck.cygnus.com>
2346
2347         * symbols.c (max_indent_level): New global.
2348         (print_symbol_value_1): Use it.
2349         * expr.h (expr_build_dot): Declare.
2350         * expr.c (expr_build_dot): New function.
2351 start-sanitize-sky
2352         * config/tc-dvp.c (VU_LABEL_PREFIX): New macro.
2353         (compute_mpgloc): New function.
2354         (eval_expr): New arg `cpu'.  All callers updated.
2355         (non_vu_insn_seen_p): New static global.
2356         (RELAX_{MPG,DIRECT,VU,ENCODE,GROWTH,DONE_}): New macros.
2357         (struct dvp_fixup): New member `cpu'.
2358         (assemble_one_insn): New args init_fixup_count, fixup_offset.
2359         All callers updated.
2360         (md_assemble): Set non_vu_insn_seen_p as appropriate.
2361         (assemble_vif): Set `cpu' field of fixup.
2362         Clean up calls to frag_var.  Recorded mpgloc is now in bytes.
2363         (assemble_vu_insn): Delete, contents moved into ...
2364         (assemble_vu): ... here.  Don't record fixups until after parsing
2365         both upper and lower insns.  If branch insn inside mpg, properly
2366         compute target address.
2367         (dvp_frob_label): Create copies of vu labels inside mpg's.
2368         (dvp_relax_frag): Clean up.
2369         (md_convert_frag): Ditto.
2370         (md_apply_fix3): Signal error if mpg embedded vu code has branch
2371         to undefined label (not currently supported).
2372         (eval_expr): New arg `cpu'.  All callers updated.
2373         (insert_operand_final): Convert mpgloc from bytes to dwords.
2374         (s_endmpg): Use compute_mpgloc to update $.mpgloc.
2375         (s_state): If switching to vu state, initialize $.mpgloc.
2376 end-sanitize-sky
2377
2378 Wed Apr  8 16:16:11 1998  Doug Evans  <devans@canuck.cygnus.com>
2379
2380         * symbols.c (print_binary): New function.
2381         (print_expr_1): Call it.
2382
2383 start-sanitize-sky
2384 Tue Apr  7 12:21:39 1998  Doug Evans  <devans@canuck.cygnus.com>
2385
2386         * config/tc-dvp.c (md_convert_frag): Fix thinko.
2387
2388 Mon Apr  6 17:08:47 1998  Doug Evans  <devans@canuck.cygnus.com>
2389
2390         * config/tc-dvp.c (assemble_vif): Watch for macro insns.
2391         0 is a valid length value (= max+1).
2392         (install_vif_length): 0 is a valid length value (= max+1).
2393
2394 end-sanitize-sky
2395 Mon Apr  6 12:06:39 1998  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
2396
2397         * config/tc-m68k.c (m68k_ip, case "#B"): Install the offset of the
2398         operand in the opcode.
2399
2400 start-sanitize-sky
2401 Fri Apr  3 12:13:03 1998  Doug Evans  <devans@canuck.cygnus.com>
2402
2403         * config/tc-dvp.c (assemble_vif): Put relaxable insns in their
2404         own fragment.
2405
2406 end-sanitize-sky
2407 Fri Apr  3 11:58:19 1998  Alan Modra  <alan@spri.levels.unisa.edu.au>
2408
2409         * config/tc-i386.h: Reorder operand flags and opcode modifier
2410         flags for clarity.  Remove unused definitions: Unknown,
2411         ImmUnknown, DispUnknown, NoModrm.
2412         * config/tc-i386.c (type_names): Add missing Debug type.
2413         (md_assemble): Better duplicate prefix checking.  Quicker string
2414         instruction check via new opcode_modifier flag.
2415
2416 Fri Apr  3 11:44:34 1998  Ian Lance Taylor  <ian@cygnus.com>
2417
2418         * doc/as.texinfo (Invoking): Clarify -Wa example.
2419
2420 Fri Apr  3 09:12:23 1998  Gavin Koch  <gavin@cetus.cygnus.com>
2421
2422         * config/tc-mips.c (mips_pseudo_table): Add weakext entry. 
2423         (s_mips_weakext): Define.
2424         * ecoff.c (ecoff_directive_weakext): Don't define if defined(TC_MIPS).
2425         * config/obj-ecoff.c (obj_pseudo_table): Don't add weakext if 
2426         defined(TC_MIPS).       
2427         
2428 Thu Apr  2 22:42:02 1998  Jeffrey A Law  (law@cygnus.com)
2429
2430         * config/tc-mn10200.c (tc_gen_reloc): The difference of two symbols
2431         is an error if the value can not be computed at assembly time.
2432         * config/tc-mn10300.c (tc_gen-reloc): Likewise.
2433
2434 Thu Apr  2 16:36:47 1998  Ian Lance Taylor  <ian@cygnus.com>
2435
2436         * gasp.c (main): Set next field of new include_path structure to
2437         NULL.  From Avery Pennarun <averyp@gdc.ca>.
2438
2439         * read.c (s_mri_sect): Call as_bad rather than abort for an
2440         unsupported MRI target.
2441
2442 Wed Apr  1 11:08:27 1998  Nick Clifton  <nickc@cygnus.com>
2443
2444         * config/tc-arm.c (arm_validate_fix): New function.  Determine if
2445         the destination of a branch instruction should be altered.
2446         (find_real_start): New function:  Locate the real, Thumb coded
2447         start of a Thumb function.
2448         (do_t_branch23): Alter the destination of branches to Thumb
2449         functions. 
2450
2451         * config/tc-arm.h: Define TC_VALIDATE_FIX.
2452
2453 Tue Mar 31 13:27:33 1998  Dean M. Deaver  <deaver@amt.tay1.dec.com>
2454
2455         * config/tc-arm.c (decode_shift): Handle addressing mode 2 w/rrx
2456         also.
2457
2458 Wed Apr  1 13:13:20 1998  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
2459
2460         * doc/as.texinfo: Use @itemx for a secondary item in a table.
2461         * doc/c-hppa.texi: Likewise.
2462
2463 Tue Mar 31 17:52:40 1998  Ian Lance Taylor  <ian@cygnus.com>
2464
2465         * Makefile.am: Rebuild dependencies.
2466         * Makefile.in: Rebuild.
2467
2468         * Makefile.am (DEP_INCLUDES): New variable.
2469         (.dep1): Change to work when srcdir is not an absolute path.
2470         (.tcdep, .objdep, .dep2, dep.sed): Likewise.
2471         * Makefile.in: Rebuild.
2472
2473 Mon Mar 30 12:46:48 1998  Ian Lance Taylor  <ian@cygnus.com>
2474
2475         * config/tc-i386.h, config/tc-i386.c: Revert March 24
2476         LinearAddress patch.
2477
2478         * configure.in: Set version to 2.9.1.
2479         * configure: Rebuild.
2480
2481         * Branched binutils 2.9.
2482
2483 Mon Mar 30 11:22:08 1998  Alan Modra  <alan@spri.levels.unisa.edu.au>
2484
2485         * config/tc-i386.h (FWait): Define.
2486         * config/tc-i386.c (md_assemble): Emit fwait prefix before any
2487         other prefixes.  Check FWait flag in opcode table to see which
2488         instructions require an fwait prefix.
2489
2490 Mon Mar 30 10:12:00 1998  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
2491
2492         * stabs.c (get_stab_string_offset): Always create a stab string
2493         section.
2494
2495 Sat Mar 28 22:28:02 1998  Ian Lance Taylor  <ian@cygnus.com>
2496
2497         Fix some gcc -Wall warnings:
2498         * atof-generic.c (atof_generic): Add casts to avoid warnings.
2499         * ehopt.c (eh_frame_code_alignment): Likewise.
2500         * expr.c (integer_constant, operand): Likewise.
2501         * frags.c (frag_align): Likewise.
2502         * gasp.c (level_0, change_base, doinstr): Likewise.
2503         * hash.c (hash_ask): Likewise.
2504         * listing.c (listing_page, calc_hex, print_lines): Likewise.
2505         (debugging_pseudo): Likewise.
2506         * macro.c (define_macro, check_macro): Likewise.
2507         * read.c (read_a_source_file, s_align, s_float_space): Likewise.
2508         (ignore_rest_of_line, float_cons): Likewise.
2509         * symbols.c (decode_local_label_name): Likewise.
2510         * write.c (record_alignment, cvs_frag_to_fill): Likewise.
2511         (fixup_segment, number_to_chars_bigendian): Likewise.
2512         (number_to_chars_littleendian): Likewise.
2513         * config/atof-ieee.c (gen_to_words): Likewise.
2514         * config/tc-sparc.c (md_begin, md_assemble): Likewise.
2515         (sparc_ip, parse_keyword_arg, s_common): Likewise.
2516         * read.c (output_big_sleb128): Initialize locals to avoid
2517         warnings.
2518         (output_big_uleb128, equals): Likewise.
2519         * atof-generic.c (atof_generic): Change number_of_digits_* locals
2520         to unsigned int.  Change zeros to unsigned int.
2521         * cond.c (s_if): Add return to default case.
2522         * frags.c (frag_now_fix): Change return type to addressT.
2523         * frags.h (frag_now_fix): Update declaration.
2524         * listing.c (file_info_struct): Change linenum to unsigned int.
2525         (struct list_info_struct): Change hll_line to unsigned int.
2526         (print_source): Update format string.
2527         * read.c (emit_expr): Change scan to unsigned int, and don't
2528         bother to initialize it.
2529         * symbols.c (dollar_label_count): Change to unsigned long.
2530         * write.c (adjust_reloc_syms): Remove unused label reduce_fixup.
2531         * config/tc-sparc.c (sparc_memory_model): Only define if OBJ_ELF.
2532         * config/tc-sparc.c (tc_gen_reloc): Add return to default case.
2533
2534 Fri Mar 27 12:46:47 1998  Ian Lance Taylor  <ian@cygnus.com>
2535
2536         * config/tc-m68k.c (m68k_ip): Check legal addressing modes for
2537         mcf5200 just as we do for m68000.
2538         (m68k_init_after_args): Likewise.
2539         (md_estimate_size_before_relax): Likewise.
2540
2541 Fri Mar 27 10:30:01 1998  Catherine Moore  <clm@cygnus.com>
2542
2543         * config/tc-v850.c (md_assemble):  Store relocation addend in
2544         fixup instead of instruction.
2545
2546 Thu Mar 26 23:07:18 1998  Alan Modra  <alan@spri.levels.unisa.edu.au>
2547
2548         * config/tc-i386.c (md_assemble): Swap template arguments to
2549         CONSISTENT_REGISTER_MATCH macro in reverse direction test.
2550         This macro is currently symmetric, so passing them the wrong
2551         way didn't cause any problem, but may if the macro is changed
2552         in the future.
2553         After copying template to i.tm, use i.tm. rather than t-> to
2554         access fields, and make t a const*
2555         Move i.tm.operand_types[] swap to immediately after the copy.
2556
2557 start-sanitize-sky
2558 Thu Mar 26 13:29:59 1998  Doug Evans  <devans@canuck.cygnus.com>
2559
2560         * config/tc-dvp.c (s_endunpack): Round up to word boundary after
2561         we've computed the data length.
2562
2563 end-sanitize-sky
2564 Wed Mar 25 13:44:18 1998  Doug Evans  <devans@canuck.cygnus.com>
2565
2566         * expr.h (expr_build_uconstant): Add prototype.
2567         (expr_build_unary,expr_build_binary): Add prototypes.
2568         * expr.c (expr_build_uconstant): New function.
2569         (expr_build_unary,expr_build_binary): New functions.
2570 start-sanitize-sky
2571         * config/tc-dvp.h (md_estimate_size_before_relax): Delete.
2572         (md_convert_frag): Delete.
2573         (TC_FIX_TYPE): New fields wl,cl,user_value;
2574         * config/tc-dvp.c (insert_mpg_marker): New argument ignore.
2575         All callers updated.
2576         (insert_unpack_marker): New function.
2577         (insert_file): New argument insert_marker_arg.  All callers updated.
2578         (gif_user_value): New static local.
2579         (vif_data_start,vif_data_end): New static locals.
2580         (mpgloc_sym,unpackloc_sym): New static locals.
2581         (cur_varlen_frag,cur_varlen_insn,cur_varlen_value): Delete.
2582         (cur_opcode,cur_operand): New static locals.
2583         (endmpg_caller): New enum.
2584         (md_pseudo_table): Pass ENDMPG_USER to s_endmpg.
2585         (md_begin): Initialize mpgloc_sym, unpackloc_sym.
2586         (dvp_fixup): New members user_value,wl,cl;
2587         (assemble_vif): Rewrite.
2588         (assemble_gif): Tweak name of data start label.
2589         (assemble_one_insn): Allow special parser to punt and call the
2590         normal expression parser.  Set cur_opcode,cur_operand for md_operand.
2591         (md_operand): Handle '*' value for mpgloc,unpackloc.
2592         (md_estimate_size_before_relax): New function.
2593         (dvp_relax_frag,md_convert_frag): New functions.
2594         (md_pcrel_from_section): Handle end data label for variable length
2595         vif insns.
2596         (md_apply_fix3): Handle count field for variable length vif insns.
2597         Handle address field for mpg,unpack.
2598         (eval_expr): Initialize user_value,wl,cl fields of the fixup.
2599         (cur_vif_insn_length): Delete.
2600         (vif_length_value): New function.
2601         (install_vif_length): Don't perform logical->physical conversion here.
2602         (s_enddirect,s_endmpg,s_endunpack): Rewrite.
2603 end-sanitize-sky
2604
2605 Wed Mar 25 13:10:42 1998  Bruno Haible  <bruno@linuix.mathematik.uni-karlsruhe.de>
2606
2607         * gasp.c (IS*): Cast argument to unsigned char, not unsigned int.
2608         * macro.c (macro_expand_body): Increase buffer size.
2609         * messages.c (as_warn): Likewise.
2610         (as_warn_where, as_bad, as_bad_where): Likewise.
2611
2612 Wed Mar 25 12:59:07 1998  Ian Lance Taylor  <ian@cygnus.com>
2613
2614         Based on patch from H.J. Lu  <hjl@gnu.org>:
2615         * Makefile.am (DISTSTUFF): New variable.
2616         (diststuff): New target.
2617         * Makefile.in: Rebuild.
2618
2619 Tue Mar 24 16:51:29 1998  Nick Clifton  <nickc@cygnus.com>
2620
2621         * config/tc-m32r.h (md_cleanup, md_elf_section_change_hook): Call
2622         m32r_elf_section_change_hook.
2623
2624         * config/tc-m32r.c (m32r_elf_section_change_hook): New function to
2625         emit a nop if a section ends with a 16 bit instruction.
2626
2627 Tue Mar 24 19:48:09 1998  Ian Lance Taylor  <ian@cygnus.com>
2628
2629         * config/obj-coff.c (obj_coff_bss): Compile unconditionally.  Call
2630         s_lcomm rather than obj_coff_lcomm.
2631         (obj_pseudo_table): Compile .bss pseudo-op unconditionally.
2632
2633 Tue Mar 24 18:30:58 1998  H.J. Lu  <hjl@gnu.org>
2634
2635         * config/tc-i386.h (LinearAddress): Define.
2636         * config/tc-i386.c (md_assemble): If LinearAddress is set for the
2637         instruction, don't use a default segment.
2638
2639 Mon Mar 23 18:53:40 1998  Joel Sherrill  <joel@OARcorp.com>
2640
2641         * configure.in: (sh*-*-rtems*): Switched from ELF to COFF.
2642         * configure: Rebuild.
2643
2644 start-sanitize-sky
2645 Mon Mar 23 13:16:22 1998  Doug Evans  <devans@canuck.cygnus.com>
2646
2647         * config/tc-dvp.c (insert_mpg_marker): Update mpgloc.
2648
2649 end-sanitize-sky
2650 start-sanitize-r5900
2651 Sun Mar 22 13:21:01 1998  Jeffrey A Law  (law@cygnus.com)
2652
2653         * config/tc-mips.c (validate_mips_insn): Handle r5900 operands.
2654
2655         * config/tc-mips.c (append_insn): Handle BFD_RELOC_MIPS16_S3.
2656         (mips_ip): Handle 'O' operand.
2657         (md_apply_fix): Handle BFD_RELOC_MIPS16_S3.
2658
2659 end-sanitize-r5900
2660 Fri Mar 20 19:15:44 1998  Ian Lance Taylor  <ian@cygnus.com>
2661
2662         * aclocal.m4, configure: Rebuild with libtool 1.2.
2663
2664 start-sanitize-r5900
2665 Fri Mar 20 09:04:13 1998  Jeffrey A Law  (law@cygnus.com)
2666
2667         * config/tc-mips.c: Change '%' to '#' in r5900 support.
2668
2669 end-sanitize-r5900
2670 Thu Mar 19 16:03:12 1998  Nick Clifton  <nickc@cygnus.com>
2671
2672         * config/tc-arm.c (md_apply_fix3): fix code to test the range of
2673         PC relative branches.  Patch courtesy of Jonathan Walton. 
2674
2675 start-sanitize-r5900
2676 Thu Mar 19 14:19:27 1998  Jeffrey A Law  (law@cygnus.com)
2677
2678         * config/tc-mips.c (mips_ip): Handle opcodes which have the form
2679         "name.completer" where only the name is actually in the opcode
2680         table.  Allow various operands for base register in load/store
2681         instructions.  Handle various new argument characters for the
2682         cop2/vu0 co-processor.
2683
2684 end-sanitize-r5900
2685 start-sanitize-sky
2686         Wed Mar 18 13:54:04 1998  Frank Ch. Eigler  <fche@cygnus.com>
2687
2688         * config/tc-dvp.c (s_dmadata): Force 16-byte alignment for ".dmadata"
2689         pseudo-op.
2690 end-sanitize-sky
2691         
2692 Wed Mar 18 09:29:51 1998  Nick Clifton  <nickc@cygnus.com>
2693
2694         * configure.in (emulations): Add thumb-pe target.
2695
2696         * configure (emulations): Add thumb-pe target.
2697
2698 1998-03-17  Ken Raeburn  <raeburn@cygnus.com>
2699
2700         * itbl-lex.l (yywrap): Don't define if already defined as a
2701         macro.
2702
2703 start-sanitize-sky
2704 Tue Mar 17 10:40:54 1998  Doug Evans  <devans@canuck.cygnus.com>
2705
2706         * config/tc-dvp.c (md_begin): Turn dma/vif packing on by default.
2707         (assemble_dma): Only output 8 bytes for actual dma insn if dma/vif
2708         packing is enabled.  Emit VIF cpu marker after dma insn.
2709
2710         * config/tc-dvp.h (TC_START_LABEL): Define.
2711         * config/tc-dvp.c (force_mach_label): New function.
2712         (md_begin,create_colon_label,s_dmadata): Use it.
2713
2714         * config/tc-dvp.c (s_enddmadata): Always fill dma data out to 16
2715         byte boundary.
2716
2717 Mon Mar 16 10:19:44 1998  Doug Evans  <devans@canuck.cygnus.com>
2718
2719         * config/tc-dvp.c (md_pseudo_table): Make .quad 16 bytes.
2720
2721 end-sanitize-sky
2722 Fri Mar 13 16:31:38 1998  Tom Tromey  <tromey@cygnus.com>
2723
2724         * depend.c (quote_string_for_make): New function.
2725         (wrap_output): Use it.
2726
2727 Thu Mar 12 18:28:22 1998  Nick Clifton  <nickc@cygnus.com>
2728
2729         * config/obj-elf.c (obj_elf_section): Set bss flag in seg_info
2730         structure if type is SHT_NOBITS.  [Bug fix courtesy of rth]
2731
2732 start-sanitize-sky
2733 Thu Mar 12 16:13:25 1998  Doug Evans  <devans@canuck.cygnus.com>
2734
2735         * config/tc-dvp.h (TC_FIX_TYPE,TC_INIT_FIX_DATA): Define.
2736         * config/tc-dvp.c (compute_nloop,check_nloop): New functions.
2737         (gif_insn_frag_loc): New static global.
2738         (assemble_gif): Record frag and location frag of insn.
2739         (md_apply_fix3): Validate user specified nloop if we couldn't do
2740         it earlier.
2741         (s_endgif): Queue fixup to install nloop if we can't compute it here.
2742
2743 Fri Mar  6 11:36:37 1998  Doug Evans  <devans@canuck.cygnus.com>
2744
2745         * config/tc-dvp.c (s_endgif): Fix nloop calc and test.  Warn if
2746         insufficient data present.  Fix insertion of computed nloop value.
2747         (install_vif_length): Second pass at unpack len calcs.
2748         (s_endunpack): Round data up to word boundary.
2749         (insert_mpg_marker): New function.
2750         (insert_file): New args insert_marker, size.  All callers updated.
2751         (assemble_vif): Rewrite varlen insn handling.
2752         (assemble_vu): Call insert_mpg_marker when 256th insn reached.
2753         (s_enddirect,s_endunpack): Rename arg to internal_p.
2754
2755 end-sanitize-sky
2756 start-sanitize-vr4320
2757 Tue Mar  3 11:37:26 1998  Gavin Koch  <gavin@cygnus.com>
2758
2759         * config/tc-mips.c : Added vr4320 similar to vr4300.
2760         
2761 end-sanitize-vr4320
2762 Sat Feb 28 17:28:55 1998  Richard Henderson  <rth@cygnus.com>
2763
2764         * config/tc-alpha.c (md_shortopts, md_longopts, md_parse_option):
2765         Recognize -GN and -relax.
2766         (md_begin): Initialize gp size from -G switch.
2767         (alpha_force_relocation): Always force if -relax.
2768         (alpha_align): Take a new argument that will specify when to 
2769         emit an R_ALPHA_ALIGN relocation (though we don't do that now).
2770         Change all callers.  Emit nop alignment padding as nop+unop pair.
2771
2772 Sat Feb 28 17:06:22 1998  Richard Henderson  <rth@cygnus.com>
2773
2774         * config/obj-elf.c [TC_ALPHA]: Include <elf/alpha.h>.
2775         * config/tc-alpha.h (ELF_TC_SPECIAL_SECTIONS): New.
2776
2777 Thu Feb 26 15:49:04 1998  Michael Meissner  <meissner@cygnus.com>
2778
2779         * config/tc-d30v.c (write_2_short): Delayed jsr instructions don't
2780         require padding to the next long word boundary.
2781
2782 start-sanitize-sky
2783 Fri Feb 27 10:06:59 1998  Doug Evans  <devans@canuck.cygnus.com>
2784
2785         * config/tc-dvp.c (assemble_vif): Insert cpu type marker before
2786         inserted binary files.
2787
2788 end-sanitize-sky
2789 start-sanitize-cygnus
2790 Wed Feb 25 11:43:45 1998  Doug Evans  <devans@canuck.cygnus.com>
2791
2792         * config/tc-m32r.c (optimize): New static local.
2793         (md_shortopts): Add -O.
2794         (md_parse_option): Recognize it.
2795         (md_show_usage): Document it.
2796         (md_assemble): Don't try to combine insns in parallel if !optimize.
2797
2798 end-sanitize-cygnus
2799 start-sanitize-cygnus
2800 Tue Feb 24 18:03:25 1998  Nick Clifton  <nickc@cygnus.com>
2801
2802         * config/tc-m32r.c (first_writes_to_seconds_operands):
2803         Reinitialise b_operands for each pass of the inner loop.
2804 end-sanitize-cygnus
2805 start-sanitize-sky
2806 Tue Feb 24 11:01:25 1998  Doug Evans  <devans@canuck.cygnus.com>
2807
2808         * config/tc-dvp.h (tc_frob_label): Define.
2809         * config/tc-dvp.c (dvp_frob_label): New function.
2810         (create_colon_label): New argument `sto'.  All callers updated.
2811         (record_mach): New argument `force_next_p'.  All callers updated.
2812         (cpu_sto): New function.
2813         (UNIQUE_LABEL_PREFIX): New macro.
2814         (unique_label): Use it.
2815         (assemble_gif): Emit start label before mach label.
2816         (s_endgif): Update.  NLOOP is in quadwords for IMAGE mode now.
2817
2818 Mon Feb 23 15:55:12 1998  Doug Evans  <devans@canuck.cygnus.com>
2819
2820         * config/tc-dvp.c (assemble_dma): Do alignment before parsing insn.
2821         (setup_dma_autocount): Renamed from setup_autocount.  New argument
2822         inline_p.  All callers changed.  Fix word address of count.
2823         (parse_dma_addr_autocount): Fix word address of address.
2824
2825 end-sanitize-sky
2826 start-sanitize-sky
2827 Mon Feb 23 17:24:06 1998  Jim Lemke  <jlemke@cygnus.com>
2828
2829         * config/obj-elf.c: Take Ian's suggestion, leave .bss etc
2830         in special_sections table and add .vubss etc via
2831         ELF_TC_SPECIAL_SECTIONS.
2832         * config/tc-dvp.h: Likewise.
2833
2834 end-sanitize-sky
2835 Mon Feb 23 11:29:06 1998  Doug Evans  <devans@seba.cygnus.com>
2836
2837         * cgen.c: #include symcat.h.
2838         * config/tc-m32r.c: Likewise.
2839
2840 Mon Feb 23 10:27:40 1998  Jeffrey A Law  (law@cygnus.com)
2841
2842         * config/tc-mips.c (mips_ip, case 'P'): Make 'P' arguments be
2843         absolute expressions instead of '$' prefixed register names.
2844
2845 Sat Feb 21 22:36:52 1998  Richard Henderson  <rth@cygnus.com>
2846
2847         * read.c (s_set): Record file and line info for symbols when -as.
2848         (pseudo_set): Don't overwrite that dummy fragment.
2849
2850 start-sanitize-sky
2851 Fri Feb 20 12:43:02 1998  Doug Evans  <devans@canuck.cygnus.com>
2852
2853         * config/tc-dvp.c (md_assemble): Handle ASM_DIRECT state.
2854         (dvp_parse_done): Comment out contents.
2855         (s_enddirect,s_endmpg,s_endunpack): Call demand_empty_rest_of_line.
2856         (s_state): Handle .vu in included file.
2857         (asm_state): New state ASM_GIF.
2858         (asm_state_stack): Maintain stack of parsing states.
2859         ({push,pop,set}_asm_state): New functions.
2860         (CUR_ASM_STATE): Renamed from cur_asm_state, all uses updated.
2861         (gif_{insn_type,data_name,insn_frag}): New static locals.
2862         (md_assemble): Watch for .endgif if in ASM_GIF state.
2863         (assemble_gif): Complete.
2864         (s_endgif): Complete.
2865         (cur_mach): New static local.
2866         (record_mach): New function.
2867         (md_begin): Initialize `cur_mach'.
2868         (assemble_*): Record current mach type.
2869         (vu_count): New static local.
2870         (assemble_vif): Temporary hack to properly align mpg/direct data.
2871         (assemble_vu): Insert mpg every 256 insns.
2872
2873 end-sanitize-sky
2874 Fri Feb 20 15:03:13 1998  Ian Lance Taylor  <ian@cygnus.com>
2875
2876         * config/tc-ppc.c (md_pseudo_table): Add "section".
2877         (ppc_named_section): New static function.
2878
2879 Thu Feb 19 22:25:42 1998  Richard Henderson  <rth@cygnus.com>
2880
2881         * tc-ppc.c (ppc_biei): Cache the last symbol we inserted
2882         so we don't have to scan the entire list.
2883
2884 Tue Feb 17 17:02:15 1998  Fred Fish  <fnf@cygnus.com>
2885
2886         * config/tc-d30v.c (parallel_ok): For the explicitly parallel
2887         case, allow the parallel instructions to modify the same flag
2888         bits.
2889
2890 Thu Feb 19 16:08:15 1998  Richard Henderson  <rth@cygnus.com>
2891
2892         * listing.c (list_symbol_table): Categorize symbols by
2893         undefined_section rather than sy_frag->line == NULL.
2894
2895 start-sanitize-sky
2896 Thu Feb 19 02:17:03 1998  Doug Evans  <devans@charmed.cygnus.com>
2897
2898         * config/tc-dvp.c (LOCAL_LABEL_PREFIX,END_LABEL_PREFIX): New macros.
2899         (inline_dmadata): Renamed from s_dmadata_implied.
2900         (assemble_one_insn): Rewrite dma operand processing.
2901         (md_apply_fix3): Handle DVP_OPERAND_DMA_NEXT.
2902         (unique_name,setup_autocount): New functions.
2903
2904         * config/tc-dvp.c: Include stdarg.h/varargs.h.
2905         (md_pseudo_table): Add .word.
2906         (assemble_dma): Set alignment to 16 bytes.  Enable code that records
2907         fixups.
2908         (assemble_one_insn): Handle DVP_OPERAND_DMA_{ADDR,AUTOCOUNT}.
2909         (md_apply_fix3): Handle DVP_OPERAND_DMA_ADDR.
2910         (parse_dma_addr_autocount): Renamed from parse_dma_ptr_autocount.
2911         Rewrite.
2912         (eval_expr): New function.
2913         (create_label,create_colon_label): New function.
2914         (s_enddmadata): Rewrite.
2915
2916 end-sanitize-sky
2917 Wed Feb 18 23:39:46 1998  Richard Henderson  <rth@cygnus.com>
2918
2919         * Makefile.am (install-exec-local): Install properly when ln
2920         fails or tooldir == prefix.
2921
2922 start-sanitize-cygnus
2923 Wed Feb 18 18:11:42 1998  Nick Clifton  <nickc@cygnus.com>
2924
2925         * config/tc-m32r.c (first_writes_to_seconds_operands): Special
2926         handling of updates to the condition bit as this is shadow by
2927         several registers.
2928 end-sanitize-cygnus
2929 start-sanitize-sky
2930 Wed Feb 18 15:49:56 1998  Doug Evans  <devans@canuck.cygnus.com>
2931
2932         * config/tc-dvp.c (parse_float): New function.
2933         (assemble_vu): Handle loi insns.
2934         (assemble_one_insn): Simplify suffix parsing.
2935         Handle DVP_OPERAND_FLOAT.  Allow FAKE arguments to have a parser
2936         handler.
2937
2938 end-sanitize-sky
2939 start-sanitize-cygnus
2940 Wed Feb 18 14:30:26 1998  Nick Clifton  <nickc@cygnus.com>
2941
2942         * doc/c-m32r.texi (M32R-Opts): Add --Wp and --Wnp.
2943
2944         * doc/as.texinfo (Overview): Add --Wp and --Wnp.
2945
2946         * config/tc-m32r.c (md_longopts): Accept --Wp as an abbreviation
2947         for --warn-explicit-parallel-conflicts and --Wnp as an
2948         abbreviation for --no-warn-explicit-parallel-conflicts.
2949         (assemble_parallel_insn): Use non-relaxable versions of branch
2950         instructions. 
2951
2952 Wed Feb 18 11:00:18 1998  Nick Clifton  <nickc@cygnus.com>
2953
2954         * app.c: Parse || as a seperator between assembler statements.
2955
2956 end-sanitize-cygnus
2957 Tue Feb 17 18:58:51 1998  Doug Evans  <devans@seba.cygnus.com>
2958
2959         * cgen.c (cgen_md_apply_fix3): Delete call to validate_operand.
2960         Test result of insert_operand for error.
2961
2962 start-sanitize-cygnus
2963 Mon Feb 16 12:28:40 1998  Nick Clifton  <nickc@cygnus.com>
2964
2965         * config/tc-m32r.c (md_assemble): Only parallelise instructions
2966         when m32rx target is enabled and the instructions are not
2967         relaxable. 
2968
2969 Fri Feb 13 14:42:16 1998  Nick Clifton  <nickc@cygnus.com>
2970
2971         * config/tc-m32r.c (first_writes_to_seconds_operands): Do not
2972         bother checking insn which have no operands.
2973
2974 end-sanitize-cygnus
2975 Fri Feb 13 16:41:42 1998  Ian Lance Taylor  <ian@cygnus.com>
2976
2977         * Makefile.am (AUTOMAKE_OPTIONS): Add cygnus.
2978         * configure, Makefile.in, aclocal.m4: Rebuild with automake 1.2e.
2979         * doc/Makefile.am (AUTOMAKE_OPTIONS): Define.
2980         * doc/Makefile.in: Rebuild.
2981
2982 start-sanitize-cygnus
2983 Fri Feb 13 09:57:11 1998  Nick Clifton  <nickc@cygnus.com>
2984
2985         * config/tc-m32r.c (first_writes_to_seconds_operands): New
2986         function.  Replaces get_src_reg(), check_for_side_effects(),
2987         reads_from_src_reg().  Uses new insn operand features of cgen.
2988         (writes_to_pc): New function., but with new code suppressed for now.
2989         (md_assemble): Call first_writes_to_seconds_operands().
2990 end-sanitize-cygnus
2991 Fri Feb 13 00:47:44 1998  Ian Lance Taylor  <ian@cygnus.com>
2992
2993         * config/tc-mips.c (macro_build): Handle operand type 'C'.
2994         (macro): Fix handling of M_COP[0-3].
2995
2996 Thu Feb 12 14:06:59 1998  Ian Lance Taylor  <ian@cygnus.com>
2997
2998         Based on patches from Ross Harvey <ross@teraflop.com>:
2999         * macro.c (ISSEP): Only treat '<' and '>' as separator characters
3000         if macro_alternate or macro_mri.
3001         (getstring): Remove support for byte constants between < and >.
3002         (get_any_string): '<' only starts a string if macro_alternate or
3003         macro_mri.
3004         (macro_expand_body): Permit keyword parameters following
3005         positional parameters.
3006
3007         NetBSD patches from Gordon W. Ross <gwr@mc.com>:
3008         * configure.in (alpha*-*-netbsd*): New target.
3009         * config/te-nbsd.h (LOCAL_LABELS_FB): Define.
3010         * configure: Rebuild.
3011
3012         * as.h (flag_warn_suppress_instructionswap): Move from here...
3013         * config/tc-d10v.c (flag_warn_suppress_instructionswap): ...to
3014         here, and make static.
3015
3016         * ehopt.c (eh_frame_code_alignment): Only use seg_info if
3017         BFD_ASSEMBLER or MANY_SEGMENTS.
3018
3019         * as.c (show_usage): Update bug-gnu-utils address.
3020         * gasp.c (show_usage): Likewise.
3021         * doc/as.texinfo (Bug Reporting): Likewise.
3022
3023 Wed Feb 11 23:26:28 1998  Jeffrey A Law  (law@cygnus.com)
3024
3025         * config/tc-mips.c (load_address): Don't use mips III or mips IV
3026         insns regardless of the size of a pointer if we're in mips I or
3027         MIPS II mode.
3028         (macro, macro2, s_cprestore, s_cpadd): Likewise.
3029
3030 Thu Feb 12 03:41:00 1998  J"orn Rennecke  <amylaar@cygnus.co.uk>
3031
3032 Fix rac to accept only a0:
3033         * tc-d10v.c (parallel_ok, find_opcode):
3034         Split OPERAND_ACC into OPERAND_ACC0 and OPERAND_ACC1.
3035         Introduce OPERAND_GPR.
3036
3037 Wed Feb 11 16:28:13 1998  Richard Henderson  <rth@cygnus.com>
3038
3039         * read.c (s_fill): Handle non-constant repeat counts by creating
3040         an rs_space fragment.
3041
3042 start-sanitize-cygnus
3043 Wed Feb 11 10:32:28 1998  Nick Clifton  <nickc@cygnus.com>
3044
3045         * doc/c-m32r.texi: Document warning and error messages.  Add
3046         descriptions of --warn-explicit-parallel-conflicts.
3047
3048         * doc/as.texinfo: Add more m32rx command line options.
3049
3050 end-sanitize-cygnus
3051 Tue Feb 10 18:31:31 1998  Ian Lance Taylor  <ian@cygnus.com>
3052
3053         * config/tc-i386.c (i386_operand): Change error added Jan 2 1998
3054         from as_bad to as_warn.
3055
3056 start-sanitize-sky
3057 Tue Feb 10 15:15:40 1998  Doug Evans  <devans@canuck.cygnus.com>
3058
3059         * config/tc-dvp.c (*): pke->vif, gpuif->gif.
3060
3061 end-sanitize-sky
3062 Tue Feb 10 18:04:00 1998  Jim Lemke  <jlemke@cygnus.com>
3063
3064         * as.c: (perform_an_assembly_pass): Use [TEXT|DATA|BSS]_SECTION_NAME
3065         * as.h: Define default values of [TEXT|DATA|BSS]_SECTION_NAME
3066         * config/obj-elf.c (elf_begin): Use [TEXT|DATA|BSS]_SECTION_NAME
3067 start-sanitize-sky
3068         * config/tc-dvp.h: Add configuration specific section names.
3069 end-sanitize-sky
3070
3071 Tue Feb 10 17:58:18 1998  Ian Lance Taylor  <ian@cygnus.com>
3072
3073         * ehopt.c (eh_frame_code_alignment): If not BFD_ASSEMBLER, use
3074         seg_fix_rotP rather than fix_root from seg_info.
3075
3076 Tue Feb 10 15:32:22 1998  Ian Carmichael  <iancarm@cygnus.com>
3077
3078         * expr.c: Add support for 0x1_2_3_4 bignums.
3079
3080 Tue Feb 10 14:43:40 1998  Ian Lance Taylor  <ian@cygnus.com>
3081
3082         * configure.in: Change -linux* to -linux-gnu*.
3083         * configure: Rebuild.
3084
3085         * app.c (do_scrub_begin): Treat \r as whitespace.
3086
3087 start-sanitize-cygnus
3088 Mon Feb  9 16:23:11 1998  Nick Clifton  <nickc@cygnus.com>
3089
3090         * config/tc-m32r.c (get_src_reg): Use m32r_cgen_get_operand()
3091         rather than parsing syntax string manually.
3092         (assemble_parallel_insn): Check for both forms of parallel
3093         conflict. 
3094 end-sanitize-cygnus
3095 Mon Feb  9 14:16:11 1998  Ian Lance Taylor  <ian@cygnus.com>
3096
3097         * Makefile.am: Update dependencies.
3098         * Makefile.in: Rebuild.
3099
3100 Sat Feb  7 15:33:51 1998  Ian Lance Taylor  <ian@cygnus.com>
3101
3102         * configure, aclocal.m4: Rebuild with new libtool.
3103
3104 Fri Feb  6 16:08:30 1998  Jeffrey A Law  (law@cygnus.com)
3105
3106         * config/tc-mips.c (md_begin): If mips_cpu is set, then use it as
3107         the argument to bfd_set_arch_mach.
3108         (load_address): Use bfd_arch_bits_per_address to determine the
3109         bit size of an address instead of looking at the isa level.
3110         (macro, macro2, s_cprestore, s_cpadd): Likewise.
3111
3112 Fri Feb  6 14:44:34 1998  Nick Clifton  <nickc@cygnus.com>
3113
3114         * config/tc-v850.c (md_parse_option): Add -mv850any command line option.
3115
3116 Thu Feb  5 12:39:08 1998  Ian Lance Taylor  <ian@cygnus.com>
3117
3118         * ehopt.c: New file.
3119         * as.h (enum _relax_state): Add rs_cfa.
3120         (check_eh_frame, eh_frame_estimate_size_before_relax): Declare.
3121         (eh_frame_relax_frag, eh_frame_convert_frag): Declare.
3122         * read.c (emit_expr): Call check_eh_frame.
3123         * write.c (cvt_frag_to_fill): Handle rs_cfa.
3124         (relax_segment): Likewise.
3125         * Makefile.am: Rebuild dependencies.
3126         (GAS_CFILES): Add ehopt.c.
3127         (GENERIC_OBJS): Add ehopt.o.
3128         * doc/internals.texi (Frags): Document rs_cfa.
3129
3130         * as.c (show_usage): Mention --traditional-format.
3131         (parse_args): Accept --traditional-format.
3132         * as.h (flag_traditional_format): Declare.
3133         * output-file.c (output_file_create): If flag_traditional_format,
3134         set BFD_TRADITIONAL_FORMAT on stdoutput.
3135         * doc/as.texinfo, doc/as.1: Document --traditional-format.
3136
3137         * config/tc-mips.c (append_insn): Make sure that if we have a
3138         fixup for an unmatched %hi reloc, it does not associated with a
3139         variant frag.
3140
3141         * configure, Makefile.in, aclocal.m4: Rebuild with new libtool.
3142         * doc/Makefile.in: Likewise.
3143
3144 Wed Feb  4 15:41:54 1998  Nick Clifton  <nickc@cygnus.com>
3145
3146         * config/tc-m32r.c (check_for_side_effects): New function.
3147         (can_make_parallel): Add checks for instruction side effects
3148         clashing with the other instruction.
3149         (assemble_parallel_insn): Improve warning messages.  Return error
3150         message from non-swapped instruction order.
3151
3152 Wed Feb  4 20:00:26 1998  James G. Smith  <jsmith@teknema.demon.co.uk>
3153
3154         * config/tc-arm.c: Rename arm_after_pass_hook() to arm_cleanup().
3155
3156         * config/tc-arm.h: Replace md_after_pass_hook definition with a
3157         md_cleanup definition.  This moves the forced literal output to
3158         the end of the source pass, and avoids macro's inserting literals
3159         into the code immediately after the macro expansion.
3160
3161 Wed Feb  4 13:17:19 1998  Ian Lance Taylor  <ian@cygnus.com>
3162
3163         * config/tc-sparc.h (tc_fix_adjustable) [OBJ_ELF]: A reloc against
3164         a gas internal symbol is adjustable.
3165         * config/tc-ppc.h (tc_fix_adjustable): Likewise.
3166
3167         * as.h: If gcc version greater than 2.6, use `__format__' and
3168         `__printf__' in function attributes, rather than `format' and
3169         `printf'.
3170
3171 Mon Feb  2 18:38:18 1998  Ian Lance Taylor  <ian@cygnus.com>
3172
3173         * config/tc-sparc.c: Only include elf/sparc.h if OBJ_ELF.
3174
3175 Mon Feb  2 18:30:34 1998  Steve Haworth  <steve@pm.cse.rmit.EDU.AU>
3176
3177         Add tms320c30 support:
3178         * config/tc-tic30.h: New file.
3179         * config/tc-tic30.c: New file.
3180         * config/obj-coff.h: If TC_TIC30, include coff/tic30.h and define
3181         TARGET_FORMAT as "coff-tic30".
3182         * configure.in (tic30-*-*aout*, tic30-*-*coff*): New targets.
3183         * Makefile.am: Rebuild dependencies.
3184         (CPU_TYPES): Add tic30.
3185         (CPU_OBJ_VALID): tic30-aout is valid.
3186         (TARGET_CPU_CFILES): Add config/tc-tic30.c.
3187         (TARGET_CPU_HFILES): Add config/tc-tic30.h.
3188         * configure, Makefile.in: Rebuild.
3189
3190 Mon Feb  2 10:20:37 1998  Nick Clifton  <nickc@cygnus.com>
3191
3192         * config/tc-v850.c (md_assemble): Improvements to error messages.
3193
3194 Mon Feb  2 12:39:05 1998  Geoff Keating  <geoffk@ozemail.com.au>
3195
3196         * config/tc-ppc.c (md_apply_fix3): Change BFD_RELOC_HI16 and
3197         BFD_RELOC_HI16_S to store the high bits of any value.
3198
3199         * config/tc-ppc.h (tc_fix_adjustable): Undo change of Fri Jun 27.
3200         (TC_RELOC_RTSYM_LOC_FIXUP): Don't let the
3201         assembler calculate relocations to any external symbol at all.
3202         * config/tc-ppc.c (md_apply_fix3) [OBJ_ELF]: Correct bugs
3203         involving generation of pc-relative relocs.
3204         (md_pcrel_from_section) [OBJ_ELF]: The job this code used to do
3205         has been moved to md_apply_fix3.
3206
3207         * config/tc-ppc.c (md_apply_fix3): Fix test for too-far branch.
3208         (ppc_elf_suffix): Warn about 'identifier+constant@got' syntax,
3209         which actually means (the address of identifier's GOT entry) +
3210         constant, which is not particularly useful.
3211
3212 Fri Jan 30 11:02:35 1998  Doug Evans  <devans@canuck.cygnus.com>
3213
3214         * read.h (include_dirs): Declare.
3215         (include_dir_count,include_dir_maxlen): Declare.
3216 start-sanitize-sky
3217
3218         * config/tc-dvp.c (md_longopts): Add -no-dma, -no-dma-pke.
3219         (md_parse_option): Handle them.
3220         (md_show_usage): Print them.
3221         (output_dma,output_pke): New static globals.
3222         (assemble_pke): Handle -no-dma-pke.
3223         (insert_file): Search include dir list.
3224         (s_enddirect): Validate length if prespecified.
3225         (s_endmpg): Likewise.  Handle -no-dma-pke.
3226         (s_endunpack): Handle -no-dma-pke.
3227         (md_pcrel_from_section): Add offset to delay slot for
3228         undefined symbols.
3229 end-sanitize-sky
3230
3231 Fri Jan 30 11:47:02 1998  Ian Lance Taylor  <ian@cygnus.com>
3232
3233         * configure.in: Correct check for shared opcodes library.
3234         * configure: Rebuild.
3235
3236         * listing.c (buffer_line): If we can't open the file, set at_end.
3237         (listing_print): Remove unused local variable fi.
3238
3239         * config/m68k-parse.y (reglistpair): Handle register list in
3240         either order.
3241
3242         * config/vms-conf.h: Don't undef VERSION.
3243
3244 start-sanitize-cygnus
3245 Thu Jan 29 13:36:29 1998  Doug Evans  <devans@canuck.cygnus.com>
3246
3247         * config/tc-m32r.c (allow_m32rx): Must compile with K&R C.
3248         (m32rx support): only include #ifdef HAVE_CPU_M32RX.
3249
3250 end-sanitize-cygnus
3251 Thu Jan 29 14:42:44 1998  Pat Rankin  <rankin@eql.caltech.edu>
3252
3253         * Makefile.am (CONFIG_OBJS): New variable, containing part of old
3254         OBJS variable.
3255         (GENERIC_OBJS): New variable, with the rest of the old OBJS
3256         variable.
3257         (OBJS): Now just $(CONFIG_OBJS) and $(GENERIC_OBJS).
3258         ($(srcdir)/make-gas.com): Rename from make-gas.com.
3259         (stamp-mk.com): Replace $(OBJS) with $(GENERIC_OBJS).
3260         (EXTRA_DIST): Define.
3261         * vmsconf.sh: Handle {targ-cpu, obj-format, atof-targ} modules
3262         explicitly rather than via the list of object files.
3263         (gcc-as.opt): New file created when make-gas.com is run.
3264         * config-gas.com: Create {targ-cpu.h, obj-format.h, targ-env.h,
3265         itbl-cpu.h} to #include appropriate file rather than copying that
3266         file.
3267         * config/vms-conf.h: Synchronize with current config.in.
3268         * Makefile.in: Rebuild.
3269
3270 Thu Jan 29 18:48:19 1998  Bill Moyer  <billm@cygnus.com>
3271
3272         * config/tc-d30v.c (do_assemble): Added flag_explicitly_parallel.
3273         (parallel_ok): Relaxed parallel subinstruction dependency check.
3274
3275 start-sanitize-cygnus
3276 Wed Jan 28 16:27:27 1998  Nick Clifton  <nickc@cygnus.com>
3277
3278         * config/tc-m32r.c (md_assemble): Fix determination of when
3279         instructions can be combined in parallel.
3280
3281 end-sanitize-cygnus
3282 Wed Jan 28 14:35:00 1998  Bill Moyer <billm@cygnus.com>
3283
3284         * as.h (flag_warn_suppress_instructionswap): added new flag.
3285         * tc-d10v.c (md_parse_option,md_longopts): added "--nowarnswap" 
3286         command line argument.
3287         * tc-d10v.c (write_2_short): emit "Swapping instructions"
3288         warning only if flag_warn_suppress_instructionswap is false.
3289
3290 Wed Jan 28 16:41:19 1998  J.J. van der Heijden  <J.J.vanderHeijden@student.utwente.nl>
3291
3292         * configure.in (i386-*-mingw32*): New target.
3293         * configure: Rebuild.
3294
3295 Wed Jan 28 14:51:18 1998  Ian Lance Taylor  <ian@cygnus.com>
3296
3297         * symbols.c (resolve_symbol_value): Don't set the segment if it
3298         hasn't changed, and this is OBJ_AOUT without BFD_ASSEMBLER.
3299
3300         * config/obj-aout.h (S_IS_LOCAL): Correct typo--pass argument to
3301         S_GET_SEGMENT.
3302
3303 Wed Jan 28 13:54:50 1998  Pat Rankin  <rankin@eql.caltech.edu>
3304
3305         as.h (unlink): Reverse 13-Feb-97 change; use of unlink vs remove
3306         depends upon HAVE_{UNLINK,REMOVE} values rather than host
3307         compiler.
3308
3309 Wed Jan 28 13:48:08 1998  Ian Lance Taylor  <ian@cygnus.com>
3310
3311         * config/obj-coff.h (RESOLVE_SYMBOL_REDEFINITION): Define.
3312
3313 start-sanitize-sky
3314 Wed Jan 28 10:00:40 1998  Doug Evans  <devans@canuck.cygnus.com>
3315
3316         * configure.in: Add dvp support.
3317         * configure: Regenerate.
3318         * config/tc-dvp.[ch]: New files.
3319
3320 end-sanitize-sky
3321 Wed Jan 28 09:52:00 1998  Nick Clifton  <nickc@cygnus.com>
3322
3323         * config/tc-v850.c (v850_insert_operand): Display instruction when
3324         an error is encountered.
3325
3326 Tue Jan 27 13:32:01 1998  Robert Lipe  <robertl@dgii.com>
3327
3328         * configure.in (i386-*-sco3.2v5*): Defaults to ELF now.
3329         (i386-*-sco3.2v5*coff): New target.
3330         (i386-*-sco3.2*): New target.
3331         * configure: Rebuild.
3332
3333 Tue Jan 27 11:06:52 1998  Nick Clifton  <nickc@cygnus.com>
3334
3335         * config/tc-v850.c: Tidy error message production.
3336
3337 Tue Jan 27 12:24:32 1998  Ian Lance Taylor  <ian@cygnus.com>
3338
3339         * config/tc-arm.c (md_apply_fix3): Add new variable newimm to hold
3340         validate_immediate return value in the right type for comparisons
3341         to FAIL.
3342
3343 Tue Jan 27 06:51:59 1998  Richard Henderson  <rth@cygnus.com>
3344
3345         * listing.c (MAX_BYTES): Use listing variables not constants.
3346         (data_buffer): No longer an array, but a pointer.
3347         (calc_hex): sizeof(data_buffer) -> MAX_BYTES.
3348         (listing_listing): Allocate data_buffer.
3349
3350 Tue Jan 27 06:38:35 1998  Richard Henderson  <rth@cygnus.com>
3351
3352         * as.c (parse_args): Add --listing-lhs-width, --listing-lhs-width2,
3353         --listing-rhs-width, --listing-cont-lines.
3354         (show_usage): Update.
3355         * listing.c (listing_lhs_width, listing_lhs_width_second): New vars.
3356         (listing_lhs_cont_lines, listing_rhs_width): New vars.
3357         (print_lines): Use the variables instead of the constants.
3358         (listing_listing): Likewise.    
3359         * listing.h: Declare the new vars.
3360         
3361 Tue Jan 27 05:32:05 1998  Richard Henderson  <rth@cygnus.com>
3362
3363         * as.c (parse_args): Add --keep-locals alias for -L.
3364         Add --strip-local-absolute.
3365         (show_usage): Update.
3366         * as.h (flag_strip_local_absolute): New flag.
3367         * symbols.c (S_IS_LOCAL): Use it.
3368         * config/obj-aout.h (S_IS_LOCAL): Likewise.
3369         * config/obj-bout.h (S_IS_LOCAL): Likewise.
3370         * config/obj-coff.h (S_IS_LOCAL): Likewise.
3371
3372 Mon Jan 26 13:07:41 1998  Nick Clifton  <nickc@cygnus.com>
3373
3374         * config/tc-m32r.c: Detect if explicitly parallel instructions
3375         might have an io conflict and issue a warning message. 
3376
3377 start-sanitize-cygnus
3378 Mon Jan 26 12:38:54 1998  Nick Clifton  <nickc@cygnus.com>
3379
3380         * config/tc-m32r.c (reads_from_src_reg): Change second parameter
3381         to a count of the number of matches to skip.
3382         (can_make_parallel): Pass count of number of matches to skip to
3383         reads_from_src_reg().
3384
3385 end-sanitize-cygnus
3386 Thu Jan 22 17:51:44 1998  Nick Clifton  <nickc@cygnus.com>
3387
3388 start-sanitize-cygnus
3389         * config/tc-m32r.c: Add support for swapping fixups of swap
3390         instructions. 
3391 end-sanitize-cygnus
3392         * cgen.c (cgen_save_fixups, cgen_restore_fixups,
3393         cgen_swap_fixups): Functions to save, restore and swap the fixup
3394         chain with a backup copy.
3395         (cgen_asm_finish_insn): Returns address of constructed insn.
3396
3397 Wed Jan 21 16:49:10 1998  Richard Henderson  <rth@cygnus.com>
3398
3399         * listing.c (file_info_struct): Remove FILE, add POS.
3400         (last_open_file_info, last_open_file): New; a one entry FILE* cache.
3401         (file_info): Don't open the file.
3402         (buffer_line): Check for the file in the last_open cache, updating
3403         as necessary.
3404         (print_source): Don't reference file_info->file.
3405         (listing_listing): Likewise.
3406         (listing_print): Close the file in the cache, if any.
3407
3408 start-sanitize-cygnus
3409 Tue Jan 20 17:08:53 1998  Nick Clifton  <nickc@cygnus.com>
3410
3411         * config/tc-m32r.c (md_assemble): Add code to swap explicitly
3412         parallel instructions so that they are in the correct order.
3413         (reads_from_src_reg, get_src_reg, can_make_parallel,
3414         make_parallel): New functions to support opportunistic
3415         parallelisation of adjacent instructions.
3416
3417 end-sanitize-cygnus
3418 Fri Jan 16 14:51:48 1998  Ian Lance Taylor  <ian@cygnus.com>
3419
3420         * read.c (dwarf_file_string): New file static variable.
3421         (emit_expr): Look for constant sequence that leads up to a file
3422         name in DWARF debugging output.
3423         (stringer): Use dwarf_file_string to decide whether to accept a
3424         string as a file name.
3425
3426 Fri Jan 16 11:30:37 1998  Richard Henderson  <rth@cygnus.com>
3427
3428         * tc-m68k.c (m68k_ip): Remove absl->reglst MRI hack.
3429         (crack_operand): Add reg->reglst MRI hack.
3430         (r_seg): Put reglst symbols in reg_section.
3431         (m68k_frob_symbol): Frob reglst symbols into absolute_section.
3432
3433 Thu Jan 15 14:19:01 1998  Richard Henderson  <rth@cygnus.com>
3434
3435         * tc-sh.c (get_specific): Handle SGR & DBR.
3436
3437 Thu Jan 15 13:46:48 1998  Richard Henderson  <rth@cygnus.com>
3438
3439         * tc-h8300.c (parse_reg): Take the length of the symbol into
3440         account when attempting to match a register name.
3441         * tc-h8500.c (parse_reg): Likewise.
3442
3443 Wed Jan 14 17:52:33 1998  Nick Clifton  <nickc@cygnus.com>
3444
3445 start-sanitize-cygnus
3446         * config/tc-m32r.c (md_assemble): Add support for parsing parallel
3447         instructions.
3448 end-sanitize-cygnus
3449         * cgen.c: Formatting changes to improve readability.
3450
3451 Wed Jan 14 15:41:41 1998  Jeffrey A Law  (law@cygnus.com)
3452
3453         * config/tc-mips.c (macro): Rework division code to avoid unfilled
3454         delay slot.
3455
3456 Wed Jan 14 18:04:20 1998  Michael Meissner  <meissner@cygnus.com>
3457
3458         Based on a patch from Jim Wilson
3459         * config/tc-d30v.c (do_assemble): Remove non-ansi default case.
3460         (tc_gen_reloc): Handle cross section PC relative relocs
3461         correctly.
3462
3463 Wed Jan 14 15:02:19 1998  Doug Evans  <devans@seba.cygnus.com>
3464
3465         * config/tc-mips.c (mips_ip): Don't test pinfo flags if INSN_MACRO.
3466
3467 Mon Jan 12 13:04:57 1998  Doug Evans  <devans@seba.cygnus.com>
3468
3469         * cgen.c: #include setjmp.h.  Clean up pass over `struct foo' usage.
3470         (expr_jmp_buf): New static local.
3471         (cgen_parse_operand): Allow use of longjmp in parsing to handle errors.
3472         (cgen_md_operand): New function.
3473         * tc-m32r.c: Clean up pass over `struct foo' usage.
3474         (md_estimate_size_before_relax): Use CGEN_INSN_MNEMONIC.
3475
3476 Tue Jan  6 15:36:02 1998  Richard Henderson  <rth@cygnus.com>
3477
3478         * symbols.c (S_SET_SEGMENT): Don't set the segment for section syms.
3479         (S_IS_EXTERNAL, S_IS_LOCAL): Correct parenthetication.
3480
3481 Fri Jan  2 16:08:54 1998  Ian Lance Taylor  <ian@cygnus.com>
3482
3483         * config/tc-i386.c (i386_operand): Give an error if there are
3484         unrecognized characters after an expression.
3485
3486 For older changes see ChangeLog-9697