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