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