2001-02-10 Chris Demetriou <cgd@broadcom.com>
[platform/upstream/binutils.git] / gas / ChangeLog
1 2001-02-10  Chris Demetriou  <cgd@broadcom.com>
2
3         * config/tc-mips.c (md_parse_option): Don't try to compile
4         ELF-only option code if not ELF.
5
6 2001-02-08  David Mosberger  <davidm@hpl.hp.com>
7
8         * config/tc-ia64.h (md_elf_section_type): New macro.
9         (ELF_TC_SPECIAL_SECTIONS): Drop .IA_64.unwind and .IA_64.unwind_info
10         (they're now handled via ia64_elf_section_type.
11
12         * config/tc-ia64.c (unwind): New members saved_text_seg,
13         saved_text_subseg, and force_unwind_entry.
14         (optimize_unw_records): New function to optimize away unnecessary
15         unwind directives.
16         (ia64_elf_section_type): New function.
17         (output_unw_records): Generate unwind info only if the size is
18         non-zero or if it's forced for some other reason (e.g.,
19         handlerdata or a personality routine).
20         (generate_unwind_image): Don't switch back to previous
21         section---stay inside the unwind info section instead so that
22         handlerdata that may follow goes into the right place.
23         (dot_handlerdata): Force generation of unwind entry and save the
24         current active text segment before generating unwind image.
25         (dot_unwentry): Force generation of unwind entry.
26         (dot_personality): Ditto.
27         (dot_endp): Generate unwind table entry only if there is
28         some unwind info or the unwind entry was forced.
29
30         * config/tc-ia64.c (make_unw_section_name): New macro to form
31         unwind section name.
32         (generate_unwind_image): Add "text_name" argument.  Use it to
33         form unwind section name.
34         (dot_handlerdata): Determine current segment (section) name and
35         pass it to generate_unwind_image().
36         (dot_endp): Determine current segment (section) name and use
37         it to determine the appropriate unwind section name.
38         (ia64_md_do_align): Add missing ATTRIBUTE_UNUSED declarations to
39         n, fill, and max arguments.
40
41 2001-02-09  Schwidefsky  <schwidefsky@de.ibm.com>
42
43         * Makefile.am: Add linux target for S/390.
44         * configure.in: Likewise.
45         * config/tc-s390.c: New file.
46         * config/tc-s390.h: New file.
47
48 2001-02-09  Alexandre Oliva  <aoliva@redhat.com>
49
50         * config/tc-sh.c (md_pseudo_table): Add uaquad.  Use s_uacons for
51         2byte, 4byte and 8byte.
52
53 2001-02-08  Alan Modra   <alan@linuxcare.com.au>
54
55         * config/tc-hppa.c (pa_build_unwind_subspace): Don't call
56         md_number_to_chars with size > sizeof (valueT).
57
58 2001-02-06  H.J. Lu  <hjl@gnu.org>
59
60         * config/tc-ia64.h (TC_RELOC_RTSYM_LOC_FIXUP): Do fixup if
61         there is no relocation.
62
63 2001-02-06  H.J. Lu  <hjl@gnu.org>
64
65         * config/tc-ia64.h (TC_RELOC_RTSYM_LOC_FIXUP): New. Defined.
66
67         * config/tc-ia64.c (md_parse_option): Only accept the valid
68         ia64 options on "-axxx".
69
70 2001-02-05  Jim Wilson  <wilson@redhat.com>
71
72         * config/tc-ia64.c (errata_nop_necessary_p): Return 0 instead of
73         aborting for invalid operands.
74
75 2001-02-06  Alan Modra  <alan@linuxcare.com.au>
76
77         * config/tc-hppa.c (fix_new_hppa): Pass in unwind directly rather
78         than via pointer.  Update all callers.
79         (UNWIND_LOW32): Define.
80         (UNWIND_HIGH32): Define.
81         (pa_build_unwind_subspace): Use the above macros instead of dumping
82         bitfields directly.  Call frag_more once rather than multiple times.
83         (md_assemble): Use UNWIND_LOW32.
84         (pa_entry): Likewise
85         (pa_procend): Likewise.
86         (process_exit): Use UNWIND_HIGH32.
87
88 2001-02-04  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
89
90         * config/tc-m68hc11.h (LISTING_HEADER): Use m68hc11_listing_header
91         function to select the header according to the cpu.
92         (md_after_pass_hook, md_do_align): Remove.
93         (md_cleanup, m68hc11_cleanup): Remove.
94         (md_pcrel_from_section): Declare.
95         * config/tc-m68hc11.c (build_dbranch_insn): Remove insn_size.
96         (build_jump_insn, build_insn): Likewise.
97         (m68hc11_listing_header): New function.
98         (m68hc11_cleanup): Remove.
99
100 2001-02-02  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
101
102         * config/tc-m68hc11.c (relaxable_symbol): Relax externally visible
103         symbols because there is no support for shared libraries and these 
104         symbols can't be overridden (unless they are weak).
105
106 2001-02-01  Momchil Velikov  <velco@fadata.bg>
107
108         * dwarf2dbg.c (out_debug_abbrev): Terminate the abbreviations
109         for the compilation unit with a zero byte.
110
111 2001-01-30  Alan Modra  <alan@linuxcare.com.au>
112
113         * config/tc-hppa.c (pa_ip): Support 12 bit branches to absolute
114         destinations.  Correct range check for 17 and 22 bit branches.
115
116 2001-01-25  Nick Clifton  <nickc@redhat.com>
117
118         * config/tc-m68k.c (tc_gen_reloc): Do not abort if tcbit is
119         still set.  Issue an error message instead.
120         (md_estimate_size_before_relax): Delete unused variable
121         'buffer_address'.  Fixup parentheses around if statement.
122         
123 2001-01-23  Kazu Hirata  <kazu@hxi.com>
124
125         * as.c: Fix formatting.
126         * ehopt.c: Likewise.
127         * messages.c: Likewise.
128         * stabs.c: Likewise.
129         * symbols.c: Likewise.
130
131 2001-01-23  Ben Elliston  <bje@redhat.com>
132
133         * config/tc-m32r.c (m32r_handle_align): Declare type of fragp.
134
135 2001-01-22  Kazu Hirata  <kazu@hxi.com>
136
137         * config/tc-alpha.c: Fix formatting.
138
139 2001-01-19  Kazu Hirata  <kazu@hxi.com>
140
141         * config/tc-alpha.c: Fix formatting.
142
143 2001-01-18  Kazu Hirata  <kazu@hxi.com>
144
145         * config/tc-alpha.c: Fix formatting.
146
147 2001-01-18  Nick Clifton  <nickc@redhat.com>
148
149         * config/tc-arm.c (ldm_flags): Remove redundant bit from "fa" and
150         "da" flags.
151         (stm_flags): Remove redundant bit from "ed" and "da" flags.
152
153 2001-01-18  Alexandre Oliva  <aoliva@redhat.com>
154
155         * configure.in (cpu_type, arch): Match i386 too.
156         * configure: Rebuilt.
157
158 2001-01-16  Kazu Hirata  <kazu@hxi.com>
159
160         * config/tc-i386.c: Fix formatting.
161
162 2001-01-16  Alan Modra  <alan@linuxcare.com.au>
163
164         * config/tc-hppa.c (tc_gen_reloc): Use SEGREL32 instead of DIR32
165         relocs for .PARISC.unwind section.
166
167         * config/tc-hppa.c (pa_build_unwind_subspace): Build unwind
168         depending on section flags, not just for .text.
169
170 2001-01-15  Jim Wilson  <wilson@redhat.com>
171
172         * config/tc-ia64.c (ia64_flush_insns): Handle unwind directives
173         not immediately followed by an instruction.
174
175 2001-01-15  Kazu Hirata  <kazu@hxi.com>
176
177         * config/tc-m68hc11.c: Fix formatting.
178
179 2001-01-15  Nick Clifton  <nickc@redhat.com>
180
181         * symbols.c (colon): Change 'already defined symbol' from a
182         fatal error to an ordinary error.  There is no reason why this
183         error should be fatal.
184
185         * message.c (as_fatal): Delete output file, if one has been
186         created.
187
188 2001-01-14  Alan Modra  <alan@linuxcare.com.au>
189
190         * config/tc-hppa.h (TARGET_FORMAT): Add hppa-linux variants.
191
192 2001-01-14  Kazu Hirata  <kazu@hxi.com>
193
194         * config/tc-alpha.c: Fix formatting.
195         * config/tc-arc.c: Likewise.
196         * config/tc-arc.h: Likewise.
197         * config/tc-d10v.c: Likewise.
198         * config/tc-i370.c: Likewise.
199         * config/tc-i386.c: Likewise.
200         * config/tc-i960.c: Likewise.
201         * config/tc-m68k.c: Likewise.
202         * config/tc-ppc.c: Likewise.
203         * config/tc-sparc.c: Likewise.
204         * config/tc-tahoe.c: Likewise.
205         * config/tc-vax.c: Likewise.
206
207         * config/tc-arc.c: Fix formatting.
208
209         * config/tc-arc.c: Fix formatting.
210
211 2001-01-14  Alan Modra  <alan@linuxcare.com.au>
212
213         * config/tc-hppa.c (pa_build_unwind_subspace): Use SEGREL32 for
214         both 32 and 64 bit ELF.
215
216         * config/tc-hppa.c (pa_ip): Store `a' flag in bit zero of operand
217         and don't bother storing `m' for "ce" completer.  Tidy handling of
218         'J' and 'K' operands to suit.  Handle '<' and '>' operands.
219
220 Sun Jan 14 00:36:42 MET 2001  Jan Hubicka  <jh@suse.cz>
221
222         * tc-i386.h (TARGET_MACH): New macro.
223         (i386_mach): Declare.
224         * tc-i386.c (i386_mach): New function.
225
226 2001-01-13  Philip Blundell  <philb@gnu.org>
227
228         * doc/as.texinfo: Fix spelling and cross-references.
229
230         * doc/c-arm.texi: Fix typos.  Say that `;' is a line separator
231         character for all systems, not just GNU/Linux.  Make it explicit
232         that `-k' doesn't affect code generation, just ELF flags.
233
234 Sat Jan 13 01:47:35 MET 2001  Jan Hubicka <jh@suse.cz>
235
236         * config/tc-i386.c (md_assemble): Check cpu_flags even for nullary
237         instructions.
238
239 2001-01-12  Frank Ch. Eigler  <fche@redhat.com>
240
241         * cgen.c (gas_cgen_finish_insn): Call dwarf2_emit_insn.
242
243 2001-01-12  Nick Clifton  <nickc@redhat.com>
244
245         * as.c (print_args): Update copyright date to 2001.
246
247 2001-01-12  Peter Targett  <peter.targett@arccores.com>
248
249         * doc/c-arc.texi: New file.
250         Some sections to be expanded.
251
252 2001-01-12  Alan Modra  <alan@linuxcare.com.au>
253
254         * config/tc-i386.c (md_longopts): Recognize "--64" only for ELF.
255         (md_parse_option): Always accept "--32".
256
257 2001-01-11  Peter Targett  <peter.targett@arccores.com>
258
259         * as.h (TC_ARC): Ensure struc-symbol.h included.
260         * as.c (dwarf2dbg.h): Include to remove implicit declaration
261         warnings.
262         * struc-symbol.h (SYMBOLS_NEED_BACKPOINTERS): Define.
263         (TARGET_SYMBOL_FIELDS) added.
264
265         * doc/Makefile.am (CPU_DOCS): Added c-arc.texi.
266         * doc/c-arc.texi: New file.
267         Some sections to be expanded.
268         * doc/as.texinfo: Update command-line options.
269         Removed outdated text for ARC dependant features, instead include
270         text from above file.
271
272         * config/obj-elf.h (ELF_TARGET_SYMBOL_FIELDS): Define local flag.
273         (TARGET_SYMBOL_FIELDS): Alias to previous definition.
274         (targ-cpu.h) header.
275         * config/tc-arc.h:
276         * config/tc-arc.c: New updated configuration for
277         ARC, including selection of core variants, and extensibility of
278         instructions, registers etc. through directives.
279
280         * config/tc-arc.c (arc_extinst): Minor corrections for
281         error messages.
282         (arc_common) Likewise. Make alignment argument optional for local
283         symbols also, with default of zero.
284
285 2001-01-11  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
286
287         * config/tc-m68hc11.c (md_estimate_size_before_relax): Fix
288         STATE_INDEXED_OFFSET when the symbol is undefined (16-bit offset).
289         (build_indexed_byte): Don't relax indexed byte, use 16-bit offset
290         and fix_new_exp() instead.
291         (md_convert_frag): For indexed post byte use the symbol value
292         rather than the displacement.
293         (md_relax_table): Fix indexed offset relax.
294
295 2001-01-11  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
296
297         * config/tc-m68hc11.c (md_estimate_size_before_relax):Don't
298         relax weak symbols.
299         (relaxable_symbol): New function.
300
301 2001-01-11  Andreas Jaeger  <aj@suse.de>
302
303         * config/tc-i386.h (TC_RELOC_GLOBAL_OFFSET_TABLE): Removed, it's
304         not used anywhere.
305
306 2001-01-10  Nick Clifton  <nickc@redhat.com>
307
308         * config/tc-arm.c (arm_fix_adjustable): Define for OBJ_COFF.
309         * config/tc-arm.h (obj_fix_adjustable): Define for OBJ_COFF
310
311 2001-01-10  Nick Clifton  <nickc@redhat.com>
312
313         * symbols.c (DOLLAR_LABEL_CHAR): New constant - the magic
314         character used to dollar local symbols.
315         (LOCAL_LABEL_CHAR): New constant - the magic character used to
316         local label symbols.
317         (dollar_label_name): Use DOLLAR_LABEL_CHAR.
318         (fb_label_name): Prefix local labels with LOCAL_LABEL_PREFIX,
319         if defined.
320         Use LOCAL_LABEL_CHAR.
321         (decode_local_label_name): Skip LOCAL_LABEL_PREFIX.
322         Use DOLLAR_LABEL_CHAR and LOCAL_LABEL_CHAR.
323         (S_IS_LOCAL): Use DOLLAR_LABEL_CHAR and LOCAL_LABEL_CHAR.
324
325 2001-01-08  Bo Thorsen  <bo@suse.de>
326
327         * config/tc-i386.c (i386_immediate, i386_displacement):
328         GOTPCREL check fix.
329
330 2001-01-07  Ian Lance Taylor  <ian@zembu.com>
331
332         * doc/c-i386.texi (i386-Arch): Remove spaces incorrectly inserted
333         in last change.
334
335 2001-01-07  Philip Blundell  <philb@gnu.org>
336
337         * doc/as.texinfo (Bug Reporting): Update email address for
338         reports.
339         * README: Likewise.
340
341 Sat Jan  6 13:33:10 MET 2001  Jan Hubicka  <jh@suse.cz>
342
343         * configure.in: Define DEFAULT_ARCH for i386.
344         * tc-i386.c (md_assemble): Return after the error message;
345         move testing for 64bit operands to proper place.
346
347 2001-01-06  Jan Hubicka <jh@suse.cz>, Andreas Jaeger  <aj@suse.de>
348
349         * doc/as.texinfo: Document '#' as comment character for i386 and
350         x86_64. Add AMD x86-64 into menu of machine dependent information.
351
352         * doc/c-i386.texi: Document x86_64 extensions.
353
354 Fri Jan  5 13:26:42 MET 2001  Jan Hubicka  <jh@suse.cz>
355
356         * tc-i386.c (md_assemble): Handle third byte of the opcode as prefix.
357
358 Thu Jan  4 22:25:26 MET 2001  Jan Hubicka  <jh@suse.cz>
359
360         * tc-i386.c (cpu_arch): Add Pentium4 and modify sledgehammer entry.
361         * NEWS: Add note about Pentium4 support.
362
363 Wed Jan  3 17:26:32 MET 2001  Jan Hubicka  <jh@suse.cz>
364
365         * tc-i387.c (pi, pte, pt): Update.
366         (type_names): Add new types.
367
368 Wed Jan  3 16:26:52 MET 2001  Jan Hubicka  <jh@suse.cz>
369
370         * tc-i386.h (CpuK6, CpuAthlon, CpuSledgehammer, CpuMMX, Cpu3dnow,
371         CpuUnknown): Renumber
372         (CpuP4, CpuSSE2): New.
373         (CpuUnknownFlags): Add CpuP4 and CpuSSE2
374
375 2001-01-03  Philip Blundell  <pb@futuretv.com>
376
377         * config/tc-alpha.c (alpha_force_relocation): Handle vtable
378         relocs.
379         (alpha_fix_adjustable): Likewise.
380         (md_apply_fix): Likewise.
381
382 2000-12-31  H.J. Lu  <hjl@gnu.org>
383
384         * listing.c (listing_message): Allocate string only if it is
385         used.
386
387         * configure: Rebuild.
388
389 2000-12-31  Hans-Peter Nilsson  <hp@bitrange.com>
390
391         * doc/internals.texi (Relaxing with a table) <after relaxation>:
392         Point out caveats with generating fixups for the opcode in a frag.
393
394 Sat Dec 30 19:02:48 MET 2000  Jan Hubicka  <jh@suse.cz>
395
396         * configure.in: Add support for x86_64 and x86_64-*-linux-gnu*
397         * NEWS: Add x86_64.
398
399 2000-12-29  H.J. Lu  <hjl@gnu.org>
400
401         * listing.c (calc_hex): Print the variable part only if the
402         fragment type is rs_fill.
403
404 2000-12-29  Hans-Peter Nilsson  <hp@bitrange.com>
405
406         * doc/internals.texi (tc_conditional_pseudoop,
407         TC_LINKRELAX_FIXUP): Fix typos.
408
409 2000-12-28  Richard Henderson  <rth@redhat.com>
410
411         * write.c (subsegs_finish): Fix thinko last change -- don't
412         "optimize" the alignment == 0 case.
413
414 2000-12-28  Richard Henderson  <rth@redhat.com>
415
416         * as.h (rs_align_test): New.
417         * frags.c (NOP_OPCODE): Move default from read.c.
418         (MAX_MEM_FOR_RS_ALIGN_CODE): New default.
419         (frag_align_code): New.
420         * frags.h (frag_align_code): Declare.
421         * read.c (NOP_OPCODE): Remove.
422         (do_align): Use frag_align_code.
423         * write.c (NOP_OPCODE): Remove.
424         (get_recorded_alignment): New.
425         (cvt_frag_to_fill): Handle rs_align_test.
426         (relax_segment): Likewise.
427         (subsegs_finish): Align last subseg in section to the
428         section alignment.  Use frag_align_code.
429         * write.h (get_recorded_alignment): Declare.
430         * config/obj-coff.c (size_section): Handle rs_align_test.
431         (fill_section, fixup_mdeps): Likewise.
432         (write_object_file): Use frag_align_code.
433
434         * config/tc-alpha.c (alpha_align): Use frag_align_code.
435         (alpha_handle_align): New.
436         * config/tc-alpha.h (HANDLE_ALIGN): New.
437         (MAX_MEM_FOR_RS_ALIGN_CODE): New.
438
439         * config/tc-i386.h (md_do_align): Use frag_align_code.
440         (MAX_MEM_FOR_RS_ALIGN_CODE): New.
441
442         * config/tc-ia64.c (ia64_md_do_align): Don't do code alignment.
443         (ia64_handle_align): New.
444         * config/tc-ia64.h (HANDLE_ALIGN): New.
445         (MAX_MEM_FOR_RS_ALIGN_CODE): New.
446
447         * config/tc-m32r.c (m32r_do_align): Remove.
448         (m32r_handle_align): New.
449         (fill_insn): Use frag_align_code.
450         * config/tc-m32r.h (md_do_align): Remove.
451         (HANDLE_ALIGN, MAX_MEM_FOR_RS_ALIGN_CODE): New.
452         * config/tc-m88k.c, config/tc-m88k.h: Similarly.
453         * config/tc-mips.c, config/tc-mips.h: Similarly.
454
455         * config/tc-sh.c (sh_cons_align): Use rs_align_test.
456         (sh_handle_align): Likewise.  Handle rs_align_code.
457         (sh_do_align): Remove.
458         * config/tc-sh.h (md_do_align): Remove.
459         (MAX_MEM_FOR_RS_ALIGN_CODE): New.
460
461         * config/tc-sparc.c (sparc_cons_align): Use rs_align_test.
462         (sparc_handle_align): Likewise.  Handle rs_align_code.
463         * config/tc-sparc.h (md_do_align): Remove.
464         (MAX_MEM_FOR_RS_ALIGN_CODE): New.
465
466 2000-12-22  DJ Delorie  <dj@redhat.com>
467
468         * config/tc-d10v.c (md_assemble): set prev_seg and prev_subseg
469         when we assemble the first half of a pair.
470
471 2000-12-22  H.J. Lu  <hjl@gnu.org>
472
473         * config/tc-i386.c (reloc): Update the macro for non-bfd
474         assembler.
475         (BFD_RELOC_X86_64_GOTPCREL): Set to 0 for non-bfd assembler.
476
477 2000-12-22  H.J. Lu  <hjl@gnu.org>
478
479         * dwarf2dbg.c (dwarf2_finish): Remove #if BFD_ASSEMBLER.
480
481 Wed Dec 20 14:21:22 MET 2000  Jan Hubicka  <jh@suse.cz>
482
483         * tc-i386.h (i386_target_format): Define even for ELFs.
484         (QWORD_MNEM_SUFFIX): New macro.
485         (CpuK6,CpuAthlon,CpuSledgehammer, Cpu64, CpuNo64, CpuUnknownFlags):
486         New macros
487         (CpuMMX,CpuSSE,Cpu3dnow, CpuUnknown): Renumber.
488         (IgnoreSize, DefaultSize, No_?Suf, FWait, IsString, regKludge, IsPrefix,
489         ImmExt): Renumber.
490         (Size64, No_qSuf, NoRex64, Rex64): New macros.
491         (Reg64, Imm32S, Imm64, Disp32S, Disp64): New macros.
492         (Imm8, Imm8S, Imm16, Imm32, Imm1, BaseIndex, Disp8, Disp16, Disp32,
493         InOutPortReg,ShiftCount, Control, Debug, Test, FloatReg, FloatAcc,
494         SReg2, SReg3, Acc, JumpAbsolute, RegMMX, RegXMM, EsSeg, InvMem):
495         Renumber.
496         (Reg, WordReg): Add Reg64.
497         (Imm): Add Imm32S and Imm64.
498         (EncImm): New.
499         (Disp): Add Disp64 and Disp32S.
500         (AnyMem): Add Disp32S.
501         (RegRex, RegRex64): New macros.
502         (rex_byte): New type.
503         * tc-i386.c (set_16bit_code_flag): Kill.
504         (fits_in_unsigned_long, fits_in_signed_long): New functions.
505         (reloc): New parameter "signed"; support x86_64.
506         (set_code_flag): New.
507         (DEFAULT_ARCH): New macro; default to "i386".
508         (default_arch): New static variable.
509         (struct _i386_insn): New fields Operand_PCrel; rex.
510         (flag_16bit_code): Kill; All tests replaced to "flag_code == CODE_64BIT"
511         (flag_code): New enum and static variable.
512         (use_rela_relocations): New static variable.
513         (flag_code_names): New static variable.
514         (cpu_arch_flags): Default to CpuUnknownFlags|CpuNo64.
515         (cpu_arch): Add "sledgehammer"; Add CPUAthlon to Athlon and CpuK6 to
516         K6 and Athlon.
517         (i386_align_code): Return plain "nop" for x86_64.
518         (mode_from_disp_size): Support Disp32S.
519         (smallest_imm_type): Support Imm32S and Imm64.
520         (offset_in_range): Support size of 8.
521         (set_cpu_arch): Do not clobber to Cpu64/CpuNo64.
522         (md_pseudo_table): Add "code64"; use set_code_flat.
523         (md_begin): Emit sane error message on hash failure.
524         (tc_i386_fix_adjustable): Support x86_64 relocations.
525         (md_assemble): Support QWORD_MNEM_SUFFIX, REX registers,
526         instructions supported on particular arch just partially,
527         output of 64bit immediates, handling of Imm32S and Disp32S type.
528         (i386_immedaite): Support x86_64 relocations; support 64bit constants.
529         (i386_displacement): Likewise.
530         (i386_index_check): Cleanup; support 64bit addresses.
531         (md_apply_fix3): Support x86_64 relocation and rela.
532         (md_longopts): Add "32" and "64".
533         (md_parse_option): Add OPTION_32 and OPTION_64.
534         (i386_target_format): Call even for ELFs; choose between
535         elf64-x86-64 and elf32-i386.
536         (i386_validate_fix): Refuse GOTOFF in 64bit mode.
537         (tc_gen_reloc): Support rela relocations and x86_64.
538         (intel_e09_1): Support QWORD.
539
540 2000-12-15  Diego Novillo  <dnovillo@redhat.com>
541
542         * config/tc-i386.c (intel_e09_1): Only flag as a memory operand if
543         it's not an offset expression.
544         (intel_e10_1): Ditto. Also, if the operand is an offset expression,
545         keep the braces '[' and ']' in the output string.
546         (intel_e11): Ditto. Also remove comparison intel_parser.op_modifier
547         != FLAT. There is no such op_modifier.
548
549 2000-12-14  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
550
551         * dwarf2dbg.c: If we don't have <limits.h>, try including <sys/param.h>
552         if we have it.
553
554 2000-12-13  Kazu Hirata  <kazu@hxi.com>
555
556         * as.h: Fix formatting.
557         * cgen.h: Likewise.
558         * dwarf2dbg.c: Likewise.
559         * input-scrub.c: Likewise.
560         * read.h: Likewise.
561
562 2000-12-13  Mark Elbrecht  <snowball3@bigfoot.com>
563
564         * configure.in (i386-*-msdosdjgpp): Set bfd_gas to yes.
565         configure: Regenerate.
566
567 2000-12-13  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
568
569         * dwarf2dbg.c: #include <limits.h> only if it exists.
570
571 2000-12-13  Rodney Brown  <RodneyBrown@mynd.com>
572
573         * config/tc-hppa.c (pa_ip): Correct CHECK_FIELD typo.
574         (md_apply_fix): Here too.
575
576 2000-12-12  Jim Wilson  <wilson@redhat.com>
577
578         * config/tc-ia64.h (ia64_init): Add prototype.
579
580 2000-12-12  H.J. Lu  <hjl@gnu.org>
581
582         * dwarf2dbg.c: Enabled only if BFD_ASSEMBLER is defined.
583
584         * read.h (outputting_stabs_line_debug): Change it to int.
585         * stabs.c (outputting_stabs_line_debug): Likewise.
586
587 2000-12-12  Geoffrey Keating  <geoffk@redhat.com>
588
589         * config/obj-bout.c (obj_crawl_symbol_chain): Don't take
590         the address of a function result.
591
592 2000-12-12  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
593
594         * config/tc-ppc.c (md_pseudo_table): Add .file and .loc.
595         (md_assemble): Call dwarf2_emit_insn.
596         (shlib): Fix typo SHILB -> SHLIB.
597         (md_parse_option): Likewise.
598         (ppc_elf_validate_fix): Likewise:
599         * config/tc-ppc.h (DWARF2_LINE_MIN_INSN_LENGTH): New.
600
601 2000-12-12  Nick Clifton  <nickc@redhat.com>
602
603         * cgen.h: Fix formatting.
604         * input-scrub.c: Fix formatting.
605         * macro.c: Fix formatting.
606         * config/tc-mips.c: Fix formatting.
607         * doc/c-mips.texi: Fix formatting.
608
609 Mon Dec 11 14:35:42 MET 2000  Jan hubicka  <jh@suse.cz>
610
611         * tc-i386.c (md_assemble): Refuse 's' and 'l' suffixes in the intel
612         mode; convert 'd' suffix to 's' or 'l'; remove all DWORD_MNEM_SUFFIX
613         references.
614         (intel_e09_1): Convert QWORD to 'l' suffix for FP operations; refuse
615         otherwise.
616         * tc-i386.h (DWORD_MNEM_SUFFIX): Kill.
617         (No_dSuf): Kill.
618
619         * i386.h (*_Suf): Remove No_dSuf.
620         (d_suf, wld_Suf,sld_Suf, sldx_Suf, bwld_Suf, d_FP, sld_FP, sldx_FP)
621         Remove.
622         (i386_optab): Remove 'd' in the suffixes.
623
624 2000-12-06  Mark Elbrecht  <snowball3@bigfoot.com>
625
626         * config/tc-i386.c (T_SHORT): Undefine before defining.
627
628 2000-12-05  Kazu Hirata  <kazu@hxi.com>
629
630         * config/tc-mips.c: Fix formatting.
631
632 2000-12-04  Matthew Hiller  <hiller@redhat.com>
633
634         * config/tc-d10v.c (flag_allow_gstabs_packing): New variable.
635         (md_longopts): New options --gstabs-packing, --no-gstabs-packing.
636         (md_show_usage): Ditto.
637         (md_parse_option): Ditto.
638         (d10v_cleanup): Writes pending instruction only if
639         ! outputting_stabs_line_debug || ! flag_allow_gstabs_packing.
640         Fix compile time warning messages.
641
642         * doc/c-d10v.texi: Documents new options.
643
644 2000-12-04  Matthew Hiller  <hiller@redhat.com>
645
646         * stabs.c (outputting_stabs_line_debug): New variable.
647         (stabs_generate_asm_lineno): Set outputting_stabs_line_debug at
648         function entry and unset at function exit.
649
650         * read.h (outputting_stabs_line_debug): New extern declaration.
651
652         * as.c: Include dwarf2dbg.h for definition of dwarf2_finish.
653
654         * dwarf2dbg.c: Fix compile time warning messages.
655
656 2000-12-03  Kazu Hirata  <kazu@hxi.com>
657
658         * config/tc-a29k.c: Fix formatting.
659         * config/tc-alpha.c: Likewise.
660         * config/tc-arm.c: Likewise.
661         * config/tc-cris.c: Likewise.
662         * config/tc-hppa.c: Likewise.
663         * config/tc-i370.c: Likewise.
664         * config/tc-i386.c: Likewise.
665         * config/tc-i860.c: Likewise.
666         * config/tc-i960.c: Likewise.
667         * config/tc-ia64.c: Likewise.
668         * config/tc-m68hc11.c: Likewise.
669         * config/tc-m68k.c: Likewise.
670         * config/tc-m88k.c: Likewise.
671         * config/tc-pj.c: Likewise.
672         * config/tc-ppc.c: Likewise.
673         * config/tc-sh.c: Likewise.
674         * config/tc-sparc.c: Likewise.
675         * config/tc-tahoe.c: Likewise.
676         * config/tc-vax.c: Likewise.
677
678 2000-12-01  Chris Demetriou  <cgd@sibyte.com>
679
680         * config/tc-mips.c (mips_ip): When calculating offsets,
681         don't accept as constant the difference between the
682         addresses of symbols in two different sections.
683
684         * config/tc-mips.c (macro_build): Add new 'U' and 'J' operand
685         specifiers.
686         (validate_mips_insn): Likewise.  Also, update 'B' operand
687         specifier to use OP_*_CODE20 constants and delete 'm' operand
688         specifier.
689         (mips_ip): Remove 'm' operand specifier, add 'U' and 'J'
690         operand specifiers.  Change warning generated by 'B' operand
691         specifier to reflect its new multi-purpose usage.
692
693         * config/tc-mips.c (mips_set_options): Use ISA_UNKNOWN rather than
694         -1, and update comment.
695         (file_mips_isa): Likewise.
696         (mips_cpu): Use CPU_UNKNOWN rather than -1, and update comment.
697         (ISA_HAS_COPROC_DELAYS, ISA_HAS_64BIT_REGS, gpr_interlocks): Use
698         ISA_* constants rather than hard-coded numbers.
699         (mips_cpu_info): New structure.
700         (mips_cpu_info_table): New table describing CPU and ISA names
701         and numbers.
702         (mips_cpu_info_from_name, mips_cpu_info_from_isa,
703         mips_cpu_info_from_cpu): New functions.
704         (mips_isa_to_str): New function to get string for ISA name.
705         (mips_cpu_to_str): Convert to use mips_cpu_info_from_cpu, and
706         return const char *.
707         (md_begin): Redo CPU and ISA selection logic, using
708         mips_cpu_info_from_*.  Convert to use ISA_* constants rather
709         than hard-coded numbers.
710         (append_insn, mips_emit_delays, macro, macro2): Convert to use
711         ISA_* constants rather than hard-coded numbers.
712         (mips_ip): Convert to use mips_isa_to_str to get ISA name.
713         (md_longopts): Delete OPTION_NO_MIPS32.
714         (md_parse_option): Convert to use ISA_* constants rather than
715         hard-coded numbers.  Make OPTIONS_MIPS32 case treat MIPS32
716         as an ISA.  Delete OPTION_NO_MIPS32 case.  Convert OPTION_MCPU
717         to use strcasecmp to recognize "default" and to use
718         mips_cpu_info_from_name to get CPU numbers from argument.
719         (md_show_usage): Move -mips32 so it's with the rest of the ISA
720         flags.  Change 4Kc, 4Kp and 4Km CPU entries to just be
721         mips32-4k.
722         (s_mipsset): Accept ISA value 32.
723         * doc/as.texinfo: Clean up MIPS options summary slightly,
724         remove -no-mips32.  Add note about -mips4 and -mips32
725         specifying those ISA levels.  Delete -mips32 and -no-mips32
726         cpu flag descriptions.
727         * doc/c-mips.texi: Add -mips32 to list of ISA switches.  Clean
728         up the supported CPU switch list, and replace 4Kc, 4Km, and
729         4Kp entries with a single mips32-4k entry.  Note that you can
730         use ".set mips32".
731
732         * tc-mips.c (ISA_HAS_64BIT_REGS): Add checks for ISA_MIPS5 and
733         ISA_MIPS64.
734         (md_longopts, OPTION_MIPS5, OPTION_MIPS64): Add options for
735         -mips5 and -mips64.
736         (md_parse_option): Add cases for OPTION_MIPS5 and
737         OPTION_MIPS64.
738         (md_show_usage): Mention -mips5 and -mips64 arguments.
739         (s_mipsset): Add cases for MIPS5 and MIPS64.
740         (mips_cpu_info_table): Add entries for MIPS5 and MIPS64 ISAs
741         and pseudo-CPUs.
742         * doc/as.texinfo: Mention -mips5 and -mips64 options
743         and their meanings.
744         * doc/c-mips.texi: Likewise.  Also update introduction
745         and ".set" usage information.
746
747         * config/tc-mips.c (md_show_usage): Add "sb1" to the
748         CPU list.
749         (mips_cpu_info_table): Add SB-1 entries.
750         * doc/c-mips.texi: Add "sb1" to the list of CPUs
751         known to the -mcpu option.
752
753         * doc/as.texinfo: Correct description of MIPS -mcpu
754         option, by copying some of the text from doc/c-mips.texi.
755
756 2000-12-01      Joel Sherrill <joel@OARcorp.com>
757
758         * configure.in (arm-*-rtems*, a29k-*rtems*, h8300-*-rtems*):
759         New targets.
760         (sparc*-*-rtemself*, sparc*-*-rtemsaout*): New targets.
761         (sparc*-*-rtems*): Switched from a.out to ELF.
762         * configure: Regenerate.
763         * config.in: Regenerate.
764         * Makefile.in: Regenerate.
765         * aclocal.m4: Regenerate.
766         * po/gas.pot: Regenerate.
767
768 2000-11-30  Philip Blundell  <pb@futuretv.com>
769
770         * config/obj-coff.c (obj_coff_weak): Use S_SET_WEAK if it exists,
771         even in non BFD_ASSEMBLER case.
772
773 2000-11-30  Diego Novillo  <dnovillo@redhat.com>
774
775         * tc-i386.c (md_assemble): Swap i.disp_relocs when using intel
776         syntax.
777
778 2000-11-29  Richard Henderson  <rth@redhat.com>
779
780         * dwarf2dbg.c: Rewrite from scratch.  Queue all debugging output
781         until dwarf2_finish; use relaxation to get cross-fragment offsets;
782         thread multiple subsegments properly; handle multiple code
783         sections properly; emit proper compilation unit info for assembler
784         generated debugging.
785
786         * as.h (enum _relax_state): Add rs_dwarf2dbg.
787         * dwarf2dbg.h (struct dwarf2_line_info): Remove filename.
788         (dwarf2dbg_estimate_size_before_relax): Declare.
789         (dwarf2dbg_relax_frag, dwarf2dbg_convert_frag): Declare.
790         * write.c: Include dwarf2dbg.h.
791         (cvt_frag_to_fill): Handle rs_dwarf2dbg.
792         (relax_segment): Likewise.
793
794 2000-11-28  Hans-Peter Nilsson  <hp@bitrange.com>
795
796         * config/tc-sh.c (md_convert_frag) <undefined symbol, conditional
797         jump>: Use as_bad_where instead of as_bad.  Tweak error message
798         accordingly.  Stabilize frag by updating fix part and resetting
799         variant part.
800         <undefined symbol, unconditional jump>: Ditto.
801         (sh_elf_cons): Cast *input_line_pointer to unsigned char when
802         indexing is_end_of_line[].
803         (md_assemble): Initialize size to 0.
804         (md_section_align): Mark parameter seg as unused.
805         (parse_reg): Parse names case-insensitively.
806
807 2000-11-28  Kazu Hirata  <kazu@hxi.com>
808
809         * config/obj-aout.h: Fix formatting.
810         * config/obj-bout.h: Likewise.
811         * config/obj-coff.c: Likewise.
812         * config/obj-coff.h: Likewise.
813         * config/obj-elf.h: Likewise.
814         * config/obj-som.h: Likewise.
815         * config/obj-vms.c: Likewise.
816         * config/obj-vms.h: Likewise.
817         * config/tc-h8300.h: Likewise.
818         * config/tc-ns32k.h: Likewise.
819         * config/tc-sparc.h: Likewise.
820         * config/tc-tic54x.h: Likewise.
821         * config/tc-z8k.h: Likewise.
822
823 2000-11-28  Nick Clifton  <nickc@redhat.com>
824
825         * doc/as.1 (COPYING): Mention that the GNU Free Documentation
826         License is present in the sources, but not the output, and
827         also available from the GNU website.
828         (GNU Free Documentation License): Comment out this section.
829
830 2000-11-28  Hans-Peter Nilsson  <hp@axis.com>
831
832         * Makefile.am (CPU_OBJ_VALID): Add case to filter out invalid coff
833         targets.  Remove i860 from valid a.out targets.
834         * Makefile.in: Regenerate.
835
836         * config/tc-cris.c: Include dwarf2dbg.h.
837         (md_pseudo_table): Add .file and .loc.
838         (md_assemble): Call dwarf2_emit_insn if generating ELF.
839         (s_cris_file, s_cris_loc): New.
840         * config/tc-cris.h (DWARF2_LINE_MIN_INSN_LENGTH): Define.
841         * Makefile.am: Regenerate dependencies.
842         * Makefile.in: Regenerate.
843
844 2000-11-28  Alan Modra  <alan@linuxcare.com.au>
845
846         * expr.c (STANDARD_MUL_PRECEDENCE): Correct value.
847         (MRI_MUL_PRECEDENCE): Likewise.
848         (op_rank): Fix a comment typo.
849
850 2000-11-26  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
851
852         * config/tc-m68hc11.c (build_indexed_byte): Print the offset in
853         the error message.
854         (get_operand): Fix analysis for movw/movb instructions.
855
856 2000-11-24  Nick Clifton  <nickc@redhat.com>
857
858         * configure.in (xscale-elf): Add target.
859         (xscale-coff): Add target.
860         * configure: Regenerate.
861
862         * config/tc-arm.c (ARM_EXT_V5E): New ARM architecture
863         extenstion.
864         (ARM_EXT_XSCALE): New ARM architecture extension.
865         (ARM_LONGMUL): Rename to ARM_EXT_LONGMUL.
866         (ARM_HALFWORD): Rename to ARM_EXT_HALFWORD.
867         (ARM_THUMB): Rename to ARM_EXT_THUMB.
868         (ARM_ARCH_V4): Remove processor from architecture.
869         (ARM_ARCH_3M): New architecutre definition.
870         (ARM_ARCH_V5TE): New architecutre definition.
871         (ARM_ARCH_XSCALE): New architecutre definition.
872         (CPU_DEFAULT): Allow to be defaulted to XScale.
873         (atpcs): New boolean variable.
874         (ldr_flags): Support 'd' flag for double word loads.
875         (str_flags): Support 'd' flag for double word stored.
876         (do_mia): New function.
877         (do_mar): New function.
878         (do_mra): New function.
879         (do_pld): New function.
880         (do_ldrd): New function.
881         (do_blx): New function.
882         (do_bkpt): New function.
883         (do_clz): New function.
884         (do_lstc2): New function.
885         (do_cdp2): New function.
886         (do_t_blx): New function.
887         (do_t_bkpt): New function.
888         (do_smla): New function.
889         (do_smlal): New function.
890         (do_smul): New function.
891         (do_qadd): New function.
892         (do_co_reg2c): New function.
893         (LONGEST_INSN): Redefine to 7.
894
895         * doc/c-arm.texi: Document -mxscale, -mmarmv5te and -matpcs
896         command line switches.
897
898 2000-11-22  Jim Wilson  <wilson@redhat.com>
899
900         * config/tc-ia64.c (pseudo_func): Add missing initializers.
901         (struct rsrc): Make line unsigned.
902         (gr_values): Add missing initializer.
903         (SLOT_NUM_NOT_SET): Add unsigned cast.
904         (ia64_elf_section_flags, output_vbyte_mem, count_output, dot_radix,
905         dot_fframe, dot_vframe, dot_vframesp, dot_vframepsp, dot_save,
906         dot_restore, dot_restorereg, dot_restorereg_p, dot_handlerdata,
907         dot_unwentry, dot_altrp, dot_saveg, dot_savef, dot_saveb, dot_savegf,
908         dot_spill, dot_spillreg, dot_spillreg_p, dot_label_state,
909         dot_copy_state, dot_unwabi, dot_personality, dot_proc, dot_body,
910         dot_prologue, dot_endp, dot_regstk, dot_psr, dot_alias, dot_ln,
911         dot_reg_val, dot_entry, dot_mem_offset, ia64_init, mark_resource,
912         md_undefined_symbol, md_apply_fix3, tc_gen_reloc, ia64_md_do_align):
913         Add ATTRIBUTE_UNUSED to unused parameters.
914         (convert_expr_to_ab_reg): Add parens.
915         (convert_expr_to_xy_reg): Add parens.  Comment out >= REG_GR test.
916         (dot_prologue): Initialize grsave when declared.
917         (md_pseudo_table): Add missing initializers.
918         (operand_match): Add casts to bfd_vma.
919         (emit_one_bundle): Delete unused local prev.  Make required_template
920         unsigned.
921         (specify_resource): Cast i to unsigned.
922         (note_register_values): Use fprintf_vma.
923         (print_dependency): Likewise.
924
925 2000-11-21  Jim Wilson  <wilson@redhat.com>
926
927         * config/tc-ia64.c (generate_unwind_image): Call record_alignment
928         for unwind info section.
929         (dot_endp): Likewise for unwind section.
930
931         * config/tc-ia64.c (emit_one_bundle): Pass size of 8 not 4 to
932         fix_new_exp.
933
934 2000-11-21  Jakub Jelinek  <jakub@redhat.com>
935
936         * config/tc-sparc.c (md_pseudo_table): Add .file and .loc.
937         (output_insn): Call dwarf2_emit_insn.
938         * config/tc-sparc.h (DWARF2_LINE_MIN_INSN_LENGTH): New.
939
940 2000-11-17  Richard Henderson  <rth@redhat.com>
941
942         * ehopt.c (eh_frame_code_alignment): New arg `in_seg', update all
943         callers.  Don't switch segments.  Expect CIE == -1 in .debug_frame.
944         (check_eh_frame): Handle .eh_frame and .debug_frame concurrently.
945
946 2000-11-17  Nick Clifton  <nickc@redhat.com>
947
948         * config/tc-arm.c (md_pseudo_table): Add support for .line and
949         .file pseudo ops.
950
951 2000-11-17  Richard Henderson  <rth@redhat.com>
952
953         * config/tc-i386.c (md_pseudo_table): Add .file and .loc.
954
955 2000-11-17  Richard Henderson  <rth@redhat.com>
956
957         * dwarf2dbg.c (dwarf2_gen_line_info): Early out for no line number.
958         * config/obj-elf.h (ECOFF_DEBUGGING) [TC_ALPHA]: Adjust for
959         tri-state definition of alpha_flag_mdebug.
960         * config/tc-alpha.c (alpha_flag_mdebug): Init to -1.
961         (s_alpha_file): Store first .file directive.
962         (s_alpha_stab): New.
963         (md_pseudo_table): Add stabs and stabn.
964
965 2000-11-17  Richard Henderson  <rth@redhat.com>
966
967         * config/tc-i386.c (md_assemble): Call dwarf2_emit_insn.
968
969 2000-11-17  Richard Henderson  <rth@redhat.com>
970
971         * as.c (debug_type): Init to DEBUG_UNSPECIFIED.
972         (main): Call dwarf2_finish.
973         * as.h (debug_type): Clarify documentation of the meaning
974         of this variable.
975         * dwarf2dbg.c (DWARF2_LINE_MIN_INSN_LENGTH): Default to 1.
976         (print_stats): Fix parenthesis problem.
977         (now_subseg_size): New.
978         (dwarf2_finish): Use it.  If DEBUG_DWARF2, emit bits for .debug_info.
979         (dwarf2_directive_file): Don't set debug_type.
980         (dwarf2_where): Honor DEBUG_DWARF2 first.
981         (dwarf2_emit_insn): Renamed from dwarf2_generate_asm_lineno;
982         do nothing if not emitting dwarf2 debug info, or no work.
983         * dwarf2dbg.h (dwarf2_emit_insn): Update.
984         * ecoff.c (add_file): Turn on DEBUG_ECOFF only if DEBUG_UNSPECIFIED.
985         (ecoff_new_file): Likewise.
986         * read.c (generate_lineno_debug): Kill ecoff hackery.  Update
987         commentary wrt dwarf2.
988
989         * config/tc-alpha.c (alpha_adjust_symtab_relocs): Add
990         ATTRIBUTE_UNUSED as needed.
991         (emit_insn): Call dwarf2_emit_insn.
992         (s_alpha_file): New.
993         (s_alpha_loc): New.
994         (s_alpha_coff_wrapper): Don't handle them.
995         (md_pseudo_table): Update for .file and .loc.
996         * config/tc-alpha.h (DWARF2_LINE_MIN_INSN_LENGTH): New.
997
998         * config/tc-arm.c (output_inst): Update for dwarf2_emit_insn;
999         don't protect with debug_type.
1000         * config/tc-hppa.c (md_assemble): Likewise.
1001         * config/tc-m68hc11.c (m68hc11_new_insn): Likewise.
1002         * config/tc-mn10300.c (md_assemble): Likewise.
1003         * config/tc-sh.c (md_assemble): Likewise.
1004         * config/tc-v850.c (md_assemble): Likewise.
1005
1006         * config/tc-arm.c (arm_end_of_source): Remove.
1007         * config/tc-hppa.c (pa_end_of_source): Remove.
1008         * config/tc-m68hc11.c (m68hc11_end_of_source): Remove.
1009         * config/tc-mn10300.c (mn10300_finalize): Remove.
1010         * config/tc-sh.c (sh_finalize): Remove.
1011         * config/tc-v850.c (sh_finalize): Remove.
1012
1013         * config/tc-arm.h (md_end): Remove.
1014         * config/tc-hppa.h (md_end): Remove.
1015         (DWARF2_LINE_MIN_INSN_LENGTH): New.
1016         * config/tc-m68hc11.h (md_end): Remove.
1017         * config/tc-mn10300.h (md_end): Remove.
1018         * config/tc-sh.h (md_end): Remove.
1019         * config/tc-v850.h (md_end): Remove.
1020
1021         * config/tc-ia64.c (emit_one_bundle): Don't protect
1022         dwarf2 bits with debug_type.
1023         (md_assemble): Likewise.
1024         (ia64_end_of_source): Don't call dwarf2_finish.
1025
1026 2000-11-16  Jim Wilson  <wilson@redhat.com>
1027
1028         * config/tc-ia64.c (errata_nop_necessary_p): Abort if general regno
1029         >= 128 instead of > 128.  Abort if predicate regno is >= 64 instead of
1030         > 16.
1031
1032 2000-11-16  H.J. Lu  <hjl@gnu.org>
1033
1034         * config/obj-elf.c (obj_elf_symver): Don't check the missing
1035         version name.
1036
1037 2000-11-15  Kazu Hirata  <kazu@hxi.com>
1038
1039         * config/tc-tic30.c: Fix formatting.
1040         * config/tc-tic80.c: Likewise.
1041         * config/tc-v850.c: Likewise.
1042         * config/tc-vax.c: Likewise.
1043         * config/tc-w65.c: Likewise.
1044         * config/tc-z8k.c: Likewise.
1045
1046 2000-11-14  DJ Delorie  <dj@redhat.com>
1047
1048         * config/tc-v850.c: Support dwarf2.
1049         * config/tc-v850.h: Ditto.
1050
1051         * config/tc-v850.c (cons_fix_new_v850): Don't rely on
1052         parse_cons_expression_v850 to initialize hold_cons_reloc.
1053
1054 2000-11-15  Bernd Schmidt  <bernds@redhat.com>
1055
1056         * tc-ia64.c (struct md): New entries LAST_GROUPS, GROUP_IDX.
1057         (errata_nops_necessary_p): New function.
1058         (emit_one_bundle): Call it.  Update the GROUP_IDX field in struct
1059         md.
1060
1061 2000-11-14  Jim Wilson  <wilson@redhat.com>
1062
1063         * config/tc-ia64.c (ia64_target_format): If EF_IA_64_BE not set, then
1064         return little endian bfd formats.
1065
1066 2000-11-14  Kazu Hirata  <kazu@hxi.com>
1067
1068         * config/aout_gnu.h: Fix formatting.
1069         * config/atof-vax.c: Likewise.
1070         * config/m68k-parse.h: Likewise.
1071         * config/m88k-opcode.h: Likewise.
1072         * config/obj-elf.c: Likewise.
1073         * config/tc-arm.c: Likewise.
1074         * config/tc-cris.c: Likewise.
1075         * config/tc-i386.c: Likewise.
1076         * config/tc-ia64.c: Likewise.
1077         * config/tc-mn10300.c: Likewise.
1078         * config/te-386bsd.h: Likewise.
1079         * config/te-hppa.h: Likewise.
1080         * config/te-nbsd.h: Likewise.
1081         * config/te-ppcnw.h: Likewise.
1082         * config/te-sparcaout.h: Likewise.
1083         * config/te-tmips.h: Likewise.
1084         * config/vax-inst.h: Likewise.
1085         * config/vms-conf.h: Likewise.
1086
1087 2000-11-14  Jakub Jelinek  <jakub@redhat.com>
1088
1089         * config/tc-alpha.c (s_alpha_prologue): Preserve visibility bits.
1090
1091 2000-11-13  H.J. Lu  <hjl@gnu.org>
1092
1093         * config/obj-elf.c (elf_frob_symbol): Support
1094         ".symver name,name2@@@nodename".
1095         (elf_frob_file_before_adjust): Likewise.
1096
1097         * doc/as.texinfo: Updated for ".symver name,name2@@@nodename"
1098         and ".symver name,name2@@@nodename".
1099         Fix a typo.
1100
1101 2000-11-12  H.J. Lu  (hjl@gnu.org)
1102
1103         * config/obj-elf.c (obj_elf_symver): Check missing version
1104         name.
1105
1106 2000-11-12  H.J. Lu  (hjl@gnu.org)
1107
1108         * dwarf2dbg.c (dwarf2_generate_asm_lineno): Use addressT
1109         instead of bfd_vma for non-bfd assemblers.
1110
1111 2000-11-09  Kazu Hirata  <kazu@hxi.com>
1112
1113         * itbl-ops.c: Fix comment typos.
1114
1115 2000-11-08  Jim Wilson  <wilson@redhat.com>
1116
1117         * config/tc-ia64.c (struct unw_rec_list): Add slot_frag field.
1118         (struct unwind): Add next_slot_frag field.
1119         (slot_index): New parameters slot_frag and first_frag.  Add code
1120         to add in frag sizes when different.  Add comments.
1121         (fixup_unw_records): New locals first_frag and last_frag.  Pass new
1122         arguments to slot_index.
1123         (emit_one_bundle): Set slot_frag field.  Set next_slot_number after
1124         loop end.  Set next_slot_frag field.
1125
1126 2000-11-07  H.J. Lu  <hjl@gnu.org>
1127
1128         * doc/as.texinfo (.symver): Updated for versioned symbol
1129         reference.
1130
1131         * obj.h (format_ops): Add the frob_file_before_adjust field.
1132
1133         * config/obj-aout.c (aout_format_ops): Set the
1134         frob_file_before_adjust field to 0.
1135         * config/obj-coff.c (coff_format_ops): Likewise.
1136         * config/obj-ecoff.c (ecoff_format_ops): Likewise.
1137
1138         * config/obj-elf.c (obj_elf_symver): Allow duplicated version
1139         name.
1140         (elf_frob_file_before_adjust): New function to remove unneeded
1141         versioned symbols from the symbol table.
1142         (elf_format_ops): Set the frob_file_before_adjust field to
1143         elf_frob_file_before_adjust.
1144
1145         * config/obj-elf.h (obj_frob_file_before_adjust): Defined if
1146         not defined.
1147
1148         * config/obj-multi.h (obj_frob_file_before_adjust): Defined.
1149
1150 2000-11-07  Peter Targett  <peter.targett@arccores.com>
1151
1152         * gas/config/tc-arc.h: Avoid warnings for LITTLE_ENDIAN and
1153         BIG_ENDIAN macros.
1154         * gas/config/tc-arc.c: Use S_IS_LOCAL to test local symbols.
1155         Fix compile time warning messages.
1156
1157 2000-11-07  Nick Clifton  <nickc@redhat.com>
1158
1159         * stabs.c (generate_asm_file): Increase length of xmalloc'ed
1160         buffer in order to avoid buffer overflows.
1161
1162 2000-11-06  Steve Ellcey <sje@cup.hp.com>
1163
1164         * config/tc-ia64.c (md_shortopts, md_parse_option, md_show_usage):
1165         Change M to m for -milp32 or -mlp64 to match gcc.
1166         (dot_endp): Use bytes_per_address instead of 8.
1167         (emit_one_bundle): Use number_to_chars_littleendian instead of
1168         md_number_to_chars.
1169         (fix_insn): Likewise.
1170         (ia64_init): New function.
1171         (ia64_target_format): New function.
1172         (md_begin): Set endianness, arch, and machine as appropriate.
1173         * config/tc-ia64.h: (TARGET_BYTES_BIG_ENDIAN, md_number_to_chars):
1174         Make these macros depend on TE_HPUX macro.
1175         (TARGET_FORMAT): Define.
1176         (HOST_SPECIAL_INIT): Define.
1177         * config/te-hpux.h: New file.
1178         * configure.in: Add "ia64-*-hpux*" target to configure.
1179         * configure: Regenerate.
1180
1181 2000-11-06  Kazu Hirata  <kazu@hxi.com>
1182
1183         * as.c: Fix formatting.
1184         * dwarf2dbg.c: Likewise.
1185         * input-file.c: Likewise.
1186         * input-file.h: Likewise.
1187         * input-scrub.c: Likewise.
1188         * itbl-ops.c: Likewise.
1189         * listing.c: Likewise.
1190         * macro.h: Likewise.
1191         * messages.c: Likewise.
1192         * read.c: Likewise.
1193         * subsegs.c: Likewise.
1194         * subsegs.h: Likewise.
1195         * write.c: Likewise.
1196
1197 2000-11-06  Nick Clifton  <nickc@redhat.com>
1198
1199         * doc/as.texinfo: Add GNU Free Documentation License.
1200         * doc/gasp.texi:  Add GNU Free Documentation License.
1201         * doc/as.1:  Add GNU Free Documentation License.
1202
1203 2000-11-05  Nick Clifton  <nickc@redhat.com>
1204
1205         * config/tc-arm.c: Add include of "dwarf2dbg.h"
1206
1207 2000-11-02  Per Lundberg  <plundis@chaosdev.org>
1208
1209         * configure.in: Recognise i[3456]86-chaosdev-storm-chaos.
1210         * configure: Regenerate.
1211
1212 2000-11-01  Nick Clifton  <nickc@redhat.com>
1213
1214         * read.c (original_case_string): New global variable.
1215         (read_a_source_file): Copy opcode string into
1216         original_case_string if clobbering the case of the opcode.
1217         * read.h: Export the definition of original_case_string.
1218         * config/tc-arm.c (md_assembler): When parsing a .req
1219         directive use the original opcode string, not the case
1220         clobbered version.
1221
1222 2000-11-02  Nick Clifton  <nickc@redhat.com>
1223
1224         * config/tc-mn10300.c (debug_line): Remove this static
1225         variable.
1226         (md_assemble): Call dwarf2_generate_asm_lineno instead of
1227         dwarf2_where and dwarf2_gen_line_info.
1228
1229 2000-11-02  Theo Honohan  <th@futuretv.com>
1230
1231         * config/tc-arm.c (do_msr): Improve error message.
1232
1233 2000-10-31  Eric Christopher  <echristo@redhat.com>
1234
1235         * config/tc-mn10300.c (md_apply_fix3): Use valuep if fully resolved
1236         or pc-relative, else use fx_offset.
1237
1238 2000-10-31  Jim Wilson  <wilson@redhat.com>
1239
1240         * config/tc-ia64.c (struct md): New field tag_fixups.
1241         (ia64_flush_insns): Handle tag_fixups.  Error if dangling
1242         qualifying predicate.
1243         (emit_one_bundle): Delete spurious multiplication by one.  Handle
1244         tag_fixups.
1245         (ia64_start_line): Error if dangling qualifying predicate.
1246         (defining_tag): New static variable.
1247         (ia64_unrecognized_line, case '['): Parse tags.
1248         (ia64_frob_label): Create tag_fixups.
1249         (md_assemble): Reset md.qp.X_op after using it.
1250
1251 2000-10-31  Kaz Kojima <kkojima@rr.iij4u.or.jp>
1252
1253         * config/tc-sh.c (md_apply_fix [BFD_RELOC_SH_PCDISP12BY2]): Allow 4094.
1254
1255 2000-10-31  Bernd Schmidt  <bernds@redhat.co.uk>
1256
1257         * tc-ia64.c (extra_goodness): Only prefer F in slot 1 and B in slot 2.
1258
1259 2000-10-30  Kazu Hirata  <kazu@hxi.com>
1260
1261         * expr.c: Fix formatting.
1262         * flonum-copy.c: Likewise.
1263         * flonum.h: Likewise.
1264         * gasp.c: Likewise.
1265         * hash.c: Likewise.
1266
1267 2000-10-30  Hans-Peter Nilsson  <hp@bitrange.com>
1268
1269         * as.h (OPTION_MD_BASE): Bump to 190.
1270         * as.c (parse_args) <std_longopts>: Add comment about the need to
1271         check OPTION_MD_BASE in as.h.
1272
1273         * config/tc-sh.c (md_apply_fix): For ELF, do not "adjust back" VAL
1274         for weak symbols.
1275
1276 2000-10-27  Nick Clifton  <nickc@redhat.com>
1277
1278         * configure.in (emulations): Add m68hc12.
1279         * configure: Regenerate.
1280         * po/gas.pot: Regenerate.
1281
1282 2000-10-27  Aldy Hernandez  <aldyh@redhat.com>
1283
1284         * config/tc-arm.c (psrs): Remove lowercase versions of spsr* and
1285         cpsr*.
1286         (arm_psr_parse): Handle lowercase CPSR and SPSR.
1287
1288 2000-10-25  Nick Clifton  <nickc@redhat.com>
1289
1290         * dwarf2out.c (dwarf2_generate_asm_lineno): New function: Generate
1291         a DWARF2 line number information sequence.
1292
1293         *dwarf2out.h: Add prototype for dwarf2_generate_asm_lineno.
1294
1295         * read.c (generate_lineno_debug): Update comment describing why
1296         DWARF2 line number debug information is not generated
1297         automatically by this function.
1298
1299         * doc/as.texinfo: Note that --gdwarf2 only works on some targets,
1300         not all.
1301
1302         * config/tc-arm.h (md_end): Define.
1303         (DWARF2_LINE_MIN_INSN_LENGTH): Define.
1304
1305         * config/tc-arm.c (output_inst): Call dwarf2_generate_asm_lineno
1306         if generating DWARF2 line numbers.
1307         (arm_end_of_source): New function.  Call dwarf2_finish if
1308         necessary.
1309
1310         * config/tc-hppa.c (md_assemble): Use dwarf2_generate_asm_lineno.
1311         * config/tc-m68hc11.c (m68hc11_new_insn): Use dwarf2_generate_asm_lineno.
1312         * config/tc-sh.c (md_assemble): Use dwarf2_generate_asm_lineno.
1313
1314 2000-10-25  Diego Novillo  <dnovillo@cygnus.com>
1315
1316         * tc-i386.c: Fix prototype declarations for functions taking no
1317         arguments.
1318
1319 2000-10-24  Diego Novillo  <dnovillo@cygnus.com>
1320
1321         * tc-i386.c (i386_operand_modifier): Remove.
1322         (build_displacement_string): Remove.
1323         (i386_parse_seg): Remove.
1324         (i386_intel_memory_operand): Remove.
1325         (i386_intel_operand): Re-write using recursive descent parser based
1326         on MASM documentation.
1327         (struct intel_parser_s): New structure.
1328         (intel_parser): New static variable.
1329         (struct intel_token): New structure.
1330         (cur_token, prev_token): New static variables.
1331         (T_NIL): Define.
1332         (T_CONST): Define.
1333         (T_REG): Define.
1334         (T_BYTE): Define.
1335         (T_WORD): Define.
1336         (T_DWORD): Define.
1337         (T_QWORD): Define.
1338         (T_XWORD): Define.
1339         (T_SHORT): Define.
1340         (T_OFFSET): Define.
1341         (T_PTR): Define.
1342         (T_ID): Define.
1343         (intel_match_token): New function.
1344         (intel_get_token): New function.
1345         (intel_putback_token): New function.
1346         (intel_expr): New function.
1347         (intel_e05): New function.
1348         (intel_e05_1): New function.
1349         (intel_e06): New function.
1350         (intel_e06_1): New function.
1351         (intel_e09): New function.
1352         (intel_e09_1): New function.
1353         (intel_e10): New function.
1354         (intel_e10_1): New function.
1355         (intel_e11): New function.
1356
1357 2000-10-20  Jakub Jelinek  <jakub@redhat.com>
1358
1359         * config/tc-sparc.c (sparc_ip): Fix a bug which caused v9_arg_p
1360         instructions to loose any special insn->architecture mask.
1361
1362         * config/tc-sparc.c (v9a_asr_table): Add v9b ASRs.
1363         (sparc_md_end, sparc_arch_types, sparc_arch,
1364         sparc_elf_final_processing): Handle v8plusb and v9b architectures.
1365         (sparc_ip): Handle siam mode operands. Support v9b ASRs (and
1366         request v9b architecture if they are used).
1367
1368 2000-10-18  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
1369
1370         * config/tc-m68k.c: Fix the previous misapplied patch.
1371
1372 2000-10-18  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
1373
1374         * config/tc-m68k.h (RELAX_RELOC_*): New definitions for both
1375         BFD_ASSEMBLER and !BFD_ASSEMBLER.
1376         * config/tc-m68k.c (md_convert_frag_1): Use them instead of
1377         BFD_RELOC_*.
1378
1379 2000-10-17  Kazu Hirata  <kazu@hxi.com>
1380
1381         * debug.c: Fix formatting.
1382         * depend.c: Likewise.
1383         * dwarf2dbg.c: Likewise.
1384         * dwarf2dbg.h: Likewise.
1385         * ecoff.c: Likewise.
1386         * expr.c: Likewise.
1387         * expr.h: Likewise.
1388         * flonum-konst.c: Likewise.
1389         * frags.h: Likewise.
1390
1391 2000-10-17  Chandrakala Chavva  <cchavva@redhat.com>
1392
1393         * as.c: New option OPTION_TARGET_HELP. Prints all target specific
1394         options.
1395         * doc/as.texinfo: Added notes about this new option.
1396
1397 2000-10-16  Hans-Peter Nilsson  <hp@bitrange.com>
1398
1399         * config/tc-sh.c (JREG): Remove.
1400         (md_convert_frag): Remove #if 0:d code using JREG.
1401
1402 2000-10-15  Diego Novillo  <dnovillo@cygnus.com>
1403
1404         * config/tc-i386.c (i386_operand_modifier): Only match
1405         modifiers SHORT and FLAT if they are followed by a space.
1406         (parse_register): When `allow_naked_reg' is set, do not confuse
1407         identifiers that start with a register name with a register.
1408
1409 2000-10-12  Kazu Hirata  <kazu@hxi.com>
1410
1411         * app.c: Fix formatting.
1412         * as.c: Likewise.
1413         * as.h: Likewise.
1414         * bit_fix.h: Likewise.
1415         * cgen.c: Likewise.
1416         * cgen.h: Likewise.
1417         * cond.c: Likewise.
1418
1419 2000-10-11  Alan Modra  <alan@linuxcare.com.au>
1420
1421         * config/obj-elf.c (elf_frob_symbol): Revert 2000-10-07 change.
1422
1423 2000-10-07  Alan Modra  <alan@linuxcare.com.au>
1424
1425         * config/tc-hppa.c (md_apply_fix): Remove plainly wrong assert.
1426         Re-arrange function a little and improve error message.
1427
1428         * write.c (write_relocs): Fix a comment.
1429
1430         * config/obj-elf.c (elf_frob_symbol): Make section syms global on
1431         link-once sections.
1432
1433 2000-10-05  Jim Wilson  <wilson@cygnus.com>
1434
1435         * config/tc-ia64.c (resources_match): Handle IA64_RS_PRr.
1436
1437 2000-10-05  Alan Modra  <alan@linuxcare.com.au>
1438
1439         * config/tc-i386.c: Delete some useless comments, reformat others.
1440
1441         * config/tc-i386.h (TC_FIX_ADJUSTABLE): Add check to cover
1442         non-global syms in linkonce sections.
1443
1444 2000-10-04  Ralf Baechle  <ralf@gnu.org>
1445
1446         * config/tc-ia64.c (operand_match): Don't use // style comments.
1447         * config/tc-i370.c: Likewise.
1448
1449 2000-09-29  Hans-Peter Nilsson  <hp@axis.com>
1450
1451         Changes to handle varying register prefix and user symbol prefix.
1452         * config/tc-cris.c (SYNTAX_RELAX_REG_PREFIX,
1453         SYNTAX_ENFORCE_REG_PREFIX, SYNTAX_USER_SYM_LEADING_UNDERSCORE,
1454         SYNTAX_USER_SYM_NO_LEADING_UNDERSCORE, REGISTER_PREFIX_CHAR): New.
1455         (s_syntax, cris_force_reg_prefix, cris_relax_reg_prefix,
1456         cris_sym_leading_underscore, cris_sym_no_leading_underscore): New.
1457         (demand_register_prefix): New variable.
1458         (md_pseudo_table): New pseudo ".syntax".
1459         (md_longopts): New options --no-underscore and --underscore.
1460         (cris_target_format): Return elf32-us-cris or elf32-cris depending
1461         on symbols_have_leading_underscore.
1462         (get_gen_reg): Accept or require REGISTER_PREFIX_CHAR.
1463         (get_spec_reg): Ditto.
1464         (cris_number_to_imm) <case BFD_RELOC_VTABLE_ENTRY>: Remove FIXME.
1465         Fix formatting.
1466         (md_parse_option) <case 'h' 'H'>: Deprecate; add reference to
1467         --help.
1468         <case OPTION_NO_US, case OPTION_US>: New.
1469         (md_show_usage): Be brief and reformat to match continuation of
1470         --help.
1471         * po/gas.pot: Regenerate.
1472
1473 2000-09-28  Alan Modra  <alan@linuxcare.com.au>
1474
1475         * config/tc-hppa.c (hppa_force_relocation): If OBJ_SOM, don't
1476         force relocs for 12 bit branches.
1477         (md_apply_fix): Similarly, adjust logic here.
1478
1479 2000-09-28  Alan Modra  <alan@linuxcare.com.au>
1480
1481         * config/tc-hppa.c (md_apply_fix): Add fmt assertion.  Don't
1482         adjust for external and weak syms as we will use a reloc.  Allow
1483         for +8 offset when calculating limits of branches.
1484         (hppa_fix_adjustable): Undo 2000-09-23 change.
1485         (hppa_force_relocation): Likewise.  Add fx_addsy assertion.
1486         Correct distance calculation.
1487         (tc_gen_reloc): Print the file name and line number if we can't
1488         handle a fixup.
1489
1490         From John David Anglin <dave@hiauly1.hia.nrc.ca>
1491         * config/tc-hppa.c (nonzero_dibits): Define.
1492         (arg_reloc_stub_needed): Check each arg and return value
1493         separately for zero case.
1494         (pa_align): Declare argument `bytes'.
1495
1496 2000-09-25  Kazu Hirata  <kazu@hxi.com>
1497
1498         * config/tc-cris.c: Fix formatting.
1499         * config/tc-d10v.h: Likewise.
1500         * config/tc-d30v.c: Likewise.
1501         * config/tc-d30v.h: Likewise.
1502         * config/tc-fr30.c: Likewise.
1503         * config/tc-fr30.h: Likewise.
1504         * config/tc-m68k.c: Likewise.
1505         * config/tc-m68k.h: Likewise.
1506         * config/tc-pj.h: Likewise.
1507         * config/tc-ppc.c: Likewise.
1508         * config/tc-ppc.h: Likewise.
1509         * config/tc-sh.c: Likewise.
1510         * config/tc-sh.h: Likewise.
1511         * config/tc-sparc.c: Likewise.
1512         * config/tc-v850.h: Likewise.
1513         * config/tc-vax.h: Likewise.
1514         * config/tc-w65.h: Likewise.
1515         * config/tc-z8k.h: Likewise.
1516
1517 2000-09-23  Alan Modra  <alan@linuxcare.com.au>
1518
1519         * config/tc-hppa.c (hppa_fix_adjustable): Do the external and weak
1520         checks only for ELF.
1521         (hppa_force_relocation): Likewise.
1522
1523 2000-09-22  Jim Wilson  <wilson@cygnus.com>
1524
1525         * config/tc-ia64.c (dv_sem): Add "stop".
1526         (specify_resource, case IA64_RS_PR): Only handles regs 1 to 15 now.
1527         (specify_resource, case IA64_RS_PRr): New for regs 16 to 62.
1528         (specify_resource, case IA64_RS_PR63): Reorder (note == 7) test to
1529         match above.
1530         (mark_resources): Check IA64_RS_PRr.
1531
1532 2000-09-22  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
1533
1534         * config/tc-m68k.c (md_relax_table, m68k_ip, md_convert_frag_1,
1535         md_estimate_size_before_relax): Redesign and clean up the
1536         relaxation mechanism.
1537
1538 2000-09-21  Kazu Hirata  <kazu@hxi.com>
1539
1540         * config/tc-ns32k.c: Fix formatting.
1541         * config/tc-ns32k.h: Likewise.
1542
1543 2000-09-20  Kazu Hirata  <kazu@hxi.com>
1544
1545         * config/tc-m32r.c: Fix formatting.
1546         * config/tc-m32r.h: Likewise.
1547         * config/tc-m68851.h: Likewise.
1548         * config/tc-m68hc11.c: Likewise.
1549         * config/tc-m68hc11.h: Likewise.
1550         * config/tc-m88k.c: Likewise.
1551         * config/tc-mcore.c: Likewise.
1552         * config/tc-mcore.h: Likewise.
1553         * config/tc-mips.c: Likewise.
1554         * config/tc-mips.h: Likewise.
1555         * config/tc-mn10200.h: Likewise.
1556         * config/tc-mn10300.h: Likewise.
1557         * config/tc-tahoe.c: Likewise.
1558         * config/tc-tahoe.h: Likewise.
1559
1560 2000-09-19  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
1561
1562         * config/tc-vax.c (synthetic_votstrs): Remove jbssi and jbcci.
1563         Likewise in relaxation description comments.
1564
1565 2000-09-18  Alan Modra  <alan@linuxcare.com.au>
1566
1567         * config/tc-hppa.h (TC_FORCE_RELOCATION_SECTION): Allow
1568         subtraction of two syms without emitting a relocation.
1569
1570         From  David Huggins-Daines  <dhd@linuxcare.com>
1571         * config/tc-hppa.c (hppa_force_relocation): Force relocations for
1572         global or weak symbols.
1573
1574 2000-09-15  Kazu Hirata  <kazu@hxi.com>
1575
1576         * config/tc-h8300.h: Fix formatting.
1577         * config/tc-h8500.c: Likewise.
1578         * config/tc-h8500.h: Likewise.
1579         * config/tc-hppa.h: Likewise.
1580         * config/tc-i370.h: Likewise.
1581         * config/tc-i386.h: Likewise.
1582         * config/tc-i860.c: Likewise.
1583         * config/tc-i860.h: Likewise.
1584         * config/tc-i960.h: Likewise.
1585         * config/tc-ia64.c: Likewise.
1586         * config/tc-ia64.h: Likewise.
1587
1588 2000-09-14  Kazu Hirata  <kazu@hxi.com>
1589
1590         * config/tc-a29k.c: Fix formatting.
1591         * config/tc-alpha.c: Likewise.
1592         * config/tc-arc.c: Likewise.
1593         * config/tc-arc.h: Likewise.
1594         * config/tc-arm.c: Likewise.
1595         * config/tc-arm.h: Likewise.
1596         * config/tc-avr.c: Likewise.
1597         * config/tc-avr.h: Likewise.
1598         * config/tc-tic30.c: Likewise.
1599         * config/tc-tic30.h: Likewise.
1600         * config/tc-tic54x.c: Likewise.
1601         * config/tc-tic54x.h: Likewise.
1602         * config/tc-tic80.c: Likewise.
1603         * config/tc-tic80.h: Likewise.
1604
1605 2000-09-14  Timothy Wall  <twall@cygnus.com>
1606
1607         * config/tc-ia64.c (specify_resource): For PR%/PR63, note types of
1608         parallel comparisons for later use.
1609         (struct rsrc): Add parallel comparison type.
1610         (resources_match): Skip special cases of PR usage (non-conflicting
1611         parallel compares).
1612
1613 2000-09-13  Kazu Hirata  <kazu@hxi.com>
1614
1615         * config/obj-ecoff.c: Fix formatting.
1616         * config/obj-elf.c: Likewise.
1617         * config/obj-elf.h: Likewise.
1618         * config/obj-evax.h: Likewise.
1619         * config/obj-generic.h: Likewise.
1620         * config/obj-hp300.c: Likewise.
1621         * config/obj-hp300.h: Likewise.
1622         * config/obj-ieee.h: Likewise.
1623         * config/obj-vms.c: Likewise.
1624         * config/obj-vms.h: Likewise.
1625
1626 2000-09-13  Anders Norlander  <anorland@acc.umu.se>
1627
1628         * config/tc-mips.c (md_begin): Recognize 4Kc, 4Km and 4Kp processors.
1629         (md_parse_option): Ditto.
1630         (md_longopts): Add -mips32 option.
1631         (md_show_usage): Document new options.
1632         (mips_ip): Assemble sdbbp 20 bit 'm' args for MIPS32.
1633         (mips_ip): Assemble mfc0 with a sub-selection code.
1634         (validate_mips_insn): Handle 'H' (OP_*_SEL) and 'm' (OP_*_CODE20).
1635         (mips_cpu_to_str): New function.
1636         (mips_ip): Use mips_cpu_to_str instead of printing numeric cpu value.
1637         Use CPU_* defines instead of hardcoded numbers.
1638
1639         * doc/as.texinfo: Document new options.
1640         * doc/c-mips.texi: Ditto.
1641
1642 2000-09-12  Kazu Hirata  <kazu@hxi.com>
1643
1644         * as.h: Fix formatting.
1645         * asintl.h: Likewise.
1646         * bit_fix.h: Likewise.
1647         * config/obj-aout.c: Likewise.
1648         * config/obj-aout.h: Likewise.
1649         * config/obj-bout.c: Likewise.
1650         * config/obj-bout.h: Likewise.
1651         * config/obj-coff.c: Likewise.
1652         * config/obj-coff.h: Likewise.
1653         * dwarf2dbg.h: Likewise.
1654         * expr.h: Likewise.
1655         * flonum.h: Likewise.
1656         * frags.h: Likewise.
1657         * itbl-ops.h: Likewise.
1658         * macro.h: Likewise.
1659         * read.h: Likewise.
1660         * sb.h: Likewise.
1661         * struc-symbol.h: Likewise.
1662         * subsegs.h: Likewise.
1663         * symbols.h: Likewise.
1664         * tc.h: Likewise.
1665         * write.h: Likewise.
1666
1667 2000-09-11  Kazu Hirata  <kazu@hxi.com>
1668
1669         * bignum-copy.c: Fix formatting.
1670         * config/tc-i370.c: Likewise.
1671         * config/tc-i960.c: Likewise.
1672         * config/tc-m68k.c: Likewise.
1673         * ehopt.c: Likewise.
1674         * flonum-copy.c: Likewise.
1675         * flonum-konst.c: Likewise.
1676         * flonum-mult.c: Likewise.
1677         * literal.c: Likewise.
1678         * read.c: Likewise.
1679         * sb.c: Likewise.
1680         * stabs.c: Likewise.
1681         * subsegs.c: Likewise.
1682
1683 2000-09-09  Philip Blundell  <philb@gnu.org>
1684
1685         * configure.in (arm*-*-uclinux*): New target.
1686         * configure: Regenerate.
1687
1688 2000-09-09  Kazu Hirata  <kazu@hxi.com>
1689
1690         * input-file.c: Fix formatting.
1691         * itbl-ops.c: Likewise.
1692         * messages.c: Likewise.
1693
1694 2000-09-08  Philip Blundell  <philb@gnu.org>
1695
1696         * config/tc-arm.c (md_apply_fix3): Correct handling of ADRL when
1697         offset is negative.
1698
1699 2000-09-07  H.J. Lu  <hjl@gnu.org>
1700
1701         * configure.in (AC_ISC_POSIX): Put after AC_CANONICAL_SYSTEM.
1702         * configure: Rebuild.
1703
1704 2000-09-07  Kazu Hirata  <kazu@hxi.com>
1705
1706         * atof-generic.c: Fix formatting.
1707         * config/tc-mips.c: Likewise.
1708         * config/tc-vax.c: Likewise.
1709         * input-scrub.c: Likewise.
1710
1711 2000-09-07  Alexandre Oliva  <aoliva@redhat.com>
1712
1713         * config/tc-sh.h (TARGET_FORMAT): Use sh-linux targets.
1714         * configure.in (sh-*-linux*): Added.
1715         * configure: Rebuilt.
1716
1717 2000-09-06  Kazu Hirata  <kazu@hxi.com>
1718
1719         * config/tc-hppa.c: Fix formatting.
1720
1721         * ecoff.c: Fix formatting.
1722
1723 2000-09-06  Alexandre Oliva  <aoliva@redhat.com>
1724
1725         * configure: Rebuilt with new libtool.m4.
1726
1727 2000-09-05  Kazu Hirata  <kazu@hxi.com>
1728
1729         * cgen.c: Fix formatting.
1730         * config/tc-ia64.c: Likewise.
1731
1732 2000-09-05  Nick Clifton  <nickc@redhat.com>
1733
1734         * aclocal.m4: Regenerate.
1735         * config.in: Regenerate.
1736         * configure: Regenerate.
1737         * po/gas.pot: Regenerate.
1738
1739 2000-09-05  Hans-Peter Nilsson  <hp@axis.com>
1740
1741         * config/tc-cris.c: Correct comment typos.
1742
1743 2000-09-05  Eric Christopher  <echristo@cygnus.com>
1744
1745         * config/tc-mn10300.c: Cleanup.
1746         (md_pcrel_from): Enable.
1747
1748 2000-09-05  Alan Modra  <alan@linuxcare.com.au>
1749
1750         * expr.c (operand): Fix a comment typo.
1751         * write.c (write_relocs): Fix a signed/unsigned warning.
1752
1753         * config/tc-hppa.c (fudge_reg_expressions): New
1754         (hppa_force_reg_syms_absolute): New.
1755         (pa_equ): Allow reg_section expressions.
1756         * config/tc-hppa.c (md_optimize_expr): Define.
1757         (hppa_force_reg_syms_absolute): Prototype.
1758
1759         * config/tc-hppa.c (pa_11_fp_reg_struct): Delete.
1760         (pa_parse_number): Pass in arg to select fp reg parsing.
1761         Return 1 to indicate format checks pass.  If strict, then only
1762         accept a register or register symbol.  Return value in...
1763         (pa_number): New static for pa_parse_number.
1764         (FP_REG_BASE): Define.
1765         (FP_REG_RSEL): Define.
1766         (pre_defined_registers): Apply FP_REG_BASE and FP_REG_RSEL as
1767         appropriate.  White space changes.
1768         (need_pa11_opcode): Don't bother passing any params, get them from
1769         globals instead.
1770         (pa_ip): Modify all calls to pa_parse_number and need_pa11_opcode.
1771         Remove extraneous check in case 'Q'.
1772         (pa_equ): Modify call to pa_parse_number to do strict parsing. If
1773         reg, set section of resulting symbol to reg_section.
1774         (pa_parse_space_stmt): Modify call to pa_parse_number.
1775         (pa_space): Likewise.
1776
1777         * config/tc-hppa.c: (md_apply_fix): Handle vtable relocs.
1778         (hppa_force_relocation): Handle vtable relocs.
1779         (pa_vtable_entry): New.
1780         (pa_vtable_inherit): New.
1781         (md_pseudo_table): Add entries for vtable pseudos.
1782         (hppa_fix_adjustable): Reject reduction of R_PARISC_GNU_VTINHERIT
1783         and R_PARISC_GNU_VTENTRY relocs.  Reject reduction of relocs
1784         against weak syms.
1785         (tc_gen_reloc): Remove ELF_ARG_RELOC_INSN code.
1786         (pa_type_args): Don't call symbol_get_bfdsym multiple times.
1787         Set STT_PARISC_MILLICODE for OBJ_ELF when encountering a
1788         millicode import.
1789         * config/obj-elf.c (obj_elf_type): Allow md_elf_symbol_type to
1790         specify a symbol type.
1791
1792         * config/tc-hppa.h: Reorganize file a little, grouping OBJ_ELF
1793         dependent things together.
1794         (md_elf_symbol_type): Define.
1795
1796         * config/tc-hppa.c (fix_new_hppa): Elide "$PIC_pcrel$0" pseudo
1797         symbol.
1798         * config/tc-hppa.h (tc_frob_symbol): Elide "$PIC_pcrel$0" here too.
1799
1800         * config/obj-elf.h (obj_elf_vtable_inherit): Declare.
1801         (obj_elf_vtable_entry): Declare.
1802
1803         * config/obj-elf.c (obj_elf_vtable_inherit): Return struct fix *
1804         and export function.
1805         (obj_elf_vtable_entry): Similarly.
1806         (elf_pseudo_table): Fix the damage with a cast.
1807
1808 2000-09-03  Richard Henderson  <rth@cygnus.com>
1809
1810         * config/tc-ia64.c (emit_one_bundle): Stop collecting insns
1811         for template selection when a label is needed.
1812
1813 2000-09-02  Kazu Hirata  <kazu@hxi.com>
1814
1815         * config/tc-ia64.c: Fix formatting.
1816
1817 2000-09-02  Nick Clifton  <nickc@redhat.com>
1818
1819         * configure.in: Increase version number to 2.10.91.
1820         * configure: Regenerate.
1821         * aclocal.m4: Regenerate.
1822         * config.in: Regenerate.
1823         * po/gas.pot: Regenerate.
1824         * Makefile.in: Regenerate.
1825
1826 2000-09-01  Alexandre Oliva  <aoliva@redhat.com>
1827
1828         * config/tc-sh.h [OBJ_ELF] (TC_FIX_ADJUSTABLE): Define.
1829         * config/tc-sh.c (md_apply_fix): Map 32-bit relocations that
1830         become PC-relative to BFD_RELOC_32_PCREL.  Reject 16- or 8-bit
1831         similar relocs.
1832         (sh_obj_adjustable): Return 1 for PC-relative offsets used in
1833         branches.
1834
1835 2000-09-01  Niibe Yutaka  <gniibe@m17n.org>, Kaz Kojima  <kkojima@rr.iij4u.or.jp>, Alexandre Oliva  <aoliva@redhat.com>
1836
1837         * config/tc-sh.h (DIFF_EXPR_OK, GLOBAL_OFFSET_TABLE_NAME,
1838         TC_RELOC_GLOBAL_OFFSET_TABLE, TC_RELOC_RTSYM_LOC_FIXUP): Define.
1839         * config/tc-sh.c (sh_elf_cons, sh_elf_suffix): New functions.
1840         [OBJ_ELF] (md_pseudo_table) <long, int, word, short>: Use them.
1841         (GOT_symbol): New variable.
1842         (md_undefined_symbol): Set it.
1843
1844 2000-09-01  Richard Henderson  <rth@cygnus.com>
1845
1846         * config/tc-ia64.c (match): Don't inline.
1847         (extra_goodness): New.
1848         (md_begin): Prefer nop.f and nop.b for best_template.
1849
1850 2000-08-31  Kazu Hirata  <kazu@hxi.com>
1851
1852         * as.c: Fix formatting.
1853         * cond.c: Likewise.
1854         * frags.c: Likewise.
1855         * macro.c: Likewise.
1856
1857 2000-08-31  Eric Christopher  <echristo@cygnus.com>
1858
1859         * config/tc-mn10300.c:  Cleanup and fix warnings.
1860         (md_pseudo_table): Add initializers.
1861         (md_show_usage): Cleanup.
1862         (md_parse_option): Fix warnings.
1863         (md_undefined_symbol): Fix warnings.
1864         (md_conver_frag): Fix warnings.
1865         (tc_gen_reloc): Fix warnings.
1866         (md_apply_fix3): Fix warnings.
1867         (check_operand): Fix warnings.
1868
1869 2000-08-31  Alexandre Oliva  <aoliva@redhat.com>
1870
1871         * acinclude.m4: Include libtool and gettext macros from the
1872         top level.
1873         * aclocal.m4, configure: Rebuilt.
1874
1875 2000-08-30  Mark Hatle  <mhatle@mvista.com>
1876
1877         * config/tc-ppc.c (md_parse_option): Recognize -m405.
1878
1879 2000-08-31  Kazu Hirata  <kazu@hxi.com>
1880
1881         * listing.c: Fix formatting.
1882
1883 2000-08-29  Kazu Hirata  <kazu@hxi.com>
1884
1885         * app.c: Fix a comment typo.  Fix formatting.
1886
1887 2000-08-25  J. David Anglin  <dave@hiauly1.hia.nrc.ca>
1888
1889         * tc-vax.c (md_convert_frag): Correctly calculate the pc relative
1890         offset of the target destination for jmp instructions.
1891         (md_assemble): Change mode to VAX_ABSOLUTE_MODE as per comments.
1892
1893 2000-08-24  Hans-Peter Nilsson  <hp@axis.com>
1894
1895         * NEWS: Mention support for CRIS.
1896
1897 Thu Aug 24 20:41:05 2000  Denis Chertykov  <denisc@overta.ru>
1898
1899         * config/tc-avr.h (TC_IMPLICIT_LCOMM_ALIGNMENT): New macros.
1900         Sets `.lcomm' alignment to zero.
1901
1902 2000-08-23  Alexandre Oliva  <aoliva@redhat.com>
1903
1904         * config/tc-i386.h <OBJ_MAYBE_ELF, OBJ_MAYBE_COFF>
1905         (TC_FIX_ADJUSTABLE): Define.
1906
1907 2000-08-23  Jim Wilson  <wilson@cygnus.com>
1908
1909         * config/tc-ia64.c (output_unw_records): Set U & E flags only if
1910         unwind.personality_routine is set.
1911
1912 2000-08-23  H.J. Lu  <hjl@gnu.org>
1913
1914         * write.c (TC_FIX_ADJUSTABLE): Remove the duplicate.
1915
1916 2000-08-23  Alexandre Oliva  <aoliva@redhat.com>
1917
1918         * config/tc-i386.h (TC_FIX_ADJUSTABLE): Do *NOT* define if target
1919         environment is pe.
1920
1921 2000-08-22  H.J. Lu  <hjl@gnu.org>
1922
1923         * config.in (STRICTCOFF): New for strict COFF.
1924
1925         * configure.in: Define STRICTCOFF for i386-*-msdosdjgpp*,
1926         i386-*-go32* and i386-go32-rtems*.
1927         * configure: Rebuilt.
1928
1929         * config/obj-coff.c (obj_coff_endef): Follow the historical
1930         behavior if STRICTCOFF is not defined.
1931
1932         * doc/internals.texi: Document STRICTCOFF.
1933
1934 2000-08-22  Alexandre Oliva  <aoliva@redhat.com>
1935
1936         * write.c (TC_FIX_ADJUSTABLE): Define to 1, if not defined.
1937         (fixup_segment) Use it instead of TC_DONT_FIX_NON_ADJUSTABLE.
1938         * config/tc-i386.h (TC_DONT_FIX_NON_ADJUSTABLE): Remove.
1939         <OBJ_ELF, OBJ_COFF, TE_PE> (TC_FIX_ADJUSTABLE): Define.
1940         * config/tc-arm.h (TC_DONT_FIX_NON_ADJUSTABLE): Remove.
1941         <OBJ_ELF> (TC_FIX_ADJUSTABLE): Define.
1942         * config/tc-i960.h, config/tc-m68k.h, config/tc-v850.h:
1943         Likewise.
1944
1945 2000-08-22  Eric Christopher  <echristo@cygnus.com>
1946
1947         * config/tc-mn10300.c: (md_apply_fix): New function.
1948         (mn10300_force_relocation): New function.
1949         (mn10300_fix_adjustable): New function.
1950
1951         * config/tc-mn10300.h: (TC_FORCE_RELOCATION): Define.
1952         (TC_HANDLES_FX_DONE): Define.
1953         (obj_fix_adjustable): Define.
1954         (MD_APPLY_FIX3): Define.
1955         (TC_LINKRELAX_FIXUP): Define.
1956
1957         * write.c: (TC_LINKRELAX_FIXUP):  Define if not
1958         previously defined.
1959         (fixup_segment): Use TC_LINKRELAX_FIXUP.
1960
1961         * doc/internals.texi: Document TC_LINKRELAX_FIXUP.
1962
1963 2000-08-21  Jason Eckhardt  <jle@cygnus.com>
1964
1965         * config/tc-i860.c (md_apply_fix3): Do not insert the immediate
1966         if the fixup resulted in a relocation.
1967
1968 2000-08-18  Nick Clifton  <nickc@redhat.com>
1969
1970         * config/tc-arm.c (decode_shift): Replace as_tsktsk with as_warn.
1971         Make reference to first element of shift_names explicit.
1972
1973 2000-08-18  Alexandre Oliva  <aoliva@redhat.com>
1974
1975         * write.c (fixup_segment) [TC_DONT_FIX_NON_ADJUSTABLE]: Use
1976         obj_fix_adjustable() and tc_fix_adjustable() to tell whether to
1977         add a symbol's address.  Removed all target-specific #ifdefs that
1978         used to accomplished the same.
1979         * config/tc-v850.h (TC_DONT_FIX_NON_ADJUSTABLE): Define.
1980         * config/tc-m68k.h (TC_DONT_FIX_NON_ADJUSTABLE): Define.
1981         * config/tc-arm.h (TC_DONT_FIX_NON_ADJUSTABLE): Define.
1982         * config/tc-i960.h (TC_DONT_FIX_NON_ADJUSTABLE): Define.
1983         * config/tc-i386.h (TC_DONT_FIX_NON_ADJUSTABLE): Define.
1984
1985 2000-08-17  Kazu Hirata  <kazu@hxi.com>
1986
1987         * dwarf2dbg.c: Fix formatting.
1988
1989 2000-08-17  Nick Clifton  <nickc@redhat.com>
1990
1991         * config/tc-arm.c (decode_shift): Allow illegal shifts by zero
1992         to be recoded as logical shift lefts by zero.
1993
1994 2000-08-16  Jim Wilson  <wilson@cygnus.com>
1995
1996         * config/tc-ia64.c (specify_resource, case IA64_RS_GR): Handle
1997         postincrement modified registers.  Handle IA64_OPND_R3_2 addl
1998         source registers.
1999         (note_register_values): Handle IA64_OPND_R3_2 operands.
2000
2001 2000-08-16  Jason Eckhardt  <jle@cygnus.com>
2002
2003         * config/tc-i860.c (md_operand): Silly typo fixed.
2004
2005 2000-08-16  Nick Clifton  <nickc@redhat.com>
2006
2007         * config/tc-arm.c (struct asm_shift): Delete.
2008         (shift[]): Delete.
2009         (enum asm_shift_index): New.
2010         (struct asm_shift_properties): New.
2011         (struct asm_shift_name): New.
2012         (shift_properties[]); New.
2013         (shift_names[]); New.
2014
2015         (decode_shift): Use new structures.
2016         Issue a warning is "ROR #0" is used.
2017         Issue a warning if "ASR #0" or "LSR #0" is used.
2018
2019         (md_begin): Initialise arm_shift_hsh table from new
2020         asm_shift_name array.
2021
2022 2000-08-16  Jakub Jelinek  <jakub@redhat.com>
2023
2024         * config/tc-sparc.c: Kill all warnings.
2025         (md_parse_option): Set -32/-64 for -xarch=, allow all -A archs
2026         in -xarch= as well.
2027         (md_show_usage): Update usage text.
2028
2029 2000-08-16  Nick Clifton  <nickc@redhat.com>
2030
2031         * config/tc-arm.c (do_bx): Warn about "bx px" not being very
2032         useful.
2033
2034 2000-08-15  Will Cohen  <wcohen@redhat.com>
2035
2036         * config/tc-sh.h (DWARF2_LINE_MIN_INSN_LENGTH): Defined.
2037
2038         * config/tc-sh.c (md_assemble): Changed so debug_type
2039         test performed for ppi_assemble
2040         * config/tc-sh.c: Included dwarf2dbg.h.
2041         (debug_line): Defined.
2042         (md_assemble): Generates dwarf2 line info.
2043         (sh_finalize): New function.  Finalize dwarf2 info.
2044         (assemble_ppi): Returns size of code generated.
2045         (build_Mytes): Returns size of code generated.
2046         (md_pseudo_table): Added "file" and "loc" psuedo ops.
2047         * config/tc-sh.h (md_end): Defined.
2048         (sh_finalize): Declared.
2049
2050 2000-08-15  Alexandre Oliva  <aoliva@redhat.com>
2051
2052         * config/tc-sh.c (md_apply_fix) [BFD_RELOC_32, BFD_RELOC_16]: Use
2053         md_number_to_chars.
2054
2055 2000-08-14  Nick Clifton  <nickc@redhat.com>
2056
2057         * config/tc-arm.c (do_bx): Allow "bx pc".
2058
2059 2000-08-14  Jim Wilson  <wilson@cygnus.com>
2060
2061         * config/tc-ia64.c (md_longopts): Add -mconstant-gp and -mauto-pic.
2062         (md_parse_option):  Add OPTION_MCONSTANT_GP and OPTION_MAUTO_PIC.
2063         (md_begin): Change assignment to md.flag to OR in the new bit.
2064
2065 2000-08-14  Mark Elbrecht  <snowball3@bigfoot.com>
2066
2067         * config/obj-coff.c (obj_coff_endef) [BFD_ASSEMBLER]: Set the debug
2068         flag for storage types C_ARG, C_REGPARM, C_FIELD, C_MOS, C_MOE,
2069         C_MOU, and C_EOS.
2070
2071 2000-08-14  Jason Eckhardt  <jle@cygnus.com>
2072
2073         * NEWS: Mention i860 support.
2074
2075 Mon Aug 14 11:49:12 2000  Jeffrey A Law  (law@cygnus.com)
2076
2077         * config/tc-mn10300.h (DWARF2_LINE_MIN_INSN_LENGTH): Define.
2078
2079 2000-08-14  Andreas Schwab  <schwab@suse.de>
2080
2081         * doc/c-arm.texi (ARM Directives): Fix warnings from makeinfo.
2082
2083 2000-08-11  Andreas Schwab  <schwab@suse.de>
2084
2085         * doc/c-i860.texi (Opcodes for i860): Remove braces from @item
2086         argument.
2087
2088 2000-08-11  Kazu Hirata  <kazu@hxi.com>
2089
2090         * expr.c: Fix formatting.
2091         * config/obj-bout.c: Likewise.
2092
2093 2000-08-10  Jason Eckhardt  <jle@cygnus.com>
2094
2095         * doc/c-i860.texi: Flesh out the i860 section more.
2096
2097 2000-08-10  Kazu Hirata  <kazu@hxi.com>
2098
2099         * symbols.c: Fix formatting.
2100         * expr.c: Likewise.
2101
2102 Wed Aug  9 16:28:21 EDT 2000    Diego Novillo <dnovillo@cygnus.com>
2103
2104         * tc-i386.c (md_assemble): Skip suffix check if the opcode modifier
2105         has the IgnoreSize bit set.
2106
2107 2000-08-09  Alan Modra  <alan@linuxcare.com.au>
2108
2109         From  Rodney Brown  <RodneyBrown@mynd.com>
2110         * configure.in: Use elf on Unixware 7 (i586-sco-sysv5uw7.1.0)
2111         * configure: Regenerate.
2112
2113 2000-08-09  Kazu Hirata  <kazu@hxi.com>
2114
2115         * hash.c: Fix formatting.
2116         * gasp.c: Likewise.
2117
2118 2000-08-08  Jason Eckhardt  <jle@cygnus.com>
2119
2120         * config/tc-i860.h: Rework completely for BFD_ASSEMBLER.
2121         (i860_fix_info): New enum.
2122         (MD_APPLY_FIX3): Define.
2123         (WORKING_DOT_WORD): Define.
2124         (TC_HANDLES_FX_DONE): Define.
2125         (DIFF_EXPR_OK): Define.
2126         (LISTING_HEADER): Define.
2127         (TARGET_FORMAT): Select target format based on endian flag.
2128         (TARGET_BYTES_BIG_ENDIAN): Default to little endian.
2129         (target_big_endian): Add external declaration.
2130
2131         * config/tc-i860.c: All existing code reworked completely. Other
2132         new code shown below.
2133         (SYNTAX_SVR4): Define.
2134         (target_warn_expand): New variable.
2135         (md_shortopts): Declare and define (-Qy, -Qn, and -V options).
2136         (md_longopts): Declare and define with new options (-EL, -EB,
2137         and -mwarn-expand).
2138         (md_show_usage): New function.
2139         (md_operand): New function.
2140         (obtain_reloc_for_imm16): New function.
2141         (md_apply_fix3): New function.
2142         (tc_gen_reloc): New function.
2143
2144 2000-08-08  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
2145
2146         * config/tc-m68hc11.c (build_jump_insn): Make sure the
2147         2 bytes of the jump address are in the same frag.
2148         (find): Accept 68hc12 register indirect modes.
2149
2150         * NEWS: Mention 68HC11 & 68HC12 support.
2151
2152 2000-08-07  Richard Henderson  <rth@cygnus.com>
2153
2154         * config/tc-ia64.c (unwind): Add prologue_mask member.
2155         (dot_vframe): Elide psp_gr record if it overlaps prologue_gr.
2156         (dot_save): Likewise for pfs_gr, rp_gr, and preds_gr.
2157         (dot_body): Clear unwind.prologue_mask.
2158         (dot_prologue): Set it.  Accept a register second argument.
2159
2160 2000-08-07  Kazu Hirata  <kazu@hxi.com>
2161
2162         * config/atof-ieee.c: Fix formatting.
2163         * config/atof-tahoe.c: Likewise.
2164
2165 2000-08-06  Nick Clifton  <nickc@cygnus.com>
2166
2167         * config/tc-sparc.c (md_begin): Fix typo in recent formatting
2168         work.
2169
2170         * doc/as.texinfo (Pseudo Ops): Update to include descriptions
2171         of .popsection, .previous, .pushsection, .subsection,
2172         .version, .vtable_entry, .vtable_inherit and .weak.
2173
2174 2000-08-05  Kazu Hirata  <kazu@hxi.com>
2175
2176         * config/tc-cris.c: Fix formatting.
2177         * config/tc-i386.c: Likewise.
2178         * config/tc-sparc.c (sparc_ip): Simplify the code.
2179
2180 2000-08-04  Kazu Hirata  <kazu@hxi.com>
2181
2182         * config/tc-cris.c: Rearrange code for readability.
2183         * config/tc-d10v.c: Fix formatting.
2184         * config/tc-m32r.c: Likewise.
2185         * config/tc-sparc.c: Likewise.
2186
2187 2000-08-02  Jim Wilson  <wilson@cygnus.com>
2188
2189         * config/tc-ia64.c (emit_one_bundle): Call ia64_free_opcode
2190         before ia64_find_opcode.
2191         (md_assemble): Likewise.
2192
2193 2000-08-01  Nick Clifton  <nickc@cygnus.com>
2194
2195         * config/tc-arm.c (do_mrs): Fix skip of 'cpsr_all' flag.
2196         Undo some formatting fixes.
2197
2198 2000-08-01  Kazu Hirata  <kazu@hxi.com>
2199
2200         * config/obj-som.c: Fix formatting.
2201         * config/obj-ieee.c: Likewise.
2202         * config/tc-arm.c: Likewise.
2203         * config/tc-v850.c: Likewise.
2204
2205 2000-08-01  Nick Clifton  <nickc@redhat.com>
2206
2207         * doc/c-m68k.texi (section M680x0 Options): Turn into a table
2208         index by command line option.
2209
2210 2000-08-01  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
2211
2212         * doc/c-m68k.texi (@cindex @samp{--pcrel}): Rewrite option description.
2213         (@node M68K-Branch): Rewrite to match the reality.
2214
2215 2000-07-31  Jason Eckhardt  <jle@cygnus.com>
2216
2217         * doc/c-i860.texi: New file.
2218         * doc/Makefile.am (CPU_DOCS): Add c-i860.texi.
2219         * doc/Makefile.in: Regenerate.
2220         * doc/all.texi: Add I860 as relevant architecture.
2221         * doc/as.texinfo: Include i860 dependent file c-i860.texi.
2222
2223 2000-07-31  Kazu Hirata  <kazu@hxi.com>
2224
2225         * config/tc-d30v.c: Fix formatting.
2226
2227 2000-07-31  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
2228
2229         * config/tc-m68k.c (flag_keep_pcrel, OPTION_PCREL): Add --pcrel option.
2230         (md_convert_frag_1, md_estimate_size_before_relax): When making DBcc
2231         long emit a long branch if available instead of an absolute jump, never
2232         emit absolute jumps for anything with --pcrel.
2233
2234         * doc/c-m68k.texi: Document new command line option.
2235
2236 2000-07-29  Marek Michalkiewicz  <marekm@linux.org.pl>
2237
2238         * config/tc-avr.c: Use PARAMS macro in function declarations.
2239         Don't declare md_pcrel_from_section (already in tc-avr.h).
2240         (avr_operands): Use AVR_UNDEF_P and AVR_SKIP_P macros.
2241         (avr_operand): Don't set (unsigned) op_mask to -1.
2242
2243 2000-07-28  Jason Eckhardt  <jle@cygnus.com>
2244
2245         * configure.in: Add bits for i860-stardent-{sysv4, elf}*.
2246         * configure: Regenerated.
2247         * config/obj-elf.c (obj_elf_type): Recognize a fifth type
2248         of operand to the .type directive (.e.g, "type").
2249
2250 2000-07-28  Alan Modra  <alan@linuxcare.com.au>
2251
2252         * as.h (warn_comment, found_comment, found_comment_file): Declare.
2253         * app.c (do_scrub_chars): Record where first comment found.
2254         * read.c (read_a_source_file): Init found_comment on entry, and
2255         notify whether comments found on exit.
2256         * config/tc-hppa.c (md_shortopts): Add "c".
2257         (md_longopts): Add warn-comment.
2258         (md_parse_option): Handle it.
2259         (md_show_usage): Show available options.
2260         * config/tc-hppa.h (WARN_COMMENTS): Define if TE_LINUX
2261
2262 Thu Jul 27 11:25:01 2000  Andrew Cagney  <cagney@b1.cygnus.com>
2263
2264         * config/tc-mn10300.c (md_convert_frag): Fix printfs.
2265         (tc_gen_reloc): Add cast when assigning bfd_abs_symbol to
2266         sym_ptr_ptr
2267         (md_estimate_size_before_relax): Don't fall off end of function.
2268
2269 2000-07-27  Kazu Hirata  <kazu@hxi.com>
2270
2271         * config/tc-avr.c: Fix formatting.
2272         * config/tc-ns32k.c: Likewise.
2273
2274 2000-07-27  Alan Modra  <alan@linuxcare.com.au>
2275
2276         * config/tc-d10v.c (find_opcode): Remove extraneous `='.
2277
2278 2000-07-27  Kazu Hirata  <kazu@hxi.com>
2279
2280         * config/tc-d10v.c: Fix formatting.
2281         * config/tc-z8k.c: Likewise.
2282         * config/tc-sparc.c: Likewise.
2283
2284 2000-07-26  Dave Brolley  <brolley@redhat.com>
2285
2286         * cgen.c (queue_fixup): Declare opinfo.
2287         (gas_cgen_parse_operand): Mark unused parameters with ATTRIBUTE_UNUSED.
2288         (gas_cgen_md_operand): Ditto.
2289         (gas_cgen_md_apply_fix3): Ditto.
2290
2291 2000-07-24  Mark Elbrecht  <snowball3@bigfoot.com>
2292
2293         * config/obj-coff.c (obj_frob_symbol): Don't merge
2294         labels. Don't merge if the symbol isn't constant. Return
2295         immediately if a symbol is merged.
2296
2297 2000-07-22  Alan Modra  <alan@linuxcare.com.au>
2298
2299         * frags.c (frag_align): Correct absolute section alignment.
2300
2301 2000-07-20  DJ Delorie  <dj@redhat.com>
2302
2303         * config/obj-coff.c (obj_frob_symbol): revert previous change,
2304         it breaks linking against DLLs.
2305
2306 2000-07-20  Hans-Peter Nilsson  <hp@axis.com>
2307
2308         * configure.in: Add CRIS support.
2309         * configure: Regenerate.
2310         * Makefile.am: (CPU_TYPES): Add cris.
2311         (CPU_OBJ_VALID) [aout]: Add cris.
2312         (MULTI_CPU_TYPES): Add cris.
2313         (MULTI_CPU_OBJ_VALID) [aout]: Add cris.
2314         [coff]: Only i386 and mips are valid.
2315         (TARGET_CPU_CFILES): Add config/tc-cris.c.
2316         (TARGET_CPU_HFILES): Add config/tc-cris.h.
2317         (MULTI_CFILES): Add config/e-crisaout.c and config/e-criself.c.
2318         Regenerate dependencies.
2319         * Makefile.in: Regenerate.
2320         * aclocal.m4: Regenerate.
2321         * as.c: Declare crisaout, criself.
2322         * config/tc-cris.h, config/tc-cris.c: New.
2323         * config/e-criself.c, config/e-crisaout.c: New.
2324         * po/POTFILES.in, po/gas.pot: Regenerate.
2325
2326 2000-07-20  Kazu Hirata  <kazu@hxi.com>
2327
2328         * read.c: Fix formatting.
2329         * write.c: Fix formatting.
2330
2331 2000-07-19  H.J. Lu  <hjl@gnu.org>
2332
2333         * sb.c: Include <stdlib.h> if exists for abort ().
2334
2335 2000-07-19  Alan Modra  <alan@linuxcare.com.au>
2336
2337         * config/tc-hppa.c (hppa_fix_adjustable): Correct LR%/RR% comment.
2338         (arg_reloc_stub_needed): #ifdef OBJ_SOM, not #ifdef SOM.
2339         (pa_type_args): Same here.
2340
2341 2000-07-17  Mark Elbrecht  <snowball3@bigfoot.com>
2342
2343         * config/obj-coff.c (obj_frob_symbol): Don't merge labels. Don't
2344         merge if the symbol isn't constant. Don't call S_SET_EXTERNAL if
2345         the storage class is already set.
2346
2347 2000-07-17  Kazu Hirata  <kazu@hxi.com>
2348
2349         * config/tc-m68hc11.c: Fix formatting.
2350         * config/tc-mn10200.c: Likewise.
2351         * config/tc-mn10300.c: Likewise.
2352         * config/tc-pj.c: Likewise.
2353         * config/tc-tic80.c: Likewise.
2354         * config/tc-w65.c: Likewise.
2355
2356 2000-07-17  Frank Ch. Eigler  <fche@redhat.com>
2357
2358         * expr.c (operand): Permit %bin literals if LITERAL_PREFIXPERCENT_BIN
2359         is defined.
2360
2361 2000-07-15  Ian Lance Taylor  <ian@zembu.com>
2362
2363         * doc/c-mips.texi (MIPS Opts): Remove erroneous space after
2364         @code.
2365
2366 2000-07-15  Alan Modra  <alan@linuxcare.com.au>
2367
2368         * config/tc-hppa.c (hppa_fix_adjustable): Use the same checks for
2369         ELF as are used for SOM (except the 32-bit reloc one) to decide
2370         whether a symbol can be reduced to a section symbol.  Expand on
2371         the comment for symbols involved in LR% and RR% expressions.
2372
2373 2000-07-14  Nick Clifton  <nickc@cygnus.com>
2374
2375         * config/tc-mips.c (mips_disable_float_construction): New
2376         static variable.  Set to true if doubles should not be
2377         constructed by loading two single width fp registers with
2378         halves of the value.
2379         (mips_ip): Test mips_disable_float_construction.
2380         (md_longopts): Add command line switches --construct-floats
2381         and --no-construct-floats.
2382         (md_parse_option): Parse new command line options.
2383         (md_show_usage): Describe new command line options.
2384
2385         * doc/c-mips.texi: Document new command line options.
2386
2387 2000-07-13  Koundinya K  <kk@ddeorg.soft.net>
2388
2389         * configure.in: Remove the test /usr/dde for mips-*-sysv4*MP*
2390         * configure: Regenerate.
2391
2392 2000-07-13  Hans-Peter Nilsson  <hp@axis.com>
2393
2394         * configure.in (DEFAULT_EMULATION setting): Revert part of
2395         2000-07-01 change that set te_multi=multi unless set to tmips.
2396         * configure: Regenerate.
2397
2398 2000-07-12  Mark Elbrecht  <snowball3@bigfoot.com>
2399
2400         * config/obj-coff.c (coff_frob_section): Add padding to the last
2401         section when aligning it increases its size.
2402
2403 2000-07-11  Kazu Hirata  <kazu@hxi.com>
2404
2405         * config/tc-tic54x.c: Fix formatting.
2406
2407 2000-07-10  Kazu Hirata  <kazu@hxi.com>
2408
2409         * config/tc-h8500.c: Fix formatting.
2410         * config/tc-tic54x.c: Fix formatting.
2411
2412 2000-07-10  Alan Modra  <alan@linuxcare.com.au>
2413
2414         * config/tc-hppa.c (md_apply_fix): Check fmt 12 and 22 pc-rel
2415         displacements correctly.
2416
2417         * read.h (s_abort): Add ATTRIBUTE_NORETURN.
2418
2419 2000-07-10  Ryan Bradetich  <rbradetich@uswest.net>
2420
2421         * hash.c (hash_insert): Add cast to obstruct_alloc to fix
2422         warning.
2423         (hash_jam): Ditto.
2424
2425 2000-07-09  Alan Modra  <alan@linuxcare.com.au>
2426
2427         From  David Huggins-Daines  <dhd@linuxcare.com>
2428         * config/te-hppalinux64.h: Add a new emulation.
2429         * configure.in (emulations): Add configure bits to support the
2430         64-bit Linux/parisc target.
2431         * configure: Regenerate.
2432
2433         * config/tc-hppa.c (md_parse_option): Support `-V' for ELF.
2434         (md_shortopts): Add `V' for ELF.
2435
2436         * config/tc-hppa.c (arg_reloc_stub_needed): Define as zero except
2437         when SOM or ELF_ARG_RELOC are defined.
2438         (pa_type_args): Only set symbol_arg_reloc_info when SOM or
2439         ELF_ARG_RELOC are defined.
2440         (pa_stringer_aux): Don't pa_check_current_space_and_subspace here..
2441         (pa_stringer): ..Do it here instead.  Fix comment typos.
2442         (hppa_force_relocation): Cast enums to int before comparing with
2443         ints.
2444
2445         From  Ryan Bradetich  <rbradetich@uswest.net>
2446         * config/tc-hppa.c: Removed unneeded libbfd.h to fix macro
2447         redifinition warning.
2448         (md_apply_fix): Added cast from enum to int for fixP->fx_r_type.
2449         (hppa_force_relocation): ditto
2450         (md_apply_fix): Added cast to buf to fix warnings.
2451
2452         * config/tc-hppa.h (pa_define_label, parse_cons_expression_hppa,
2453         cons_fix_new_hppa, hppa_force_relocation): Prototype.
2454
2455         * config/tc-hppa.c (reloc_type): It's an enum for OBJ_ELF.
2456         (R_N0SEL, R_N1SEL): Define only for OBJ_SOM.
2457         (tc_gen_reloc): Make `code' a reloc_type and `codes' a
2458         reloc_type** to avoid warnings in switch.
2459         (md_apply_fix): Make insn, val signed.  Zap buf_wd and read insn a
2460         little earlier instead.
2461
2462         * config/tc-hppa.c (symbol_arg_reloc_info): Define for both som
2463         and elf.
2464         (pa_type_args): Use symbol_arg_reloc_info.
2465         (struct pa_it): Make arg_reloc unsigned int.
2466         (struct hppa_fix_struct): Likewise for fx_arg_reloc.
2467         (pa_text, pa_data, pa_comm): Don't compile for TE_LINUX.
2468         (pa_code): Delete.  pa_text duplicates this function.
2469         (md_pseudo_table): Call obj_elf_text for ".code" if TE_LINUX.
2470         (fix_new_hppa): Argument offset is offsetT, arg_reloc is unsigned
2471         int.
2472         (cons_fix_new_hppa): Actually change selector to e_fsel when
2473         warning about assuming so.
2474         (tc_gen_reloc): More example elf arg reloc code.
2475         (md_apply_fix): Use arg_reloc_stub_needed for elf too.
2476         (hppa_force_relocation): Likewise.
2477
2478         * config/tc-hppa.h: Use TARGET_ARCH_SIZE to select target include
2479         files.
2480         (pa_end_of_source): Prototype.
2481         (hppa_fix_adjustable): Prototype.
2482         (LABELS_WITHOUT_COLONS): Move it..
2483         * config/te-hppa.h: To here.
2484
2485         * config/te-hppa64.h: New file.
2486
2487         * config/tc-hppa.c: Use TARGET_ARCH_SIZE to select target reloc
2488         type.
2489         (md_apply_fix): Pass stdoutput to bfd_hppa_insn2fmt.  Handle
2490         format -10, -16, 16 relocs.
2491         (hppa_elf_mark_end_of_function): Test for null
2492         last_call_info->start_symbol
2493
2494         * config/tc-hppa.c (pa_ip): In case 'V', pass `strict' to
2495         CHECK_FIELD, not INSERT_FIELD_AND_CONTINUE.  Don't pass opcode to
2496         re_assesmble_* functions.  Delete extraneous statements.  Fix
2497         typos in comments.
2498         (md_apply_fix): Compare against 1048575 in case 21.  Don't pass
2499         insn to re_assemble_*.
2500
2501 2000-07-08  Ulf Carlsson  <ulfc@engr.sgi.com>
2502
2503         * doc/internals.texi (Expressions): Fix typo.
2504
2505 2000-07-08  Kazu Hirata  <kazu@hxi.com>
2506
2507         * config/tc-sh.c: Fix formatting.
2508         * config/tc-tic54x.c: Fix formatting.
2509         * depend.c: Fix formatting.
2510         * flonum-konst.c: Likewise.
2511         * flonum-mult.c: Likewise.
2512
2513 2000-07-07  Kazu Hirata <kazu@hxi.com>
2514
2515         * config/tc-sh.c: Fix comments.
2516         * config/obj-vms.c: Fix comments.
2517         * config/tc-a29k.c: Likewise.
2518         * config/tc-alpha.c: Likewise.
2519         * config/tc-h8300.c: Likewise.
2520         * config/tc-h8500.c: Likewise.
2521         * config/tc-i370.c: Likewise.
2522         * config/tc-ia64.c: Likewise.
2523         * config/tc-m68hc11.c: Likewise.
2524         * config/tc-m68k.c: Likewise.
2525         * config/tc-mips.c: Likewise.
2526         * config/tc-ns32k.c: Likewise.
2527         * config/tc-ppc.c: Likewise.
2528         * config/tc-z8k.c: Likewise.
2529
2530 2000-07-06  Mark Elbrecht  <snowball3@bigfoot.com>
2531
2532         * config/obj-coff.c (TC_COFF_SECTION_DEFAULT_ATTRIBUTES): New.
2533         Default to '(SEC_LOAD | SEC_DATA)'.
2534         (obj_coff_section) [BFD_ASSEMBLER]: Use it.
2535
2536         * doc/internals.texi (CPU Backend): Describe
2537         TC_COFF_SECTION_DEFAULT_ATTRIBUTES.
2538
2539 Thu Jul  6 17:20:58 2000  Andrew Cagney  <cagney@b1.cygnus.com>
2540
2541         * as.c (parse_args): NULL terminate the long option list.
2542
2543 Tue Jul  4 14:08:28 2000  Andrew Cagney  <cagney@b1.cygnus.com>
2544
2545         * config/tc-d30v.h: Include "write.h" for fixS.
2546         (d30v_start_line, md_pcrel_from_section): Add function prototypes.
2547
2548 2000-07-05  Nick Clifton  <nickc@cygnus.com>
2549
2550         * config/tc-d30v.c (write_2_short): Further changes to warning
2551         messages produced when combining EITHER_BUT_PREFER_MU attributed
2552         opcodes.
2553
2554 2000-07-05  DJ Delorie  <dj@redhat.com>
2555
2556         * MAINTAINERS: new
2557
2558 2000-07-04  Alexandre Oliva  <aoliva@redhat.com>
2559
2560         * config/tc-arm.c (psrs): Accept combinations of flags.
2561
2562 2000-07-03  Marek Michalkiewicz  <marekm@linux.org.pl>
2563
2564         * config/tc-avr.c: Change _ () to _() around all strings marked
2565         for translation (exception from the usual coding style).
2566         (avr_opt): New struct variable, how the new switches are set.
2567         (OPTION_MMCU): Define as 'm' and actually use.
2568         (md_longopts): Add -mall-opcodes, -mno-skip-bug, -mno-wrap.
2569         (show_mcu_list): New function, display the list of known MCUs.
2570         (md_show_usage): Document the new switches.  Call show_mcu_list.
2571         (avr_set_arch): Change 'm' to OPTION_MMCU.
2572         (md_parse_option): Call show_mcu_list if unknown MCU specified.
2573         Handle the new switches.
2574         (avr_operands): Disable warnings for undefined combinations of
2575         operands if -mall-opcodes.  Disable warnings for skipping two-word
2576         instructions if enhanced core or -mno-skip-bug.
2577         (avr_operand): Accept all addressing modes on avr1 if -mall-opcodes.
2578         (md_apply_fix3): Reject 8K wrap if >8K or -mno-wrap.
2579         (md_assemble): Accept opcodes not supported by MCU if -mall-opcodes.
2580         (avr_ldi_expression): Warn about implicit lo8().
2581         * config/tc-avr.h (md_pcrel_from_section): Add prototype.
2582
2583 2000-07-01  Koundinya K  <kk@ddeorg.soft.net>
2584
2585         * configure.in: Add entry for mips-*-sysv4*MP*
2586         * configure: Rebuild
2587         * config/tc-mips.c (mips_target_format): Return elf32-tradbigmips or
2588         elf32-tradlittlemips for traditional mips targets.
2589         * config/tc-mips.c (md_estimate_size_before_relax): Duplicate the
2590         test for Link Once sections as in adjust_reloc_syms.
2591         * config/te-tmips.h: New file for traditional mips targets. Define
2592         TE_TMIPS.
2593
2594 2000-06-29 Mark Elbrecht <snowball3@bigfoot.com>
2595
2596         * config/obj-coff.c (obj_coff_setcion) [BFD_ASSEMBLER]: If the
2597         flags argument is not present, don't change an existing section's
2598         section's attributes. If the flags argument is present, warn if the
2599         attributes don't match the section's current attributes. When
2600         long section names are supported, set SEC_LINK_ONCE and
2601         SEC_LINK_DUPLICATES_DISCARD for a new .gnu.linkonce section.
2602
2603 Thu Jun 29 21:30:00 2000  Hans-Peter Nilsson  <hp@axis.com>
2604
2605         * config/obj-aout.c (obj_aout_type): Do not ignore for undefined
2606         symbols; create them.
2607
2608 2000-06-29 Mark Elbrecht <snowball3@bigfoot.com>
2609
2610         * write.c (set_segment_vma): New: Set vma and lma for a segment.
2611         (write_object_file) [BFD_ASSEMBLER && OBJ_COFF && TE_GO32]: Use it.
2612
2613 2000-06-27  Aldy Hernandez  <aldyh@redhat.com>
2614
2615         * config/tc-mips.c (mips_ip): handle "(foo-.-4)" type of
2616         expressions.  Ignore the problem when handling 16 bit signed
2617         immediates, because the assembler will take care of the relocation
2618         later.
2619
2620 2000-06-27  Nick Clifton  <nickc@cygnus.com>
2621
2622         * config/tc-d30v.c (write_2_short): Do not allow opcodes with
2623         the EITHER_BUT_PREFER_MU attribute to be combined into a reverse
2624         sequential order, and emit warning messages if the input source
2625         code contains constructs like that, or parallel constructs
2626         containing such opcodes.
2627
2628 2000-06-26  Marek Michalkiewicz  <marekm@linux.org.pl>
2629
2630         * config/tc-avr.c (mcu_types): Rename avr4 to avr5, add avr4.
2631         Add more MCU types for avr4 and avr5.  Replace at94k{10,20,40}
2632         with just at94k.  Change AVR_ISA_85xx back to AVR_ISA_2xxx.
2633         (md_show_usage): Update usage message.
2634         (md_parse_option): Allow redefinition of MCU type within the
2635         same avr[1-5] bfd machine type.  Show both old and new MCU type
2636         in the error message.
2637         (md_apply_fix3): Support 8K wrap if AVR_ISA_MEGA is not set.
2638         Simplify 8K wrap code.
2639
2640 2000-06-25  Kazu Hirata  <kazu@hxi.com>
2641
2642         * config/obj-aout.c: Remove all uses of DEFUN.
2643         * config/obj-ieee.c: Likewise.
2644         * config/tc-sh.c: Fix comment typos.
2645         * config/tc-tahoe.c: Likewise.
2646         * config/tc-vax.c: Likewise.
2647         * config/tc-w65.c: Likewise.
2648         * config/tc-z8k.c: Likewise.
2649         * config/tc-h8300.c (build_bytes): Assemble ldmac correctly.
2650
2651 2000-06-24  DJ Delorie  <dj@cygnus.com>
2652
2653         * config/tc-i386.c (md_estimate_size_before_relax): Revert
2654         more changes from Sept 1999
2655         (tc_i386_fix_adjustable): ditto
2656         (md_apply_fix3): ditto
2657
2658 2000-06-24  Frank Ch. Eigler  <fche@redhat.com>
2659
2660         * cgen.c (expr_jmp_buf_p): New validity flag for expr_jmp_buf.
2661         (gas_cgen_parse_operand): Set it around expression() call.
2662         (gas_cgen_md_operand): Test for it before longjmp().
2663
2664 2000-06-24  Kazu Hirata  <kazu@hxi.com>
2665
2666         * config/tc-h8500.c: Remove all uses of DEFUN.
2667         * config/tc-sh.c: Likewise.
2668         * config/tc-w65.c: Likewise.
2669         * config/tc-z8k.c: Likewise.
2670
2671         * config/tc-h8500.c: Fix typos in comments.
2672
2673 2000-06-23  Frank Ch. Eigler  <fche@redhat.com>
2674
2675         * expr.c (operand): Permit $hex literals if LITERAL_PREFIXDOLLAR_HEX
2676         is defined.
2677
2678 2000-06-23  matthew green  <mrg@redhat.com>
2679
2680         * expr.c (operand): Do not as_bad() if RELAX_PAREN_GROUPING is
2681         defined.  Fix error message for `[' grouping.
2682
2683 2000-06-22  Kazu Hirata  <kazu@hxi.com>
2684
2685         * config/tc-h8300.c: Fix formatting and comment typos.
2686
2687 2000-06-22  Timothy Wall  <twall@cygnus.com>
2688
2689         * config/tc-ia64.c (note_register_values): Move premature QP
2690         notation clearing into the appropriate place.
2691
2692 2000-06-22  Alan Modra  <alan@linuxcare.com.au>
2693
2694         * dep-in.sed: Escape literal `.'s on patterns.  Trim off `../'
2695         first before anything else.  Add bin-bugs.h, emul.h and progress.h
2696         Sort list of files as for $(OBJS) in Makefile.am.
2697
2698         * Makefile.am (DEP): grep for leading `/' in DEPA, and fail if we
2699         find one.  Remake dependencies.
2700         ($(OBJS)): Add bin-bugs.h, emul.h, and progress.h  Sort the list.
2701         * Makefile.in: Regenerate.
2702         * doc/Makefile.in: Regenerate.
2703
2704         * config/tc-i386.c (i386_displacement): Don't assume a constant
2705         displacement is necessarily 16 bits when in 16 bit code mode.
2706         (md_assemble): Instead size the displacement here after we know
2707         for sure that a .code16gcc operand hasn't automatically added
2708         operand size prefixes.
2709
2710 2000-06-21  H.J. Lu  <hjl@gnu.org>
2711
2712         * Makefile.am: Rebuild dependency.
2713         * Makefile.in: Rebuild.
2714
2715 2000-06-21  Kazu Hirata  <kazu@hxi.com>
2716
2717         * config/tc-h8300.c (parse_reg): Make the function static.
2718         (parse_exp): Likewise.
2719
2720 2000-06-20  DJ Delorie  <dj@cygnus.com>
2721
2722         * config/tc-i386.c (tc_i386_fix_adjustable): Revert change from
2723         Sept 1999; RVA relocs need to be treated more like DIR32 relocs
2724         for cygwin import libraries to work properly.
2725
2726 2000-06-20  H.J. Lu  <hjl@gnu.org>
2727
2728         * Makefile.am: Rebuild dependency.
2729         * Makefile.in: Rebuild.
2730         * configure: Likewise.
2731         * doc/Makefile.in: Likewise.
2732
2733 2000-06-20  Timothy Wall  <twall@cygnus.com>
2734
2735         * doc/internals.texi (CPU backend): Add @itemx for
2736         TC_START_LABEL_WITHOUT_COLON.
2737         * doc/c-tic54x.texi: New.
2738         * doc/as.texinfo: Add tic54x features and include primary tic54x
2739         documentation file.
2740         * doc/all.texi: Add C54X.
2741         * doc/Makefile.am (CPU_DOCS): Add c-tic54x.texi.
2742         * doc/Makefile.in: Regenerate.
2743         * configure.in: Add tic54x and define LIBM for tic54x.
2744         * configure: Regenrate.
2745         * config/tc-tic54x.[ch]: New.
2746         * config/obj-coff.h: Add tic54x.
2747         * Makefile.am: (CPU_TYPES): Add tic54x.
2748         (TARGET_CPU_CFILES): Add 'tc-tic54x.c'.
2749         (TARGET_CPU_HFILES): Add 'tc-tic54x.h'.
2750         (as_new_LDADD): Add $(LIBM).
2751         * Makefile.in: Regenerate.
2752
2753 2000-06-18  Stephane Carrez  <stcarrez@worldnet.fr>
2754
2755         * doc/Makefile.am (CPU_DOCS): Added 68hc11 file.
2756         * doc/c-m68hc11.texi: Document 68HC11 and 68HC12 port.
2757         * doc/as.texinfo: Likewise.
2758
2759         * configure, Makefile.in: Regenerate.
2760         * configure.in (emulations): Recognize m6811 and m6812.
2761         * Makefile.am (CPU_TYPES, TARGET_CPU_CFILES, TARGET_CPU_HFILES):
2762         Added files for 68hc11 and 68hc12 assembler.
2763         * config/tc-m68hc11.c: Assembler for 68hc11 and 68hc12.
2764         * config/tc-m68hc11.h: Header definition for that assembler.
2765
2766 2000-06-18  Nick Clifton  <nickc@redhat.com>
2767
2768         * symbols.c (resolve_symbol_value): Use bfd_octets_per_byte
2769         instead of OCTETS_PER_BYTE.
2770
2771         * config/tc-v850.c: Fix compile time warnings.
2772         * config/tc-ppc.c: Fix compile time warnings.
2773
2774 2000-06-18  H.J. Lu <hjl@gnu.org>
2775
2776         * configure.in: Don't emulate i386-pc-pe-coff with i386coff.
2777         * configure: Rebuild.
2778
2779 2000-06-17 Mark Elbrecht <snowball3@bigfoot.com>
2780
2781         * config/obj-coff.c (obj_coff_weak): Typo fix: Change BFD_ASSEMLER
2782         to BFD_ASSEMBLER.
2783
2784 2000-06-16  Nick Clifton  <nickc@cygnus.com>
2785
2786         * config/tc-mips.c (md_parse_option): Accept RM5200,RM5230,
2787         RM5231, RM5261, RM5721 and RM7000 as r5000 cpu variants.
2788
2789         * doc/c-mips.texi: Document newly accepted cpu variants.
2790
2791 2000-06-15  Ulf Carlsson  <ulfc@engr.sgi.com>
2792
2793         * config/tc-mips.h: Remove definition of ONLY_STANDARD_ESCAPES.
2794
2795 2000-06-13  Ulf Carlsson  <ulfc@engr.sgi.com>
2796
2797         * macro.c (getstring): Make it possible to escape the quote
2798         character.
2799
2800 Tue Jun 13 20:58:28 2000  Catherine Moore <clm@redhat.com>
2801
2802         * config/tc-hppa.c (pa_export): Weak symbols can be global.
2803
2804 2000-06-13  H.J. Lu  <hjl@gnu.org>
2805
2806         * configure: Regenerate.
2807
2808 2000-06-09  Alan Modra  <alan@linuxcare.com.au>
2809
2810         * app.c (do_scrub_begin): Don't default lex[';'] as a line
2811         separator.
2812         * doc/internals.texi (line_separator_chars): Semicolon is no
2813         longer a default.  Mention null and newline as defaults.
2814
2815         * read.c (is_end_of_line): Remove ifdef TC_HPPA.
2816
2817         * config/tc-i386.h (line_separator_chars): Explicitly mention `;'
2818         * config/tc-i860.h (line_separator_chars): Likewise.
2819         * config/tc-h8300.c (line_separator_chars): Likewise.
2820         * config/tc-i960.c (line_separator_chars): Likewise.
2821         * config/tc-m68k.c (line_separator_chars): Likewise.
2822         * config/tc-mips.c (line_separator_chars): Likewise.
2823         * config/tc-ns32k.c (line_separator_chars): Likewise.
2824         * config/tc-sparc.c (line_separator_chars): Likewise.
2825         * config/tc-vax.c (line_separator_chars): Likewise.
2826
2827         * config/tc-h8300.c (comment_chars): Use string initialiser.
2828         * config/tc-i960.c (line_comment_chars): Likewise.
2829         * config/tc-z8k.c (comment_chars, line_comment_chars,
2830         line_separator_chars): Likewise.
2831
2832         * config/tc-arm.c (line_separator_chars): Always use `;', not just
2833         for TE_LINUX.
2834
2835 2000-06-08  Nick Clifton  <nickc@cygnus.com>
2836
2837         * config/tc-arm.c (cons_fix_new_arm): Assign correct reloc value
2838         for size 1 fixes.
2839
2840 2000-06-08  David O'Brien  <obrien@FreeBSD.org>
2841
2842         * configure.in (VERSION): Update to show this is the CVS mainline.
2843
2844 2000-06-08  Matthew Jacob  <mjacob@feral.com>
2845
2846         * config/tc-alpha.c (md_undefined_symbol): Properly understand that
2847         $at is the integer register $r28, vs. both $r28 and the floating
2848         point register $f28.
2849
2850 2000-06-08  James E. Wilson  <wilson@cygnus.com>
2851
2852         * config/tc-ia64.c (generate_unwind_image): Call ia64_flush_insns.
2853         (dot_endp): Don't call ia64_flush_insns.
2854         (emit_one_bundle): Don't delete prologue/body records from
2855         unwind_record list in first loop.  Rewrite second loop to account for
2856         this.
2857
2858 2000-06-07  David Mosberger  <davidm@hpl.hp.com>
2859
2860         * config/tc-ia64.c: Add missing prototypes.
2861         (generate_unwind_image): Cast argument to output_unw_records call.
2862
2863 Wed Jun  7 22:44:14 2000  Denis Chertykov  <denisc@overta.ru>
2864
2865         * config/tc-avr.c (avr_operand): fix the formatting of the comment.
2866
2867 Wed Jun  7 21:26:15 2000  Denis Chertykov  <denisc@overta.ru>
2868
2869         * config/tc-avr.c (AVR_ISA_???): moved to include/opcode/avr.h
2870         (REGISTER_P): likewise.
2871         (avr_opcodes): uses include/opcode/avr.h
2872         (avr_operand): enable ld r,Z or st r,Z for at90s1200.
2873
2874 2000-06-04  Alan Modra  <alan@linuxcare.com.au>
2875
2876         * read.c (is_end_of_line): No ';' for TC_HPPA.  Add missing
2877         initializers too.
2878
2879 2000-06-03  H.J. Lu  <hjl@gnu.org>
2880
2881         * read.c (is_end_of_line): Put back `;'.
2882
2883 2000-06-03  Alan Modra  <alan@linuxcare.com.au>
2884
2885         * config/tc-i386.c (md_shortopts): Remove 'm', add 'q' to non-elf.
2886
2887 2000-06-01  Alan Modra  <alan@linuxcare.com.au>
2888
2889         * expr.c (operand): Test is_end_of_line outside switch to catch
2890         line separator chars that are also operators.
2891         (operator): Return O_illegal for line separator chars.
2892
2893         * read.c (is_end_of_line): Use 1 instead of 99.  Don't set `;'
2894         entry (or `!' entry for TC_HPPA).
2895
2896         * config/tc-arm.c (my_get_float_expression): Cast to unsigned char
2897         before indexing is_end_of_line.  Remove redundant check for '\0'.
2898         (fp_op2): Likewise.
2899         * config/tc-h8500.c (md_assemble): Likewise.
2900         * config/tc-mcore.c (md_assemble): Likewise.
2901         * config/tc-tic30.c (tic30_find_parallel_insn): Likewise.
2902         (md_atof): Likewise
2903
2904         * config/tc-m88k.c (s_bss): Cast to unsigned char before indexing
2905         is_end_of_line.
2906         * config/tc-mcore.c (mcore_cons): Likewise.
2907         (mcore_float_cons): Likewise.
2908         (mcore_stringer): Likewise.
2909         * config/tc-tic30.c (tic30_find_parallel_insn): Likewise.
2910
2911 2000-06-01  Scott Bambrough <scottb@netwinder.org>
2912
2913         * config/tc-arm.c (do_mrs): Allow SPSR_BIT to be set correctly.
2914
2915 2000-05-29  Nick Clifton  <nickc@cygnus.com>
2916
2917         * config/tc-sh.c: Fix compile time warning messages.
2918
2919         * config/tc-mips.c: Fix compile time warning messages.
2920
2921 2000-05-29  Philip Blundell  <philb@gnu.org>
2922
2923         * doc/as.texinfo: Update copyright dates.
2924         (Local Labels): Delete misplaced mention of ARM.
2925         * NEWS: Mention ARM ELF support.
2926
2927 2000-05-27  Alexandre Oliva  <aoliva@cygnus.com>
2928
2929         * config/tc-mn10300.c (md_assemble): Copy size to real_size before
2930         it is modified, and use the real_size to compute the frag address
2931         for dwarf2 line info.
2932
2933 2000-05-27  Alan Modra  <alan@linuxcare.com.au>
2934
2935         * Makefile.am (DEP, DEP1, dep, dep-in, dep-am): Use a better sed
2936         line-matching scheme to cope with automake moving variables around.
2937         ($(TARG_CPU_O)): Remove dependency on TARG_CPU_DEP_@target_cpu_type@
2938         * Makefile.in: Regenerate.
2939
2940 2000-05-26  Jakub Jelinek  <jakub@redhat.com>
2941
2942         * config/tc-sparc.c (sparc_relax): New.
2943         (md_longopts): Add -relax and -no-relax options.
2944         (md_parse_options, md_show_usage): Likewise.
2945         (md_apply_fix3): Optimize tail call into branch always if possible.
2946
2947 Thu May  4 15:27:07 2000  Donald Lindsay  <dlindsay@cygnus.com>
2948
2949         * config/tc-d10v.c (write_2_short, parallel_ok, md_assemble,
2950         d10v_cleanup) implement Mitsubishi's newly explained branch-packing
2951         rules, with warning when a GAS statement specifies a packing that
2952         will result in an instruction being squashed.
2953         Added typdef packing_type and enumerals, changed various integer
2954         literals to use the enumerals.
2955
2956 2000-05-24  David Mosberger  <davidm@hpl.hp.com>
2957
2958         * config/tc-ia64.c (dot_restorereg_p): New function.
2959         (md_pseudo_table): Add restorereg.p.
2960         (output_X3_format): Fix typo: record type should be UNW_X3, not UNW_X1.
2961         (output_X4_format): Fix typo: record type should be UNW_X4, not UNW_X2.
2962
2963         * config/tc-ia64.h (unw_record_type): Add unwabi.
2964         (unw_r_record): Rename member MASK to GRMASK.  Add sub-structure
2965         called MASK with members for imask, and the masks produced by
2966         fr_mem, gr_mem, br_mem, and frgr_mem.
2967         (unw_p_record): Add members ABI and CONTEXT.
2968         (unw_x_record): Add member AB.
2969         * config/tc-ia64.c (enum reg_symbol): Add REG_PSP and REG_PRIUNAT
2970         as pseudo-register for use during unwind info generation.
2971         (AR_PFS, AR_LC): New macros.
2972         (enum pseudo_type): Add PSEUDO_FUNC_REG to permit declaring registers
2973         whose names start with an at sign (as in "@priunat").
2974         (pseudo_func): Add "svr4", "hpux", "nt" constants and "priunat"
2975         register.
2976         (unwind_list, unwind_tail, current_unwind_entry, proc_start,
2977         proc_end, unwind_info, personality_routine): Consolidate into
2978         "unwind" structure to reduce offset-table use.  Add member
2979         NEXT_SLOT_NUMBER to track the slot number for the next instruction
2980         to be emitted.
2981         (output_R1_format, output_R3_format, output_P3_format,
2982         output_P6_format): Initialize R with zero to reduce compiler warnings.
2983         (output_P7_format): Ditto.  Add `default' branch to switch
2984         statement to reduce compiler warnings.
2985         (output_P8_format, output_B1_format, output_B4_format): Ditto.
2986         (output_P4_format): Rename 2nd & 3rd arg to IMASK and IMASK_SIZE.
2987         (format_ab_reg): Rename from format_a_b_reg.  Merge A and B args
2988         into single argument.
2989         (output_X1_format, output_X3_format): Initialize R with zero to reduce
2990         compiler warnings.  Merge A and B args into single argument.
2991         (output_X2_format, output_X4_format): Remove unused variable R.  Merge
2992         A and B args into single argument.
2993         (free_record): Removed (wasn't used).
2994         (free_list_records): Also free imasks in prologue records.
2995         (output_prologue, output_prologue_gr): Initialize mask bits to zero.
2996         (output_spill_mask): Remove.
2997         (output_unwabi): New function.
2998         (output_epilogue, output_label_state, output_copy_state): Call
2999         alloc_record.
3000         (output_spill_psprel, output_spill_sprel, output_spill_psprel_p,
3001         output_spill_sprel_p, output_spill_reg, output_spill_reg_p): Add AB
3002         argument.
3003         (process_one_record): New locals FR_MASK and GR_MASK.  Ignore
3004         gr_mem, fr_mem, br_mem, and frgr_mem records and instead emit them
3005         as part of handling the prologue records.  Emit region's imask if
3006         we have one.  Handle unwabi, epilogue, label_state, copy_state,
3007         spill_psprel, spill_sprel, spill_reg, spill_psprel_p,
3008         spill_sprel_p, and spill_reg_p records.
3009         (set_imask, count_bits, slot_index): New function.
3010         (fixup_unw_records): Fix region size computation.  Handle
3011         epilogue, spill_reg, spill_sprel, spill_psprel, spill_reg_p,
3012         spill_sprel_p, and spill_psprel_p records.  Merge mask bits of
3013         frgr_mem, fr_mem, gr_mem, br_mem on a per-region basis and
3014         set_imask accordingly.  Update imask for gr_gr, and br_gr records.
3015         (convert_expr_to_ab_reg, convert_expr_to_xy_reg): New function.
3016         (dot_save): Use manifest constants for applicaton registers.
3017         Handle REG_PR and REG_PRIUNAT.
3018         (dot_restore): Don't just ignore it.
3019         (dot_restorereg): New function..
3020         (generate_unwind_image): Ensure unwind info is a multiple of eight
3021         bytes, not just four bytes.
3022         (dot_handlerdata, dot_unwentry): Demand empty rest of line.
3023         (dot_altrp): Don't just ignore it.
3024         (dot_savemem): New function.  Replaces dot_savesp() and
3025         dot_savepsp().  Use manifest constants for applicaton registers.
3026         Handle REG_PR and REG_PRIUNAT.
3027         (dot_savef): Simplify.
3028         (dot_saveb): Support generation of br_gr.
3029         (dot_spillreg, dot_spillmem, dot_spillreg_p, dot_spillmem_p,
3030          dot_label_state, dot_copy_state): New function.
3031         (dot_unwabi): Don't just ignore it.
3032         (md_pseudo_table): Add restorereg, spillreg, spillsp, spillpsp,
3033         spillreg.p, spillsp.p, spillpsp, label_state, copy_state,
3034         unwabi, vframesp, and vframepsp.  Fix typo alprp->altrp.
3035         (emit_one_bundle): Set slot number for prologue/body records
3036         *before* emitting the first insn.
3037         (emit_one_bundle): Set UNWIND.NEXT_SLOT_NUMBER.
3038         (md_begin): Declare "psp" pseudo-register.
3039         (md_operand): Handle PSEUDO_FUNC_REG.  Fix printing of error message
3040         so we don't get segfault.
3041         (output_psp_sprel): Output sp/psp relative offsets as 4-byte word
3042         counts as required per SW Conventions manual
3043         (output_rp_psprel, output_rp_sprel, output_pfs_psprel,output_pfs_sprel,
3044         output_preds_psprel, output_preds_sprel, output_spill_base,
3045         output_unat_psprel, output_unat_sprel, output_lc_psprel,
3046         output_lc_sprel, output_fpsr_psprel, output_fpsr_sprel,
3047         output_priunat_psprel, output_priunat_sprel, output_bsp_psprel,
3048         output_bsp_sprel, output_bspstore_psprel, output_bspstore_sprel,
3049         output_rnat_psprel, output_rnat_sprel, output_spill_psprel,
3050         output_spill_sprel, output_spill_psprel_p, output_spill_sprel_p):Ditto.
3051         (dot_vframe): Implement.
3052         (dot_vframesp, dot_vframepsp): New function.
3053
3054 Tue May 23 00:57:05 2000  Hans-Peter Nilsson  <hp@axis.com>
3055
3056         * configure.in (i386-*-freebsd a.out entry): Quote properly.
3057         * configure: Regenerate.
3058
3059 2000-05-23  Alan Modra  <alan@linuxcare.com.au>
3060
3061         * config/tc-i386.c (md_assemble): Pass jump reloc in fr_var...
3062         (md_estimate_size_before_relax): so we can use it here instead of
3063         old kludges.  Localise vars to blocks.  Comment.
3064
3065         * frags.c (frag_new): Update fr_var comments.
3066         * frags.h (struct frag): Ditto.
3067
3068 2000-05-22  Richard Henderson  <rth@cygnus.com>
3069
3070         * config/tc-ia64.c (FUNC_PC_RELATIVE): New.
3071         (pseudo_func): Add pcrel.
3072         (operand_match):  Handle IA64_OPND_TGT64.
3073         (build_insn): Likewise.
3074         (md_begin): Initialize pseudo_func[FUNC_PC_RELATIVE].
3075         (ia64_gen_real_reloc_type): Handle FUNC_PC_RELATIVE.
3076         (fix_insn): Handle all three 64-bit relocation types.
3077
3078 Mon May 22 22:43:32 2000  Hans-Peter Nilsson  <hp@axis.com>
3079
3080         * obj.h (struct format_ops): New members begin, app_file,
3081         s_set_other, s_set_desc, s_get_type, s_set_type,
3082         separate_stab_sections, init_stab_section.
3083
3084         * config/obj-multi.h: Update GPL notice to v2.
3085         (obj_begin): New.
3086         (obj_app_file): New.
3087         (S_SET_SIZE): Test s_set_size for NULL before calling.
3088         (S_SET_ALIGN): Similar for s_set_align.
3089         (S_SET_OTHER): New.
3090         (S_SET_DESC): New.
3091         (S_GET_TYPE): New.
3092         (S_SET_TYPE): New.
3093         (SEPARATE_STAB_SECTIONS): New.
3094         (INIT_STAB_SECTION): New.
3095         (EMIT_SECTION_SYMBOLS): New.
3096         (AOUT_STABS) [OBJ_MAYBE_AOUT]: Define.
3097
3098         * config/obj-elf.h: Update GPL notice to v2.
3099         Mention that this file is included from obj-multi.h.
3100         (obj_begin): Wrap definition in ifndef.
3101         (elf_file_symbol): Constify declaration.
3102         (obj_app_file): Ditto.
3103         (SEPARATE_STAB_SECTIONS, INIT_STAB_SECTION, OBJ_PROCESS_STAB):
3104         Wrap in ifndef SEPARATE_STAB_SECTIONS.
3105
3106         * config/obj-elf.c (elf_s_set_other): New.
3107         (elf_file_symbol): Constify argument.
3108         (elf_separate_stab_sections): New.
3109         (elf_init_stab_section): New.
3110         (elf_format_ops): Add new members.  Remove comma at end.
3111
3112         * config/obj-ecoff.c (ecoff_separate_stab_sections): New.
3113         (ecoff_format_ops): Add new fields.  Remove comma at end.
3114         Mention inconsistency for emit_section_symbols.
3115
3116         * config/obj-coff.h (c_dot_file_symbol): Constify declaration.
3117
3118         * config/obj-coff.c (c_dot_file_symbol): Constify argument.
3119         (coff_separate_stab_sections): New.
3120         (coff_format_ops): Add new members.
3121
3122         * config/obj-aout.c (obj_aout_sec_sym_ok_for_reloc): New.
3123         (obj_aout_s_set_other): New.
3124         (obj_aout_s_set_desc): New.
3125         (obj_aout_s_get_type): New.
3126         (obj_aout_s_set_type): New.
3127         (obj_aout_separate_stab_sections): New.
3128         (aout_format_ops): New members added.  Use obj_aout_process_stab,
3129         not 0.  Use obj_aout_sec_sym_ok_for_reloc, not 0.
3130         (obj_aout_frob_symbol): Add ATTRIBUTE_UNUSED to args as
3131         appropriate.
3132         (obj_aout_line, obj_aout_weak, obj_aout_type): Ditto.
3133
3134 2000-05-22  Alan Modra  <alan@linuxcare.com.au>
3135
3136         * config/tc-i386.c (tc_i386_fix_adjustable): Prevent adjustment
3137         for OBJ_MAYBE_ELF too.  Use S_IS_EXTERNAL instead of S_IS_EXTERN.
3138         (md_estimate_size_before_relax): Ensure jumps to weak and
3139         externally visible symbols are relocatable.
3140
3141 Sat May 20 16:41:55 2000  Hans-Peter Nilsson  <hp@axis.com>
3142
3143         * stabs.c (aout_process_stab): Make global.
3144         (s_desc): Add ATTRIBUTE_UNUSED to args as appropriate.
3145         * read.h (aout_process_stab): Declare.
3146
3147         * configure.in (EMULATIONS) [i386aout, i386coff, i386elf]:
3148         Generalize to *aout, *coff *elf.
3149         * configure: Regenerated.
3150
3151         * doc/internals.texi (Object format backend): Say
3152         SEPARATE_STAB_SECTIONS needs to be nonzero, not just defined.
3153
3154         * Makefile.am (TARG_ENV_HFILES): Delete te-multi.h.
3155         * Makefile.in: Regenerated.
3156
3157 2000-05-19  Catherine Moore  <clm@cygnus.com>
3158
3159         * cgen.h (GAS_CGEN_MAX_FIXUPS): Check if already defined.
3160
3161 2000-05-18  Alan Modra  <alan@linuxcare.com.au>
3162
3163         * config/tc-hppa.c (md_apply_fix): Mask out immediate bits of
3164         instruction to reflect change in re_assemble_*.
3165
3166 Thu May 18 10:52:14 2000  Jeffrey A Law  (law@cygnus.com)
3167
3168         * configure.in (hppa-*-hpux11*): If the cpu is hppa*64*, then
3169         build PA64 ELF tools.
3170         * configure: Rebuilt.
3171
3172 2000-05-17  Alan Modra  <alan@linuxcare.com.au>
3173
3174         * Makefile.am: Regenerate dependencies.
3175         * Makefile.in: Regenerate.
3176
3177 2000-05-15  Nick Clifton  <nickc@cygnus.com>
3178
3179         * config/tc-arm.c (struct asm_psr): Add boolean field
3180         distinguishing between CSPR and SPSR.  Rename 'number' field
3181         to 'field'.
3182         (psrs): Rearrange contents to match new asm_psr structure.
3183         (arm_psr_parse): Move next to psr_required_here.  Make it
3184         return an asm_psr structure.
3185         (psr_required_here): Use asm_psr structure returned by
3186         arm_psr_parse.
3187         (do_msr): Reorganise to allow psr_required_here to be called
3188         only once.
3189         (md_undefined_name): Mark 'name' parameter as unused, since
3190         the COFF target does not use it.
3191
3192 2000-05-14  David O'Brien  <obrien@FreeBSD.org>
3193
3194         * config/te-386bsd.h:  Clean up comments to adhere to the GNU coding
3195         standards.
3196         * config/te-aux.h:  Likewise.
3197         * config/te-dpx2.h:  Likewise.
3198         * config/te-go32.h:  Likewise.
3199         * config/te-hp300.h:  Likewise.
3200         * config/te-hppa.h:  Likewise.
3201         * config/te-i386aix.h:  Likewise.
3202         * config/te-ic960.h:  Likewise.
3203         * config/te-interix.h:  Likewise.
3204         * config/te-nbsd532.h:  Likewise.
3205         * config/te-pc532mach.h:  Likewise.
3206         * config/te-ppcnw.h:  Likewise.
3207         * config/te-psos.h:  Likewise.
3208         * config/te-sparcaout.h:  Likewise.
3209         * config/te-sun3.h:  Likewise.
3210         * config/te-sysv32.h:  Likewise.
3211
3212 2000-05-14  Alan Modra  <alan@linuxcare.com.au>
3213
3214         * config/tc-h8300.c (do_a_fix_imm): Don't rely on `short' being 16
3215         bits.  Instead explicitly mask and sign extend.  Do the 8 bit mask
3216         and sign extend without an if statement.
3217         (build_bytes): Likewise.
3218
3219 2000-05-14  Kazu Hirata  <kazu@hxi.com>
3220
3221         * config/tc-h8300.c (do_a_fix_imm): Output a reloc for no
3222         X_add_symbol L_32 case.
3223
3224 2000-05-14  David O'Brien  <obrien@FreeBSD.org>
3225
3226         * config/te-freebsd.h: New file.
3227
3228 2000-05-13  Alan Modra  <alan@linuxcare.com.au>
3229
3230         * asintl.h (gettext, dgettext, dcgettext, textdomain,
3231         bindtextdomain): Replace defines with those from intl/libgettext.h
3232         to quieten gcc warnings.
3233
3234         * NEWS: Mention x86 .arch and -q.
3235
3236         * config/tc-i386.c (quiet_warnings): New.
3237         (md_assemble): Use quiet_warnings.
3238         (md_parse_option): Set quiet_warnings from -q.
3239         (md_show_usage): Mention -q, delete -m.
3240         (flag_do_long_jump): Delete.
3241         (md_parse_option): Remove -m.
3242         (md_show_usage): Remove -m.
3243         (md_create_long_jump): Remove useless flag_do_long_jump code.
3244
3245         * as.c (parse_args): In case OPTION_DEFSYM, use a valueT to hold
3246         the symbol value, and use bfd_scan_vma if BFD_ASSEMBLER.
3247
3248 2000-05-13  Alan Modra  <alan@linuxcare.com.au>
3249             Alexander Sokolov <robocop@netlink.ru>
3250
3251         * doc/c-i386.texi (i386-Arch): New section.
3252         (i386-Syntax): Mention .intel_syntax and .att_syntax.
3253
3254         * config/tc-i386.c (cpu_arch_name, cpu_arch_flags): New.
3255         (smallest_imm_type): Use smallest opcode for shift by one if cpu
3256         architecture has been given and is not 486.
3257         (set_cpu_arch): New.
3258         (md_pseudo_table): Add .arch.
3259         (md_assemble): Warn if cpu architecture has been given and an
3260         unsupported instruction.
3261
3262         * config/tc-i386.h (SMALLEST_DISP_TYPE): Delete.
3263         Move operand_types bit defines after relevant template field.
3264         (template): Add cpu_flags.
3265         (Cpu*): Define.
3266         (arch_entry): New.
3267
3268 2000-05-12  Alexandre Oliva  <aoliva@cygnus.com>
3269
3270         * config/tc-mn10300.h (md_end): Define.
3271         (mn10300_finalize): Declare.
3272         * config/tc-mn10300.c: Include dwarf2dbg.h.
3273         (debug_line): Define.
3274         (md_assemble): Generate dwarf2 line info.
3275         (mn10300_finalize): New function.  Finalize dwarf2 info.
3276
3277 2000-05-11  Ulf Carlsson  <ulfc@engr.sgi.com>
3278
3279         * config/tc-mips.c (md_estimate_size_before_relax): Use the
3280         external version of the relocation for weak symbols.
3281
3282 2000-05-08  David Mosberger  <davidm@hpl.hp.com>
3283
3284         * config/tc-ia64.c (output_P7_format, case mem_stack_f): Output fixed
3285         frame size in units of 16 bytes, as required per SW Conventions manual.
3286         (output_unw_records): Output info-block header as a dword to get
3287         byte-order right.
3288
3289 2000-05-08  Alan Modra  <alan@linuxcare.com.au>
3290
3291         * as.h: #include "file", not <file> on files from ../include.
3292         (as_abort, as_fatal): Add ATTRIBUTE_NORETURN.
3293         * config/tc-m68k.c (m68k_ip): Fix signed/unsigned warnings.
3294         (md_convert_frag): Add ATTRIBUTE_UNUSED.
3295         (tc_coff_symbol_emit_hook): Ditto.
3296         (OPTCOUNT): Cast to int to avoid compiler warning.
3297         (md_begin): Fix signed/unsigned warnings.
3298
3299 2000-05-08  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
3300
3301         * config/tc-m68k.c (md_convert_frag_1): Abort if we end up in the
3302         ABRANCH LONG case for a conditional branch on a 68000.
3303         (md_estimate_size_before_relax): Likewise.  Also handle
3304         flag_short_refs correctly for ABRANCH, BCC68000, and DBCC.
3305         (m68k-ip: case ABSL): Relax absolute references to 16-bit
3306         PC-relative on all CPUs.
3307         (md_estimate_size_before_relax): Likewise.
3308
3309 2000-05-04  Alan Modra  <alan@linuxcare.com.au>
3310
3311         * as.c (parse_args): Just mention current year in printed
3312         copyright message.
3313
3314 2000-05-03  J.T. Conklin  <jtc@redback.com>
3315
3316         * config/tc-ppc.c (pre_defined_registers): Add entries for vector
3317         unit registers.
3318         (md_parse_option): Recognize -m7400.
3319
3320 2000-05-03  Ian Lance Taylor  <ian@zembu.com>
3321
3322         * config/atof-ieee.c (gen_to_words): When adding carry back in,
3323         don't permit lp to become less than the words array.
3324
3325 2000-05-03  Rodney Brown  <RodneyBrown@pmsc.com>
3326
3327         config/tc-mcore.c (md_apply_fix3): BFD_RELOC_MCORE_PCREL_IMM11BY2
3328         Fix little-endian case.
3329
3330 2000-05-03  David O'Brien  <obrien@NUXI.com>
3331
3332         * as.c (parse_args): Update copyright.
3333
3334 2000-05-03  Mark Elbrecht  <snowball3@bigfoot.com>
3335
3336         * gas/config/tc-i386.h (SUB_SEGMENT_ALIGN): If TE_GO32, return 4
3337         for the .bss section too.
3338
3339 2000-05-02  Alan Modra  <alan@linuxcare.com.au>
3340
3341         * configure.in: Set em=linux for hppa-*-linux.
3342         * configure: Regenerate.
3343         * doc/Makefile.in: Regenerate with correct automake.
3344
3345         * frags.c (frag_grow): Sanity check chunk_size.
3346
3347         * config/obj-elf.h: #include "bfd.h" not <bfd.h>
3348         * config/obj-som.h: Likewise.
3349         * config/obj-ieee.h: Likewise.
3350
3351         * config/tc-hppa.h: Test BFD_ARCH_SIZE, not BFD64.
3352
3353         * config/tc-hppa.c (log2): Only compile when OBJ_SOM.
3354         (md_pseudo_table): Fully initialise OBJ_ELF cases.
3355         (fix_new_hppa): Add ATTRIBUTE_UNUSED to args as appropriate.
3356         (pa_ip): low_sign_unext now returns via function value.  Use
3357         re_assemble_* instead of dis_assemble_* and
3358         INSERT_FIELD_AND_CONTINUE combination.  Don't call sign_unext
3359         unnecessarily.
3360         (md_convert_frag): Add ATTRIBUTE_UNUSED to args as appropriate.
3361         (md_section_align, md_parse_option, md_show_usage,
3362         md_undefined_symbol, pa_align, pa_block, pa_brtab, pa_try,
3363         pa_callinfo, pa_code, pa_comm, pa_end, pa_enter, pa_entry,
3364         pa_exit, pa_export, pa_import, pa_label, pa_leave, pa_level,
3365         pa_origin, pa_param, pa_proc, pa_procend, pa_space, pa_spnum,
3366         pa_version, pa_compiler, pa_copyright, pa_data, pa_fill, pa_lsym,
3367         pa_text): Likewise.
3368         (md_apply_fix): Change type of new_val to offsetT.  Delete w1, w2,
3369         w, resulti.  Add insn, val.  Move bfd_get_32 and bfd_put_32
3370         outside of switch.  Correct mask and shifting errors in case 10
3371         and case -11.  In case 21, compare against signed range to suit
3372         hppa_field_adjust changes.  In case 12, use re_assemble_12.  In
3373         case 17 and case 22, use offsetT variable to properly check range.
3374         Use re_assemble_* here too.
3375         (evaluate_absolute): Change type of value to offsetT.  Call
3376         hppa_field_adjust to do the work for us.
3377         (pa_parse_cmpb_64_cmpltr): Delete save_s.
3378         (pa_parse_cmpib_64_cmpltr): Ditto.
3379         (pa_build_unwind_subspace): Delete unused var subseg.  Change type
3380         of i to unsigned int.
3381         (pa_type_args): Conditionally declare symbol if OBJ_SOM.
3382         (pa_end_of_source): Return type is void.
3383
3384 Mon May  1 08:54:23 2000  Catherine Moore  <clm@cygnus.com>
3385
3386         * macro.c (macro_expand_body): Don't prepend macro number with zeroes.
3387
3388 Mon May  1 14:19:39 2000  Denis Chertykov  <denisc@overta.ru>
3389
3390         * config/tc-avr.c: ATTRIBUTE_UNUSED added to the necessary places.
3391         More comments added.
3392         (md_begin): Removed "construct symbols for each register name".
3393         Because register names conflicts with GCC generated function
3394         names.
3395         (avr_operand): Now constant numbers can be used as a register
3396         identifiers (0 as r0, 31 as r31).
3397         (md_assemble): use skip_space () before parsing instruction
3398         operands.
3399
3400 2000-05-01  Alan Modra  <alan@linuxcare.com.au>
3401
3402         * configure.in: Set bfd_gas=yes on i386-*-pe and i386-*-nt* to
3403         ensure all pe targets use bfd.  Remove unnecessary bfd_gas=yes on
3404         arm-*-netbsd* and arm-*-wince as this is set for all arm*.
3405         * configure: Regenerate.
3406
3407 2000-04-29  Andreas Jaeger  <aj@suse.de>
3408
3409         * as.h: Correctly check GCC version.
3410
3411 2000-04-26  David O'Brien  <obrien@FreeBSD.org>
3412
3413         * doc/as.1: Fix unbalanced brackets.
3414
3415         * config/tc-i386.c (comment_chars): Don't use '/' as comment start if
3416         TE_FreeBSD.
3417         (line_comment_chars): Set to '/' if TE_FreeBSD.
3418
3419 Tue Apr 25 11:02:02 2000  Jeffrey A Law  (law@cygnus.com)
3420
3421         * configure.in: Configury support for PA64 (currently disabled).
3422         * configure: Rebuilt.
3423
3424 2000-04-25  Machida Hiroyuki  <machida@sm.sony.co.jp>
3425
3426         * config/tc-mips.c (s_change_sec): Use record_alignment, not
3427         bfd_set_section_alignment.
3428
3429 2000-04-25  Alan Modra  <alan@linuxcare.com.au>
3430
3431         * config/tc-i386.c (offset_in_range): Ensure shift counts are less
3432         than 32.
3433
3434 2000-04-24  Nick Clifton  <nickc@cygnus.com>
3435
3436         * doc/c-arm.texi (ARM Directives): Document behaviour of .align 0.
3437         * doc/as.texinfo (Align): Include arm and strongarm in list of
3438         targets that have the second form of the behaviour of the .align
3439         directive.
3440
3441 2000-04-24  Mark Klein <mklein@dis.com>
3442
3443         * obj-som.c: Terminate obj_pseudo_table.
3444
3445 Mon Apr 24 15:21:11 2000  Clinton Popetz  <cpopetz@cygnus.com>
3446
3447         * as.c (parse_args): Allow md_parse_option to override -a listing
3448         option.
3449         * config/obj-coff.c (add_lineno): Change type of offset parameter
3450         from "int" to "bfd_vma."
3451         * config/tc-ppc.c (md_pseudo_table): Add "llong" and "machine."
3452         (ppc_mach, ppc_subseg_align, ppc_target_format): New.
3453         (ppc_change_csect): Align correctly for XCOFF64.
3454         (ppc_machine): New function, which discards "ppc_machine" line.
3455         (ppc_tc): Cons for 8 when code is 64 bit.
3456         (md_apply_fix3): Don't check operand->insert.  Handle 64 bit
3457         relocations.
3458         (md_parse_option): Handle -a64 and -a32.
3459         (ppc_xcoff64): New.
3460         * config/tc-ppc.h (TARGET_MACH): Define.
3461         (TARGET_FORMAT): Move to function.
3462         (SUB_SEGMENT_ALIGN): Use ppc_subseg_align.
3463
3464 Sun Apr 23 16:45:45 2000  Denis Chertykov  <denisc@overta.ru>
3465
3466         * config/tc-avr.c: New AVR_ISA_ defined.
3467         (md_assemble): Handle opcodes with optional operands (lpm,elpm).
3468         (avr_operand): Handle 'a', 'v' and 'z' constraint letters needed
3469         for `fmul', `movw' and `lpm R,Z' instructions.
3470         (avr_operands): Warn if current opcode is a two-word instruction
3471         and previous opcode was cpse/sbic/sbis/sbrc/sbrs.
3472         (avr_opcodes): New commands added.
3473         (REGISTER_P): Check 'a' and 'v' constraint letters.
3474         (mcu_types): New MCU added.
3475
3476 2000-04-22  Timothy Wall  <twall@cygnus.com>
3477
3478         * config/tc-ia64.c (pseudo_func[]): Add new "nat" entry equivalent
3479         to "natval".
3480         (operand_match): Conditionally insert default bit values for IMMU9.
3481
3482 2000-04-14  Matthew Green  <mrg@cygnus.com>
3483
3484         * configure.in: Add NetBSD/sparc ELF and NetBSD/sparc64 support.
3485         * configure: Rebuilt.
3486
3487 Fri Apr 21 14:29:43 2000  Jeffrey A Law  (law@cygnus.com)
3488                           Jason Eckhardt  <jle@cygnus.com>
3489
3490         * config/tc-hppa.c (md_apply_fix): Handle new PA2.0 formats.
3491
3492         * config/tc-hppa.c (CHECK_ALIGN): New macro.
3493         Added handling of new operand types l,y,&,fe,fE,fx.
3494
3495 Fri Apr 21 13:20:53 2000  Richard Henderson  <rth@cygnus.com>
3496                           David Mosberger  <davidm@hpl.hp.com>
3497                           Timothy Wall <twall@cygnus.com>
3498                           Andrew MacLeod  <amacleod@cygnus.com>
3499                           Jim Wilson  <wilson@cygnus.com>
3500
3501         * Makefile.am (CPU_TYPES): Add ia64.
3502         (TARGET_CPU_CFILES): Add config/tc-ia64.c.
3503         (TARGET_CPU_HFILES): Add config/tc-ia64.h.
3504         * Makefile.in: Rebuild.
3505         * app.c (do_scrub_chars): Handle DOUBLESLASH_COMMENTS.
3506         * configure: Rebuild.
3507         * configure.in: Recognize ia64 as cpu type.  Set bfd_gas.
3508         (ia64-*-elf*, ia64-*-linux-gnu*): New targets.
3509         * expr.c (expr): Handle md_optimize_expr.
3510         * read.c (LEX_HASH): Add comment.
3511         * config/tc-ia64.c, config/tc-ia64.h: New files.
3512
3513 2000-04-21  Richard Henderson  <rth@cygnus.com>
3514
3515         * config/tc-d30v.c (write_2_short): Disregard opcode1->ecc when
3516         bundling a non-delayed branch type instruction.
3517
3518 2000-04-20  Alexandre Oliva  <aoliva@cygnus.com>
3519
3520         * config/tc-mn10300.c (HAVE_AM30): Define.
3521         (md_assemble): Use it.
3522
3523 2000-04-19  Alan Modra  <alan@linuxcare.com.au>
3524
3525         * config/obj-elf.c (obj_elf_change_section): Check for changed
3526         section attributes.
3527
3528         * Makefile.am: (CPU_MULTI_VALID): Remove.
3529         (MULTI_CPU_TYPES): Define.
3530         (MULTI_CPU_OBJ_VALID): Define.
3531         (DEPTC): Use the above.
3532         (DEPOBJ): Same here.
3533         (DEP2): And here.
3534         Regenerate dependencies.
3535         * Makefile.in: Regenerate.
3536
3537 2000-04-19  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
3538
3539         * Makefile.am (YACC, LEX): Get them from configure.
3540
3541 2000-04-18  H.J. Lu  (hjl@gnu.org)
3542
3543         * config/tc-i386.c (offset_in_range): Use addressT instead of
3544         bfd_vma for non-bfd assemblers.
3545
3546 2000-04-17  Alan Modra  <alan@linuxcare.com.au>
3547
3548         * config/tc-i386.c (offset_in_range): Sign extend val so BFD64
3549         doesn't give spurious errors.
3550
3551 2000-04-14  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
3552
3553         * as.h (SEEK_SET): Define if undefined.
3554
3555 2000-04-13  Alan Modra  <alan@linuxcare.com.au>
3556
3557         * config/tc-arm.c (md_apply_fix3): Don't use UL suffix on
3558         constants, and don't assume offsetT is 32 bits.
3559
3560 2000-04-12  Andrew Cagney  <cagney@b1.cygnus.com>
3561
3562         * config/tc-d10v.h: Include "write.h" to get definition of fixS.
3563         (md_pcrel_from_section): Add prototype.
3564         (d10v_fix_adjustable): Add prototype.
3565         (d10v_force_relocation): Replace 'struct fix' with 'fixS'.
3566
3567         * config/tc-d10v.c (md_apply_fix3): Add paren around &&.
3568
3569 2000-04-12  Nick Clifton  <nickc@cygnus.com>
3570
3571         * config/tc-d10v.c (find_opcode): Correctly calculate position of
3572         symbol in frag chain.
3573
3574 2000-04-10  Alan Modra  <alan@linuxcare.com.au>
3575
3576         * config/tc-i386.c (fits_in_signed_byte): Change arg to offsetT.
3577         (fits_in_unsigned_byte, fits_in_unsigned_word): Ditto.
3578         (fits_in_signed_word, smallest_imm_type): Ditto.
3579         (md_assemble): Use an offsetT var to hold offsetT values, not a
3580         long.
3581         (offset_in_range): New.
3582         (md_assemble): Use it.
3583         (md_convert_frag): Change type of target_address, opcode_address,
3584         and displacement_from_opcode_start to offsetT.
3585         (md_create_short_jump): Change type of offset to offsetT.
3586         (md_create_long_jump): Ditto.
3587         (md_apply_fix3): Use -4, not 0xfffffffc for BFD_RELOC_386_PLT32.
3588         (md_chars_to_number): Remove.
3589         (output_invalid): Remove duplicate prototype.
3590
3591 2000-04-09  Nick Clifton  <nickc@cygnus.com>
3592
3593         * Makefile.am (CPU_TYPES): Add 'avr'.
3594         (TARGET_CPU_CFILES): Add 'tc-avr.c'.
3595         (TARGET_CPU_HFILES): Add 'tc-avr.h'.
3596
3597         * Makefile.in: Regenerate.
3598
3599         * doc/as.texinfo: Add M32R documentation.
3600
3601 Fri Apr  7 15:56:57 2000  Andrew Cagney  <cagney@b1.cygnus.com>
3602
3603         * configure.in (WARN_CFLAGS): Set to -W -Wall by default.  Add
3604         --enable-build-warnings option.
3605         * Makefile.am (AM_CFLAGS, WARN_CFLAGS): Add definitions.
3606         * Makefile.in, configure: Re-generate.
3607
3608 2000-04-07  Nick Clifton  <nickc@cygnus.com>
3609
3610         * config/tc-arm.c (md_apply_fix3): Treat BFD_RELOC_ARM_PCREL_BLX
3611         in the same way as BFD_RELOC_ARM_PCREL_BRANCH, and
3612         BFD_RELOC_THUMB_PCREL_BLX lie BFD_RELOC_THUMB_PCREL_BRANCH.
3613         (tc_gen_reloc): Accept BFD_RELOC_{ARM|THUMB}_PCREL_BLX.
3614         (arm_force_relocation): Force relocations for
3615         BFD_RELOC_{ARM|THUMB}_PCREL_BLX as well.
3616
3617 Wed Apr  5 22:26:32 2000  J"orn Rennecke <amylaar@cygnus.co.uk>
3618
3619         * config/tc-sh.c (get_operands): There's no third operand if the
3620         first operand is an immediate.
3621
3622 Wed Apr  5 22:07:19 2000  J"orn Rennecke <amylaar@cygnus.co.uk>
3623
3624         * config/tc-sh.c (immediate): Delete.
3625         (sh_operand_info): Add immediate member.
3626         (parse_reg): Use A_PC for pc.
3627         (parse_exp): Add second argument 'op'.  All callers changed.
3628         (parse_at): Expect pc to be coded as A_PC.
3629         Use immediate field in *op.
3630         (insert): Add fourth argument 'op'.  All callers changed.
3631         (build_relax): Add second argument 'op'.  All callers changed.
3632         (insert_loop_bounds): New function.
3633         (build_Mytes): Remove DISP_4.
3634         Split IMM_[48]{,BY[24]} into IMM[01]_[48]{,BY[24]}.  Add REPEAT.
3635         (assemble_ppi): Use immediate field in *operand.
3636         (sh_force_relocation): Handle BFD_RELOC_SH_LOOP_{START,END}.
3637         (md_apply_fix): Likewise.
3638         (tc_gen_reloc): Likewise.  Check for a pcrel BFD_RELOC_SH_LABEL.
3639
3640 Wed Apr  5 06:35:45 2000  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
3641
3642         * config/tc-sparc.c (sparc_ip): Avoid string pasting.
3643
3644 Tue Apr  4 19:27:50 2000  Hans-Peter Nilsson  <hp@axis.com>
3645
3646         * internals.texi (CPU backend): Document
3647         TC_CHECK_ADJUSTED_BROKEN_DOT_WORD.
3648
3649 2000-04-04  Alan Modra  <alan@linuxcare.com.au>
3650
3651         * po/gas.pot: Regenerate.
3652
3653         * as.c (show_usage): Restore translated part of bug string.
3654         * gasp.c (show_usage): Likewise.
3655
3656         * Makefile.am (MKDEP): Use gcc -MM rather than ../mkdep.
3657         (DEP): Quote when passing vars to sub-make.  Use "mv -f" rather
3658         than move-if-change.
3659         (DEP1): Modify for "gcc -MM".
3660         (DEPTC): Likewise.
3661         (DEPOBJ): Likewise.
3662         (DEP2): Likewise.
3663         (CLEANFILES): Add DEPTCA, DEPOBJA, DEP2a, DEPA.
3664         Update dependencies.
3665         * Makefile.in: Regenerate.
3666
3667 2000-04-03  Alexandre Oliva  <aoliva@cygnus.com>
3668
3669         * config/tc-mn10300.c (md_pseudo_table): Use constant names.
3670         (md_begin): Likewise.
3671         (HAVE_AM33): New macro.
3672         (md_assemble): Use it.  Match r_regs and xr_regs only if
3673         HAVE_AM33.
3674
3675 2000-04-03  Alan Modra  <alan@linuxcare.com.au>
3676
3677         * as.h: #include "bin-bugs.h"
3678         * as.c (show_usage): Use REPORT_BUGS_TO.
3679         * gasp.c: #include "bin-bugs.h"
3680         (show_usage): Use REPORT_BUGS_TO.
3681
3682         * config/tc-sparc.c (md_show_usage): Add a trailing newline.
3683
3684 Mon Apr  3 13:56:03 2000  Hans-Peter Nilsson  <hp@axis.com>
3685
3686         * write.c (write_object_file) [! WORKING_DOT_WORD]: If defined,
3687         call TC_CHECK_ADJUSTED_BROKEN_DOT_WORD for each word after
3688         adjustments.
3689
3690 2000-04-03  Alan Modra  <alan@linuxcare.com.au>
3691
3692         * config/tc-i386.c (i386_immediate): Don't assume a constant
3693         immediate is necessarily 16 bits when in 16 bit code mode.
3694         (md_assemble): Instead set guess_suffix here after we have checked
3695         registers.
3696
3697 2000-04-02  Richard Henderson  <rth@cygnus.com>
3698
3699         * config/tc-d30v.c (check_range): Allow signed or unsigned 32-bit
3700         quantities.  Correct right shift sign extension.
3701         (build_insn): Make `number' unsigned long.  Mask top 6 bits of
3702         32-bit value when shifting into place.
3703
3704 2000-04-01  Ian Lance Taylor  <ian@zembu.com>
3705
3706         * app.c: Add ATTRIBUTE_UNUSED as needed.
3707         * config/tc-ppc.c: Likewise.
3708         (ppc_size): Make unsigned long.
3709         (ppc_insert_operand): Add casts to avoid warnings.
3710
3711 2000-03-31  Nick Clifton  <nickc@cygnus.com>
3712
3713         * config/tc-d10v.h (md_flush_pending_output): Define.
3714
3715 2000-03-29  Nick Clifton  <nickc@cygnus.com>
3716
3717         * config/tc-sh.h (SEG_NAME): New macro: return the name of a
3718         segment.  Works for both BFD_ASSEMBLER and others.
3719         (SUB_SEGMENT_ALIGN): Use SEG_NAME.
3720
3721 2000-03-29  Nick Clifton <nickc@cygnus.com
3722
3723         * config/tc-arm.c (tinsns): Add "bal" instruction pattern.
3724
3725 2000-03-28  Alan Modra  <alan@linuxcare.com.au>
3726
3727         * listing.c (LISTING_LHS_WIDTH): Default depends on
3728         LISTING_WORD_SIZE.
3729         (LISTING_LHS_WIDTH_SECOND): Default to LISTING_LHS_WIDTH.
3730
3731 2000-03-27  Ian Lance Taylor  <ian@zembu.com>
3732
3733         * config/tc-sh.c (md_show_usage): Use backslash before newline in
3734         string literal.
3735
3736 2000-03-27  Alan Modra  <alan@linuxcare.com.au>
3737
3738         * config/tc-avr.h (TC_HANDLES_FX_DONE): Define.
3739
3740         * config/tc-avr.c (mcu_types): Add missing initialiser.
3741         (md_pcrel_from_section): Add prototype.
3742         (avr_operand): Remove redundant test of unsigned < 0.
3743         (avr_cons_fix_new): Ensure exp_mod_pm zero on function exit.
3744
3745 2000-03-27  Denis Chertykov  <denisc@overta.ru>
3746
3747         * config/tc-avr.c: New file for AVR support.
3748         * config/tc-avr.h: Likewise.
3749         * configure.in: Add AVR support.
3750         * configure: Regenerate.
3751
3752 2000-03-26  Timothy Wall <twall@cygnus.com>
3753
3754         * gasp.c (macro_op): Add new argument to check_macro call.
3755         Macro structure definitions moved to macro.h
3756         * sb.h:  Add argument to prototype for input_scrub_include_sb.
3757         * input-scrub.c (input_scrub_include_sb): Allow disabling of sb
3758         nesting checks with an additional flag.
3759         (struct input_save): Add flag to indicate whether current sb
3760         should be checked for proper macro/conditional nesting.
3761         (input_scrub_push/pop): Save/restore nest check flag.
3762         (input_scrub_next_buffer): Ditto.  Also call end of macro hook if
3763         defined.
3764         * macro.c (check_macro):  Allow caller to retrieve parsed macro
3765         information if a pointer is provided.  This information may be
3766         used by the new macro hooks.
3767         * macro.h: Update prototype for check_macro.  Macro struct
3768         definitions moved here from macro.c/gasp.c.
3769         * read.c (read_a_source_file): Add parameter to check_macro call,
3770         and pass macro info to the macro hook, if defined.
3771         (input_scrub_insert_line): New.  Allow insertion of a line of
3772         characters into the input stream.
3773         (input_scrub_insert_file): New.  Allow insertion of an arbitrary
3774         file into the input stream.
3775         (s_include): Use input_scrub_insert_file.
3776         * internals.texi: Document new macro hooks.
3777         * as.h: New prototypes added.
3778
3779 2000-03-26  Alan Modra  <alan@linuxcare.com.au>
3780
3781         * config/tc-i386.c: Don't start any as_bad or as_warn message with
3782         an initial capital letter.
3783         (i386_index_check): Reindent.
3784
3785 2000-03-19  Nick Clifton  <nickc@cygnus.com>
3786
3787         * config/tc-arm.c (md_apply_fix3): Fix bug detecting overflow of pc
3788         relative branches.
3789
3790 2000-03-17 Thomas de Lellis <tdel@windriver.com>
3791
3792         * config/tc-arm.c (do_t_adr): Flag "adr Rd,label"
3793         instruction operand bad if Rd > 7 when generating
3794         thumb instructions. Prevents for example,
3795         "adr r12,label" from silently failing and generating
3796         the wrong instruction.
3797
3798 2000-03-17  Nick Clifton  <nickc@cygnus.com>
3799
3800         * config/tc-arm.c (md_apply_fix3): Handle same-section relocations
3801         that have a destingation >= 0x400000.
3802         Fix compile time warning messages.
3803
3804 Thu Mar 16 23:45:16 2000  J"orn Rennecke <amylaar@cygnus.co.uk>
3805
3806         * config/tc-sh.c (md_begin): When encountering insn that are
3807         not supported by the current arch, only change the name if
3808         its contents are the same as prev_name.
3809         (get_specific): If the the architecture doesn't match, fail.
3810
3811 Thu Mar 16 21:18:13 2000  J"orn Rennecke <amylaar@cygnus.co.uk>
3812
3813         * config/tc-sh.c (IDENT_CHAR): Define.
3814         (parse_reg): Use it instead of isalnum.  Put r[0..7]_bank operand
3815         matching back where it came from.
3816
3817 Thu Mar 16 20:58:10 2000  J"orn Rennecke <amylaar@cygnus.co.uk>
3818
3819         * config/tc-sh.c (md_show_usage): Add description of -dsp.
3820
3821 2000-03-15  Jonathan Larmour  <jlarmour@redhat.co.uk>
3822
3823         * config/tc-sh.c (parse_reg): Match r[0..7]_bank operands before
3824         normal operands.
3825
3826 2000-03-15  Kazu Hirata  <kazu@hxi.com>
3827
3828         * config/tc-h8300.c: Add ATTRIBUTE_UNUSED as appropriate.
3829
3830 Mon Mar 13 22:02:59 2000  Hans-Peter Nilsson  <hp@axis.se>
3831
3832         * expr.c (operand) [case 'f']: When testing if '0f' can start a
3833         floating-point-number, make sure 'f' is in FLT_CHARS.
3834
3835 Sat Mar 11 00:01:39 2000  Hans-Peter Nilsson  <hp@axis.se>
3836
3837         * read.c (TC_IMPLICIT_LCOMM_ALIGNMENT): New default-definition.
3838         (s_lcomm_internal): Use it.
3839         * doc/internals.texi (CPU backend): Document it.
3840         * config/obj-evax.h (TC_IMPLICIT_LCOMM_ALIGNMENT): Set to 2**3
3841         bytes.
3842
3843 2000-03-10  Geoffrey Keating  <geoffk@cygnus.com>
3844
3845         * config/tc-mips.c (mips_ip): Don't put stuff in .rodata
3846         when embedded-pic.
3847
3848         * config/tc-mips.c (SWITCH_TABLE): The ELF embedded-pic
3849         implementation doesn't have special handling for switch
3850         statements.
3851         (macro_build): Allow for code in sections other than .text.
3852         (macro): Likewise.
3853         (mips_ip): Likewise.
3854         (md_apply_fix): Do pc-relative relocation madness for MIPS ELF.
3855         Don't perform relocs if we will be outputting them.
3856         (tc_gen_reloc): For ELF, just use fx_addnumber for pc-relative
3857         relocations.  Allow BFD_RELOC_16_PCREL_S2 relocs when
3858         embedded-pic.
3859
3860 2000-03-09  Catherine Moore  <clm@cygnus.com>
3861
3862         * config/tc-m32r.c (m32r_fix_adjustable):  Look up the
3863         relocation type based on the entry in the fixup structure.
3864         Put S_IS_EXTERN processing back in.
3865
3866 2000-03-08  H.J. Lu  (hjl@gnu.org)
3867
3868         * Makefile.am (install-exec-tooldir): Depend on
3869         install-exec-bindir for parallel make.
3870         * Makefile.in: Regenerated.
3871
3872 2000-03-06  Nick Clifton  <nickc@cygnus.com>
3873
3874         * config/tc-m32r.c (struct md_longopts): Add -m32r command line
3875         switch.
3876         (md_parse_option): Parse -m32r command line switch - disable m32rx
3877         compatability.
3878         (md_show_usage): Document new option.
3879
3880         * doc/Makefile.am (CPU_DOCS): Add c-m32r.texi.
3881         * doc/Makefile.in: Regenerate.
3882         * doc/c-m32r.texi (M32R-Opts): Document new command line switch.
3883
3884 2000-03-02  Michael Meissner  <meissner@redhat.com>
3885
3886         * config/tc-d30v.c (check_range): Remove code that incorrectly
3887         sign extended values where bits < 32.
3888
3889 2000-03-02  H.J. Lu  (hjl@gnu.org)
3890
3891         * configure.in: Support --enable-targets=all on ia32.
3892         * configure: Regenerated.
3893
3894 2000-03-01  Nick Clifton  <nickc@cygnus.com>
3895
3896         * gasp.c (do_align): Remove bogus check of alignment value.
3897
3898 2000-02-27  Thomas de Lellis  <tdel@windriver.com>
3899
3900         * config/obj-elf.c (elf_frob_symbol): Remove code which when
3901         TC_PPC was defined forced the type of a symbol with no other type
3902         to be BSF_OBJECT.
3903
3904 2000-02-27  Hans-Peter Nilsson  <hp@axis.com>
3905
3906         * doc/internals.texi (CPU backend): Mention that
3907         line_separator_chars do not break up comments.  Fix typos for
3908         LEX_AT and LEX_NAME descriptions.  Document operands for
3909         TC_EQUAL_IN_INSN, md_operand and md_section_align.  Correct
3910         description of md_create_short_jump usage.  Document argument for
3911         md_undefined_symbol.
3912
3913 2000-02-27  Jakub Jelinek  <jakub@redhat.com>
3914
3915         * config/tc-sparc.c (OPTION_UNDECLARED_REGS): New option.
3916         (md_parse_option): Handle it.
3917         (md_show_usage): Document it.
3918
3919 2000-02-27  Ian Lance Taylor  <ian@zembu.com>
3920
3921         * config/tc-alpha.c (md_assemble): Accept `1' and `9' in an
3922         opcode, for the instruction `pal19'.  From Andrea Arcangeli
3923         <andrea@suse.de>.
3924
3925 2000-02-26  Alan Modra  <alan@spri.levels.unisa.edu.au>
3926
3927         * config/tc-i386.c (i386_immediate): Move constant operand sizing
3928         from here..
3929         (md_assemble): To here, before template operands are matched.
3930         Also ensure a constant immediate is sign extended when we know the
3931         size is at most 16 bits.  This is to catch cases like "add
3932         $0xffc0,%ax" where we don't know the size, and thus that the
3933         immediate can be represented as Imm8S until after parsing the
3934         register operand.
3935         (i386_displacement): Similarly sign extend 16 bit constant
3936         displacements.
3937         (md_assemble): Relax 16-bit jump constant range check to suit sign
3938         extended displacements.
3939
3940 2000-02-26  Andreas Jaeger  <aj@suse.de>
3941
3942         * doc/c-mips.texi (MIPS Opts): Fix typo in last patch.
3943
3944 2000-02-25  Alan Modra  <alan@spri.levels.unisa.edu.au>
3945
3946         * config/tc-i386.c (md_assemble): Don't swap intersegment jmp and
3947         call operands when intel_syntax.
3948         (intel_float_operand): Return 2 for "fi...".
3949         (i386_operand_modifier): Change "DWORD PTR" test to suit above.
3950         Return SHORT_MNEM_SUFFIX for "WORD PTR" when "fi...".  Revert
3951         earlier "SHORT" change.
3952         (md_assemble): When determining suffix from Regs, exclude
3953         InOutPortReg.
3954
3955 2000-02-24  Nick Clifton  <nickc@cygnus.com>
3956
3957         * configure: Add arm-wince, mips-pe and sh-pe targets.
3958         * configure: Regenerate.
3959
3960         * config/obj-coff.h (COFF_WITH_PE): Define for mips-pe and
3961         sh-pe targets.
3962         (TARGET_FORMAT): Set to "pe-shl" for the sh-pe target and to
3963         "pe-mips" for the mips-pe target.
3964
3965         * config/tc-arm.c (insns): Change displacement encoded in BL
3966         and B instructions if the target port is arm-wince.
3967         (do_ldst): Do not bias the relocation offset if the target
3968         port is arm-wince.
3969         (md_pcrel_from): Add in missing relocation offset bias if the
3970         target os arm-wince.
3971
3972         * config/tc-mips.c (mips_target_format): Support COFF flavour.
3973         (md_begin): Disable -G support for mips-pe target.
3974         (md_apply_fix): Treat BFD_RELOC_RVA reloc as BFD_RELOC_32.
3975         * config/tc-mips.h (USE_GLOBAL_POINTER_OPT): Add support for
3976         COFF flavour.
3977
3978         * config/tc-sh.c (md_begin): sh-pe target is little endian.
3979         * config/tc-sh.h (SUB_SEGMENT_ALIGN): If using a BFD
3980         assembler, just set the alignment to 4.
3981
3982         * config/te-wince-pe.h: New file for WinCE targets.  Define
3983         TE_WINCE.
3984
3985 2000-02-25  Alan Modra  <alan@spri.levels.unisa.edu.au>
3986
3987         * config/tc-i386.c (md_assemble): Swap segments too for intel mode
3988         string instructions.
3989         (i386_operand_modifier): Set i.suffix = WORD_MNEM_SUFFIX for SHORT.
3990         (i386_intel_memory_operand): After finding a segment override,
3991         check again for no `[' before looking for a displacement.  Bomb if
3992         more than one displacement rather than silently discarding the
3993         second and subsequent ones.  Free strings malloc'd by
3994         build_displacement_string.
3995
3996 2000-02-24  Catherine Moore  <clm@cygnus.com>
3997
3998         * config/obj-som.c (obj_pseudo_table): Add "weak".
3999         (obj_som_weak): New routine.
4000
4001 2000-02-24  Alan Modra  <alan@spri.levels.unisa.edu.au>
4002
4003         * config/tc-i386.c (union i386_op): New.
4004         (struct _i386_insn): Delete disps[], imms[], regs[].  Add op[].
4005         Throughout file replace occurences of disps[n], imms[n], regs[n]
4006         with equivalent op[n].disps, op[n].imms, op[n].regs.  Simplify
4007         intel mode operand swapping.  Add assert in regKludge and
4008         fake_zero_displacement code.  Test i.types[n] when outputting
4009         displacements and immediates.  Combine output of Disp16 with
4010         Disp32.
4011         (md_assemble): Don't try to fix broken UNIXWARE_COMPAT opcodes
4012         when in intel mode by (not) reversing fsub and fdiv operands
4013         before the template search.  This fails for single operand
4014         shorthand forms of the instruction, and if UNIXWARE_COMPAT is
4015         undefined.  Instead fix the base_opcode after we've found the
4016         template.  Move base_opcode xor with found_reverse_match from
4017         opcode output code to before this fix so we test for the correct
4018         opcodes.
4019         (md_assemble): Don't use strcmp when deciding to ignore the suffix
4020         check in intel mode.  Instead compare opcodes.
4021
4022         * config/tc-i386.h (TC_RELOC): Delete.
4023         * config/tc-i386.c (TC_RELOC): Delete.  Replace usage of TC_RELOC
4024         with equivalent call to reloc.
4025
4026         * as.h (flag_m68k_mri): Move declaration after target include, and
4027         only declare when TC_M68K defined.  Define as zero otherwise.
4028         (LABELS_WITHOUT_COLONS, NO_PSEUDO_DOT): If undefined, define as 0.
4029         * app.c (scrub_m68k_mri): Declare only when TC_M68K defined.
4030         Define as zero otherwise.
4031         (do_scrub_begin): Use m68k_mri parameter only when TC_M68K defined.
4032         (struct app_save): Declare scrub_m68k_mri only when TC_M68K.
4033         (app_push, app_pop): Save scrub_m68k_mri only when TC_M68K.
4034         (do_scrub_chars): Use LABELS_WITHOUT_COLONS directly rather than
4035         testing whether defined.
4036         * cond.c (ignore_input): Use NO_PSEUDO_DOT directly.
4037         * expr.c (operand): #ifdef unused case labels when TC_M68K undefined.
4038         * read.c: Use LABELS_WITHOUT_COLONS and NO_PSEUDO_DOT directly
4039         rather than testing whether defined.
4040         (s_mri): Set flag_m68k_mri only when TC_M68K defined.
4041         (parse_mri_cons): Declare and use only when TC_M68K.
4042         * config/tc-hppa.h (LABELS_WITHOUT_COLONS): Define as 1.
4043         * config/tc-m68k.h (NO_PSEUDO_DOT): Define as 1.
4044         * config/tc-m88k.h (NO_PSEUDO_DOT): Define as 1.
4045
4046         * NEWS: Mention IBM 370 support.
4047
4048 2000-02-23  Richard Henderson  <rth@cygnus.com>
4049
4050         * config/tc-i386.c (md_assemble): When swapping operands for
4051         intel_syntax, assume everything that's not Imm or Disp is a
4052         register.
4053
4054 2000-02-23  Linas Vepstas <linas@linas.org>
4055
4056         * config/tc-i370.c, config/tc-i370.h: New files.
4057         * Makefile.am: Add support for Linux/IBM 370.
4058         * configure.in: Likewise.
4059         * app.c (do_scrub_begin): Don't lex single quote when TC_I370.
4060         * config/obj-elf.c: Include elf/i370.h
4061         (obj_elf_section): Don't do anything special for flag_mri if TC_I370.
4062
4063         * Makefile.in: Regenerate.
4064         * configure: Regenerate.
4065
4066         * doc/c-i370.texi: New file.
4067         * doc/all.texi: Include it.
4068         * doc/as.texinfo: And here.
4069         * doc/Makefile.am(CPU_DOCS): Add c-i370.texi.
4070         * doc/Makefile.in: Regenerate.
4071
4072 2000-02-19  Michael Meissner  <meissner@redhat.com>
4073
4074         * config/tc-d30v.c (parallel_ok): Use FLAG_NOT_WITH_ADDSUBppp to
4075         determine if an instruction can be used in parallel with an ADDppp
4076         or SUBppp instruction.
4077
4078 2000-02-22  Andrew Haley  <aph@cygnus.com>
4079
4080         * doc/c-mips.texi (MIPS Opts): Document -mgp32 and -mgp64.
4081
4082 2000-02-22  Andrew Haley  <aph@cygnus.com>
4083
4084         * config/tc-mips.c (mips_gp32): New variable.
4085         (macro_build) Use mips_gp32.
4086         (mips_ip): Ditto.
4087         (md_longopts): Add "-mgp32" and "-mgp64".
4088         (md_parse_option): Add OPTION_GP32 and OPTION_GP64.
4089
4090         (OPTION_M7900): Change offset
4091         (OPTION_NO_M7900): Ditto.
4092
4093 2000-02-22  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
4094
4095         * config/obj-coff.c (add_lineno): Accept non-positive lineno with
4096         warning, and bump it to 1.
4097
4098 2000-02-22  Ian Lance Taylor  <ian@zembu.com>
4099
4100         From Brad Lucier <lucier@math.purdue.edu>:
4101         * dwarf2dbg.c (print_stats): Add cast to force printf argument to
4102         match format.
4103
4104 2000-02-21  Catherine Moore  <clm@cygnus.com>
4105
4106         * config/tc-mips.c (MF_HILO_INSN): Define.
4107         (mips_7000_hilo_fix): Declare.
4108         (append_insn): Conditionally insert nops after an mfhi/mflo insn.
4109         (md_parse_option): Check for 7000_HILO_FIX options.
4110         (OPTION_M7000_HILO_FIX): Define.
4111         (OPTION_NO_M7000_HILO_FIX): Define.
4112         * doc/c-mips.texi (-mfix7000): Describe.
4113
4114 2000-02-21  Alan Modra  <alan@spri.levels.unisa.edu.au>
4115
4116         * listing.c (print_lines): Remove unused variable `end'.
4117
4118         * config/tc-i386.c (md_assemble): Use `reloc()' to select reloc
4119         type for JumpInterSegment output. Use enum bfd_reloc_code_real for
4120         reloc_type when BFD_ASSEMBLER.
4121         (md_estimate_size_before_relax): Use enum bfd_reloc_code_real for
4122         reloc_type when BFD_ASSEMBLER. Move common code out of switch
4123         statement and quell signed vs. unsigned comparison warning.
4124
4125 2000-02-18  Nick Clifton  <nickc@cygnus.com>
4126
4127         * config/tc-d10v.c (find_opcode): Add a symbol's value to
4128         the computed frag offset, rather than overwriting it.
4129
4130 Thu Feb 17 00:11:08 2000  J"orn Rennecke <amylaar@cygnus.co.uk>
4131
4132         * config/tc-sh.c ("elf/sh.h"): Include.
4133         (sh_dsp, valid_arch, reg_x, reg_y, reg_efg): New static variables.
4134         (md.begin): Initialize target_arch.
4135         Only include opcodes in has table that match selected architecture.
4136         (parse_reg): Recognize register names for sh-dsp.
4137         (parse_at): Recognize post-modify addressing.
4138         (get_operands): The leading space is now optional.
4139         (get_specific): Remove FDREG_N support.  Add support for sh-dsp
4140         arguments.  Update valid_arch.
4141         (build_Mytes): Add support for SDT_REG_N.
4142         (find_cooked_opcode): New function, broken out of md_assemble.
4143         (assemble_ppi, sh_elf_final_processing): New functions.
4144         (md_assemble): Use find_cooked_opcode and assemble_ppi.
4145         (md_longopts, md_parse_option): New option: -dsp.
4146         * config/tc-sh.h (elf_tc_final_processing): Define.
4147         (sh_elf_final_processing): Declare.
4148
4149 Fri Feb 11 14:21:51 2000  Jeffrey A Law  (law@cygnus.com)
4150
4151         * config/tc-hppa.c (pa_build_unwind_subspace): Use subseg_new to create
4152         the unwinder subspace.  Save the current seg/subseg before creating
4153         the new seg/subseg.
4154
4155 2000-02-10  Nick Clifton  <nickc@cygnus.com>
4156
4157         * config/tc-mcore.c (INST_BYTE0): Redefine to handle big and
4158         little endian targets.
4159         (INST_BYTE1): Redefine to handle big and little endian
4160         targets.
4161         (cpu_type): New type: Select between M340 and M210.
4162         (parse_psrmod): New function: Parse the PSRCLR and PSRSET
4163         instructions of the M340.
4164         (md_assemble): Add support for the MULSH and OPSR classes of
4165         instructions.
4166         (md_atof): Add support for little endian targets.
4167         (md_parse_option): Add support for -EL, -EB and -mcpu command
4168         line switches.
4169         (md_convert_frag): Add support for little endian targets.
4170         (md_apply_fix3): Add support for little endian targets.
4171         (md_number_to_chars): Add support for little endian targets.
4172
4173 2000-02-10  Timothy Wall  <twall@redhat.com>
4174
4175         * read.c (read_a_source_file): If TC_START_LABEL_WITHOUT_COLON is
4176         defined, use it to verify the symbol just read should be a label.
4177
4178 2000-02-10  Timothy Wall  <twall@redhat.com>
4179
4180         * app.c (do_scrub_chars): Handle "||" for parallel instructions
4181         when DOUBLEBAR_PARALLEL is defined.  Avoid stripping whitespace
4182         around colons when KEEP_WHITE_AROUND_COLON is defined.
4183         * doc/internals.texi (CPU backend): Document DOUBLEBAR_PARALLEL
4184         and KEEP_WHITE_AROUND_COLON.
4185
4186 2000-02-08  Timothy Wall  <twall@redhat.com>
4187
4188         * read.c (s_rept): Call do_repeat, which abstracts the repeat
4189         logic.
4190         (do_repeat): New.  Abstract repeat logic so that a "break" can be
4191         implemented.
4192         (end_repeat): New.  Provide support for a "break" out of the
4193         repeat loop.
4194         * read.h: Add prototypes for new functions.
4195
4196 2000-02-08  Timothy Wall  <twall@redhat.com>
4197
4198         * doc/internals.texi: Document NUMBERS_WITH_SUFFIX macro.
4199         * as.h: Provide a default NUMBERS_WITH_SUFFIX definition (zero).
4200         * expr.c: Handle numbers with suffixes if NUMBERS_WITH_SUFFIX is
4201         non-zero.
4202
4203 2000-02-08  Timothy Wall  <twall@redhat.com>
4204
4205         * read.c: Added elseif to directives table.
4206         * read.h: Added prototype for s_elseif.
4207         * doc/as.texinfo: Added description for elseif.
4208         * cond.c (s_elseif): New function
4209
4210 2000-02-04  Timothy Wall  <twall@redhat.com>
4211
4212         * listing.c (print_lines): Remove conditionals causing bug in
4213         listings.
4214
4215 2000-02-03  Timothy Wall  <twall@cygnus.com>
4216
4217         * as.h: Define OCTETS_PER_BYTE and OCTETS_PER_BYTE_POWER
4218         default values.
4219         * frags.c (frag_new): Calculate fr_fix in octets
4220         (frag_now_fix) Return offset as target address offset (bytes).
4221         (frag_now_fix_octets) New - Return offset in octets (8-bit
4222         quantities).
4223         * frags.h: Added prototype for frag_now_fix_octets().
4224         Distinguish between octets and bytes in field descriptions.
4225         * listing.c (calc_hex): Account for octets vs bytes when
4226         printing addresses/offsets.
4227         (print_lines) Ditto.  Also, if LISTING_WORD_SIZE is not 1, and
4228         target is little-endian, print the octets in a word in big-endian
4229         order so that the display looks like a proper hexadecimal number,
4230         instead of having the octets reversed.
4231         * read.c (do_align): When recording alignment, alignment power
4232         should be in terms of target bytes (minimum addressible unit)
4233         instead of octets.
4234         (do_org) Convert ORG target address (byte) argument into an
4235         octet offset when generating a variable fragment.
4236         * symbols.c (resolve_symbol_value): Symbol final value
4237         converted to a target address offset (bytes) from its octet offset.
4238         * config/obj-coff.c (coff_frob_symbol): Symbol target address
4239         offset (bytes) is adjusted by the frag offset (octets) converted
4240         to bytes.
4241         (coff_frob_section) Section alignment power is in terms of bytes;
4242         convert it to an octet alignment power when calculating size (and
4243         size mask) in octets.  Don't modify the section size in order to
4244         "align" it for TI COFF, since that format has a different method
4245         for storing alignment information.
4246
4247 2000-02-01  Timothy Wall  <twall@cygnus.com>
4248
4249         * stabs.c (generate_asm_file): Escape backslashes in stabs file
4250         entries, matching the way GCC generates them.  If not escaped, the
4251         filename is encoded incorrectly.
4252
4253 2000-01-31  Nick Clifton  <nickc@cygnus.com>
4254
4255         * config/tc-arm.c (reg_table): Add support for ATPCS register
4256         naming conventions.
4257
4258 2000-01-31  Geoff Keating  <geoffk@cygnus.com>
4259
4260         * config/obj-coff.h (OBJ_COPY_SYMBOL_ATTRIBUTES): Don't define if
4261         already defined.
4262         * config/tc-ppc.h [OBJ_XCOFF] (OBJ_COPY_SYMBOL_ATTRIBUTES):
4263         New macro.
4264         * config/tc-ppc.c (ppc_fix_adjustable): Don't look at the frag
4265         of a symbol when we really care about its value.
4266
4267 2000-01-19  Chandra Chavva   <cchavva@cygnus.com>
4268
4269         * config/tc-mcore.c (md_assemble): Give warning message if
4270         operands passes to instruction are more than the spec.
4271
4272 2000-01-27  Thomas de Lellis <tdel@windriver.com>
4273
4274         * config/tc-arm.c (armadjust_symtab): If the assembler is in
4275         Thumb mode but the label seen was not declared as '.thumb_func'
4276         then set the ST_INFO type to STT_ARM_16BIT mode.   This allows
4277         correct disassembly of Thumb code bounded by non function labels.
4278
4279 2000-01-27  Alan Modra  <alan@spri.levels.unisa.edu.au>
4280
4281         * Makefile.am (MULTI_CFILES): Add config/e-i386aout.c
4282         Add dependencies for e-i386aout.o.  Fix 2 comment lines.
4283
4284         * Makefile.in: Same here.
4285         Update copyright.
4286
4287         * configure.in: Set bfd_gas for i386-aout when primary target
4288         is bfd.  Handle i386aout emulation.  Don't use te_file=multi, as
4289         we may need the primary te_file.  Remove incorrect comment.
4290
4291         * configure: Regenerate.
4292
4293         * config/e-i386aout.c: New file.
4294
4295         * as.c (USE_EMULATIONS): Move to before print_version_id.
4296         (struct emulation): Add i386aout.
4297         (show_usage): Split text strings.  Reformat -a text.  Add --em
4298         help.
4299         Update copyright.
4300
4301         * obj.h (struct format_ops): Add s_get_other and s_get_desc.
4302         (aout_format_ops): New.
4303         Update copyright.
4304
4305         * read.c (s_lcomm_internal): Rewrite OBJ_AOUT,OBJ_BOUT
4306         preprocessor conditional and add aout USE_EMULATIONS tests.
4307         (read_a_source_file): Don't pass error strings to printf as
4308         format arg.
4309         Update copyright.
4310
4311         * gasp.c (exp_get_abs): Don't pass error strings to printf as
4312         format arg.
4313         (do_data): Same here.
4314         (process_file): And here.
4315         Update copyright.
4316
4317         * symbols.c (colon): Rewrite "already defined" fatal message
4318         code for aout with USE_EMULATIONS.
4319         Update copyright.
4320
4321         * config/obj-aout.c (OBJ_HEADER): Define.
4322         (obj_pseudo_table): Rename to aout_pseudo_table.  Init all
4323         fields of sentinel.
4324         (obj_aout_frob_symbol): Expand S_GET_DESC, S_GET_TYPE,
4325         S_GET_OTHER, S_SET_TYPE macros since we don't need obj-multi
4326         forms here.
4327         (obj_aout_type): Expand S_SET_OTHER here too.
4328         (obj_read_begin_hook): Remove.
4329         (aout_pop_insert): New.
4330         (obj_aout_s_get_other): New.
4331         (obj_aout_s_get_desc): New.
4332         (aout_format_ops): New.
4333         Update copyright.
4334
4335         * config/obj-aout.h (obj_pop_insert): Define so non-multi usage
4336         gets aout_pseudo_table.
4337         (aout_pseudo_table): Declare.
4338         (obj_read_begin_hook): Define.
4339         Update copyright.
4340
4341         * config/obj-coff.c (obj_pseudo_table): Rename to
4342         coff_pseudo_table.
4343         (coff_pop_insert): Use coff_pseudo_table.
4344         (coff_sec_sym_ok_for_reloc): Remove.
4345         (coff_format_ops): Add 0 entries for s_get_size, s_set_size,
4346         and comment all zero entries and remove #if 0 code.
4347         Update copyright.
4348
4349         * config/obj-coff.h (obj_pop_insert): Define.
4350         (coff_pseudo_table): Declare.
4351         Update copyright.
4352
4353         * config/obj-ecoff.c (ecoff_format_ops): Add 0 entries for
4354         s_get_size, s_set_size.  Comment all zero entries.
4355         Update copyright.
4356
4357         * config/obj-elf.c (elf_s_get_other): New function.
4358         (obj_read_begin_hook): Rename to elf_obj_read_begin_hook.
4359         (obj_symbol_new_hook): Rename to elf_obj_symbol_new_hook.
4360         (elf_format_ops): Add elf_s_get_other, 0 s_get_size entry, and
4361         comment.
4362         (obj_elf_parse_section_letters): Don't pass error strings to
4363         printf as format arg.
4364         Update copyright.
4365
4366         * config/obj-elf.h (ECOFF_DEBUGGING): Define when
4367         OBJ_MAYBE_ECOFF.
4368         (elf_s_get_other): Declare.
4369         (S_GET_OTHER) Define as elf_s_get_other if not already
4370         defined.
4371         (S_SET_OTHER): Only define when not already defined.
4372         (elf_obj_read_begin_hook): Declare.
4373         (obj_read_begin_hook): Define.
4374         (elf_obj_symbol_new_hook): Declare.
4375         (obj_symbol_new_hook): Define.
4376         Update copyright.
4377
4378         * config/obj-multi.h: Add copyright header and protect against
4379         multiple inclusion.  Add * to all function pointers.
4380         (OBJ_HEADER): If defined, include it rather than other defines
4381         in this file.
4382         (obj_frob_file_after_relocs): Test for NULL.
4383         (obj_symbol_new_hook): Here too.
4384         (obj_sec_sym_ok_for_reloc): And here.
4385         (S_GET_OTHER): Define.
4386         (S_GET_DESC): Define.
4387         (ECOFF_DEBUGGING): Remove as it's done in obj-elf.h
4388         (OBJ_MAYBE_ELF): Update comment.
4389
4390         * config/tc-i386.c (i386_immediate): Add OBJ_MAYBE_AOUT to
4391         OBJ_AOUT preprocessor conditional and handle emulation by
4392         testing OUTPUT_FLAVOR.
4393         (i386_displacement): Here too.
4394         (md_section_align): Similarly here.
4395         (i386_target_format): Conditionally compile when more than one
4396         of OBJ_MAYBE_{ELF,COFF,AOUT} defined.  Add aout case.
4397         (i386_immediate): Fix error message for aout BFD_ASSMBLER.
4398         (i386_displacement): Here too.
4399         Update copyright.
4400
4401         * config/tc-i386.h (AOUT_TARGET_FORMAT): Define for each TE_*.
4402         Define TARGET_FORMAT for aout only when not multi.
4403         Update copyright.
4404
4405         * config/te-multi.h: Delete file as it's identical to te-generic.h
4406
4407 2000-01-15  Alan Modra  <alan@spri.levels.unisa.edu.au>
4408
4409         * config/tc-i386.h (DWORD_MNEM_SUFFIX): Delete.
4410         * config/tc-i386.c (DWORD_MNEM_SUFFIX): Rename all occurrences to
4411         LONG_MNEM_SUFFIX.
4412
4413         * config/tc-i386.h (INTEL_DWORD_MNEM_SUFFIX): Rename to
4414         DWORD_MNEM_SUFFIX.
4415         * config/tc-i386.c (INTEL_DWORD_MNEM_SUFFIX): Here too.  Fix some
4416         comments.
4417
4418 2000-01-13  Clinton Popetz  <cpopetz@cygnus.com>
4419
4420         * config/tc-mips.c (mips_do_align): New function.
4421         * config/tc-mips.h (md_do_align): Define.
4422
4423 2000-01-10  Philip Blundell  <philb@gnu.org>
4424
4425         * doc/c-arm.texi (ARM Options): Fix typo.
4426         (ARM-Chars): Correct description of `#'.  Mention  that `;' is a
4427         line separator for Linux.
4428         * doc/as.texinfo (Comments): Mention the ARM.
4429
4430 2000-01-10  Philip Blundell  <pb@futuretv.com>
4431
4432         * configure.in (arm*-*-conix*): New target.
4433         (arm*-*-linux-gnu*): Match instead of arm-*-linux* and
4434         armv*-*-linux-gnu.
4435         * configure: Regenerate.
4436
4437 2000-01-03  Martin v. Loewis  <loewis@informatik.hu-berlin.de>
4438
4439         * config/obj-elf.c (elf_pseudo_table): Define visibility pseudos.
4440         (obj_elf_visibility): New function.
4441
4442         * doc/as.texinfo (Visibility): New node: document visibility
4443         pseudo ops.
4444
4445 For older changes see ChangeLog-9899