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