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