* doc/as.texinfo: Document M and S ELF section flags.
[external/binutils.git] / gas / ChangeLog
1 2001-10-05  Jakub Jelinek  <jakub@redhat.com>
2
3         * doc/as.texinfo: Document M and S ELF section flags.
4
5 2001-10-05  Alan Modra  <amodra@bigpond.net.au>
6
7         * subsegs.c (subseg_text_p): Return 0 for absolute section.
8         * read.c (do_align): If in absolute section, warn about and ignore
9         non-zero fill pattern.
10
11 2001-10-05  Alexandre Oliva  <aoliva@redhat.com>
12
13         * config/tc-mn10300.c (tc_gen_reloc): Don't free
14         reloc->sym_ptr_ptr if it's not allocated.
15
16 2001-10-04  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
17
18         * config/tc-mips.c (prev_insn_reloc_type): Make it an array to hold a
19         relocation triple.
20         (prev_insn_fixp): Likewise.
21         (append_insn): Changed prototype to accept a relocation pointer.
22         (imm_reloc): Make it an array.
23         (offset_reloc): Likewise.
24         (md_assemble): Handle triple relocations.
25         (append_insn): Likewise. Add handling for some NewABI relocations.
26         (mips_no_prev_insn): Handle triple relocations.
27         (macro_build): Likewise. Add handling for some NewABI relocations.
28         Move handling for the 'u' case to append_insn().
29         (mips16_macro_build): Handle triple relocations.
30         (macro_build_lui): Likewise. Don't handle _gp_disp as special symbol
31         for NewABI.
32         (mips_ip): Handle triple relocations.
33         (mips16_ip): Likewise.
34         (mips_force_relocation): Force handling of triple relocations
35         without symbols for NewABI.
36         (md_apply_fix): Add handling for some NewABI relocations.
37
38 2001-10-05  Alan Modra  <amodra@bigpond.net.au>
39
40         * config/tc-i386.c (parse_register): If not producing code for
41         x86_64, reject x86_64 register name matches.
42         (md_assemble): Remove now redundant check for x86_64 regs.
43
44 2001-10-04  Alan Modra  <amodra@bigpond.net.au>
45
46         * config/tc-ppc.c (md_assemble <DS relocs>): Test ppc_size as well
47         as BFD_DEFAULT_TARGET_SIZE.
48         (ppc_tc): Likewise.
49         (ppc_is_toc_sym): Likewise.
50         (md_apply_fix3): Likewise.
51
52 2001-10-03  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
53
54         * config/tc-mips.c (mips_64): Remove.
55         (mips_target_format): Move downwards in file, use HAVE_64BIT_OBJECTS
56         in it.
57         (mips_abi_level, mips_abi): New enum.
58         (mips_32bit_abi): Remove.
59         (HAVE*PRS): Use mips_abi instead of mips_32bit_abi.
60         (HAVE_NEWABI): New define.
61         (HAVE_64BIT_OBJECTS): New define.
62         (HAVE_32BIT_ADDRESSES): Don't return true for 64bit objects.
63         (HAVE_64BIT_ADDRESSES): New define, inverse of HAVE_32BIT_ADDRESSES.
64         (support_64bit_objects): New prototype.
65         (md_begin): Use mips_abi instead of mips_32bit_abi. Don't write
66         .reginfo section for n32, use .MIPS.options instead.
67         (support_64bit_objects): New function, code from md_parse_option.
68         (md_longopts): Add -n32 option.
69         (md_parse_option): Use mips_abi instead of mips_32bit_abi/mips64.
70         Add -n32 option. Protect with OBJ_ELF.
71         (s_mipsset): Use mips_abi instead of mips_32bit_abi.
72         (mips_elf_final_processing): Likewise. Don't write .reginfo section
73         for n32, use .MIPS.options instead.
74
75 2001-10-03  Alan Modra  <amodra@bigpond.net.au>
76
77         * po/POTFILES.in: Regenerate.
78         * configure: Regenerate.
79
80 2001-10-02  Alan Modra  <amodra@bigpond.net.au>
81
82         * config/tc-ppc.c (md_apply_fix3 <BFD_RELOC_CTOR>): Make it 64
83         bits if target is 64 bit.
84
85         * doc/as.texinfo (listing): Fix typo.
86
87         * as.c (print_version_id): Use BFD_VERSION_STRING in place of
88         BFD_VERSION.
89         * Makefile.am (Makefile): Depend on bfd/configure.in.
90         Run "make dep-am".
91         * Makefile.in: Regenerate.
92
93 2001-09-30  H.J. Lu  <hjl@gnu.org>
94
95         * config/obj-elf.c (obj_elf_parse_section_letters): Accept "am"
96         and "ams" for compatibility.
97
98 2001-09-30  Hans-Peter Nilsson  <hp@bitrange.com>
99
100         * config/tc-sh.c (md_pcrel_from_section): Transformed from
101         md_pcrel_from.  Handle pc-relativeness against link-time
102         symbol.  Handle relativeness to elsewhere than the fixup.
103         * config/tc-sh.h (MD_PCREL_FROM_SECTION): Define.
104         (md_pcrel_from_section): Prototype.
105
106         * Makefile.am: Update dependencies with "make dep-am".
107         * Makefile.in: Regenerate.
108
109 2001-09-30  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
110
111         * config/tc-m68hc11.c (cmp_opcode): Define prototype.
112         (print_opcode_format, skip_whites): Likewise.
113         (convert_branch, m68hc11_new_insn): Likewise.
114         (build_dbranch_insn, build_indexed_byte): Likewise.
115         (build_reg_mode, find, find_opcode): Likewise.
116         (print_insn_format): Fix call to print_opcode_format.
117         (md_assemble): Fix call to build_dbranch_insn.
118
119 2001-09-27  Nick Clifton  <nickc@cambridge.redhat.com>
120
121         * config/tc-arm.c: Add missing prototypes.
122
123 2001-09-26  Jeff Johnston  <jjohnstn@redhat.com>
124
125         * input-file.c (input_file_open): When reading the
126         first line looking for #NO_APP, prepare for the possibility
127         of finding #APP instead.  Also fix algorithm to allow
128         white-space to follow either #NO_APP or #APP directives.
129
130 2001-09-25  Geoff Berry  <geoff.berry@bops.com>
131
132         * listing.c (buffer_line): Don't write past the end of `line' when
133         EOF is reached.
134
135 2001-09-25  Alexandre Oliva  <aoliva@redhat.com>
136
137         * config/tc-mn10300.c (tc_gen_reloc): Don't emit an *ABS*
138         relocation for differences between symbols in a section other
139         than the one in which the difference is to be placed; apply
140         the relocation instead.
141
142 2001-09-24  Nick Clifton  <nickc@cambridge.redhat.com>
143
144         * config/tc-arc.c: Add missing prototype.
145         (md_atof): Change type to int. Add missing prototype.
146         * config/tc-arc.h: Prototype exported functions.
147
148 2001-09-22  Nick Clifton  <nickc@cambridge.redhat.com>
149
150         * as.c: Add missing function prototype.
151         * config/obj-aout.c: Fix compile time warning.
152
153 2001-09-21  Bruno Haible  <haible@clisp.cons.org>
154
155         * config/tc-openrisc.c: Don't include <ctype.h>.
156
157 2001-09-19  Martin Schwidefsky <schwidefsky@de.ibm.com>
158
159         * gas/config/tc-s390.c: Add option -mwarn-areg-zero.
160
161 2001-09-19  Alan Modra  <amodra@bigpond.net.au>
162
163         * config/tc-i370.c: Fix typo in last change.
164
165 2001-09-19  Nick Clifton  <nickc@cambridge.redhat.com>
166
167         * doc/as.texinfo (Symbol Names): Improve documentation on local
168         labels and add documenation about dollar labels.
169
170 2001-09-18  Bruno Haible  <haible@clisp.cons.org>
171
172         * as.h: Don't include <ctype.h>.
173         * as.c (main): For gettext, also set the LC_CTYPE locate facet.
174         * atof-generic.c: Include "safe-ctype.h" instead of <ctype.h>.
175         (atof_generic): Use ISDIGIT instead of isdigit.
176         * config/m68k-parse.y: Include "safe-ctype.h".
177         (yylex): Use ISDIGIT/ISALNUM instead of isdigit/isalnum.
178         * config/obj-elf.c: Include "safe-ctype.h".
179         (obj_elf_vtable_inherit): Use ISSPACE instead of isspace.
180         * config/obj-vms.c: Include "safe-ctype.h".
181         (Write_VMS_MHD_Records): Use TOUPPER instead of islower/toupper.
182         (VMS_Case_Hack_Symbol): Use ISUPPER/ISLOWER/TOUPPER/TOLOWER
183         instead of isupper/islower/toupper/tolower.
184         * config/tc-a29k.c: Include "safe-ctype.h" instead of <ctype.h>.
185         (insert_sreg): Use TOUPPER instead of islower/toupper.
186         (machine_ip): Use ISALPHA/ISALNUM/ISUPPER/TOLOWER instead of
187         isalpha/isalnum/isupper/tolower.
188         (a29k_unrecognized_line, md_operand): Use ISDIGIT instead of
189         isdigit.
190         * config/tc-alpha.c: Include "safe-ctype.h" instead of <ctype.h>.
191         (md_undefined_symbol, s_alpha_ent): Use ISDIGIT instead of isdigit.
192         * config/tc-arc.c: Include "safe-ctype.h" instead of <ctype.h>.
193         (md_assemble): Use ISSPACE/ISALNUM instead of isspace/isalnum.
194         (arc_extoper): Use TOLOWER instead of isupper/tolower.
195         * config/tc-arm.c: Include "safe-ctype.h" instead of <ctype.h>.
196         (arm_psr_parse): Use ISALPHA instead of isalpha.
197         (accum0_required_here): Use ISALNUM instead of isalnum.
198         (do_ldrd): Use ISSPACE instead of isspace.
199         (decode_shift): Use ISALPHA instead of isalpha.
200         (insert_reg): Use TOUPPER instead of islower/toupper.
201         (arm_reg_parse): Use ISALPHA instead of isalpha.
202         (arm_parse_reloc): Use ISALNUM/ISPUNCT/TOLOWER instead of
203         isalnum/ispunct/tolower.
204         * config/tc-avr.c: Include "safe-ctype.h" instead of <ctype.h>.
205         (md_parse_option): Use TOLOWER instead of tolower.
206         (avr_operand): Use ISDIGIT/TOLOWER instead of isdigit/tolower.
207         * config/tc-cris.c: Include "safe-ctype.h" instead of <ctype.h>.
208         (cris_process_instruction): Use ISLOWER instead of islower.
209         (get_gen_reg): Use ISALNUM/ISDIGIT instead of isalnum/isdigit.
210         (get_spec_reg): Use TOLOWER/ISALNUM instead of isupper/tolower/isalnum.
211         (get_flags): Use ISSPACE instead of isspace.
212         * config/tc-d10v.c: Include "safe-ctype.h" instead of <ctype.h>.
213         (do_assemble): Use TOLOWER instead of tolower.
214         * config/tc-d30v.c: Include "safe-ctype.h" instead of <ctype.h>.
215         (do_assemble): Use TOLOWER instead of tolower.
216         (d30v_start_line): Use ISSPACE instead of isspace.
217         * config/tc-fr30.c: Include "safe-ctype.h" instead of <ctype.h>.
218         (fr30_is_colon_insn): Use TOLOWER instead of tolower.
219         * config/tc-h8300.c: Include "safe-ctype.h" instead of <ctype.h>.
220         (skip_colonthing, get_operand): Use ISDIGIT instead of isdigit.
221         * config/tc-h8500.c: Include "safe-ctype.h" instead of <ctype.h>.
222         (start_label): Use ISALPHA instead of isalpha.
223         * config/tc-hppa.c: Include "safe-ctype.h" instead of <ctype.h>.
224         (pa_ip): Use ISUPPER/ISLOWER/TOLOWER instead of
225         isupper/islower/tolower.
226         (pa_parse_number): Use ISDIGIT instead of isdigit.
227         (pa_chk_field_selector): Use TOLOWER instead of tolower.
228         (pa_stringer): Use ISDIGIT instead of isdigit.
229         * config/tc-i370.c: Include "safe-ctype.h" instead of <ctype.h>.
230         (register_name): Use ISALPHA instead of isalpha.
231         (i370_elf_suffix): Use ISALNUM/TOLOWER instead of
232         isalnum/islower/tolower.
233         (i370_addr_offset): Use ISDIGIT/ISALPHA instead of
234         isdigit/isalpha.
235         (i370_addr_cons): Use ISALPHA/ISXDIGIT instead of
236         isalpha/isxdigit.
237         (md_assemble): Use ISSPACE instead of isspace.
238         * config/tc-i386.c: Include "safe-ctype.h" instead of <ctype.h>.
239         (md_begin): Use ISDIGIT/ISLOWER/ISUPPER/TOLOWER/ISALPHA
240         instead of isdigit/islower/isupper/tolower/isalpha.
241         (output_invalid): Use ISPRINT instead of isprint.
242         * config/tc-i860.c: Include "safe-ctype.h" instead of <ctype.h>.
243         (i860_ip): Use ISLOWER/ISDIGIT instead of islower/isdigit.
244         * config/tc-i960.c: Include "safe-ctype.h" instead of <ctype.h>.
245         (get_args): Use ISALNUM instead of isalnum.
246         * config/tc-ia64.c: Include "safe-ctype.h".
247         (dot_pred_rel): Use TOUPPER/ISDIGIT instead of toupper/isdigit.
248         (ia64_unrecognized_line): Use ISDIGIT instead of isdigit.
249         (ia64_parse_name): Likewise.
250         * config/tc-m32r.c: Include "safe-ctype.h" instead of <ctype.h>.
251         (assemble_two_insns): Use ISSPACE/ISALNUM/ISUPPER/TOLOWER
252         instead of isspace/isalnum/isupper/tolower.
253         * config/tc-m68hc11.c: Include "safe-ctype.h" instead of <ctype.h>.
254         (md_assemble): Use TOLOWER/ISALNUM instead of tolower/isalnum.
255         * config/tc-m68k.c: Include "safe-ctype.h" instead of <ctype.h>.
256         (mklower_table): Remove variable.
257         (mklower): Remove macro.
258         (insert_reg): Use TOUPPER instead of islower/toupper.
259         (md_begin): Remove initialization of mklower_table.
260         (s_reg): Use ISALNUM instead of isalnum.
261         (mri_assemble): Use ISUPPER/TOLOWER instead of isupper/tolower.
262         (parse_mri_condition): Use TOLOWER instead of isupper/tolower.
263         (build_mri_control_operand): Use TOLOWER instead of tolower.
264         (s_mri_else, s_mri_break, s_mri_next, s_mri_for): Likewise.
265         * config/tc-m88k.c: Include "safe-ctype.h" instead of <ctype.h>.
266         (md_assemble): Use ISSPACE instead of isspace.
267         (get_imm16): Use ISALNUM instead of isalnum.
268         (get_cnd): Use ISDIGIT/ISUPPER/TOLOWER instead of
269         isdigit/isupper/tolower.
270         (get_bf_offset_expression): Use ISALPHA/ISUPPER/TOLOWER
271         instead of isalpha/isupper/tolower.
272         (hexval): Use ISDIGIT/ISLOWER/ISUPPER instead of
273         isdigit/islower/isupper.
274         * config/tc-mcore.c: Include "safe-ctype.h" instead of <ctype.h>.
275         (mcore_s_section): Use ISSPACE instead of isspace.
276         (parse_reg): Use ISSPACE/TOLOWER/ISALNUM instead of
277         isspace/tolower/isalnum.
278         (parse_creg): Use ISSPACE/TOLOWER instead of isspace/tolower.
279         (parse_psrmod): Use TOLOWER instead of isascii/tolower.
280         (parse_exp, parse_mem, md_assemble): Use ISSPACE instead of
281         isspace.
282         * config/tc-mips.c: Include "safe-ctype.h" instead of <ctype.h>.
283         (mips_ip): Use ISSPACE/ISDIGIT instead of isspace/isdigit.
284         (mips16_ip): Use ISLOWER/ISDIGIT instead of islower/isdigit.
285         (my_getSmallExpression): Use ISDIGIT/TOLOWER instead of
286         isdigit/tolower.
287         (tc_get_register): Likewise.
288         (get_number): Use ISDIGIT/ISXDIGIT instead of isdigit/isxdigit.
289         (s_mips_ent): Use ISDIGIT instead of isdigit.
290         * config/tc-mn10200.c: Include "safe-ctype.h" instead of <ctype.h>.
291         (md_assemble): Use ISSPACE instead of isspace.
292         * config/tc-mn10300.c: Include "safe-ctype.h" instead of <ctype.h>.
293         (md_assemble): Use ISSPACE instead of isspace.
294         * config/tc-ns32k.c: Don't include <ctype.h>.
295         * config/tc-pdp11.c: Include "safe-ctype.h".
296         (mklower): Remove function.
297         (parse_reg): Use TOLOWER instead of mklower.
298         * config/tc-pj.c: Include "safe-ctype.h".
299         (md_assemble): Use ISSPACE instead of isspace.
300         * config/tc-ppc.c: Include "safe-ctype.h" instead of <ctype.h>.
301         (register_name): Use ISALPHA instead of isalpha.
302         (ppc_elf_suffix): Use ISALNUM/TOLOWER instead of
303         isalnum/islower/tolower.
304         (md_assemble): Use ISSPACE instead of isspace.
305         (ppc_canonicalize_symbol_name): Use ISLOWER/TOUPPER instead of
306         islower/toupper.
307         * config/tc-s390.c: Include "safe-ctype.h" instead of <ctype.h>.
308         (register_name): Use ISALPHA instead of isalpha.
309         (s390_elf_suffix, s390_lit_suffix): Use ISALNUM instead of isalnum.
310         (md_gather_operands, md_assemble, s390_insn): Use ISSPACE instead of
311         isspace.
312         * config/tc-sh.c: Include "safe-ctype.h" instead of <ctype.h>.
313         (sh_elf_suffix): Use ISALNUM/TOLOWER instead of
314         isalnum/islower/tolower.
315         (IDENT_CHAR): Use ISALNUM instead of isalnum.
316         (parse_reg): Use TOLOWER instead of tolower.
317         (find_cooked_opcode): Use TOLOWER instead of isupper/tolower.
318         * config/tc-sparc.c: Include "safe-ctype.h" instead of <ctype.h>.
319         (sparc_ip): Use ISLOWER/ISDIGIT instead of islower/isdigit.
320         (parse_keyword_arg): Use ISALNUM instead of isalnum.
321         * config/tc-tahoe.c: Include "safe-ctype.h".
322         (tahoe_reg_parse): Use ISDIGIT instead of isdigit.
323         (tip_op): Use TOLOWER instead of isupper/tolower.
324         * config/tc-tic30.c: Include "safe-ctype.h".
325         (md_begin): Use ISLOWER/ISDIGIT/ISUPPER/TOLOWER/ISLOWER/
326         ISALPHA instead of islower/isdigit/isupper/tolower/islower/isalpha.
327         (tic30_operand): Use TOLOWER instead of tolower.
328         (tic30_find_parallel_insn): Likewise.
329         (output_invalid): Use ISPRINT instead of isprint.
330         * config/tc-tic54x.c: Include "safe-ctype.h".
331         (tic54x_asg, tic54x_eval): Use ISALPHA instead of isalpha.
332         (lookup_version): Use TOUPPER instead of toupper.
333         (tic54x_var): Use ISALPHA instead of isalpha.
334         (tic54x_mlib): Use ISSPACE instead of isspace.
335         (subsym_iscons): Use TOUPPER instead of toupper.
336         (get_operands): Use ISSPACE instead of isspace.
337         (is_type): Use TOUPPER/ISDIGIT instead of toupper/isdigit.
338         (encode_indirect, encode_operand): Use TOUPPER instead of toupper.
339         (next_line_shows_parallel): Use ISSPACE instead of isspace.
340         (subsym_get_arg, subsym_substitute): Use ISDIGIT instead of isdigit.
341         (tic54x_start_line_hook, md_assemble, tic54x_start_label): Use
342         ISSPACE instead of isspace.
343         * config/tc-tic80.c: Include "safe-ctype.h".
344         (md_assemble): Use ISSPACE instead of isspace.
345         * config/tc-v850.c: Include "safe-ctype.h" instead of <ctype.h>.
346         (system_register_name): Use ISDIGIT instead of isdigit.
347         (md_assemble): Use ISSPACE instead of isspace.
348         * config/tc-vax.c: Include "safe-ctype.h" instead of <ctype.h>.
349         (vax_reg_parse): Use TOLOWER/ISDIGIT instead of
350         isupper/tolower/isdigit.
351         (vip_op): Use TOLOWER instead of isupper/tolower.
352         * config/tc-w65.c: Don't include <ctype.h>.
353         * config/tc-z8k.c: Include "safe-ctype.h" instead of <ctype.h>.
354         (tohex): Use ISDIGIT/ISLOWER instead of isdigit/islower.
355         (whatreg): Use ISDIGIT instead of isdigit.
356         * ecoff.c: Include "safe-ctype.h" instead of <ctype.h>.
357         (ecoff_directive_ent, ecoff_stab): Use ISDIGIT instead of isdigit.
358         * expr.c: Include "safe-ctype.h" instead of <ctype.h>.
359         (integer_constant): Use ISALNUM/TOUPPER instead of
360         isalnum/islower/toupper.
361         (operand): Use TOLOWER instead of isupper/tolower.
362         * gasp.c: Include "safe-ctype.h" instead of <ctype.h>.
363         (sb_strtol, level_0, change_base, doinstr): Use ISDIGIT instead
364         of isdigit.
365         (process_assigns, whatcond): Use TOUPPER instead of toupper.
366         (chartype_init): Use ISALPHA/ISDIGIT instead of isalpha/isdigit.
367         (main): For gettext, also set the LC_CTYPE locate facet.
368         * hash.c: Include "safe-ctype.h".
369         (main): Use TOLOWER instead of isupper/tolower.
370         * itbl-lex.l: Don't include <ctype.h>.
371         * listing.c: Include "safe-ctype.h" instead of <ctype.h>.
372         (listing_newline): Use ISCNTRL instead of isascii/iscntrl. Don't
373         omit non-ASCII characters.
374         (debugging_pseudo): Use ISSPACE instead of isspace.
375         * macro.c: Include "safe-ctype.h" instead of <ctype.h>.
376         (buffer_and_nest): Use ISALNUM instead of isalnum.
377         (get_token): Use ISALPHA/ISALNUM instead of isalpha/isalnum.
378         (define_macro): Use ISUPPER/TOLOWER instead of isupper/tolower.
379         (macro_expand_body): Use ISALNUM/ISDIGIT/ISUPPER/ISALPHA
380         instead of isalnum/isdigit/isupper/isalpha.
381         (check_macro): Use ISALPHA/ISALNUM/ISUPPER/TOLOWER instead
382         of isalpha/isalnum/isupper/tolower.
383         * read.c: Include "safe-ctype.h" instead of <ctype.h>.
384         (read_a_source_file): Use ISUPPER/TOLOWER/ISDIGIT instead of
385         isupper/tolower/isdigit.
386         (s_mri_common): Use ISDIGIT instead of isdigit.
387         (s_mri_sect): Use ISDIGIT/TOUPPER instead of isdigit/toupper.
388         (s_float_space): Use ISALPHA instead of isalpha.
389         (ignore_rest_of_line): Use ISPRINT instead of isprint.
390         (float_cons): Use ISALPHA instead of isalpha.
391         (next_char_of_string): Use ISDIGIT/ISXDIGIT instead of
392         isdigit/isxdigit.
393         * symbols.c: Include "safe-ctype.h" instead of <ctype.h>.
394         (save_symbol_name): Use ISLOWER/TOUPPER instead of
395         islower/toupper.
396         (symbol_find_base): Use TOUPPER instead of islower/toupper.
397         (decode_local_label_name): Use ISDIGIT instead of isdigit.
398
399 2001-09-18  Martin Schwidefsky <schwidefsky@de.ibm.com>
400
401         * tc-s390.c (s390_insn): Add code to cope with 6 byte O_constants
402         in 64 bit mode and make format "e" work.
403
404 2001-09-18  Alan Modra  <amodra@bigpond.net.au>
405
406         * dwarf2dbg.c (dwarf2_directive_file): Avoid signed/unsigned warning.
407
408         * write.c (set_symtab): Update bfd_alloc declaration.  Use a temp
409         var to ensure bfd_alloc arg is the right type.
410         (write_object_file): Cast args of bfd_seek.  Replace bfd_write with
411         bfd_bwrite.
412
413         * config/obj-coff.c: Replace calls to bfd_write with calls to
414         bfd_bwrite.  Cast args of bfd_seek.
415
416         * config/obj-elf.c (obj_elf_change_section): Avoid signed/unsigned
417         warning.
418
419         * config/tc-mn10300.c (set_arch_mach): Make param unsigned.
420
421         * config/tc-tic54x.c (tic54x_mlib): Replace bfd_read call with
422         call to bfd_bread.
423
424 2001-09-15  Hans-Peter Nilsson  <hp@bitrange.com>
425
426         * config/tc-sh.h (sh_force_relocation): Prototype.
427         (struct fix): Forward declare.
428         * config/tc-sh.c (type sh_operand_info): Move to top of file.
429         (cons, s_align_bytes): Remove old-type declarations.
430         (sh_elf_suffix, parse_reg, dot, parse_exp, parse_at, get_operand,
431         get_operands, get_specific, insert, build_relax,
432         insert_loop_bounds, build_Mytes): Prototype.
433         (little): Make static.  Prototype.
434         (check, tc_Nout_fix_to_chars): Delete unused functions.
435
436 2001-09-14  Eric Christopher  <echristo@redhat.com>
437
438         * config/tc-mips.c (md_parse_option): Remove setting mips_64 via
439         -mgp32/mgp64.
440
441 2001-09-14  Kevin Lo <kevlo@openbsd.org>
442
443         * configure.in: Add arm-openbsd target.
444         * configure: Regenerate.
445
446 2001-09-14  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
447
448         * configure.in: Change machine triplets from mips-*-linux-gnu* to
449         mips*-*-linux*.
450
451 2001-09-12  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
452
453         * config/tc-mips.c (append_insn): Don't rightshift BFD_RELOC_16_PCREL.
454
455 2001-09-11  Richard Henderson  <rth@redhat.com>
456
457         * config/tc-alpha.c (alpha_elf_section_letter): New.
458         (alpha_elf_section_flags): New.
459         * config/tc-alpha.h (md_elf_section_letter): New.
460         (md_elf_section_flags): New.
461         * config/tc-ia64.c (ia64_elf_section_letter): New.
462         * config/tc-ia64.h (md_elf_section_letter): New.
463
464 2001-09-11  Jakub Jelinek  <jakub@redhat.com>
465
466         * config/obj-elf.c (obj_elf_parse_section_letters): Use 'M' instead
467         of 'm', 'S' instead of 's'.  Update bad_msg.
468         * config/tc-ppc.c (ppc_section_letter): Update bad_msg.
469         * config/tc-i370.c (i370_sectioN_letter): Update bad_msg.
470
471 2001-09-09  Alan Modra  <amodra@bigpond.net.au>
472
473         * expr.c (expr): Move code setting "retval" to the end of the loop,
474         and rearrange for efficiency.  For "PIC code" subtraction, use
475         "rightseg" rather than recalculating.  For "symbol OP symbol"
476         subtract, set "retval" to absolute_section if symbols in same
477         section.
478         * symbols.c (resolve_symbol_value): Resolve "sym +/- expr" to an
479         O_symbol.  Simplify a +/- b code.  Allow equality and non-equality
480         comparisons on symbols from any section.  Allow other comparison
481         operators as for subtraction.
482         (symbol_equated_reloc_p): New predicate function.
483         * symbols.h (symbol_equated_reloc_p): Declare.
484         * write.c (relax_segment <rs_machine_dependent>): Ensure segment
485         for expression syms is set correctly.
486         (adjust_reloc_syms): Use symbol_equated_reloc_p.
487         (write_relocs): Likewise.
488         (write_object_file): Likewise.
489         * config/tc-mips.c (md_estimate_size_before_relax): Likewise.
490         * config/tc-i386.c (md_assemble <Output jumps>): Don't lose part
491         of a complex expression when setting up frag_var.
492
493 2001-09-07  Richard Henderson  <rth@redhat.com>
494
495         * config/tc-alpha.c (alpha_reloc_op_tag): Replace need_seq with
496         require_seq and allow_seq.  Let !literal omit the sequence number.
497         (tokenize_arguments): Reject sequence numbers of !allow_seq.
498
499 2001-09-08  Jakub Jelinek  <jakub@redhat.com>
500
501         * config/tc-sparc.c (md_apply_fix3): Handle relocs against SEC_MERGE
502         section symbols the same way as externs.
503
504 2001-09-07  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
505
506         * config/tc-mips.c (s_mipsset): Reallow unrestricted use of .set mipsX
507         pseudo-op.
508
509 2001-09-07  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
510
511         * config/tc-mips.c (append_insn): Handle BFD_RELOC_16_PCREL.
512         (macro_build): Use BFD_RELOC_16_PCREL_S2 only for embedded
513         PIC, BFD_RELOC_16_PCREL for the rest.
514         (mips_ip): Likewise.
515         (md_pcrel_from): return the right offset for the differently shifted
516         pcrel relocs.
517         (md_apply_fix): Handle BFD_RELOC_16_PCREL.
518
519 2001-09-05  Richard Henderson  <rth@redhat.com>
520
521         * config/tc-ia64.c (FUNC_IPLT_RELOC): New.
522         (pseudo_func): Add @iplt.
523         (pseudo_opcode): Add data16 and data16.ua.
524         (md_begin): Set iplt pseudo.
525         (ia64_cons_fix_new): Handle 16 byte iplt reloc specially.
526
527 2001-09-04  Richard Henderson  <rth@redhat.com>
528
529         * config/tc-alpha.c (struct alpha_insn): Make sequence scalar long.
530         (MACRO_LITERAL, MACRO_BASE, MACRO_BYTOFF, MACRO_JSR): Remove.
531         (alpha_macros): Remove occurrences of same.
532         (O_lituse_addr, O_gprel): New.
533         (DUMMY_RELOC_LITUSE_*): New.
534         (s_alpha_ucons, s_alpha_arch): Prototype.
535         (alpha_reloc_op): Construct elements via DEF macro.
536         (ALPHA_RELOC_SEQUENCE_OK): Remove.
537         (struct alpha_reloc_tag): Rename from alpha_literal_tag; rename
538         members to not be literal specific.
539         (next_sequence_num): New.
540         (md_apply_fix3): Cope with missing GPDISP_LO16.  Adjust for
541         added/removed BFD relocations.
542         (alpha_force_relocation, alpha_fix_adjustable): Likewise.
543         (alpha_adjust_symtab_relocs): Handle GPDISP relocs as well.
544         (tokenize_arguments): Parse ! relocations properly.
545         (find_macro_match): Delete unused macro argument types.
546         (assemble_insn): Add reloc parameter; emit that instead of the
547         default as appropriate.
548         (get_alpha_reloc_tag): New.  Split from ...
549         (emit_insn): ... here.  Allocate a reloc tag for GPDISP.
550         (assemble_tokens): Don't search macros if user relocation present.
551         Copy reloc sequence number to insn struct.
552         (emit_ldgp): Remove user reloc handling.
553         (load_expression, emit_lda, emit_ldah, emit_ir_load): Likewise.
554         (emit_loadstore, emit_ldXu, emit_ldil, emit_stX): Likewise.
555         (emit_sextX, emit_division, emit_jsrjmp, emit_retjcr): Likewise.
556         * config/tc-alpha.h (tc_adjust_symtab): Always define.
557         (struct alpha_fix_tag): Name members less literal specific.
558
559 Tue Sep  4 20:01:19 2001  Jeffrey A Law  (law@cygnus.com)
560
561         * tc-h8300.c (tc_gen_reloc): Give an error if we try to take the
562         address of two symbols in different sections.
563
564 2001-08-31  Eric Christopher  <echristo@redhat.com>
565             Jason Eckhardt  <jle@redhat.com>
566
567         * config/tc-mips.c (mips_cpu_info): Add support for mipsisa32,
568         5kc, and 20kc.  Clean up old entries.
569
570 Fri Aug 31 12:05:13 2001  J"orn Rennecke <amylaar@redhat.com>
571                           Jeff Law <law@redhat.com>
572
573         * config/tc-h8300.c (build_bytes): For OBJ_ELF, make relocation's
574         offset match H8 ELF spec.
575         (md_section_align): Alternate implementation for BFD_ASSEMBLER.
576         (md_apply_fix): Fix argument and return types for BFD_ASSEMBLER.
577
578         * tc-h8300.c (relocation mappings): Remove.  Moved to tc-h8300.h.
579         (build_bytes): Mark fixups for PCrel branches as signed.  For
580         OBJ_ELF, make sure the reloc's offset points to the first byte
581         to be modified.
582         (md_convert_frag): Update definiton based on BFD_ASSEMBLER.
583         * tc-h8300.h (relocation mappings): Add.
584
585 Thu Aug 30 12:05:13 2001  J"orn Rennecke <amylaar@redhat.com>
586
587         * tc-h8300.c (tc_crawl_symbol_chain, tc_headers_hook): Don't
588         define for BFD_ASSEMBLER.
589         (tc_reloc_mangle): Likewise.
590         (tc_gen_reloc): New function for BFD_ASSEMBLER.
591
592 Wed Aug 29 12:49:58 2001  Jeffrey A Law  (law@cygnus.com)
593
594         * config/tc-h8300.c (h8300hmode): Record the machine type
595         if BFD_ASSEMBLER is defined.
596         (h8300smode, md_begin): Similarly.
597
598 2001-08-29  Joel Sherrill <joel@OARcorp.com>
599
600         * configure.in (i[3456]86-*-rtems*, m68*-*-rtems*): Change
601         default from coff to elf.
602         * configure: Regenerate.
603
604 Wed Aug 29 12:05:13 2001  J"orn Rennecke <amylaar@redhat.com>
605
606         * tc-h8300.c: If OBJ_ELF, include elf/h8.h, and define
607         assorted coff relocations to the corresponding elf relocations.
608         * tc-h8300.h (TARGET_ARCH, TARGET_FORMAT): Define appropriately.
609
610         * configure.in: Add case for h8300-*-elf.
611         * configure: Regenerate.
612
613 Wed Aug 29 12:05:13 2001  J"orn Rennecke <amylaar@redhat.com>
614
615         * doc/internals.texi (MD_PCREL_FROM_SECTION): Change
616         documentation to reflect reality.
617
618 2001-08-27  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
619
620         * config/tc-mips.c (load_address): Reflect change to MAX_GPREL_OFFSET.
621         (macro): Reflect change to MAX_GPREL_OFFSET.
622
623 2001-08-27  Torbjorn Granlund  <tege@swox.com>
624             Staffan Ulfberg  <staffanu@swox.se>
625             Linus Nordberg  <linus@swox.se>
626             Alan Modra  <amodra@bigpond.net.au>
627
628         * configure.in: Recognise powerpc*le*, not just powerpcle*.
629         * configure: Regenerate.
630         * config/tc-ppc.c (PPC_LO, PPC_HI, PPC_HA, PPC_HIGHER,
631         PPC_HIGHERA, PPC_HIGHEST, PPC_HIGHESTA, SEX16): New macros.
632         (md_assemble): Use them.
633         (ppc_machine): Support stub for ELF64 as well as XCOFF.
634         (md_pseudo_table): Add "llong", "quad".
635         (md_parse_option): Match default_cpu of powerpc*.
636         (ppc_arch): Likewise.
637         (ppc_subseg_align): Only for OBJ_XCOFF.
638         (ppc_target_format): Return elf64-powerpc strings for 64 bit ELF.
639         (md_begin): Select PPC_OPCODE_64 for 64 bit.
640         (ppc_insert_operand): Don't bother testing 'file' before calling
641         as_bad_where.  Use as_bad_where for operand->insert errors.
642         (mapping): Add ELF64 relocation modifiers.
643         (ppc_elf_suffix): Replace symbol on BFD_RELOC_PPC64_TOC reloc
644         expressions with abs_symbol.
645         (ppc_elf_cons): Correct offset for little endian targets.
646         (ppc_elf_frob_symbol): New.
647         (md_assemble): Add support for 64 bit ELF relocs.
648         (ppc_tc): Ensure 8 byte alignment when 64 bit.
649         (ppc_is_toc_sym): Only define for OBJ_XCOFF and OBJ_ELF.  Match
650         ".toc" section for 64 bit ELF.
651         (ppc_fix_adjustable): New.  Macro body moved from tc-ppc.h.
652         (md_apply_fix3): Silence warning with ATTRIBUTE_UNUSED.  Only do
653         the ppc_is_toc_sym check for OBJ_XCOFF and OBJ_ELF.  For 64 bit,
654         use BFD_RELOC_PPC64_TOC16_DS instead of BFD_RELOC_PPC_TOC16.
655         Expand on comments, error message.  Add support for 64 bit relocs,
656         and use PPC_HI etc. macros.
657         * config/tc-ppc.h (MAX_MEM_FOR_RS_ALIGN_CODE): Define.
658         (HANDLE_ALIGN): Define to generate nops in code sections rather
659         than zeros.
660         (TC_FORCE_RELOCATION): Force for BFD_RELOC_PPC64_TOC.
661         (ELF_TC_SPECIAL_SECTIONS): Add 64 bit ELF sections.
662         (tc_fix_adjustable): Move body of macro to tc-ppc.c.
663         (ppc_fix_adjustable): Declare.
664         (tc_frob_symbol): Define.
665         (ppc_elf_frob_symbol): Declare.
666
667 2001-08-26  Andreas Jaeger  <aj@suse.de>
668
669         * config/tc-s390.c: Add missing prototypes
670         (md_gather_operands): Make static.
671
672 2001-08-26  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
673
674         * config/tc-mips.h (MAX_GPREL_OFFSET): Change it to the maximum
675         allowed value, not the word beyond maximum.
676         * config/tc-mips.c (macro_build_lui): Code cleanup.
677         (macro): Reflect change to MAX_GPREL_OFFSET.
678         (mips_ip): Check explicitly against S_EX_NONE.
679         (my_get_SmallExpression): parse for %gp_rel, not %gprel.
680         (md_apply_fix): Code cleanup.
681
682 2001-08-24  Andreas Jaeger  <aj@suse.de>
683
684         * config/tc-ppc.h: Fix prototype declaration.
685
686 2001-08-23  Jakub Jelinek  <jakub@redhat.com>
687
688         * config/tc-ia64.c (dot_endp): Set function symbol sizes.
689         * config/obj-elf.c (obj_elf_size): When size is constant, free
690         and clear symbol_get_obj(sym)->size if any.
691
692 2001-08-21  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
693
694         * config/tc-mips.c (md_begin): Warn about incompatibility between
695         -march=FOO and -mipsN option, continue with default ISA.
696
697 2001-08-21  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
698
699         * config/tc-mips.c (md_parse_option): #ifdef the
700         traditional/non-traditional names as it is done in mips_target_format.
701
702 2001-08-20  Richard Henderson  <rth@redhat.com>
703
704         * config/tc-alpha.h (MD_APPLY_FIX3): Define.
705         * config/tc-alpha.c (md_apply_fix3): Rename from md_apply_fix;
706         use seg parameter instead of now_seg.
707
708 2001-08-18  H.J. Lu  <hjl@gnu.org>
709
710         * config/tc-mips.c (show): Add the missing prototype.
711
712 2001-08-18  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
713
714         * config/tc-mips.c (S_EX_*): New enum for my_getSmallExpression()
715         return values.
716         (mips_ip): Use the new return values instead of characters. Add
717         support for %higher and %highest.
718         (LP): Remove.
719         (RP): Remove.
720         (my_getSmallExpression): Make parsing case insensitive and more
721         reliable. Add support for %higher and %highest. Further support to
722         parse %gprel and %neg is implemented but currently deactivated.
723
724 2001-08-17  Alan Modra  <amodra@bigpond.net.au>
725
726         * ecoff.c (ecoff_frob_symbol): Remove casts from bfd_get_gp_size.
727         (ecoff_build_symbols): Likewise.
728         * read.c (s_lcomm_internal): Fix signed/unsigned warning.
729
730 2001-08-16  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
731
732         * config/tc-mips.c (mips_elf_final_processing): Set elf header flags
733         for n32 ABI if appropriate.
734
735 2001-08-16  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
736
737         * config/tc-mips.c (cons_fix_new_mips): Remove.
738         * config/tc-mips.h (TC_CONS_FIX_NEW): Remove.
739         (cons_fix_new_mips): Remove.
740
741 2001-08-14  Jeff Johnston  <jjohnstn@redhat.com>
742
743         * expr.c (operand)[LITERAL_PREFIXDOLLAR_HEX]: Treat $L as
744         a label, not a hex constant.
745
746 2001-08-13  Nick Clifton  <nickc@cambridge.redhat.com>
747
748         * config/tc-v850.h: Add missing prototypes.
749
750 2001-08-12  Martin Schwidefsky  <schwidefsky@de.ibm.com>
751
752         * config/tc-s390.c (s390_elf_cons): Correct fixups for PLT
753         relocations.
754
755 2001-08-12  TAKAI Kousuke  <takai@vlsi.kuee.kyoto-u.ac.jp>
756
757         * config/tc-sparc.c (cons_fix_new_sparc): Move
758         `sparc_no_align_cons = 0;' to...
759         (s_uacons): ...here so that sparc_no_align_cons will get
760         cleared properly.
761
762 2001-08-11  Kazu Hirata  <kazu@hxi.com>
763
764         * config/tc-mips.c: Fix a comment typo.
765
766 2001-08-10  Richard Sandiford  <rsandifo@redhat.com>
767
768         * config/tc-mips.c (move_register): New function.
769         (macro_build): Remove OPCODE_IS_MEMBER's gp32 argument.
770         (mips_ip): Likewise.
771         (macro2): Use move_register rather than macro_build for moves.
772         (mips16_macro): Likewise.
773         (macro): Likewise.  Handle M_MOVE.
774
775 2001-08-10  Andreas Jaeger  <aj@suse.de>
776
777         * configure.in: Add -Wstrict-prototypes and -Wmissing-prototypes
778         to build warnings.
779         * configure: Regenerate.
780
781 2001-08-10  Alan Modra  <amodra@bigpond.net.au>
782
783         * as.h (alloca): Don't declare if __GNUC__.  Remove an old comment.
784         Comment indentation of #pragma.
785         * macro.c (alloca): Likewise.
786
787         * config/tc-ppc.c: Revert 2001-08-08.
788
789 2001-08-09  Alan Modra  <amodra@bigpond.net.au>
790
791         * symbols.c: Add missing prototypes.
792         * config/e-i386elf.c: Likewise.
793         * config/e-i386coff.c: Likewise.
794         * config/e-i386aout.c: Likewise.
795         * config/obj-coff.c: Likewise.
796         (def_symbol_in_progress, stack): Move definition.
797         * config/obj-elf.c: Add missing prototypes.
798         (obj_elf_change_section): Make static.
799         (obj_elf_parse_section_letters): Likewise.
800         (obj_elf_section_word): Likewise.
801         (obj_elf_section_type): Likewise.
802
803 2001-08-08  Alan Modra  <amodra@bigpond.net.au>
804
805         From 1999-10-25  Torbjorn Granlund  <tege@swox.com>
806         * config/tc-ppc.c (md_apply_fix3): Replace haphazard code for
807         determining reloc type with code reading operands->reloc field.
808
809 2001-08-08  Alan Modra  <amodra@bigpond.net.au>
810
811         * config/obj-elf.c (elf_copy_symbol_attributes): Make it a global
812         function, and expand old obj-elf.h OBJ_COPY_SYMBOL_ATTRIBUTES here.
813         * config/obj-elf.h (elf_copy_symbol_attributes): Declare.
814         (OBJ_COPY_SYMBOL_ATTRIBUTES): Call elf_copy_symbol_attributes.
815
816         * output-file.c (output_file_create): Don't try to open a second
817         time as it's unnecessary.  FOPEN_W was undefined too.
818
819 2001-08-07  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
820
821         * config/tc-mips.c (macro_build): Replace magic constants by defines.
822         (mips_ip): Likewise. Typo.
823
824 2001-08-04  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
825
826         * config/tc-mips.c (mips_abi_string): Initialize with NULL instead
827         of 0.
828         (RELAX_ENCODE): Replace bfd_vma by valueT.
829         (load_address): Formatting.
830         (macro): Likewise. Code cleanup. Typo.
831         (macro2): Formatting.
832         (md_parse_option): Typo.
833         (s_mipsset): Reorder cases to look nicer.
834         (md_estimate_size_before_relax): Formatting. Code cleanup.
835         (mips_elf_final_processing): Check against NULL instead of 0.
836         (md_obj_end): Remove ugly `' in message string.
837         (s_mips_ent): Remove ugly `' in message string.
838
839 2001-07-30  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
840
841         * config/tc-mips.c (md_begin): Take -mcpu value into account even when
842         -mipsX is specified. Make both -mcpu/-march and -mcpu/-mtune pairs
843         mutually exclusive (if they are different).
844         (md_parse_option): Warn if an -march/-mtune/-mcpu/-m<cpu> option is
845         set more than once.
846
847 2001-08-03  Richard Sandiford  <rsandifo@redhat.com>
848
849         * config/tc-mips.c (md_apply_fix): Don't subtract the symbol value
850         from GPREL addends.
851
852 2001-08-02  Richard Sandiford  <rsandifo@redhat.com>
853
854         * doc/c-mips.tex (-mgp32, -mfp32): Added -mfp32, unified with -mgp32.
855         * config/tc-mips.c (mips_fp32, mips_32bit_abi): New static variables.
856         (md_long_opts): Add -mfp32 option.
857         (md_parse_option): Handle it.  Set mips_32bit_abi given -mabi=32.
858         (md_show_usage): Show usage for -mfp32 and -mgp32.
859         (HAVE_32BIT_GPRS, HAVE_32BIT_FPRS): New macros.
860         (HAVE_64BIT_GPRS, HAVE_64BIT_FPRS): New macros, inverse of the above.
861         (HAVE_32BIT_ADDRESSES): New macro.
862         (load_register): Use HAVE_32BIT_GPRS to determine the register width.
863         (load_address): Use HAVE_32BIT_ADDRESSES to determine the address size.
864         (s_cprestore, s_cpadd): Likewise.
865         (macro): Use HAVE_32BIT_GPRS to determine the width of registers
866         used in branch and M_LI_D macros.  Use HAVE_64BIT_FPRS to determine
867         the width registers used in M_LI_DD macros.  Use HAVE_32BIT_ADDRESSES
868         to determine the width of addresses in load, store and jump macros.
869         (macro2): Use HAVE_32BIT_GPRS to determine the width of registers
870         used in set instructions; do not check the address size for them.
871         Use HAVE_32BIT_ADDRESSES to determine the width of addresses in
872         unaligned load and store macros.
873         (mips_ip): Use the new macros to check the width of a register when
874         processing float constants.  Force a constant into memory if it is
875         destined for an FPR and the FPRs are wider than the GPRs.  Warn about
876         odd FPR numbers if HAVE_32BIT_FPRS.  Use HAVE_32BIT_GPRS rather
877         than mips_gp32 to select synthetic instructions.
878         (macro_build): Use HAVE_32BIT_GPRS rather than mips_gp32 to select
879         synthetic instructions.
880
881 2001-08-01  Christian Groessler <cpg@aladdin.de>
882
883         * config/tc-z8k.c (parse_reg): If a string starts with "r", "rl",
884         "rh", "rr", "rq", or "sp" then don't automatically assume
885         it's a register name.  Check whether there is a number
886         following.
887
888 2001-08-01  Alan Modra  <amodra@bigpond.net.au>
889
890         * config/tc-i386.c (lex_got): Match lower case relocation tokens.
891         Don't allocate more space than necessary for the input line copy.
892
893 2001-08-01  Alan Modra  <amodra@bigpond.net.au>
894
895         * read.c: Standardize error/warning messages - don't capitalise, no
896         final period or newline, don't say "ignored" or "zero assumed" for
897         as_bad messages.  In some cases, change the wording to that used
898         elsewhere for similar messages.
899         * app.c: Likewise.
900         * as.c: Likewise.
901         * atof-generic.c: Likewise.
902         * cgen.c: Likewise.
903         * cond.c: Likewise.
904         * depend.c: Likewise.
905         * dwarf2dbg.c: Likewise.
906         * ecoff.c: Likewise.
907         * expr.c: Likewise.
908         * frags.c: Likewise.
909         * input-file.c: Likewise.
910         * input-scrub.c: Likewise.
911         * listing.c: Likewise.
912         * output-file.c: Likewise.
913         * stabs.c: Likewise.
914         * subsegs.c: Likewise.
915         * symbols.c: Likewise.
916         * write.c: Likewise.
917         * ecoff.c (ecoff_directive_end): Test for missing name by
918         comparing input line pointers rather than reading string.
919         (ecoff_directive_ent): Likewise.
920         * read.c (s_set): Likewise.
921         (s_align): Report a warning rather than an error for
922         alignment too large.
923         (s_comm): Check for missing symbol name.
924         (s_lcomm_internal): Likewise.
925         (s_lsym): Likewise.
926         (s_globl): Use is_end_of_line instead of looking for '\n'.
927         (s_lcomm_internal): Likewise.
928         (ignore_rest_of_line): Report a warning rather than an error.
929
930 2001-07-31  Geoffrey Keating  <geoffk@redhat.com>
931
932         * config/tc-ppc.c (ppc_elf_validate_fix): It's OK to have
933         any kind of relocation against a not-loaded section.
934
935 2001-07-30  Alan Modra  <amodra@bigpond.net.au>
936
937         * config/obj-elf.c (obj_elf_symver): Temporarily modify lex_type
938         to include '@' in symbol names when parsing versioned symbols
939         rather than calling get_symbol_end multiple times.
940         * config/tc-i370.c (register_name): Format fixes.  Don't call
941         get_symbol_end after parsing number.
942         * config/tc-mn10200.c (data_register_name): Format fixes.  Hoist
943         code out of conditional.
944         (address_register_name): Likewise.
945         (other_register_name): Likewise.
946         * config/tc-mn10300.c (r_register_name): Likewise.
947         (xr_register_name): Likewise.
948         (data_register_name): Likewise.
949         (address_register_name): Likewise.
950         (other_register_name): Likewise.
951         * config/tc-ppc.c (register_name): Likewise.
952         * config/tc-s390.c (register_name): Likewise.
953
954 2001-07-27  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
955
956         * config/tc-m68hc11.c (md_estimate_size_before_relax): Fix bsr
957         and bra relax: update fragP->fr_fix after the fixup.
958
959 2001-07-27  Tracy Kuhrt  <Tracy.Kuhrt@microchip.com>
960
961         * read.c (s_set): Check for missing symbol name.
962
963 2001-07-26  Alan Modra  <amodra@bigpond.net.au>
964
965         * write.c (relax_segment <rs_space>): Account for fr_fix.
966
967 2001-07-25  H.J. Lu  <hjl@gnu.org>
968
969         * config/tc-mips.c (md_estimate_size_before_relax): Make sure
970         we treat weak like extern only for ELF.
971         (mips_fix_adjustable): Make sure we don't adjust extern/weak
972         symbols only for ELF.
973
974 2001-07-25  Chris Demetriou  <cgd@broadcom.com>
975
976         * config/tc-mips.c: Fix spelling error in comment.
977
978 2001-07-25  Dave Brolley  <brolley@redhat.com>
979
980         * app.c (LEX_IS_PARALLEL_SEPARATOR): New macro.
981         (IS_PARALLEL_SEPARATOR): New macro.
982         (do_scrub_begin): Set up characters in tc_parallel_separator_chars
983         as LEX_IS_PARALLEL_SEPARATOR, if it is defined.
984         (do_scrub_chars): Handle LEX_PARALLEL_SEPARATOR chars like
985         LEX_LINE_SEPARATOR except that we go to state 1 (as if the label has
986         been seen).
987
988 2001-07-24  Alan Modra  <amodra@bigpond.net.au>
989
990         * Makefile.am (DEP_FLAGS): Define, add -DOBJ_MAYBE_ELF.
991         (DEP1, DEPTC, DEPOBJ, DEP2): Use it.
992         Update dependencies with "make dep-am".
993         * Makefile.in: Regenerate.
994         * doc/Makefile.in: Regenerate.
995
996 2001-07-23  Kazu Hirata  <kazu@hxi.com>
997
998         * config/tc-alpha.h: Fix formatting.
999         * config/tc-arc.c: Likewise.
1000         * config/tc-d10v.h: Likewise.
1001         * config/tc-hppa.c: Likewise.
1002         * config/tc-i370.c: Likewise.
1003         * config/tc-i386.h: Likewise.
1004         * config/tc-i960.h: Likewise.
1005         * config/tc-ia64.c: Likewise.
1006         * config/tc-ia64.h: Likewise.
1007         * config/tc-m32r.c: Likewise.
1008         * config/tc-m68k.c: Likewise.
1009         * config/tc-m88k.c: Likewise.
1010         * config/tc-ns32k.c: Likewise.
1011         * config/tc-pdp11.c: Likewise.
1012         * config/tc-pj.h: Likewise.
1013         * config/tc-s390.c: Likewise.
1014         * config/tc-sparc.c: Likewise.
1015         * config/tc-sparc.h: Likewise.
1016         * config/tc-tic80.c: Likewise.
1017         * config/tc-w65.h: Likewise.
1018
1019 2001-07-23  Alan Modra  <amodra@bigpond.net.au>
1020
1021         * symbols.c (S_GET_VALUE): Don't treat O_constant and local
1022         symbols specially.  Always resolve, adding fr_address to value.
1023         * write.c (write_object_file): Don't add fr_address to sym values.
1024         (relax_frag): Likewise.
1025         (relax_segment): Likewise.
1026         * config/obj-ieee.c (do_symbols): Likewise.
1027         * config/tc-cris.c (md_convert_frag): Likewise.
1028         * config/tc-fr30.c (md_convert_frag): Likewise.
1029         * config/tc-i386.c (md_convert_frag): Likewise.
1030         * config/tc-m32r.c (md_convert_frag): Likewise.
1031         * config/tc-m68hc11.c (md_convert_frag): Likewise.
1032         * config/tc-mcore.c (md_convert_frag): Likewise.
1033         * config/tc-mips.c (mips16_extended_frag): Likewise.
1034         * config/tc-ns32k.c (md_convert_frag): Likewise.
1035         * config/tc-m68k.c (md_convert_frag_1): Likewise.
1036         (BRANCHBWL, BRABSJUNC, BRABSJCOND, BRANCHBW, FBRANCH, DBCCLBR,
1037         DBCCABSJ, PCREL1632, PCINDEX, ABSTOPCREL): Decrement.
1038         (md_relax_table): Remove first four entries.  Format.
1039         (md_estimate_size_before_relax): Remove old_fix.  Don't bother
1040         setting fr_var.  Simplify byte branch checks.
1041
1042 2001-07-23  Alan Modra  <amodra@bigpond.net.au>
1043
1044         * config/tc-hppa.c (pa_parse_nonneg_cmpsub_cmpltr): Remove
1045         "isbranch" param as all calls have it set.
1046         (pa_parse_neg_cmpsub_cmpltr): Likewise.
1047         (pa_parse_nonneg_add_cmpltr): Likewise.  Remember result of
1048         strcasecmp in "nullify" var.
1049         (pa_parse_neg_add_cmpltr): Likewise.
1050         (pa_ip): Don't "save_s" unnecessarily.  Update calls to above
1051         functions.  Don't print wrong conditions in error messages.
1052
1053 2001-07-23  Andreas Jaeger  <aj@suse.de>
1054
1055         * config/tc-s390.c (s390_force_relocation): Removed.
1056
1057         * config/tc-s390.h: Remove double declaration of
1058         TC_FORCE_RELOCATION.
1059
1060 2001-07-22  H.J. Lu <hjl@gnu.org>
1061
1062         * config/tc-mips.c (s_mips_end): Remove unused variables.
1063         (s_mips_frame): Add ATTRIBUTE_UNUSED.
1064
1065 2001-07-17  Andreas Schwab  <schwab@suse.de>
1066
1067         * config/tc-m68k.c (md_pseudo_table) [OBJ_ELF]: Add .file and
1068         .loc.
1069         (md_assemble) [OBJ_ELF]: Call dwarf2_emit_insn before emitting
1070         insn.
1071         * config/tc-m68k.h (DWARF2_LINE_MIN_INSN_LENGTH): Define.
1072
1073 2001-07-17  matthew green  <mrg@eterna.com.au>
1074
1075         * config/tc-i386.c (comment_chars): Don't use '/' as comment start if
1076         TE_NetBSD.
1077         (line_comment_chars): Set to '/' if TE_NetBSD.
1078
1079 2001-07-14  matthew green  <mrg@eterna.com.au>
1080
1081         * configure.in (i386-*-netbsdelf*): New target.
1082         * configure: Regenerate.
1083
1084 2001-07-10  Mark Elbrecht  <snowball3@softhome.net>
1085
1086         * config/obj-coff.c (coff_frob_symbol): Don't merge if the storage
1087         class of the non-debug symbol is C_NULL.
1088
1089 2001-07-10  Anders Norlander <anorland@synergenix.se>
1090
1091         * doc/as.texinfo (Incbin): Fix grammatical errors.
1092
1093 2001-07-10  Nick Clifton  <nickc@cambridge.redhat.com>
1094
1095         * depend.c: Use FOPEN_.. macros in calls to fopen().
1096         * input-file.c: As above.
1097         * itbl-ops.c: As above.
1098         * listing.c: As above.
1099         * output-file.c: As above.
1100         * read.c: As above.
1101
1102 2001-07-08  Anders Norlander <anorland@synergenix.se>
1103
1104         * read.c (s_incbin): New .incbin function.
1105         * read.c (potable): Add "incbin" pseudo-op.
1106         * read.h: Add s_incbin prototype.
1107         * doc/as.texinfo (incbin): Document .incbin pseudo-op.
1108         * NEWS: Mention new feature.
1109
1110 2001-07-07  Nick Clifton  <nickc@cambridge.redhat.com>
1111
1112         * ecoff.c (add_file): Only set debug_type to DEBUG_NONE if it is
1113         DEBUG_UNSPECIFIED.
1114
1115 2001-07-06  John Healy  <jhealy@redhat.com>
1116
1117         * cgen.c (gas_cgen_save_fixups): Modified to allow more than one
1118         set of fixups to be stored.
1119         (gas_cgen_restore_fixups): Modified to allow the fixup chain to be
1120         restored to be chosen from any that are saved.
1121         (gas_cgen_swap_fixups): Modified to allow the current set of
1122         fixups to be swapped with any other set that has been saved.
1123         (gas_cgen_initialize_saved_fixups_array): New routine.
1124         * cgen.h: Modifed prototypes for gas_cgen_save_fixups,
1125         gas_cgen_restore_fixups, and gas_cgen_swap_fixups.  Added definitions
1126         or MAX_SAVED_FIXUP_CHAINS.
1127         * config/tc-m32r.c (assemble_two_insns): Changed calls to fixup
1128         store, swap and restore fuctions to reflect the new interface.
1129
1130 2001-07-06  Nick Clifton  <nickc@cambridge.redhat.com>
1131
1132         * config/tc-m68k.c (md_estimate_size_before_relax): Catch and
1133         ignore empty, ineffectual alignment frags when deciding if a
1134         branch can be short.
1135
1136 2001-07-05  Steve Ellcey  <sje@cup.hp.com>
1137
1138         * config/tc-ia64.c (special_section): Add SPECIAL_SECTION_INIT_ARRAY
1139         and SPECIAL_SECTION_FINI_ARRAY.
1140         (special_section_name): Add .init_array and .fini_array.
1141         (md_pseudo_table): Add init_array and fini_array.
1142         (md): Add pointer_size and pointer_size_shift fields.
1143         (setup_unwind_header): New static function.
1144         (output_unw_records): Modify to use setup_unwind_header.
1145         (generate_unwind_image, dot_endp): Modify to use md.pointer_size and
1146         md.pointer_size_shift.
1147         (md_begin): Initialize md.pointer_size and md.pointer_size_shift.
1148
1149 2001-07-05  Ben Elliston  <bje@redhat.com>
1150
1151         * README (Supported platforms): m88k no longer suffers bitrot.
1152
1153         * config/tc-m88k.c (md_pseudo_table): Remove redundant "global".
1154
1155 2001-07-05  Alan Modra  <amodra@bigpond.net.au>
1156
1157         * struc-symbol.h (struct local_symbol): Rename lsy_offset to
1158         lsy_value.  Correct typos in comments.
1159         * symbols.c (local_symbol_make): Update for name change.
1160         (local_symbol_convert): Likewise.
1161         (colon): Likewise.
1162         (S_GET_VALUE): Likewise.
1163         (S_SET_VALUE): Likewise.
1164         (print_symbol_value_1): Likewise.
1165         (resolve_symbol_value): Likewise.  Don't divide local sym values
1166         by OCTETS_PER_BYTE twice.
1167
1168 2001-07-04  Jim Wilson  <wilson@redhat.com>
1169
1170         * config/tc-ia64.c (md_pseudo_table): Add 2byte, 4byte, and 8byte.
1171
1172         * config/tc-ia64.c (is_conditional_branch): Rewrite to exclude mod
1173         sched branches.
1174
1175 2001-07-05  Ben Elliston  <bje@redhat.com>
1176
1177         * read.c (s_fill): Correct spelling error in comments.
1178
1179         * doc/c-m88k.texi: New file.
1180         * doc/Makefile.am (CPU_DOCS): Add c-m88k.texi.
1181         * doc/Makefile.in: Regenerate.
1182         * doc/all.texi: Set M880X0.
1183         * doc/as.texinfo: Hook in m88k-dependent documentation.
1184
1185 2001-07-04  Eric Christopher  <echristo@redhat.com>
1186
1187         * doc/c-mips.texi (MIPS Opts): Document 12000 as valid cpu.
1188
1189         * config/tc-mips.c (mips_cpu_info_table): Add rm5200, rm5231, rm5261,
1190         and rm5721 as valid cpu strings.
1191         (md_show_usage): Add rm5200, rm5231, rm5261, rm5721.
1192
1193 2001-07-04  Richard Sandiford  <rsandifo@redhat.com>
1194
1195         * config/tc-mips.c (md_apply_fix): Prevent addend from becoming zero
1196         if it's expected to be non-zero.
1197
1198 2001-07-03  Nick Clifton  <nickc@cambridge.redhat.com>
1199
1200         * config/tc-sh.c (sh_frob_section): Replace symbol_get_frag() with
1201         fscan->fx_frag.
1202
1203         * write.c (TC_FINALIZE_SYMS_BEFORE_SIZE_SEG): Default to 1.
1204         (write_object_file): Set finalize_syms to
1205         TC_FINALIZE_SYMS_BEFORE_SIZE_SEG just before size_segs is
1206         called.
1207
1208         * doc/internals.texi; Document
1209         TC_FINALIZE_SYMS_BEFORE_SIZE_SEG.
1210
1211 2001-07-02  Alan Modra  <amodra@bigpond.net.au>
1212
1213         * config/tc-ppc.c: Formatting fixes.
1214
1215 2001-07-01  Ben Elliston  <bje@redhat.com>
1216
1217         * config/tc-m88k.c: Back out warning fixes from 2001-06-24, as
1218         they cause some subtle breakage.  Will fix them again later.
1219
1220 2001-06-28  Nick Clifton  <nickc@cambridge.redhat.com>
1221
1222         * config/obj-coff.c (obj_coff_ln): Treat a .ln directive
1223         outside of a function as a .appline directive.
1224
1225 2001-06-28  Eric Christopher <echristo@redhat.com>
1226             H.J. Lu  <hjl@gnu.org>
1227
1228         * config/tc-mips.c (mips_arch): New. Use mips_arch instead
1229         of mips_cpu for the ISA selection.
1230         (md_longopts): Add OPTION_MARCH and OPTION_MTUNE.
1231         (md_parse_option): Handle OPTION_MARCH and OPTION_MTUNE.
1232         (mips_tune): New.  Use mips_tune for scheduling and optimization
1233         issues.
1234         (append_insn): Use mips_tune and mips_arch.
1235         (macro_build): Ditto.
1236         (mips_ip): Ditto.
1237         (md_begin): Handle mips_arch, mips_tune and mips_cpu.  For
1238         backwards compatability mips_cpu generates arch and tune.
1239         (md_show_usage): Document new behavior.
1240
1241         * doc/c-mips.texi (MIPS Opts): Document -march and -mtune.
1242         Deprecate -mcpu.
1243
1244         * NEWS: Update.
1245
1246 2001-06-27  Nick Clifton  <nickc@cambridge.redhat.com>
1247
1248         * write.c (write_object_file): Do not set finalize_syms until
1249         after the segments have been sized.  Some backends may still
1250         need to access the syms's frags in order to adjust relaxed
1251         frags.
1252
1253         * config/tc-arm.c (do_ldst): Use MVN to build simple inverted
1254         constants.
1255
1256 2001-06-27  Alan Modra  <amodra@bigpond.net.au>
1257
1258         * write.c (fixup_segment <Difference of 2 syms same seg>): Don't
1259         subtract MD_PCREL_FROM_SECTION for 68k.
1260         (fixup_segment <Difference of 2 syms different seg>): Only fudge
1261         by adding MD_PCREL_FROM_SECTION for 68k or if not already pcrel.
1262
1263 2001-06-27  Tracy A. Kuhrt  <Tracy.Kuhrt@microchip.com>
1264
1265         * write.c (fixup_segment <Difference of 2 syms same seg>): If
1266         pcrel, subtract MD_PCREL_FROM_SECTION value.
1267
1268 2001-06-24  Ben Elliston  <bje@redhat.com>
1269
1270         * stabs.c (generate_asm_file): Make local variable `len' a size_t.
1271
1272 2001-06-24  Jakub Jelinek  <jakub@redhat.com>
1273
1274         * config/tc-alpha.c (tc_gen_reloc): Handle relocs against SEC_MERGE
1275         section symbols the same way as externs.
1276
1277 2001-06-24  Ben Elliston  <bje@redhat.com>
1278
1279         * config/tc-m88k.c (md_number_to_imm): Remove; unused since 1993.
1280         (emit_relocations): Ditto.
1281         (s_bss): Ditto.
1282         (md_begin): Reformat comments to conform to the GNU standards.
1283         (md_assemble): Ditto.
1284
1285         * config/tc-m88k.c (get_reg): Adjust type of `reg_prefix' to char.
1286         (md_parse_option): Mark parameters as unused.
1287         (md_show_usage): Ditto.
1288         (calcop): Adjust type of `reg_prefix' to char.
1289         (get_reg): Ditto.
1290         (getval): Adjust type of local `c' to char.
1291         (md_create_short_jump): Mark from_addr, to_addr params as unused.
1292         (md_create_long_jump): Ditto.
1293         (md_estimate_size_before_relax): Mark parameters as unused.
1294
1295         * config/tc-m88k.c (md_pseudo_table): Properly terminate the table
1296         to allay a possible compiler warning.
1297
1298 2001-06-22  Nick Clifton  <nickc@cambridge.redhat.com>
1299
1300         * doc/internals.texi (CPU backend): Document md_atof.
1301
1302 2001-06-22  Matthew Wilcox  <willy@ldl.fc.hp.com>
1303
1304         * config/tc-hppa.c (pre_defined_registers): Add %mrp (millicode
1305         return pointer) alias for %r2 or %r31, depending on 32 or 64 bit
1306         architecture.
1307
1308 2001-06-21  Philip Blundell  <philb@gnu.org>
1309
1310         * config/tc-arm.c (cplong_flag): Rename to long_flag.  All uses
1311         updated.
1312         (insns): Remove entry for adrl.  Add long_flag for adr.
1313         (do_adr): Handle `l' suffix.
1314         (do_adrl): Delete.
1315
1316 2001-06-21  Alan Modra  <amodra@bigpond.net.au>
1317
1318         * config/tc-hppa.c (CHECK_FIELD_WHERE): Define.
1319         (md_apply_fix): Use it here.  Replace printf with equivalent
1320         as_bad_where.
1321         (tc_gen_reloc): Use as_bad_where instead of as_bad.
1322         (md_apply_fix): Here too.
1323         * config/tc-i386.c (tc_gen_reloc): Use as_bad_where instead of as_bad.
1324         * config/tc-m68k.c (tc_gen_reloc): Likewise.
1325         (md_convert_frag_1): Likewise.
1326
1327 2000-06-20  Tom Rix <trix@redhat.com>
1328
1329         * config/tc-ppc.c (ppc_comm): Change default alignment to 4 bytes.
1330
1331 2001-06-18  H.J. Lu <hjl@gnu.org>
1332
1333         * doc/Makefile.am (info): Depend on $(MANS).
1334         (as.1): Remove the prefix `$(srcdir)/'.
1335         * doc/Makefile.in: Regenerated.
1336
1337         * as.1: Removed.
1338
1339 2001-06-18  Philip Blundell  <philb@gnu.org>
1340
1341         * config/tc-arm.c (do_msr): Remove restriction on usage of
1342         immediate operands.
1343
1344 2001-06-19  Alan Modra  <amodra@bigpond.net.au>
1345
1346         * dwarf2dbg.c (dwarf2_finish): Output file info even when no
1347         line info.
1348
1349 2001-06-13  Philip Blundell  <philb@gnu.org>
1350
1351         * config/tc-arm.c (thumb_shift): Improve wording of error message.
1352         (do_t_arit): Likewise.
1353
1354 2001-06-13  Nick Clifton  <nickc@cambridge.redhat.com>
1355
1356         * config/tc-sh.c (md_pseudo_table): Only intercept the .file and
1357         .loc pseudos if the dfwarf2 functions are available.
1358         (md_assemble): Only call dwarf2_emit_insn if it is available.
1359
1360         * expr.c: Fix typo in comment.
1361
1362 2001-06-12  Nick Clifton  <nickc@cambridge.redhat.com>
1363
1364         * doc/as.texinfo (Infix Ops): Document that comparison and
1365         combiner operators can be used as infix operators.
1366
1367 2001-06-12  Peter Jakubek <pjak@snafu.de>
1368
1369         * config/tc-m68k.c (parse_mri_control_operand): Fix handling
1370         of AND/OR.
1371         (swap_mri_condition): Add HS (alias fo CC) and LO (alias for CS).
1372         (reverse_mri_condition): Likewise.
1373         (swap_mri_condition): Issue warning for conditions that can not be
1374         swapped.
1375         (build_mri_control_operand): Fix order of operands (swapped).
1376         (build_mri_control_operand): Allow upper case extension in structured
1377         control directives.
1378         (s_mri_else): Likewise.
1379         (s_mri_next): Likewise.
1380         (s_mri_for): Likewise.
1381         (s_mri_if): Fix handling comment ('*') in mri mode.
1382         (s_mri_while): Likewise.
1383         * macro.c (macro_expand): Allow macro invocation with empty
1384         extension.
1385
1386 2001-06-12  Nick Clifton  <nickc@cambridge.redhat.com>
1387
1388         * config/tc-arm.c: Fix test for overlow of literal pool.
1389
1390 2001-06-11  H.J. Lu  <hjl@gnu.org>
1391
1392         * NEWS: Updated for the new -n option for the MIPS assembler.
1393
1394         * config/tc-mips.c (md_show_usage): Add -n.
1395
1396         * doc/as.texinfo: Document the new -n option.
1397         * doc/c-mips.texi: Likewise.
1398         * doc/as.1: Regenerated.
1399
1400 2001-06-10  Alan Modra  <amodra@bigpond.net.au>
1401
1402         * config/obj-coff.c (obj_coff_section): Formatting fix.
1403
1404         * config/tc-i386.c (md_assemble): Accept branch hints as ",pt" and
1405         ",pn".
1406
1407 2001-06-08  H.J. Lu  <hjl@gnu.org>
1408
1409         * config/tc-mips.c (warn_nops): New variable. Set to 0 to
1410         disable warning about all NOPS that the assembler generates.
1411         (macro): Warn NOPS generated only if warn_nops is not 0.
1412         (md_shortopts): Add `n'.
1413         (md_parse_option): Set warn_nops to 1 for `n'.
1414
1415 2001-06-08  H.J. Lu  <hjl@gnu.org>
1416
1417         * config/tc-mips.c (mips_ip): Properly handle illegal operands.
1418
1419 2001-06-08  H.J. Lu  <hjl@gnu.org>
1420
1421         * config/tc-mips.c (md_apply_fix): Don't adjust common
1422         extern/weak symbols for ELF.
1423         (md_estimate_size_before_relax): Treat weak like extern for
1424         ELF.
1425         (mips_fix_adjustable): Don't adjust extern/weak symbols for
1426         ELF.
1427
1428 2001-06-08  Alan Modra  <amodra@bigpond.net.au>
1429
1430         * Makefile.am: 'som' is not wrongly spelled 'some'.
1431         * Makefile.in: Regenerate.
1432
1433         * config/tc-mips.c (mips16_mark_labels): Reduce number of calls to
1434         S_GET_VALUE by using a temp.
1435         (append_insn): Likewise, and for S_SET_VALUE too.
1436         (mips_emit_delays): Likewise.
1437         (my_getExpression): Likewise.
1438         (md_apply_fix): Likewise.  Use "valueT" rather than "long" for "value".
1439         (mips16_extended_frag): Remove code concerned with avoiding
1440         locking in a frag address now that symbols are not finalized until
1441         relaxation is complete.  Cater for first relaxation pass having
1442         bogus addresses.  Use relax_marker to reliably determine whether a
1443         symbol frag has been reached on the current pass.
1444
1445 2001-06-07  H.J. Lu  <hjl@gnu.org>
1446
1447         * configure.in: Move "mips-*-linux-gnu*" before "mips-*-gnu*".
1448         * configure: Regenerate.
1449
1450 2001-06-07  H.J. Lu  <hjl@gnu.org>
1451
1452         * configure.in: Use MIPS_STABS_ELF for Linux/mips and remove
1453         ecoff emulation.
1454         * configure: Regenerate.
1455
1456 2001-06-07  H.J. Lu  <hjl@gnu.org>
1457
1458         * config/tc-mips.c (mips_pseudo_table): Add "extern" if
1459         MIPS_STABS_ELF is defined.
1460
1461 2001-06-06  Nick Clifton  <nickc@cambridge.redhat.com>
1462
1463         * as.c (show_usage): Remove L from listing options.  It is not a
1464         generic option.
1465
1466 2001-06-06  Christian Groessler <cpg@aladdin.de>
1467
1468         * config/tc-z8k.c: Removed many warnings by removing unused
1469         variables and tagging unused parameters as such.
1470         (md_begin): Fixed a typo (","instead of ";").
1471         (struct ctrl_table): Add parentheses to initialize array
1472         correctly.
1473         (struct flag_table): Likewise.
1474         (struct intr_table): Likewise.
1475         (struct table): Likewise.
1476         (check_operand): "#if 0"'ed since it doesn't seem to be used.
1477
1478 2001-06-06  Peter Jakubek <pjak@snafu.de>
1479
1480         * config/tc-m68k.c (md_show_usage): Add all supported ColdFire
1481         options to list (e.g. m5206e, m5307, m5407).
1482
1483 2001-06-06  Martin Schwidefsky <schwidefsky@de.ibm.com>
1484
1485         * config/tc-s390.h (TC_FORCE_RELOCATION): Always emit relocations
1486         BFD_RELOC_VTABLE_INHERIT and BFD_RELOC_VTABLE_ENTRY.
1487
1488 2001-06-06  Alan Modra  <amodra@bigpond.net.au>
1489
1490         * config/tc-i386.c (md_assemble): Handle Pentium4 branch hints.
1491         <JumpByte, JumpDword insn output>: Remove dead code.
1492
1493 2001-06-06  Tracy Kuhrt <Tracy.Kuhrt@microchip.com>
1494
1495         * as.c (parse_args): Correct option name "listing-lhs-width2".
1496
1497 2001-06-05  Nick Clifton  <nickc@cambridge.redhat.com>
1498
1499         * symbols.c (S_SET_EXTERNAL): Do not override a section symbol's
1500         status.
1501
1502 2001-05-30  Richard Henderson  <rth@redhat.com>
1503
1504         * read.c (emit_leb128_expr): Call md_cons_align.
1505
1506 2001-05-28  Jeff Sturm  <jsturm@one-point.com>
1507
1508         * config/tc-sparc.c (md_apply_fix3): Handle BFD_RELOC_SPARC_UA16,
1509         BFD_RELOC_SPARC_UA32 and BFD_RELOC_SPARC_UA64.
1510         (tc_gen_reloc): Likewise.
1511         (sparc_cons_align): Don't clear sparc_no_align_cons.
1512         (cons_fix_new_sparc): Substitute BFD_RELOC_SPARC_UA{16|32|64} for
1513         BFD_RELOC_{16|32|64} iff sparc_no_align_cons is set.
1514
1515 2001-05-27  Alan Modra  <amodra@one.net.au>
1516
1517         * write.c (relax_segment <rs_space>): Check the section of a
1518         symbol to determine whether it is absolute rather than comparing
1519         its frag against zero_address_frag as listings play tricks with
1520         frags.
1521
1522         * config/tc-m68k.c (md_assemble): Ensure variable part of frag is
1523         allocated in the same chunk as the fixed part.
1524
1525 2001-05-26  Alan Modra  <amodra@one.net.au>
1526
1527         * write.c (relax_segment <rs_space>): Calculate growth using
1528         addresses before stretch.  Prevent repeated error messages.
1529         From Peter Jakubek  <pjak@snafu.de>
1530         Use as_bad_where and as_warn_where to pinpoint errors.
1531
1532 2001-05-25  Alan Modra  <amodra@one.net.au>
1533
1534         * symbols.c (resolve_symbol_value): Always set segment, even when
1535         not finalizing symbol value.
1536
1537         * config/obj-ieee.c (write_object_file): Set finalize_syms.
1538         * config/obj-coff.c (write_object_file): Likewise.
1539         * (size_section): Remove rs_space assert as fr_symbol is no longer
1540         removed.
1541         (fill_section): Likewise.
1542
1543         * configure.in: Replace linuxoldld with linux*oldld.
1544         * configure: Regenerate.
1545
1546         From 2.11 branch 2001-03-30  Richard Henderson  <rth@redhat.com>
1547         * config/tc-i386.c (md_convert_frag): Don't die on local symbols
1548         that have been finalized.
1549
1550         * symbols.c (resolve_symbol_value): Clear sy_resolving before
1551         taking exit_dont_set_value.
1552
1553         * write.c (relax_segment <rs_space>): Don't zap fr_symbol when
1554         relaxing.
1555
1556 2000-05-24  Tom Rix <trix@redhat.com>
1557
1558         * config/obj-coff.c (add_lineno): xcoff allows negative line
1559         numbers
1560         * config/tc-ppc.c (ppc_stabx): fix generated symbol
1561
1562 2001-05-24  Alan Modra  <amodra@one.net.au>
1563
1564         * write.c (write_object_file): Set finalize_syms = 1 before
1565         size_seg is called.
1566
1567 2001-05-23  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1568
1569         * config/tc-mips.c (ISA_HAS_64BIT_REGS): Add ISA_MIPS64 as 64 bit
1570         architecture, remove erraneous ISA_MIPS32.
1571         (md_show_usage): Add MIPS r12k support.
1572         (mips_cpu_info_table): Add MIPS r12k support.
1573
1574 2001-05-22  Alan Modra  <amodra@one.net.au>
1575
1576         * config/tc-arc.c (md_assemble): Use is_end_of_line instead of
1577         testing for NULs.
1578
1579         * symbols.c (resolve_symbol_value): Remove "finalize" param,
1580         instead use finalize_syms directly.  Don't treat expressions
1581         specially with regard to finalize_syms.  Update calls to self.
1582         (resolve_local_symbol): Update call to resolve_symbol_value.
1583         (S_GET_VALUE): Likewise.  Return resolve_symbol_value if
1584         !finalize_syms.
1585         * symbols.h (resolve_symbol_value): Update prototype.
1586         * config/obj-aout.c (obj_crawl_symbol_chain): Update call
1587         to resolve_symbol_value.
1588         * config/obj-bout.c (obj_crawl_symbol_chain): Likewise.
1589         * config/obj-coff.c (do_relocs_for): Likewise.
1590         (yank_symbols): Likewise.
1591         (fixup_segment): Likewise.
1592         * config/obj-vms.c (obj_crawl_symbol_chain): Likewise.
1593         * config/tc-mips.c (md_convert_frag): Likewise.
1594         * config/tc-ppc.c (ppc_frob_symbol): Likewise.
1595         (ppc_fix_adjustable): Likewise.
1596         * dwarf2dbg.c (dwarf2dbg_estimate_size_before_relax): Likewise.
1597         (dwarf2dbg_convert_frag): Likewise.
1598         * ehopt.c (eh_frame_estimate_size_before_relax): Likewise.
1599         (eh_frame_convert_frag): Likewise.
1600         * expr.c (make_expr_symbol): Likewise.
1601         * write.c (adjust_reloc_syms): Likewise.
1602         (write_object_file): Likewise.
1603         (relax_segment): Likewise.
1604         (fixup_segment): Likewise.
1605         (finalize_syms): Init to zero, and update comment.
1606         (write_object_file): Set finalize_syms to 1 rather than 2.
1607         * doc/internals.texi (sy_value): Mention finalize_syms.
1608         (S_GET_VALUE): Remove restriction on when S_GET_VALUE can be called.
1609
1610         * config/tc-m68k.c (relaxable_symbol): Only treat external symbols
1611         as relaxable if embedded system, make weak syms non-relaxable.
1612         Move definition..
1613         (tc_m68k_fix_adjustable): ..so it can be used here.
1614         (md_apply_fix_2): Sign extend without conditional.
1615
1616         * config/tc-v850.c: Update copyright.
1617
1618 2001-05-16  Jeff Johnston  <jjohnstn@redhat.com>
1619
1620         * cgen.c (gas_cgen_tc_gen_reloc): Changed error message when
1621         howto entry is not found.
1622
1623 2001-05-15  Alexandre Oliva  <aoliva@redhat.com>
1624
1625         * config/tc-mn10300.c (mn10300_force_relocation): Don't
1626         optimize differences between symbols in code sections to
1627         constants.
1628         (mn10300_fix_adjustable): Don't adjust to section+offset
1629         relocations pointing at symbols in code sections.
1630
1631 2001-05-16  Alan Modra  <amodra@one.net.au>
1632
1633         * config/tc-arc.c (md_assemble): Correct dwarf2_emit_insn param
1634         for 8 byte insns.
1635         * config/tc-i386.c (md_assemble): Call dwarf2_emit_insn before
1636         opcodes are output rather than after.  Delete insn_size.
1637         * config/tc-v850.c (md_assemble): Similarly, but delete
1638         total_insn_size.
1639
1640 2001-05-14  Richard Henderson  <rth@redhat.com>
1641
1642         * ehopt.c (eh_frame_convert_frag): Fix missed subtype adjustment
1643         last change.
1644
1645 2001-05-14  Richard Henderson  <rth@redhat.com>
1646
1647         * ehopt.c (get_cie_info): Rename from eh_frame_code_alignment;
1648         also collect whether to expect an FDE augmentation.
1649         (check_eh_frame): Rewrite as a state machine.  Track where in
1650         an FDE we are located, skip any augmentation.
1651         (eh_frame_estimate_size_before_relax): Get code alignment from
1652         the fragment subtype.
1653         (eh_frame_relax_frag, eh_frame_convert_frag): Likewise.
1654         * read.c (emit_leb128_expr): Call check_eh_frame.
1655
1656 2001-05-14  Alexandre Oliva  <aoliva@redhat.com>
1657
1658         * config/tc-mn10300.c (md_assemble): Anchor dwarf2 line info
1659         before a relaxable insns.
1660
1661 2001-05-13  Alexandre Oliva  <aoliva@redhat.com>
1662
1663         * config/tc-mn10300.c (tc_gen_reloc): Don't reject differences
1664         between symbols if the base symbol is in the current section;
1665         emit a PC-relative relocation instead.
1666
1667 2001-05-12  Peter Targett  <peter.targett@arccores.com>
1668
1669         * config/tc-arc.c: Update copyright and tidy source comments.
1670         (md_pseudo_table): Add directive .cpu back as an alias for
1671         .option.  Add .file and .line for dwarf2 support.
1672         (arc_mach_type): Make bfd_mach_arc_6 default.
1673         (md_longopts): Add entry 'pre-v6' representing old command line
1674         option when assembling for 'arc5' core versions.
1675         (md_parse_option): Make OPTION_ARC same as OPTION_ARC6, for new
1676         default behaviour.
1677         (arc_code_symbol): Make symbol value for @h30 fixup expression
1678         equal to O_constant.
1679         (md_assemble): Call dwarf2_emit_insn.
1680         Include "dwarf2dbg2.h".  Formatting fixes throughout file.
1681         * config/tc-arc.h (DWARF2_LINE_MIN_INSN_LENGTH): Define.
1682         * doc/c-arc.texi (ARC_CORE_DEFAULT): Update to new default.
1683
1684 2001-05-11  Jakub Jelinek  <jakub@redhat.com>
1685
1686         * config/tc-ia64.c (special_linkonce_name): New.
1687         (make_unw_section): Map .gnu.linkonce.t.FOO text section into
1688         .gnu.linkonce.ia64unw{,i}.FOO.
1689         (ia64_elf_section_type): Handle .gnu.linkonce.ia64unw{,i}.FOO.
1690         (dot_endp): Add comment about it.
1691
1692 2001-05-11  Nick Clifton  <nickc@cambridge.redhat.com>
1693
1694         * config/tc-arm.c (arm_handle_align): When truncating an aligned
1695         block, ensure that the low order bits of the alignment are
1696         preserved.
1697
1698 2001-05-10  Alan Modra  <amodra@one.net.au>
1699
1700         * config/obj-vms.c (obj_crawl_symbol_chain): Don't take address of
1701         symbol_next.
1702
1703         * config/tc-fr30.c (md_estimate_size_before_relax): Return size of
1704         current variable part of frag.
1705         * config/tc-m32r.c (md_estimate_size_before_relax): Likewise.
1706         * config/tc-openrisc.c (md_estimate_size_before_relax): Likewise.
1707         * config/tc-m68hc11.c (RELAX_STATE): Define.
1708         (RELAX_LENGTH): Define.
1709         (md_estimate_size_before_relax): Handle non-relaxable cases
1710         separately from relaxable cases for clarity, and return correct
1711         size for multi-pass relaxation.
1712         * config/tc-tahoe.c (RELAX_LENGTH): Correct.
1713         (md_estimate_size_before_relax): As for tc-m68hc11.c.
1714         (md_convert_frag): Remove "length_code".
1715         * config/tc-vax.c (RELAX_STATE): Define.
1716         (RELAX_LENGTH): Define.
1717         (md_relax_table): Add missing entry.
1718         (md_estimate_size_before_relax): As for tc-m68hc11.c.
1719         (md_convert_frag): Remove "length_code".
1720         * config/tc-ns32k.c (md_estimate_size_before_relax): Simplify and
1721         don't bother setting fr_var.  Return correct size for multi-pass
1722         relaxation.
1723         * config/tc-v850.c (md_estimate_size_before_relax): Rewrite.
1724         (md_convert_frag): Don't bother clearing fr_var.
1725         (md_pseudo_table): Correct initialization.
1726         * config/tc-h8500.c (md_convert_frag): Don't bother clearing fr_var.
1727         (md_estimate_size_before_relax): No need to set fr_var.
1728         * config/tc-mcore.c (md_convert_frag): Don't bother clearing fr_var.
1729         (md_estimate_size_before_relax): No need to set fr_var.
1730
1731 2001-05-09  Richard Henderson  <rth@redhat.com>
1732
1733         * config/tc-ia64.c (generate_unwind_image): Align the fragment
1734         beginning a function's unwind info block.
1735
1736 2001-05-09  Alexandre Oliva  <aoliva@redhat.com>
1737
1738         * config/tc-mn10300.c (md_apply_fix3): Accept PC-relative relocs.
1739
1740 2001-05-08  Andreas Schwab  <schwab@suse.de>
1741
1742         * config/tc-m68k.c: Instead of replacing -1 by 64 in assignment to
1743         fx_pcrel_adjust explicitly sign extend when reading it.
1744
1745 2001-05-08  Alan Modra  <amodra@one.net.au>
1746
1747         * config/tc-m68k.c (md_estimate_size_before_relax): Set fr_var
1748         from md_relax_table, and combine some switch cases.
1749
1750 2001-05-06  Alexandre Oliva  <aoliva@redhat.com>
1751
1752         * config/tc-mn10300.c (md_assemble): Subtract operand->shift
1753         from offset in non-pcrel operands too.
1754
1755 2001-05-06  Nick Clifton  <nickc@cambridge.redhat.com>
1756
1757         * config/tc-arm.h (MAX_MEM_FOR_RS_ALIGN_CODE): Define.
1758         * config/tc-arm.c (arm_handle_align): Do not insert more than
1759         MAX_MEM_FOR_RS_ALIGN_CODE bytes.
1760         (arm_frag_align_code): Use MAX_MEM_FOR_RS_ALIGN_CODE.
1761
1762 2001-05-03  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1763
1764         * Makefile.am (TARG_ENV_HFILES): Add te-hppa64.h and te-hppalinux64.h.
1765         Run "make dep-am".
1766         * Makefile.in: Regenerate.
1767         * configure.in: Remove duplicate mips-*-ecoff* entry.
1768         * configure: Regenerate.
1769
1770         * config/obj-ecoff.c (obj_pseudo_table): Fix terminating entry.
1771         (n_names): Cast away type mismatch.
1772         (ecoff_sec_sym_ok_for_reloc): Add unused attribute.
1773         (obj_ecoff_frob_symbol): Likewise.
1774         * ecoff.c: (add_file): Add unused attribute.
1775         (ecoff_directive_begin): Likewise.
1776         (ecoff_directive_bend): Likewise.
1777         (ecoff_directive_def): Likewise.
1778         (ecoff_directive_dim): Likewise.
1779         (ecoff_directive_scl): Likewise.
1780         (ecoff_directive_size): Likewise.
1781         (ecoff_directive_type): Likewise.
1782         (ecoff_directive_tag): Likewise.
1783         (ecoff_directive_val): Likewise.
1784         (ecoff_directive_endef): Likewise.
1785         (ecoff_directive_end): Likewise.
1786         (ecoff_directive_ent): Likewise.
1787         (ecoff_directive_extern): Likewise.
1788         (ecoff_directive_file): Likewise.
1789         (ecoff_directive_fmask): Likewise.
1790         (ecoff_directive_frame): Likewise.
1791         (ecoff_directive_mask): Likewise.
1792         (ecoff_directive_loc): Likewise.
1793         (mark_stabs): Likewise.
1794         (ecoff_stab):  Likewise.
1795         (ecoff_frob_symbol): Cast away type mismatch.
1796         (ecoff_padding_adjust): Likewise.
1797         (ecoff_build_symbols): Likewise.
1798         (ecoff_build_procs): Likewise.
1799         (ecoff_build_aux): Likewise.
1800         (ecoff_build_strings): Likewise.
1801         (ecoff_build_fdr): Likewise.
1802         (ecoff_build_debug): Likewise.
1803         * itbl-ops.c (itbl_assemble): Variable initialization.
1804
1805 2001-05-03  Alan Modra  <amodra@one.net.au>
1806
1807         * config/tc-i386.c (i386_displacement): Call as_bad for bad GOTOFF
1808         expressions rather than triggering an assert.
1809
1810 2001-05-02  Johan Rydberg  <jrydberg@opencores.org>
1811
1812         * config/tc-openrisc.c: New file.
1813         * config/tc-openrisc.h: Likewise.
1814
1815         * Makefile.am: Add OpenRISC target.
1816         * Makefile.in: Regenerated.
1817
1818         * configure.in (openrisc-*-*): Add target.
1819         * configure: Regenerated.
1820
1821 2001-05-02  Nick Clifton  <nickc@cambridge.redhat.com>
1822
1823         * config/tc-arm.c (arm_frag_align_code): Change error message to
1824         more explanatory version.
1825
1826 2001-04-29  Keith M Wesolowski <wesolows@foobazco.org>
1827
1828         * config/tc-mips.c (md_parse_option): Also accept
1829         elf64-tradbigmips and elf64-tradlittlemips for OPTION_64.
1830
1831 2001-04-27  David Mosberger  <davidm@hpl.hp.com>
1832
1833         * config/tc-ia64.c (dot_spillmem_p): Fix output_spill_?sprel_p()
1834         argument passing order: predicate goes last, not first.
1835
1836 2001-04-27  Sean McNeil <sean@mcneil.com>
1837
1838         * configure.in: Add arm-vxworks.
1839         * configure: Regenerate.
1840
1841 2001-04-26  Nick Clifton  <nickc@cambridge.redhat.com>
1842
1843         * config/tc-arm.c (arm_handle_align): New Function:  Generate
1844         no-op filled alignment frags.
1845         (arm_frag_align_code): New Function: Create a code alignment frag.
1846         (arm_init_frag): New Function: Initialse the target dependent
1847         parts of a frag.
1848
1849         * config/tc-arm.h (TC_FRAG_TYPE): Define.
1850         (TC_FRAG_INIT): Define.
1851         (HANDLE_ALIGN): Define.
1852         (md_do_align): Define.
1853
1854 2001-04-25  Nick Clifton  <nickc@cambridge.redhat.com>
1855
1856         * config/obj-coff.c (do_linenos_for): Check to see if the filename
1857         symbol has been initialised before extracting its symbol index.
1858
1859 2001-04-24  H.J. Lu  <hjl@gnu.org>
1860
1861         * configure: Regenerated with the right version of autoconf.
1862
1863 2001-04-24  Christian Groessler  <cpg@aladdin.de>
1864
1865         * config/tc-z8k.c (build_bytes): 12 and 16 bit displacements now
1866         generate R_CALLR and R_REL16 relocations
1867
1868 2000-04-20  Jason Eckhardt  <jle@redhat.com>
1869
1870         * config/tc-d10v.h (tc_frob_label): Update the symbol's frag
1871         since frag_now can change after d10v_cleanup is called.
1872
1873 2001-04-16  David O'Brien  <obrien@FreeBSD.org>
1874
1875         * configure.in: Add the em type for FreeBSD targets.
1876         * configure: Regenerate.
1877
1878 2001-04-14  Alexandre Oliva  <aoliva@redhat.com>
1879
1880         * struc-symbol.h (struct local_symbol): New TC_LOCAL_SYMFIELD_TYPE.
1881         * symbols.c (local_symbol_convert): Call TC_LOCAL_SYMFIELD_CONVERT.
1882
1883         * config/tc-mn10300.c (md_assemble): Simplify offset adjustment of
1884         pc-relative relocations not placed at the end of the instruction.
1885
1886 2001-04-13  Jim Wilson  <wilson@redhat.com>
1887
1888         * tc-ia64.c (is_conditional_branch): Return true for br, brl, and br.
1889         excluding br.i.
1890
1891 2001-04-13  Jakub Jelinek  <jakub@redhat.com>
1892
1893         * config/obj-elf.c (obj_elf_change_section): Add entsize argument,
1894         handle SHF_MERGE and SHF_STRINGS.
1895         (obj_elf_parse_section_letters): Set SHF_MERGE and SHF_STRINGS.
1896         (obj_elf_section): Allow additional argument specifying entity size.
1897         * write.c (adjust_reloc_syms): Keep relocations against local symbols
1898         in SEC_MERGE sections.
1899
1900 2001-04-12  Jason Merrill  <jason_merrill@redhat.com>
1901
1902         * dwarf2dbg.c (process_entries): Don't optimize redundant line notes.
1903
1904 2001-04-12  Alexandre Oliva  <aoliva@redhat.com>
1905
1906         * expr.c (operand): Pass &c to md_parse_name().
1907         * config/tc-ia64.h, config/tc-ppc.h, config/tc-tic54x.h: Adjust.
1908
1909 2001-04-07  Steven J. Hill  <sjhill@cotw.com>
1910
1911         * config/tc-mips.c: Support ELF64 for traditional MIPS targets.
1912
1913         * Makefile.am: (TARG_ENV_HFILES): Add tc-mips.h.
1914         * Makefile.in: Regenerated.
1915
1916         * configure.in: Use traditional MIPS targets for Linux/MIPS.
1917         * configure: Regenerated.
1918
1919 2001-04-06  Alexandre Oliva  <aoliva@redhat.com>
1920
1921         * config/tc-mn10300.c (xr_registers): Added `pc'.
1922
1923 2001-04-05  Alan Modra  <alan@linuxcare.com.au>
1924
1925         * configure.in: Add h8500-*-coff and h8500-*-rtems targets.
1926         * configure: Regenerate.
1927
1928         * config/tc-h8500.c (md_estimate_size_before_relax): Add missing
1929         cases, and always return size based on current fr_subtype.
1930         (md_begin): Move initialization of md_relax_table..
1931         (md_relax_table): ..to static initializer.  Set rlx_length for
1932         UNDEF_WORD_DISP cases.
1933         * config/tc-w65.c (md_estimate_size_before_relax): Likewise.
1934         (md_begin): Likewise.
1935         (md_relax_table): Likewise.
1936         * config/tc-mcore.c (md_estimate_size_before_relax): Likewise.
1937         (md_relax_table): Set rlx_length for UNDEF_WORD_DISP cases.
1938         Set rlx_backward and rlx_forward to zero for unused states.
1939         * config/tc-sh.c (md_estimate_size_before_relax): Likewise.
1940         (md_relax_table): Set rlx_length for UNDEF_WORD_DISP cases.
1941         (UNCOND12, UNCOND32): Remove duplicate defines.
1942
1943 2001-04-04  Hans-Peter Nilsson  <hp@axis.com>
1944
1945         * config/tc-cris.c (md_estimate_size_before_relax) <case
1946         ENCODE_RELAX (STATE_CONDITIONAL_BRANCH, STATE_UNDF)>: Don't emit
1947         32-bit branch, just set fragP->fr_subtype.  Set fragP->fr_var.
1948         <all cases>: Always set fragP->fr_var using md_cris_relax_table.
1949         Add cases to cover all relax states.
1950         (cris_insn_first_word_frag): New.
1951         (md_assemble): Call cris_insn_first_word_frag to get the first
1952         frag in an insn, not frag_more.  Don't call dwarf2_emit_insn at
1953         end.  Drop variable insn_size.
1954         (gen_bdap): Call cris_insn_first_word_frag, not frag_more.
1955         (cris_sym_leading_underscore): Wrap first as_bad parameter in _().
1956         (cris_sym_no_leading_underscore, s_cris_file, s_cris_loc): Ditto.
1957
1958         * write.c (write_object_file): Reset broken word state before
1959         calling relax_seg.
1960
1961 2001-03-31  Alan Modra  <alan@linuxcare.com.au>
1962
1963         * listing.c (listing_listing): Enable listing on EDICT_NOLIST_NEXT
1964         for one line if not already enabled.
1965         * cond.c (s_elseif): Correct conditional assembly listing.
1966         (s_else): Likewise.
1967
1968         * cond.c (s_endif): Correct handling of "if .. elseif .." trees.
1969         Don't abort on NULL current_cframe.
1970
1971 2001-03-30  Alan Modra  <alan@linuxcare.com.au>
1972
1973         * dwarf2dbg.c (dwarf2_directive_file): Fix warnings.
1974         (dwarf2dbg_convert_frag): Pass `finalize_syms' to resolve_symbol_value.
1975         * config/obj-aout.c (obj_crawl_symbol_chain): Likewise.
1976         * config/obj-bout.c (obj_crawl_symbol_chain): Likewise.
1977         * config/obj-coff.c (do_relocs_for): Likewise.
1978         (yank_symbols): Likewise.
1979         (fixup_segment): Likewise.
1980         * config/tc-ppc.c (ppc_frob_symbol): Likewise.
1981         (ppc_fix_adjustable): Likewise.
1982         * config/tc-mips.c (md_convert_frag): Likewise.
1983         * config/obj-vms.c (obj_crawl_symbol_chain): Likewise.
1984         * ehopt.c (eh_frame_convert_frag): Likewise.
1985         * expr.c (make_expr_symbol): Likewise.
1986
1987         * frags.h (struct frag): Add last_fr_address.  Reorder fields for
1988         better packing.
1989         * symbols.c (resolve_symbol_value): Don't fix expression values
1990         until relaxation is complete.
1991         (resolve_local_symbol): Pass `finalize_syms' to resolve_symbol_value.
1992         (S_GET_VALUE): Likewise, and return unresolved expression value.
1993         * write.c (finalize_syms): New.
1994         (relax_and_size_seg): Split into..
1995         (relax_seg): New function, returns 1 if anything changed..
1996         (size_seg): And the remainder of relax_and_size_seg.
1997         (fixup_segment): Arrange for final resolution of sym values.
1998         (adjust_reloc_syms): Likewise.
1999         (write_object_file): Likewise, and repeatedly call relax_seg until
2000         nothing more changes.
2001         (relax_segment): Return 1 if anything changed.  Use correct types
2002         for rs_org `target' and `after'.
2003         * write.h (finalize_syms): Declare.
2004         (relax_segment): Update prototype.
2005
2006         * config/tc-sh.c (md_estimate_size_before_relax): Add extra
2007         do-nothing cases to switch to avoid abort on a second relaxation
2008         pass, and tidy code a little.
2009         * config/tc-cris.c (md_estimate_size_before_relax): Likewise.
2010         * config/tc-h8500.c (md_estimate_size_before_relax): Likewise.
2011         * config/tc-w65.c (md_estimate_size_before_relax): Likewise.
2012         * config/tc-i386.c (UNCOND_JUMP, COND_JUMP, COND_JUMP86): Decrement.
2013         (md_relax_table): Remove first four unused entries.  Increment
2014         rlx_length by one throughout table, and update comments to suit.
2015         (md_estimate_size_before_relax): Return size of current variable
2016         part of frag to reflect reality when relaxing more than once.
2017         * config/tc-mcore.c (COND12, UNCD12): Rename to DISP12 throughout.
2018         (COND32, UNCD32): Rename to DISP32 throughout.
2019         (UNDEF_WORD_DISP): Renumber to 3.
2020         (md_estimate_size_before_relax): Add extra do-nothing cases.
2021         * config/tc-mn10200.c (md_estimate_size_before_relax): Rewrite.
2022         * config/tc-mn10300.c (md_estimate_size_before_relax): Rewrite.
2023         * config/tc-ns32k.c (md_estimate_size_before_relax): Add cases to
2024         handle word and dword branches.
2025
2026 2001-03-29  Hans-Peter Nilsson  <hp@axis.com>
2027
2028         * config/tc-cris.h (tc_fix_adjustable): Allow only
2029         BFD_RELOC_CRIS_32_GOTREL of the PIC relocs.
2030         * config/tc-cris.c (cris_get_pic_suffix): Correct reloc type in
2031         example in comment to valid type.
2032
2033 2001-03-28  H.J. Lu  <hjl@gnu.org>
2034
2035         * read.c (equals): Set to local for COFF only if it hasn't been
2036         defined before.
2037
2038 2001-03-28  Alan Modra  <alan@linuxcare.com.au>
2039
2040         * config/tc-hppa.c (DEFAULT_LEVEL): Define.
2041         (md_begin): Use it when setting default architecture.
2042
2043 2001-03-27  Nick Papadonis  <nick@coelacanth.com>
2044
2045         * read.c (equals): (for COFF) default symbols to being local.
2046
2047 2001-03-27  Hans-Peter Nilsson  <hp@axis.com>
2048
2049         * configure.in (cris-*-*): Change default emulation to criself.
2050         (cris-*-*aout*): New rule.
2051         * configure: Regenerate.
2052
2053 2001-03-26  Martin Schwidefsky  <schwidefsky@de.ibm.com>
2054
2055         * config/tc-s390.c (tc_s390_fix_adjustable): Add test for
2056         BFD_RELOC_390_GOTENT.
2057         * config/tc-s390.h (TC_RELOC_RTSYM_LOC_FIXUP): Add test for
2058         BFD_RELOC_390_GOTENT.
2059
2060 2001-03-26  Nick Clifton  <nickc@redhat.com>
2061
2062         * config/tc-s390.h (TC_FORCE_RELOCATION): Define.
2063         * config/tc-s390.c (s390_force_relocation): New function: Force
2064         relocations for VTINHERIT relocs.
2065
2066 2001-03-23  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
2067
2068         * doc/as.texinfo: Put @c man begin to generate the as man page.
2069         When generating man, define all the variables. Re-organize some
2070         options to obtain better indentation of man page.
2071         * doc/Makefile.am (MANCONF, TEXI2POD, POD2MAN): New variable.
2072         (as.1): Build from as.texinfo.
2073         * doc/Makefile.in: Regenerate.Index: binutils/Makefile.am
2074
2075 2001-03-25  Alan Modra  <alan@linuxcare.com.au>
2076
2077         * config/tc-i386.c (i386_scale): Accept an absolute expression for
2078         scale factor, and return the end of the expression.
2079         (i386_operand): Modify for above.
2080
2081 2001-03-23  Nick Clifton  <nickc@redhat.com>
2082
2083         * doc/as.texinfo: Document --listing-XXX command line switches.
2084         Explain why listings behave differently when -pipe is used.
2085
2086 2001-03-23  Richard Sandiford  <rsandifo@redhat.com>
2087
2088         * write.c (fix_new_exp): Print an error if passed a register.
2089
2090 2001-03-23  Hans-Peter Nilsson  <hp@axis.com>
2091
2092         * config/tc-cris.c: Tweak attribution.  Fix typos.  PIC support.
2093         (PIC_SUFFIX_CHAR): New macro.
2094         (cris_get_pic_suffix, cris_get_pic_reloc_size): New functions.
2095         (pic): New variable.
2096         (md_longopts): New option --pic.
2097         (OPTION_PIC): Define.
2098         (md_estimate_size_before_relax): Tweak longish comment.
2099         (md_create_long_jump): Make the long jumps generate ADD.D offset,PC.
2100         (md_assemble): Handle a PIC relocation on prefix and normal
2101         instruction operands.
2102         <output_instruction.insn_type == CRIS_INSN_BRANCH>: Handle
2103         "complex" operand expressions.  Call frag_more outside
2104         gen_cond_branch_32 parameter list.
2105         (cris_process_instruction): Handle PIC relocs on parsed
2106         operand expressions.  Validize PIC reloc sizes.
2107         (get_autoinc_prefix_or_indir_op): Handle PIC suffix.
2108         (gen_bdap): Handle "complex" operand expressions.
2109         (gen_cond_branch_32): Use as_warn_where, not as_warn.  Use
2110         ADD.D offset,PC as jump instruction if generating PIC.  Generate
2111         error instead of crashing on complex expressions.
2112         (cris_number_to_imm): Add segT parameter.  All callers changed.
2113         Use segT parameter, not now_seg, for segment of fixup.  Handle
2114         PCREL relocations but check that they are fully resolved.
2115         (md_parse_option): Handle OPTION_PIC.
2116         (tc_gen_reloc): Handle PIC relocs.
2117         (md_show_usage): Update for --pic.
2118         (md_apply_fix3): Renamed from md_apply_fix.
2119         (md_pcrel_from): Accept emitting PCREL relocs when ELF.
2120         (md_cris_force_relocation): Force relocation for PIC relocs.
2121
2122         * config/tc-cris.h: Tweak attribution.
2123         (MD_APPLY_FIX3): Define.
2124         (IS_CRIS_PIC_RELOC): New macro.
2125         (TC_RELOC_RTSYM_LOC_FIXUP): Define.
2126         (tc_fix_adjustable): Don't adjust a globally visible symbol when
2127         generating ELF.
2128         (tc_frob_symbol): Avoid emitting undefined symbols.
2129
2130 2001-03-20  Alan Modra  <alan@linuxcare.com.au>
2131
2132         * frags.h (struct frag): Add relax_marker.
2133         * write.c (is_dnrange): Delete.
2134         (relax_frag): Use correct types for `aim', `target', `address'.
2135         Delete `offset', `was_address'.  Test `relax_marker' instead of
2136         using fragile (and slow) address test.
2137         (relax_segment): Init and flip `relax_marker'.
2138
2139 2001-03-19  Alan Modra  <alan@linuxcare.com.au>
2140
2141         * config/tc-i386.c (md_assemble <REGISTER_WARNINGS>): Correct
2142         used register name.
2143
2144 2001-03-18  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
2145
2146         * config/tc-m68hc11.c (md_pseudo_table): Recognize xrefb to comply
2147         with 'Motorola specification for assembly language input standard'.
2148
2149 2001-03-17  Richard Henderson  <rth@redhat.com>
2150
2151         * dwarf2dbg.c (user_filenum, user_filenum_allocated): Remove.
2152         (dwarf2_directive_loc): Don't use them.
2153         (dwarf2_directive_file): Reject duplicate file definitions.
2154         (get_filenum): Zero allocated memory.
2155         (out_file_list): Complain about missing file definitions.
2156
2157 2001-03-17  Alan Modra  <alan@linuxcare.com.au>
2158
2159         * read.c (do_org): Handle complex expressions.
2160         * cgen.c (gas_cgen_finish_insn): Likewise.
2161
2162 2001-03-15  David Mosberger  <davidm@hpl.hp.com>
2163
2164         * config/tc-ia64.c (md): New member keep_pending_output.
2165         (ia64_flush_pending_output): Flush only if md.keep_pending_output
2166         is not set.
2167         (dot_xdata): Turn on md.keep_pending_output for the duration of
2168         this function.
2169         (dot_xfloat_cons): Ditto.
2170         (dot_xstringer): Ditto.
2171         (dot_xdata_ua): Ditto.
2172         (dot_xfloat_cons_ua): Ditto.
2173
2174 2001-03-15  Jim Wilson  <wilson@redhat.com>
2175
2176         * config/tc-ia64.c (ia64_unrecognized_line, case '['): Add local
2177         label support.
2178
2179 2001-03-15  Alexandre Oliva  <aoliva@redhat.com>
2180
2181         * config/tc-sh.c (parse_reg): Match capital MACH and MACL.
2182
2183 2001-03-15  DJ Delorie  <dj@redhat.com>
2184
2185         * stabs.c (s_stab_generic): Don't corrupt the notes obstack by
2186         blindly freeing string if it isn't at the top of the obstack.
2187
2188 2001-03-13  Alan Modra  <alan@linuxcare.com.au>
2189
2190         * config/tc-i386.c (RELOC_ENUM): Define.  Use throughout file.
2191         (NUM_FLAG_CODE): Define.
2192         (lex_got): New function.
2193         (got_reloc): New global var.
2194         (x86_cons_fix_new): New function.
2195         (x86_cons): New function.
2196         (i386_immediate): Use lex_got here, replacing inline code.  Change
2197         "ignoring junk.." error message to "junk.."
2198         (i386_displacement): Likewise.
2199         * config/tc-i386.h (TC_PARSE_CONS_EXPRESSION): Define.
2200         (x86_cons): Declare.
2201         (TC_CONS_FIX_NEW): Define.
2202         (x86_cons_fix_new): Declare.
2203
2204 2001-03-12  Nick Clifton  <nickc@redhat.com>
2205
2206         * config/tc-arm.c (md_begin): Always set machine type based on
2207         cpu_variant.
2208
2209 2001-03-07  Alan Modra  <alan@linuxcare.com.au>
2210
2211         * config/tc-i386.c (struct _i386_insn): Rename disp_reloc to reloc.
2212         (md_assemble) <smallest displacement>: Use correct field of i.op[]
2213         union.
2214         <JumpInterSegment output>: Use correct i.disp_reloc[].
2215         <immediate output>: Likewise.
2216
2217 2001-03-06  Nick Clifton  <nickc@redhat.com>
2218
2219         * config/tc-arm.c (md_apply_fix3): Clear bit zero of offset in
2220         BLX(1) instruction.
2221
2222 2001-03-06  Igor Shevlyakov  <igor@windriver.com>
2223
2224         * config/tc-m68k.c : Add 5407 to archs[] table.
2225         (HAVE_LONG_BRANCH): Add mcf5407.
2226         (select_control_regs): Recognize 5407.
2227
2228 2001-03-02  Dave Brolley  <brolley@redhat.com>
2229
2230         * config/tc-m32r.c (expand_debug_syms): Call frag_align_code rather
2231         than m32r_do_align.
2232
2233 2001-03-02  Richard Sandiford  <rsandifo@redhat.com>
2234
2235         * config/atof-ieee.c (TC_LARGEST_EXPONENT_IS_NORMAL): New macro.
2236         (gen_to_words): Print warnings if NaNs are found and the target CPU
2237         does not support them.  Allow largest exponent to be used in normal
2238         numbers if TC_LARGEST_EXPONENT_IS_NORMAL evaluates to true.
2239
2240 2001-02-28  Andreas Jaeger  <aj@suse.de>, Bo Thorsen  <bo@suse.de>
2241
2242         * config/tc-i386.c (tc_gen_reloc): Remove ugly hack which is not needed
2243         anymore since we use bfd_elf_generic_reloc now.
2244         (md_apply_fix3): Only apply hack for partial_inplace if not using RELA.
2245
2246 2001-02-27  Alan Modra  <alan@linuxcare.com.au>
2247
2248         * configure.in (BFD_VERSION): New.
2249         (AM_INIT_AUTOMAKE): Use $BFD_VERSION.
2250         * configure: Regenerate.
2251         * Makefile.am: Run "make dep-am"
2252         * Makefile.in: Regenerate.
2253         * doc/Makefile.in: Regenerate.
2254
2255 2001-02-26  Mark Elbrecht  <snowball3@bigfoot.com>
2256
2257         * config/obj-coff.c [BFD_ASSEMBLER] (obj_coff_section): Set
2258         SEC_NEVER_LOAD when the 'n' flag is used.
2259         Add SEC_NEVER_LOAD to matchflags.
2260
2261 2001-02-24  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
2262
2263         * symbols.c (decode_local_label_name): Initialize message_format
2264         only when an error is reported (perf pb due to I18N).
2265
2266 2001-02-23  H.J. Lu  <hjl@gnu.org>
2267
2268         * dwarf2dbg.c (dwarf2_directive_file): Call s_app_file (0) if
2269         BFD_ASSEMBLER is not defined.
2270
2271 2001-02-23  Richard Sandiford  <rsandifo@redhat.com>
2272
2273         * config/tc-mn10300.c (md_apply_fix3): Don't mark a fixup as
2274         done if it's against a symbol.
2275
2276 2001-02-22  Timothy Wall  <twall@cygnus.com>
2277
2278         * config/tc-ia64.c (ia64_target_format): Return ia64-aix-specific
2279         target formats if applicable.
2280         * config/te-ia64aix.h: New.  Configuration for AIX5 on IA-64.
2281         * Makefile.am (TARG_ENV_HFILES): Added config/te-ia64aix.h.
2282         * Makefile.in: Regenerated.
2283         * configure.in: Added configuration for ia64-*-aix*.
2284         * configure: Regenerated.
2285
2286 2001-02-21  David Mosberger  <davidm@hpl.hp.com>
2287
2288         * config/tc-ia64.c (enum operand_match_result): New type.
2289         (operand_match): Change return type to operand_match_result.
2290         Fix all returns appropriately, adding support for returning the
2291         out-of-range result.
2292         (parse_operands): New locals result, error_pos, out_of_range_pos,
2293         curr_out_of_range_pos.  Rewrite operand matching loop to give better
2294         error messages.
2295
2296 2001-02-21  David Mosberger  <davidm@hpl.hp.com>
2297
2298         * config/tc-ia64.c (struct unwind): Add member "prologue_count".
2299         (dot_proc): Clear unwind.prologue_count to zero.
2300         (dot_prologue): Increment unwind.prologue_count.
2301         (dot_restore): If second operand is omitted, use
2302         unwind.prologue_count -1 for "ecount" (# of additional regions to
2303         pop).  Decrement unwind.prologue_count by number of regions
2304         popped.
2305
2306 2001-02-21  Nick Clifton  <nickc@redhat.com>
2307
2308         * doc/as.texinfo (Section): Note that some flags to the COFF
2309         version of .section remove attributes rather than setting them.
2310
2311 2001-02-20  Kazu Hirata  <kazu@hxi.com>
2312
2313         * config/tc-pdp11.c: Fix formatting.
2314         * config/tc-pdp11.h: Likewise.
2315
2316 2001-02-20  Bo Thorsen  <bo@suse.de>
2317
2318         * config/tc-i386.c (tc_i386_fix_adjustable): Fix GOTPCREL GOT
2319         entry.
2320
2321 2001-02-18  David O'Brien  <obrien@FreeBSD.org>
2322
2323         * configure.in (cpu_type, arch): Add a generic FreeBSD specification as
2324         all FreeBSD platforms should look the same at this level.
2325         * configure: Rebuilt.
2326         * config/tc-i386.c: Add support for old FreeBSD a.out hosts.
2327
2328 2001-02-18  lars brinkhoff  <lars@nocrew.org>
2329
2330         * Makefile.am: Add PDP-11 target.
2331         * configure.in: Likewise.
2332         * config/tc-pdp11.c: New file.
2333         * config/tc-pdp11.h: New file.
2334         * doc/Makefile.am: Add PDP-11 documentation.
2335         * doc/all.texi: Likewise.
2336         * doc/as.texinfo: Likewise.
2337         * doc/c-pdp11.texi: New file.
2338
2339 2001-02-16  matthew green  <mrg@redhat.com>
2340
2341         * cgen.c (gas_cgen_md_apply_fix3): Support BFD_RELOC_64.
2342
2343 2001-02-13  Jim Wilson  <wilson@redhat.com>
2344
2345         * config/tc-ia64.c (operand_match, case TAG13): Make a BFD_RELOC_UNUSED
2346         reloc instead of a 0 reloc.
2347         (md_apply_fix3): Check for BFD_RELOC_UNUSED instead of 0, and mark it
2348         as done.
2349         * config/tc-ia64.h (TC_RELOC_RTSYM_LOC_FIXUP): Likewise.
2350
2351 2001-02-13  Ian Lance Taylor  <ian@zembu.com>
2352
2353         * write.c (is_dnrange): Stop as soon as the address becomes
2354         larger.
2355         (relax_frag): Add segment parameter.  Only call symbol_get_frag
2356         once.  Only call is_dnrange if the symbol is in the same segment,
2357         and the symbol address is larger.
2358         (relax_segment): Pass segment to md_relax_frag and relax_frag.
2359         * write.h (relax_frag): Update declaration.
2360         * config/tc-fr30.c (fr30_relax_frag): Add segment parameter.  Pass
2361         it to relax_frag.
2362         * config/tc-m32r.c (m32r_relax_frag): Likewise.
2363         * config/tc-m32r.h (md_relax_frag): Add segment parameter.
2364         (m32r_relax_frag): Update declaration.
2365         * config/tc-mips.h (md_relax_frag): Add segment parameter.
2366         * config/tc-tic54x.h (md_relax_frag): Likewise.
2367         * doc/internals.texi (CPU backend): Update documentation for
2368         md_relax_frag.
2369
2370 2001-02-13  Alan Modra  <alan@linuxcare.com.au>
2371
2372         * doc/c-i386.texi (i386-Arch): Add "jumps"/"nojumps" blurb.
2373         Mention effect of < 386 architectures on jump promotion.
2374         (i386-Jumps): xref above.  Don't assume long disp is 32 bits.
2375
2376         * config/tc-i386.c (no_cond_jump_promotion): New.
2377         (set_cpu_arch): Parse "jumps" arch modifier.
2378         (insn_size): Modify usage comment.
2379         (ENCODE_RELAX_STATE): Reformat and protect macro arg.
2380         (SIZE_FROM_RELAX_STATE): Rename to DISP_SIZE_FROM_RELAX_STATE.
2381         (TYPE_FROM_RELAX_STATE): New define.
2382         (UNCOND_JUMP, COND_JUMP): Renumber.
2383         (md_relax_table): Reorder to suit.
2384         (COND_JUMP86): New define.
2385         (md_relax_table): Handle COND_JUMP86 cases. Add a few comments.
2386         (md_assemble): Create frag var for jumps of max size, encode relax
2387         state for COND_JUMP86.
2388         (md_estimate_size_before_relax): Handle COND_JUMP86 cases, and
2389         leave conditional jumps small if no_cond_jump_promotion.
2390         (md_convert_frag): Likewise.
2391
2392         * expr.c (operator): Don't bump input_line_pointer for two char
2393         operators.  Instead return operator size via new param num_chars.
2394         (expr): Use above to parse multi-char operators correctly.
2395
2396 Mon Feb 12 17:45:50 CET 2001  Jan Hubicka  <jh@suse.cz>
2397
2398         * config/tc-i386.c (i386_displacement): Fix handling of
2399         BFD_RELOC_X86_64_GOTPCREL.
2400         (i386_validate_fix): Likewise.
2401
2402 2001-02-12  Philip Blundell  <pb@futuretv.com>
2403
2404         * config/tc-arm.c (do_ldst): Improve warnings for unpredictable
2405         ldrt/strt instructions.
2406
2407 2001-02-11  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>
2408
2409         * config/tc-mips.c (macro): For M_LA_AB emit a
2410         BFD_RELOC_MIPS_CALL16 relocation or a
2411         BFD_RELOC_MIPS_CALL_HI16/BFD_RELOC_MIPS_CALL_LO16 pair instead of
2412         BFD_RELOC_MIPS_GOT16 and
2413         BFD_RELOC_MIPS_GOT_HI16/BFD_RELOC_MIPS_GOT_LO16, respectively for
2414         loading the jump register when generating SVR4_PIC code.
2415
2416 2001-02-10  Chris Demetriou  <cgd@broadcom.com>
2417
2418         * configure.in: Make 'mipself' and 'mipsecoff' emulations
2419         map to MIPS-specific files, as they used to do before the
2420         change on 2000-05-21.
2421         * configure: Regerate.
2422
2423 2001-02-10  Chris Demetriou  <cgd@broadcom.com>
2424
2425         * config/tc-mips.c (md_parse_option): Don't try to compile
2426         ELF-only option code if not ELF.
2427
2428 2001-02-08  David Mosberger  <davidm@hpl.hp.com>
2429
2430         * config/tc-ia64.h (md_elf_section_type): New macro.
2431         (ELF_TC_SPECIAL_SECTIONS): Drop .IA_64.unwind and .IA_64.unwind_info
2432         (they're now handled via ia64_elf_section_type.
2433
2434         * config/tc-ia64.c (unwind): New members saved_text_seg,
2435         saved_text_subseg, and force_unwind_entry.
2436         (optimize_unw_records): New function to optimize away unnecessary
2437         unwind directives.
2438         (ia64_elf_section_type): New function.
2439         (output_unw_records): Generate unwind info only if the size is
2440         non-zero or if it's forced for some other reason (e.g.,
2441         handlerdata or a personality routine).
2442         (generate_unwind_image): Don't switch back to previous
2443         section---stay inside the unwind info section instead so that
2444         handlerdata that may follow goes into the right place.
2445         (dot_handlerdata): Force generation of unwind entry and save the
2446         current active text segment before generating unwind image.
2447         (dot_unwentry): Force generation of unwind entry.
2448         (dot_personality): Ditto.
2449         (dot_endp): Generate unwind table entry only if there is
2450         some unwind info or the unwind entry was forced.
2451
2452         * config/tc-ia64.c (make_unw_section_name): New macro to form
2453         unwind section name.
2454         (generate_unwind_image): Add "text_name" argument.  Use it to
2455         form unwind section name.
2456         (dot_handlerdata): Determine current segment (section) name and
2457         pass it to generate_unwind_image().
2458         (dot_endp): Determine current segment (section) name and use
2459         it to determine the appropriate unwind section name.
2460         (ia64_md_do_align): Add missing ATTRIBUTE_UNUSED declarations to
2461         n, fill, and max arguments.
2462
2463 2001-02-09  Schwidefsky  <schwidefsky@de.ibm.com>
2464
2465         * Makefile.am: Add linux target for S/390.
2466         * configure.in: Likewise.
2467         * config/tc-s390.c: New file.
2468         * config/tc-s390.h: New file.
2469
2470 2001-02-09  Alexandre Oliva  <aoliva@redhat.com>
2471
2472         * config/tc-sh.c (md_pseudo_table): Add uaquad.  Use s_uacons for
2473         2byte, 4byte and 8byte.
2474
2475 2001-02-08  Alan Modra  <alan@linuxcare.com.au>
2476
2477         * config/tc-hppa.c (pa_build_unwind_subspace): Don't call
2478         md_number_to_chars with size > sizeof (valueT).
2479
2480 2001-02-06  H.J. Lu  <hjl@gnu.org>
2481
2482         * config/tc-ia64.h (TC_RELOC_RTSYM_LOC_FIXUP): Do fixup if
2483         there is no relocation.
2484
2485 2001-02-06  H.J. Lu  <hjl@gnu.org>
2486
2487         * config/tc-ia64.h (TC_RELOC_RTSYM_LOC_FIXUP): New. Defined.
2488
2489         * config/tc-ia64.c (md_parse_option): Only accept the valid
2490         ia64 options on "-axxx".
2491
2492 2001-02-05  Jim Wilson  <wilson@redhat.com>
2493
2494         * config/tc-ia64.c (errata_nop_necessary_p): Return 0 instead of
2495         aborting for invalid operands.
2496
2497 2001-02-06  Alan Modra  <alan@linuxcare.com.au>
2498
2499         * config/tc-hppa.c (fix_new_hppa): Pass in unwind directly rather
2500         than via pointer.  Update all callers.
2501         (UNWIND_LOW32): Define.
2502         (UNWIND_HIGH32): Define.
2503         (pa_build_unwind_subspace): Use the above macros instead of dumping
2504         bitfields directly.  Call frag_more once rather than multiple times.
2505         (md_assemble): Use UNWIND_LOW32.
2506         (pa_entry): Likewise
2507         (pa_procend): Likewise.
2508         (process_exit): Use UNWIND_HIGH32.
2509
2510 2001-02-04  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
2511
2512         * config/tc-m68hc11.h (LISTING_HEADER): Use m68hc11_listing_header
2513         function to select the header according to the cpu.
2514         (md_after_pass_hook, md_do_align): Remove.
2515         (md_cleanup, m68hc11_cleanup): Remove.
2516         (md_pcrel_from_section): Declare.
2517         * config/tc-m68hc11.c (build_dbranch_insn): Remove insn_size.
2518         (build_jump_insn, build_insn): Likewise.
2519         (m68hc11_listing_header): New function.
2520         (m68hc11_cleanup): Remove.
2521
2522 2001-02-02  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
2523
2524         * config/tc-m68hc11.c (relaxable_symbol): Relax externally visible
2525         symbols because there is no support for shared libraries and these
2526         symbols can't be overridden (unless they are weak).
2527
2528 2001-02-01  Momchil Velikov  <velco@fadata.bg>
2529
2530         * dwarf2dbg.c (out_debug_abbrev): Terminate the abbreviations
2531         for the compilation unit with a zero byte.
2532
2533 2001-01-30  Alan Modra  <alan@linuxcare.com.au>
2534
2535         * config/tc-hppa.c (pa_ip): Support 12 bit branches to absolute
2536         destinations.  Correct range check for 17 and 22 bit branches.
2537
2538 2001-01-25  Nick Clifton  <nickc@redhat.com>
2539
2540         * config/tc-m68k.c (tc_gen_reloc): Do not abort if tcbit is
2541         still set.  Issue an error message instead.
2542         (md_estimate_size_before_relax): Delete unused variable
2543         'buffer_address'.  Fixup parentheses around if statement.
2544
2545 2001-01-23  Kazu Hirata  <kazu@hxi.com>
2546
2547         * as.c: Fix formatting.
2548         * ehopt.c: Likewise.
2549         * messages.c: Likewise.
2550         * stabs.c: Likewise.
2551         * symbols.c: Likewise.
2552
2553 2001-01-23  Ben Elliston  <bje@redhat.com>
2554
2555         * config/tc-m32r.c (m32r_handle_align): Declare type of fragp.
2556
2557 2001-01-22  Kazu Hirata  <kazu@hxi.com>
2558
2559         * config/tc-alpha.c: Fix formatting.
2560
2561 2001-01-19  Kazu Hirata  <kazu@hxi.com>
2562
2563         * config/tc-alpha.c: Fix formatting.
2564
2565 2001-01-18  Kazu Hirata  <kazu@hxi.com>
2566
2567         * config/tc-alpha.c: Fix formatting.
2568
2569 2001-01-18  Nick Clifton  <nickc@redhat.com>
2570
2571         * config/tc-arm.c (ldm_flags): Remove redundant bit from "fa" and
2572         "da" flags.
2573         (stm_flags): Remove redundant bit from "ed" and "da" flags.
2574
2575 2001-01-18  Alexandre Oliva  <aoliva@redhat.com>
2576
2577         * configure.in (cpu_type, arch): Match i386 too.
2578         * configure: Rebuilt.
2579
2580 2001-01-16  Kazu Hirata  <kazu@hxi.com>
2581
2582         * config/tc-i386.c: Fix formatting.
2583
2584 2001-01-16  Alan Modra  <alan@linuxcare.com.au>
2585
2586         * config/tc-hppa.c (tc_gen_reloc): Use SEGREL32 instead of DIR32
2587         relocs for .PARISC.unwind section.
2588
2589         * config/tc-hppa.c (pa_build_unwind_subspace): Build unwind
2590         depending on section flags, not just for .text.
2591
2592 2001-01-15  Jim Wilson  <wilson@redhat.com>
2593
2594         * config/tc-ia64.c (ia64_flush_insns): Handle unwind directives
2595         not immediately followed by an instruction.
2596
2597 2001-01-15  Kazu Hirata  <kazu@hxi.com>
2598
2599         * config/tc-m68hc11.c: Fix formatting.
2600
2601 2001-01-15  Nick Clifton  <nickc@redhat.com>
2602
2603         * symbols.c (colon): Change 'already defined symbol' from a
2604         fatal error to an ordinary error.  There is no reason why this
2605         error should be fatal.
2606
2607         * message.c (as_fatal): Delete output file, if one has been
2608         created.
2609
2610 2001-01-14  Alan Modra  <alan@linuxcare.com.au>
2611
2612         * config/tc-hppa.h (TARGET_FORMAT): Add hppa-linux variants.
2613
2614 2001-01-14  Kazu Hirata  <kazu@hxi.com>
2615
2616         * config/tc-alpha.c: Fix formatting.
2617         * config/tc-arc.c: Likewise.
2618         * config/tc-arc.h: Likewise.
2619         * config/tc-d10v.c: Likewise.
2620         * config/tc-i370.c: Likewise.
2621         * config/tc-i386.c: Likewise.
2622         * config/tc-i960.c: Likewise.
2623         * config/tc-m68k.c: Likewise.
2624         * config/tc-ppc.c: Likewise.
2625         * config/tc-sparc.c: Likewise.
2626         * config/tc-tahoe.c: Likewise.
2627         * config/tc-vax.c: Likewise.
2628
2629         * config/tc-arc.c: Fix formatting.
2630
2631         * config/tc-arc.c: Fix formatting.
2632
2633 2001-01-14  Alan Modra  <alan@linuxcare.com.au>
2634
2635         * config/tc-hppa.c (pa_build_unwind_subspace): Use SEGREL32 for
2636         both 32 and 64 bit ELF.
2637
2638         * config/tc-hppa.c (pa_ip): Store `a' flag in bit zero of operand
2639         and don't bother storing `m' for "ce" completer.  Tidy handling of
2640         'J' and 'K' operands to suit.  Handle '<' and '>' operands.
2641
2642 Sun Jan 14 00:36:42 MET 2001  Jan Hubicka  <jh@suse.cz>
2643
2644         * config/tc-i386.h (TARGET_MACH): New macro.
2645         (i386_mach): Declare.
2646         * config/tc-i386.c (i386_mach): New function.
2647
2648 2001-01-13  Philip Blundell  <philb@gnu.org>
2649
2650         * doc/as.texinfo: Fix spelling and cross-references.
2651
2652         * doc/c-arm.texi: Fix typos.  Say that `;' is a line separator
2653         character for all systems, not just GNU/Linux.  Make it explicit
2654         that `-k' doesn't affect code generation, just ELF flags.
2655
2656 Sat Jan 13 01:47:35 MET 2001  Jan Hubicka <jh@suse.cz>
2657
2658         * config/tc-i386.c (md_assemble): Check cpu_flags even for nullary
2659         instructions.
2660
2661 2001-01-12  Frank Ch. Eigler  <fche@redhat.com>
2662
2663         * cgen.c (gas_cgen_finish_insn): Call dwarf2_emit_insn.
2664
2665 2001-01-12  Nick Clifton  <nickc@redhat.com>
2666
2667         * as.c (print_args): Update copyright date to 2001.
2668
2669 2001-01-12  Peter Targett  <peter.targett@arccores.com>
2670
2671         * doc/c-arc.texi: New file.
2672         Some sections to be expanded.
2673
2674 2001-01-12  Alan Modra  <alan@linuxcare.com.au>
2675
2676         * config/tc-i386.c (md_longopts): Recognize "--64" only for ELF.
2677         (md_parse_option): Always accept "--32".
2678
2679 2001-01-11  Peter Targett  <peter.targett@arccores.com>
2680
2681         * as.h (TC_ARC): Ensure struc-symbol.h included.
2682         * as.c (dwarf2dbg.h): Include to remove implicit declaration
2683         warnings.
2684         * struc-symbol.h (SYMBOLS_NEED_BACKPOINTERS): Define.
2685         (TARGET_SYMBOL_FIELDS) added.
2686
2687         * doc/Makefile.am (CPU_DOCS): Added c-arc.texi.
2688         * doc/c-arc.texi: New file.
2689         Some sections to be expanded.
2690         * doc/as.texinfo: Update command-line options.
2691         Removed outdated text for ARC dependant features, instead include
2692         text from above file.
2693
2694         * config/obj-elf.h (ELF_TARGET_SYMBOL_FIELDS): Define local flag.
2695         (TARGET_SYMBOL_FIELDS): Alias to previous definition.
2696         (targ-cpu.h) header.
2697         * config/tc-arc.h:
2698         * config/tc-arc.c: New updated configuration for
2699         ARC, including selection of core variants, and extensibility of
2700         instructions, registers etc. through directives.
2701
2702         * config/tc-arc.c (arc_extinst): Minor corrections for
2703         error messages.
2704         (arc_common) Likewise. Make alignment argument optional for local
2705         symbols also, with default of zero.
2706
2707 2001-01-11  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
2708
2709         * config/tc-m68hc11.c (md_estimate_size_before_relax): Fix
2710         STATE_INDEXED_OFFSET when the symbol is undefined (16-bit offset).
2711         (build_indexed_byte): Don't relax indexed byte, use 16-bit offset
2712         and fix_new_exp() instead.
2713         (md_convert_frag): For indexed post byte use the symbol value
2714         rather than the displacement.
2715         (md_relax_table): Fix indexed offset relax.
2716
2717 2001-01-11  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
2718
2719         * config/tc-m68hc11.c (md_estimate_size_before_relax):Don't
2720         relax weak symbols.
2721         (relaxable_symbol): New function.
2722
2723 2001-01-11  Andreas Jaeger  <aj@suse.de>
2724
2725         * config/tc-i386.h (TC_RELOC_GLOBAL_OFFSET_TABLE): Removed, it's
2726         not used anywhere.
2727
2728 2001-01-10  Nick Clifton  <nickc@redhat.com>
2729
2730         * config/tc-arm.c (arm_fix_adjustable): Define for OBJ_COFF.
2731         * config/tc-arm.h (obj_fix_adjustable): Define for OBJ_COFF
2732
2733 2001-01-10  Nick Clifton  <nickc@redhat.com>
2734
2735         * symbols.c (DOLLAR_LABEL_CHAR): New constant - the magic
2736         character used to dollar local symbols.
2737         (LOCAL_LABEL_CHAR): New constant - the magic character used to
2738         local label symbols.
2739         (dollar_label_name): Use DOLLAR_LABEL_CHAR.
2740         (fb_label_name): Prefix local labels with LOCAL_LABEL_PREFIX,
2741         if defined.
2742         Use LOCAL_LABEL_CHAR.
2743         (decode_local_label_name): Skip LOCAL_LABEL_PREFIX.
2744         Use DOLLAR_LABEL_CHAR and LOCAL_LABEL_CHAR.
2745         (S_IS_LOCAL): Use DOLLAR_LABEL_CHAR and LOCAL_LABEL_CHAR.
2746
2747 2001-01-08  Bo Thorsen  <bo@suse.de>
2748
2749         * config/tc-i386.c (i386_immediate, i386_displacement):
2750         GOTPCREL check fix.
2751
2752 2001-01-07  Ian Lance Taylor  <ian@zembu.com>
2753
2754         * doc/c-i386.texi (i386-Arch): Remove spaces incorrectly inserted
2755         in last change.
2756
2757 2001-01-07  Philip Blundell  <philb@gnu.org>
2758
2759         * doc/as.texinfo (Bug Reporting): Update email address for
2760         reports.
2761         * README: Likewise.
2762
2763 Sat Jan  6 13:33:10 MET 2001  Jan Hubicka  <jh@suse.cz>
2764
2765         * configure.in: Define DEFAULT_ARCH for i386.
2766         * config/tc-i386.c (md_assemble): Return after the error message;
2767         move testing for 64bit operands to proper place.
2768
2769 2001-01-06  Jan Hubicka <jh@suse.cz>, Andreas Jaeger  <aj@suse.de>
2770
2771         * doc/as.texinfo: Document '#' as comment character for i386 and
2772         x86_64. Add AMD x86-64 into menu of machine dependent information.
2773
2774         * doc/c-i386.texi: Document x86_64 extensions.
2775
2776 Fri Jan  5 13:26:42 MET 2001  Jan Hubicka  <jh@suse.cz>
2777
2778         * config/tc-i386.c (md_assemble): Handle third byte of the opcode as prefix.
2779
2780 Thu Jan  4 22:25:26 MET 2001  Jan Hubicka  <jh@suse.cz>
2781
2782         * config/tc-i386.c (cpu_arch): Add Pentium4 and modify sledgehammer entry.
2783         * NEWS: Add note about Pentium4 support.
2784
2785 Wed Jan  3 17:26:32 MET 2001  Jan Hubicka  <jh@suse.cz>
2786
2787         * config/tc-i387.c (pi, pte, pt): Update.
2788         (type_names): Add new types.
2789
2790 Wed Jan  3 16:26:52 MET 2001  Jan Hubicka  <jh@suse.cz>
2791
2792         * config/tc-i386.h (CpuK6, CpuAthlon, CpuSledgehammer, CpuMMX, Cpu3dnow,
2793         CpuUnknown): Renumber
2794         (CpuP4, CpuSSE2): New.
2795         (CpuUnknownFlags): Add CpuP4 and CpuSSE2
2796
2797 2001-01-03  Philip Blundell  <pb@futuretv.com>
2798
2799         * config/tc-alpha.c (alpha_force_relocation): Handle vtable
2800         relocs.
2801         (alpha_fix_adjustable): Likewise.
2802         (md_apply_fix): Likewise.
2803
2804 2000-12-31  H.J. Lu  <hjl@gnu.org>
2805
2806         * listing.c (listing_message): Allocate string only if it is
2807         used.
2808
2809         * configure: Rebuild.
2810
2811 2000-12-31  Hans-Peter Nilsson  <hp@bitrange.com>
2812
2813         * doc/internals.texi (Relaxing with a table) <after relaxation>:
2814         Point out caveats with generating fixups for the opcode in a frag.
2815
2816 Sat Dec 30 19:02:48 MET 2000  Jan Hubicka  <jh@suse.cz>
2817
2818         * configure.in: Add support for x86_64 and x86_64-*-linux-gnu*
2819         * NEWS: Add x86_64.
2820
2821 2000-12-29  H.J. Lu  <hjl@gnu.org>
2822
2823         * listing.c (calc_hex): Print the variable part only if the
2824         fragment type is rs_fill.
2825
2826 2000-12-29  Hans-Peter Nilsson  <hp@bitrange.com>
2827
2828         * doc/internals.texi (tc_conditional_pseudoop,
2829         TC_LINKRELAX_FIXUP): Fix typos.
2830
2831 2000-12-28  Richard Henderson  <rth@redhat.com>
2832
2833         * write.c (subsegs_finish): Fix thinko last change -- don't
2834         "optimize" the alignment == 0 case.
2835
2836 2000-12-28  Richard Henderson  <rth@redhat.com>
2837
2838         * as.h (rs_align_test): New.
2839         * frags.c (NOP_OPCODE): Move default from read.c.
2840         (MAX_MEM_FOR_RS_ALIGN_CODE): New default.
2841         (frag_align_code): New.
2842         * frags.h (frag_align_code): Declare.
2843         * read.c (NOP_OPCODE): Remove.
2844         (do_align): Use frag_align_code.
2845         * write.c (NOP_OPCODE): Remove.
2846         (get_recorded_alignment): New.
2847         (cvt_frag_to_fill): Handle rs_align_test.
2848         (relax_segment): Likewise.
2849         (subsegs_finish): Align last subseg in section to the
2850         section alignment.  Use frag_align_code.
2851         * write.h (get_recorded_alignment): Declare.
2852         * config/obj-coff.c (size_section): Handle rs_align_test.
2853         (fill_section, fixup_mdeps): Likewise.
2854         (write_object_file): Use frag_align_code.
2855
2856         * config/tc-alpha.c (alpha_align): Use frag_align_code.
2857         (alpha_handle_align): New.
2858         * config/tc-alpha.h (HANDLE_ALIGN): New.
2859         (MAX_MEM_FOR_RS_ALIGN_CODE): New.
2860
2861         * config/tc-i386.h (md_do_align): Use frag_align_code.
2862         (MAX_MEM_FOR_RS_ALIGN_CODE): New.
2863
2864         * config/tc-ia64.c (ia64_md_do_align): Don't do code alignment.
2865         (ia64_handle_align): New.
2866         * config/tc-ia64.h (HANDLE_ALIGN): New.
2867         (MAX_MEM_FOR_RS_ALIGN_CODE): New.
2868
2869         * config/tc-m32r.c (m32r_do_align): Remove.
2870         (m32r_handle_align): New.
2871         (fill_insn): Use frag_align_code.
2872         * config/tc-m32r.h (md_do_align): Remove.
2873         (HANDLE_ALIGN, MAX_MEM_FOR_RS_ALIGN_CODE): New.
2874         * config/tc-m88k.c, config/tc-m88k.h: Similarly.
2875         * config/tc-mips.c, config/tc-mips.h: Similarly.
2876
2877         * config/tc-sh.c (sh_cons_align): Use rs_align_test.
2878         (sh_handle_align): Likewise.  Handle rs_align_code.
2879         (sh_do_align): Remove.
2880         * config/tc-sh.h (md_do_align): Remove.
2881         (MAX_MEM_FOR_RS_ALIGN_CODE): New.
2882
2883         * config/tc-sparc.c (sparc_cons_align): Use rs_align_test.
2884         (sparc_handle_align): Likewise.  Handle rs_align_code.
2885         * config/tc-sparc.h (md_do_align): Remove.
2886         (MAX_MEM_FOR_RS_ALIGN_CODE): New.
2887
2888 2000-12-22  DJ Delorie  <dj@redhat.com>
2889
2890         * config/tc-d10v.c (md_assemble): set prev_seg and prev_subseg
2891         when we assemble the first half of a pair.
2892
2893 2000-12-22  H.J. Lu  <hjl@gnu.org>
2894
2895         * config/tc-i386.c (reloc): Update the macro for non-bfd
2896         assembler.
2897         (BFD_RELOC_X86_64_GOTPCREL): Set to 0 for non-bfd assembler.
2898
2899 2000-12-22  H.J. Lu  <hjl@gnu.org>
2900
2901         * dwarf2dbg.c (dwarf2_finish): Remove #if BFD_ASSEMBLER.
2902
2903 Wed Dec 20 14:21:22 MET 2000  Jan Hubicka  <jh@suse.cz>
2904
2905         * config/tc-i386.h (i386_target_format): Define even for ELFs.
2906         (QWORD_MNEM_SUFFIX): New macro.
2907         (CpuK6,CpuAthlon,CpuSledgehammer, Cpu64, CpuNo64, CpuUnknownFlags):
2908         New macros
2909         (CpuMMX,CpuSSE,Cpu3dnow, CpuUnknown): Renumber.
2910         (IgnoreSize, DefaultSize, No_?Suf, FWait, IsString, regKludge, IsPrefix,
2911         ImmExt): Renumber.
2912         (Size64, No_qSuf, NoRex64, Rex64): New macros.
2913         (Reg64, Imm32S, Imm64, Disp32S, Disp64): New macros.
2914         (Imm8, Imm8S, Imm16, Imm32, Imm1, BaseIndex, Disp8, Disp16, Disp32,
2915         InOutPortReg,ShiftCount, Control, Debug, Test, FloatReg, FloatAcc,
2916         SReg2, SReg3, Acc, JumpAbsolute, RegMMX, RegXMM, EsSeg, InvMem):
2917         Renumber.
2918         (Reg, WordReg): Add Reg64.
2919         (Imm): Add Imm32S and Imm64.
2920         (EncImm): New.
2921         (Disp): Add Disp64 and Disp32S.
2922         (AnyMem): Add Disp32S.
2923         (RegRex, RegRex64): New macros.
2924         (rex_byte): New type.
2925         * config/tc-i386.c (set_16bit_code_flag): Kill.
2926         (fits_in_unsigned_long, fits_in_signed_long): New functions.
2927         (reloc): New parameter "signed"; support x86_64.
2928         (set_code_flag): New.
2929         (DEFAULT_ARCH): New macro; default to "i386".
2930         (default_arch): New static variable.
2931         (struct _i386_insn): New fields Operand_PCrel; rex.
2932         (flag_16bit_code): Kill; All tests replaced to "flag_code == CODE_64BIT"
2933         (flag_code): New enum and static variable.
2934         (use_rela_relocations): New static variable.
2935         (flag_code_names): New static variable.
2936         (cpu_arch_flags): Default to CpuUnknownFlags|CpuNo64.
2937         (cpu_arch): Add "sledgehammer"; Add CPUAthlon to Athlon and CpuK6 to
2938         K6 and Athlon.
2939         (i386_align_code): Return plain "nop" for x86_64.
2940         (mode_from_disp_size): Support Disp32S.
2941         (smallest_imm_type): Support Imm32S and Imm64.
2942         (offset_in_range): Support size of 8.
2943         (set_cpu_arch): Do not clobber to Cpu64/CpuNo64.
2944         (md_pseudo_table): Add "code64"; use set_code_flat.
2945         (md_begin): Emit sane error message on hash failure.
2946         (tc_i386_fix_adjustable): Support x86_64 relocations.
2947         (md_assemble): Support QWORD_MNEM_SUFFIX, REX registers,
2948         instructions supported on particular arch just partially,
2949         output of 64bit immediates, handling of Imm32S and Disp32S type.
2950         (i386_immedaite): Support x86_64 relocations; support 64bit constants.
2951         (i386_displacement): Likewise.
2952         (i386_index_check): Cleanup; support 64bit addresses.
2953         (md_apply_fix3): Support x86_64 relocation and rela.
2954         (md_longopts): Add "32" and "64".
2955         (md_parse_option): Add OPTION_32 and OPTION_64.
2956         (i386_target_format): Call even for ELFs; choose between
2957         elf64-x86-64 and elf32-i386.
2958         (i386_validate_fix): Refuse GOTOFF in 64bit mode.
2959         (tc_gen_reloc): Support rela relocations and x86_64.
2960         (intel_e09_1): Support QWORD.
2961
2962 2000-12-15  Diego Novillo  <dnovillo@redhat.com>
2963
2964         * config/tc-i386.c (intel_e09_1): Only flag as a memory operand if
2965         it's not an offset expression.
2966         (intel_e10_1): Ditto. Also, if the operand is an offset expression,
2967         keep the braces '[' and ']' in the output string.
2968         (intel_e11): Ditto. Also remove comparison intel_parser.op_modifier
2969         != FLAT. There is no such op_modifier.
2970
2971 2000-12-14  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
2972
2973         * dwarf2dbg.c: If we don't have <limits.h>, try including <sys/param.h>
2974         if we have it.
2975
2976 2000-12-13  Kazu Hirata  <kazu@hxi.com>
2977
2978         * as.h: Fix formatting.
2979         * cgen.h: Likewise.
2980         * dwarf2dbg.c: Likewise.
2981         * input-scrub.c: Likewise.
2982         * read.h: Likewise.
2983
2984 2000-12-13  Mark Elbrecht  <snowball3@bigfoot.com>
2985
2986         * configure.in (i386-*-msdosdjgpp): Set bfd_gas to yes.
2987         configure: Regenerate.
2988
2989 2000-12-13  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
2990
2991         * dwarf2dbg.c: #include <limits.h> only if it exists.
2992
2993 2000-12-13  Rodney Brown  <RodneyBrown@mynd.com>
2994
2995         * config/tc-hppa.c (pa_ip): Correct CHECK_FIELD typo.
2996         (md_apply_fix): Here too.
2997
2998 2000-12-12  Jim Wilson  <wilson@redhat.com>
2999
3000         * config/tc-ia64.h (ia64_init): Add prototype.
3001
3002 2000-12-12  H.J. Lu  <hjl@gnu.org>
3003
3004         * dwarf2dbg.c: Enabled only if BFD_ASSEMBLER is defined.
3005
3006         * read.h (outputting_stabs_line_debug): Change it to int.
3007         * stabs.c (outputting_stabs_line_debug): Likewise.
3008
3009 2000-12-12  Geoffrey Keating  <geoffk@redhat.com>
3010
3011         * config/obj-bout.c (obj_crawl_symbol_chain): Don't take
3012         the address of a function result.
3013
3014 2000-12-12  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
3015
3016         * config/tc-ppc.c (md_pseudo_table): Add .file and .loc.
3017         (md_assemble): Call dwarf2_emit_insn.
3018         (shlib): Fix typo SHILB -> SHLIB.
3019         (md_parse_option): Likewise.
3020         (ppc_elf_validate_fix): Likewise:
3021         * config/tc-ppc.h (DWARF2_LINE_MIN_INSN_LENGTH): New.
3022
3023 2000-12-12  Nick Clifton  <nickc@redhat.com>
3024
3025         * cgen.h: Fix formatting.
3026         * input-scrub.c: Fix formatting.
3027         * macro.c: Fix formatting.
3028         * config/tc-mips.c: Fix formatting.
3029         * doc/c-mips.texi: Fix formatting.
3030
3031 Mon Dec 11 14:35:42 MET 2000  Jan hubicka  <jh@suse.cz>
3032
3033         * config/tc-i386.c (md_assemble): Refuse 's' and 'l' suffixes in the intel
3034         mode; convert 'd' suffix to 's' or 'l'; remove all DWORD_MNEM_SUFFIX
3035         references.
3036         (intel_e09_1): Convert QWORD to 'l' suffix for FP operations; refuse
3037         otherwise.
3038         * config/tc-i386.h (DWORD_MNEM_SUFFIX): Kill.
3039         (No_dSuf): Kill.
3040
3041         * i386.h (*_Suf): Remove No_dSuf.
3042         (d_suf, wld_Suf,sld_Suf, sldx_Suf, bwld_Suf, d_FP, sld_FP, sldx_FP)
3043         Remove.
3044         (i386_optab): Remove 'd' in the suffixes.
3045
3046 2000-12-06  Mark Elbrecht  <snowball3@bigfoot.com>
3047
3048         * config/tc-i386.c (T_SHORT): Undefine before defining.
3049
3050 2000-12-05  Kazu Hirata  <kazu@hxi.com>
3051
3052         * config/tc-mips.c: Fix formatting.
3053
3054 2000-12-04  Matthew Hiller  <hiller@redhat.com>
3055
3056         * config/tc-d10v.c (flag_allow_gstabs_packing): New variable.
3057         (md_longopts): New options --gstabs-packing, --no-gstabs-packing.
3058         (md_show_usage): Ditto.
3059         (md_parse_option): Ditto.
3060         (d10v_cleanup): Writes pending instruction only if
3061         ! outputting_stabs_line_debug || ! flag_allow_gstabs_packing.
3062         Fix compile time warning messages.
3063
3064         * doc/c-d10v.texi: Documents new options.
3065
3066 2000-12-04  Matthew Hiller  <hiller@redhat.com>
3067
3068         * stabs.c (outputting_stabs_line_debug): New variable.
3069         (stabs_generate_asm_lineno): Set outputting_stabs_line_debug at
3070         function entry and unset at function exit.
3071
3072         * read.h (outputting_stabs_line_debug): New extern declaration.
3073
3074         * as.c: Include dwarf2dbg.h for definition of dwarf2_finish.
3075
3076         * dwarf2dbg.c: Fix compile time warning messages.
3077
3078 2000-12-03  Kazu Hirata  <kazu@hxi.com>
3079
3080         * config/tc-a29k.c: Fix formatting.
3081         * config/tc-alpha.c: Likewise.
3082         * config/tc-arm.c: Likewise.
3083         * config/tc-cris.c: Likewise.
3084         * config/tc-hppa.c: Likewise.
3085         * config/tc-i370.c: Likewise.
3086         * config/tc-i386.c: Likewise.
3087         * config/tc-i860.c: Likewise.
3088         * config/tc-i960.c: Likewise.
3089         * config/tc-ia64.c: Likewise.
3090         * config/tc-m68hc11.c: Likewise.
3091         * config/tc-m68k.c: Likewise.
3092         * config/tc-m88k.c: Likewise.
3093         * config/tc-pj.c: Likewise.
3094         * config/tc-ppc.c: Likewise.
3095         * config/tc-sh.c: Likewise.
3096         * config/tc-sparc.c: Likewise.
3097         * config/tc-tahoe.c: Likewise.
3098         * config/tc-vax.c: Likewise.
3099
3100 2000-12-01  Chris Demetriou  <cgd@sibyte.com>
3101
3102         * config/tc-mips.c (mips_ip): When calculating offsets,
3103         don't accept as constant the difference between the
3104         addresses of symbols in two different sections.
3105
3106         * config/tc-mips.c (macro_build): Add new 'U' and 'J' operand
3107         specifiers.
3108         (validate_mips_insn): Likewise.  Also, update 'B' operand
3109         specifier to use OP_*_CODE20 constants and delete 'm' operand
3110         specifier.
3111         (mips_ip): Remove 'm' operand specifier, add 'U' and 'J'
3112         operand specifiers.  Change warning generated by 'B' operand
3113         specifier to reflect its new multi-purpose usage.
3114
3115         * config/tc-mips.c (mips_set_options): Use ISA_UNKNOWN rather than
3116         -1, and update comment.
3117         (file_mips_isa): Likewise.
3118         (mips_cpu): Use CPU_UNKNOWN rather than -1, and update comment.
3119         (ISA_HAS_COPROC_DELAYS, ISA_HAS_64BIT_REGS, gpr_interlocks): Use
3120         ISA_* constants rather than hard-coded numbers.
3121         (mips_cpu_info): New structure.
3122         (mips_cpu_info_table): New table describing CPU and ISA names
3123         and numbers.
3124         (mips_cpu_info_from_name, mips_cpu_info_from_isa,
3125         mips_cpu_info_from_cpu): New functions.
3126         (mips_isa_to_str): New function to get string for ISA name.
3127         (mips_cpu_to_str): Convert to use mips_cpu_info_from_cpu, and
3128         return const char *.
3129         (md_begin): Redo CPU and ISA selection logic, using
3130         mips_cpu_info_from_*.  Convert to use ISA_* constants rather
3131         than hard-coded numbers.
3132         (append_insn, mips_emit_delays, macro, macro2): Convert to use
3133         ISA_* constants rather than hard-coded numbers.
3134         (mips_ip): Convert to use mips_isa_to_str to get ISA name.
3135         (md_longopts): Delete OPTION_NO_MIPS32.
3136         (md_parse_option): Convert to use ISA_* constants rather than
3137         hard-coded numbers.  Make OPTIONS_MIPS32 case treat MIPS32
3138         as an ISA.  Delete OPTION_NO_MIPS32 case.  Convert OPTION_MCPU
3139         to use strcasecmp to recognize "default" and to use
3140         mips_cpu_info_from_name to get CPU numbers from argument.
3141         (md_show_usage): Move -mips32 so it's with the rest of the ISA
3142         flags.  Change 4Kc, 4Kp and 4Km CPU entries to just be
3143         mips32-4k.
3144         (s_mipsset): Accept ISA value 32.
3145         * doc/as.texinfo: Clean up MIPS options summary slightly,
3146         remove -no-mips32.  Add note about -mips4 and -mips32
3147         specifying those ISA levels.  Delete -mips32 and -no-mips32
3148         cpu flag descriptions.
3149         * doc/c-mips.texi: Add -mips32 to list of ISA switches.  Clean
3150         up the supported CPU switch list, and replace 4Kc, 4Km, and
3151         4Kp entries with a single mips32-4k entry.  Note that you can
3152         use ".set mips32".
3153
3154         * config/tc-mips.c (ISA_HAS_64BIT_REGS): Add checks for ISA_MIPS5 and
3155         ISA_MIPS64.
3156         (md_longopts, OPTION_MIPS5, OPTION_MIPS64): Add options for
3157         -mips5 and -mips64.
3158         (md_parse_option): Add cases for OPTION_MIPS5 and
3159         OPTION_MIPS64.
3160         (md_show_usage): Mention -mips5 and -mips64 arguments.
3161         (s_mipsset): Add cases for MIPS5 and MIPS64.
3162         (mips_cpu_info_table): Add entries for MIPS5 and MIPS64 ISAs
3163         and pseudo-CPUs.
3164         * doc/as.texinfo: Mention -mips5 and -mips64 options
3165         and their meanings.
3166         * doc/c-mips.texi: Likewise.  Also update introduction
3167         and ".set" usage information.
3168
3169         * config/tc-mips.c (md_show_usage): Add "sb1" to the
3170         CPU list.
3171         (mips_cpu_info_table): Add SB-1 entries.
3172         * doc/c-mips.texi: Add "sb1" to the list of CPUs
3173         known to the -mcpu option.
3174
3175         * doc/as.texinfo: Correct description of MIPS -mcpu
3176         option, by copying some of the text from doc/c-mips.texi.
3177
3178 2000-12-01  Joel Sherrill  <joel@OARcorp.com>
3179
3180         * configure.in (arm-*-rtems*, a29k-*rtems*, h8300-*-rtems*):
3181         New targets.
3182         (sparc*-*-rtemself*, sparc*-*-rtemsaout*): New targets.
3183         (sparc*-*-rtems*): Switched from a.out to ELF.
3184         * configure: Regenerate.
3185         * config.in: Regenerate.
3186         * Makefile.in: Regenerate.
3187         * aclocal.m4: Regenerate.
3188         * po/gas.pot: Regenerate.
3189
3190 2000-11-30  Philip Blundell  <pb@futuretv.com>
3191
3192         * config/obj-coff.c (obj_coff_weak): Use S_SET_WEAK if it exists,
3193         even in non BFD_ASSEMBLER case.
3194
3195 2000-11-30  Diego Novillo  <dnovillo@redhat.com>
3196
3197         * config/tc-i386.c (md_assemble): Swap i.disp_relocs when using intel
3198         syntax.
3199
3200 2000-11-29  Richard Henderson  <rth@redhat.com>
3201
3202         * dwarf2dbg.c: Rewrite from scratch.  Queue all debugging output
3203         until dwarf2_finish; use relaxation to get cross-fragment offsets;
3204         thread multiple subsegments properly; handle multiple code
3205         sections properly; emit proper compilation unit info for assembler
3206         generated debugging.
3207
3208         * as.h (enum _relax_state): Add rs_dwarf2dbg.
3209         * dwarf2dbg.h (struct dwarf2_line_info): Remove filename.
3210         (dwarf2dbg_estimate_size_before_relax): Declare.
3211         (dwarf2dbg_relax_frag, dwarf2dbg_convert_frag): Declare.
3212         * write.c: Include dwarf2dbg.h.
3213         (cvt_frag_to_fill): Handle rs_dwarf2dbg.
3214         (relax_segment): Likewise.
3215
3216 2000-11-28  Hans-Peter Nilsson  <hp@bitrange.com>
3217
3218         * config/tc-sh.c (md_convert_frag) <undefined symbol, conditional
3219         jump>: Use as_bad_where instead of as_bad.  Tweak error message
3220         accordingly.  Stabilize frag by updating fix part and resetting
3221         variant part.
3222         <undefined symbol, unconditional jump>: Ditto.
3223         (sh_elf_cons): Cast *input_line_pointer to unsigned char when
3224         indexing is_end_of_line[].
3225         (md_assemble): Initialize size to 0.
3226         (md_section_align): Mark parameter seg as unused.
3227         (parse_reg): Parse names case-insensitively.
3228
3229 2000-11-28  Kazu Hirata  <kazu@hxi.com>
3230
3231         * config/obj-aout.h: Fix formatting.
3232         * config/obj-bout.h: Likewise.
3233         * config/obj-coff.c: Likewise.
3234         * config/obj-coff.h: Likewise.
3235         * config/obj-elf.h: Likewise.
3236         * config/obj-som.h: Likewise.
3237         * config/obj-vms.c: Likewise.
3238         * config/obj-vms.h: Likewise.
3239         * config/tc-h8300.h: Likewise.
3240         * config/tc-ns32k.h: Likewise.
3241         * config/tc-sparc.h: Likewise.
3242         * config/tc-tic54x.h: Likewise.
3243         * config/tc-z8k.h: Likewise.
3244
3245 2000-11-28  Nick Clifton  <nickc@redhat.com>
3246
3247         * doc/as.1 (COPYING): Mention that the GNU Free Documentation
3248         License is present in the sources, but not the output, and
3249         also available from the GNU website.
3250         (GNU Free Documentation License): Comment out this section.
3251
3252 2000-11-28  Hans-Peter Nilsson  <hp@axis.com>
3253
3254         * Makefile.am (CPU_OBJ_VALID): Add case to filter out invalid coff
3255         targets.  Remove i860 from valid a.out targets.
3256         * Makefile.in: Regenerate.
3257
3258         * config/tc-cris.c: Include dwarf2dbg.h.
3259         (md_pseudo_table): Add .file and .loc.
3260         (md_assemble): Call dwarf2_emit_insn if generating ELF.
3261         (s_cris_file, s_cris_loc): New.
3262         * config/tc-cris.h (DWARF2_LINE_MIN_INSN_LENGTH): Define.
3263         * Makefile.am: Regenerate dependencies.
3264         * Makefile.in: Regenerate.
3265
3266 2000-11-28  Alan Modra  <alan@linuxcare.com.au>
3267
3268         * expr.c (STANDARD_MUL_PRECEDENCE): Correct value.
3269         (MRI_MUL_PRECEDENCE): Likewise.
3270         (op_rank): Fix a comment typo.
3271
3272 2000-11-26  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
3273
3274         * config/tc-m68hc11.c (build_indexed_byte): Print the offset in
3275         the error message.
3276         (get_operand): Fix analysis for movw/movb instructions.
3277
3278 2000-11-24  Nick Clifton  <nickc@redhat.com>
3279
3280         * configure.in (xscale-elf): Add target.
3281         (xscale-coff): Add target.
3282         * configure: Regenerate.
3283
3284         * config/tc-arm.c (ARM_EXT_V5E): New ARM architecture
3285         extenstion.
3286         (ARM_EXT_XSCALE): New ARM architecture extension.
3287         (ARM_LONGMUL): Rename to ARM_EXT_LONGMUL.
3288         (ARM_HALFWORD): Rename to ARM_EXT_HALFWORD.
3289         (ARM_THUMB): Rename to ARM_EXT_THUMB.
3290         (ARM_ARCH_V4): Remove processor from architecture.
3291         (ARM_ARCH_3M): New architecutre definition.
3292         (ARM_ARCH_V5TE): New architecutre definition.
3293         (ARM_ARCH_XSCALE): New architecutre definition.
3294         (CPU_DEFAULT): Allow to be defaulted to XScale.
3295         (atpcs): New boolean variable.
3296         (ldr_flags): Support 'd' flag for double word loads.
3297         (str_flags): Support 'd' flag for double word stored.
3298         (do_mia): New function.
3299         (do_mar): New function.
3300         (do_mra): New function.
3301         (do_pld): New function.
3302         (do_ldrd): New function.
3303         (do_blx): New function.
3304         (do_bkpt): New function.
3305         (do_clz): New function.
3306         (do_lstc2): New function.
3307         (do_cdp2): New function.
3308         (do_t_blx): New function.
3309         (do_t_bkpt): New function.
3310         (do_smla): New function.
3311         (do_smlal): New function.
3312         (do_smul): New function.
3313         (do_qadd): New function.
3314         (do_co_reg2c): New function.
3315         (LONGEST_INSN): Redefine to 7.
3316
3317         * doc/c-arm.texi: Document -mxscale, -mmarmv5te and -matpcs
3318         command line switches.
3319
3320 2000-11-22  Jim Wilson  <wilson@redhat.com>
3321
3322         * config/tc-ia64.c (pseudo_func): Add missing initializers.
3323         (struct rsrc): Make line unsigned.
3324         (gr_values): Add missing initializer.
3325         (SLOT_NUM_NOT_SET): Add unsigned cast.
3326         (ia64_elf_section_flags, output_vbyte_mem, count_output, dot_radix,
3327         dot_fframe, dot_vframe, dot_vframesp, dot_vframepsp, dot_save,
3328         dot_restore, dot_restorereg, dot_restorereg_p, dot_handlerdata,
3329         dot_unwentry, dot_altrp, dot_saveg, dot_savef, dot_saveb, dot_savegf,
3330         dot_spill, dot_spillreg, dot_spillreg_p, dot_label_state,
3331         dot_copy_state, dot_unwabi, dot_personality, dot_proc, dot_body,
3332         dot_prologue, dot_endp, dot_regstk, dot_psr, dot_alias, dot_ln,
3333         dot_reg_val, dot_entry, dot_mem_offset, ia64_init, mark_resource,
3334         md_undefined_symbol, md_apply_fix3, tc_gen_reloc, ia64_md_do_align):
3335         Add ATTRIBUTE_UNUSED to unused parameters.
3336         (convert_expr_to_ab_reg): Add parens.
3337         (convert_expr_to_xy_reg): Add parens.  Comment out >= REG_GR test.
3338         (dot_prologue): Initialize grsave when declared.
3339         (md_pseudo_table): Add missing initializers.
3340         (operand_match): Add casts to bfd_vma.
3341         (emit_one_bundle): Delete unused local prev.  Make required_template
3342         unsigned.
3343         (specify_resource): Cast i to unsigned.
3344         (note_register_values): Use fprintf_vma.
3345         (print_dependency): Likewise.
3346
3347 2000-11-21  Jim Wilson  <wilson@redhat.com>
3348
3349         * config/tc-ia64.c (generate_unwind_image): Call record_alignment
3350         for unwind info section.
3351         (dot_endp): Likewise for unwind section.
3352
3353         * config/tc-ia64.c (emit_one_bundle): Pass size of 8 not 4 to
3354         fix_new_exp.
3355
3356 2000-11-21  Jakub Jelinek  <jakub@redhat.com>
3357
3358         * config/tc-sparc.c (md_pseudo_table): Add .file and .loc.
3359         (output_insn): Call dwarf2_emit_insn.
3360         * config/tc-sparc.h (DWARF2_LINE_MIN_INSN_LENGTH): New.
3361
3362 2000-11-17  Richard Henderson  <rth@redhat.com>
3363
3364         * ehopt.c (eh_frame_code_alignment): New arg `in_seg', update all
3365         callers.  Don't switch segments.  Expect CIE == -1 in .debug_frame.
3366         (check_eh_frame): Handle .eh_frame and .debug_frame concurrently.
3367
3368 2000-11-17  Nick Clifton  <nickc@redhat.com>
3369
3370         * config/tc-arm.c (md_pseudo_table): Add support for .line and
3371         .file pseudo ops.
3372
3373 2000-11-17  Richard Henderson  <rth@redhat.com>
3374
3375         * config/tc-i386.c (md_pseudo_table): Add .file and .loc.
3376
3377 2000-11-17  Richard Henderson  <rth@redhat.com>
3378
3379         * dwarf2dbg.c (dwarf2_gen_line_info): Early out for no line number.
3380         * config/obj-elf.h (ECOFF_DEBUGGING) [TC_ALPHA]: Adjust for
3381         tri-state definition of alpha_flag_mdebug.
3382         * config/tc-alpha.c (alpha_flag_mdebug): Init to -1.
3383         (s_alpha_file): Store first .file directive.
3384         (s_alpha_stab): New.
3385         (md_pseudo_table): Add stabs and stabn.
3386
3387 2000-11-17  Richard Henderson  <rth@redhat.com>
3388
3389         * config/tc-i386.c (md_assemble): Call dwarf2_emit_insn.
3390
3391 2000-11-17  Richard Henderson  <rth@redhat.com>
3392
3393         * as.c (debug_type): Init to DEBUG_UNSPECIFIED.
3394         (main): Call dwarf2_finish.
3395         * as.h (debug_type): Clarify documentation of the meaning
3396         of this variable.
3397         * dwarf2dbg.c (DWARF2_LINE_MIN_INSN_LENGTH): Default to 1.
3398         (print_stats): Fix parenthesis problem.
3399         (now_subseg_size): New.
3400         (dwarf2_finish): Use it.  If DEBUG_DWARF2, emit bits for .debug_info.
3401         (dwarf2_directive_file): Don't set debug_type.
3402         (dwarf2_where): Honor DEBUG_DWARF2 first.
3403         (dwarf2_emit_insn): Renamed from dwarf2_generate_asm_lineno;
3404         do nothing if not emitting dwarf2 debug info, or no work.
3405         * dwarf2dbg.h (dwarf2_emit_insn): Update.
3406         * ecoff.c (add_file): Turn on DEBUG_ECOFF only if DEBUG_UNSPECIFIED.
3407         (ecoff_new_file): Likewise.
3408         * read.c (generate_lineno_debug): Kill ecoff hackery.  Update
3409         commentary wrt dwarf2.
3410
3411         * config/tc-alpha.c (alpha_adjust_symtab_relocs): Add
3412         ATTRIBUTE_UNUSED as needed.
3413         (emit_insn): Call dwarf2_emit_insn.
3414         (s_alpha_file): New.
3415         (s_alpha_loc): New.
3416         (s_alpha_coff_wrapper): Don't handle them.
3417         (md_pseudo_table): Update for .file and .loc.
3418         * config/tc-alpha.h (DWARF2_LINE_MIN_INSN_LENGTH): New.
3419
3420         * config/tc-arm.c (output_inst): Update for dwarf2_emit_insn;
3421         don't protect with debug_type.
3422         * config/tc-hppa.c (md_assemble): Likewise.
3423         * config/tc-m68hc11.c (m68hc11_new_insn): Likewise.
3424         * config/tc-mn10300.c (md_assemble): Likewise.
3425         * config/tc-sh.c (md_assemble): Likewise.
3426         * config/tc-v850.c (md_assemble): Likewise.
3427
3428         * config/tc-arm.c (arm_end_of_source): Remove.
3429         * config/tc-hppa.c (pa_end_of_source): Remove.
3430         * config/tc-m68hc11.c (m68hc11_end_of_source): Remove.
3431         * config/tc-mn10300.c (mn10300_finalize): Remove.
3432         * config/tc-sh.c (sh_finalize): Remove.
3433         * config/tc-v850.c (sh_finalize): Remove.
3434
3435         * config/tc-arm.h (md_end): Remove.
3436         * config/tc-hppa.h (md_end): Remove.
3437         (DWARF2_LINE_MIN_INSN_LENGTH): New.
3438         * config/tc-m68hc11.h (md_end): Remove.
3439         * config/tc-mn10300.h (md_end): Remove.
3440         * config/tc-sh.h (md_end): Remove.
3441         * config/tc-v850.h (md_end): Remove.
3442
3443         * config/tc-ia64.c (emit_one_bundle): Don't protect
3444         dwarf2 bits with debug_type.
3445         (md_assemble): Likewise.
3446         (ia64_end_of_source): Don't call dwarf2_finish.
3447
3448 2000-11-16  Jim Wilson  <wilson@redhat.com>
3449
3450         * config/tc-ia64.c (errata_nop_necessary_p): Abort if general regno
3451         >= 128 instead of > 128.  Abort if predicate regno is >= 64 instead of
3452         > 16.
3453
3454 2000-11-16  H.J. Lu  <hjl@gnu.org>
3455
3456         * config/obj-elf.c (obj_elf_symver): Don't check the missing
3457         version name.
3458
3459 2000-11-15  Kazu Hirata  <kazu@hxi.com>
3460
3461         * config/tc-tic30.c: Fix formatting.
3462         * config/tc-tic80.c: Likewise.
3463         * config/tc-v850.c: Likewise.
3464         * config/tc-vax.c: Likewise.
3465         * config/tc-w65.c: Likewise.
3466         * config/tc-z8k.c: Likewise.
3467
3468 2000-11-14  DJ Delorie  <dj@redhat.com>
3469
3470         * config/tc-v850.c: Support dwarf2.
3471         * config/tc-v850.h: Ditto.
3472
3473         * config/tc-v850.c (cons_fix_new_v850): Don't rely on
3474         parse_cons_expression_v850 to initialize hold_cons_reloc.
3475
3476 2000-11-15  Bernd Schmidt  <bernds@redhat.com>
3477
3478         * config/tc-ia64.c (struct md): New entries LAST_GROUPS, GROUP_IDX.
3479         (errata_nops_necessary_p): New function.
3480         (emit_one_bundle): Call it.  Update the GROUP_IDX field in struct
3481         md.
3482
3483 2000-11-14  Jim Wilson  <wilson@redhat.com>
3484
3485         * config/tc-ia64.c (ia64_target_format): If EF_IA_64_BE not set, then
3486         return little endian bfd formats.
3487
3488 2000-11-14  Kazu Hirata  <kazu@hxi.com>
3489
3490         * config/aout_gnu.h: Fix formatting.
3491         * config/atof-vax.c: Likewise.
3492         * config/m68k-parse.h: Likewise.
3493         * config/m88k-opcode.h: Likewise.
3494         * config/obj-elf.c: Likewise.
3495         * config/tc-arm.c: Likewise.
3496         * config/tc-cris.c: Likewise.
3497         * config/tc-i386.c: Likewise.
3498         * config/tc-ia64.c: Likewise.
3499         * config/tc-mn10300.c: Likewise.
3500         * config/te-386bsd.h: Likewise.
3501         * config/te-hppa.h: Likewise.
3502         * config/te-nbsd.h: Likewise.
3503         * config/te-ppcnw.h: Likewise.
3504         * config/te-sparcaout.h: Likewise.
3505         * config/te-tmips.h: Likewise.
3506         * config/vax-inst.h: Likewise.
3507         * config/vms-conf.h: Likewise.
3508
3509 2000-11-14  Jakub Jelinek  <jakub@redhat.com>
3510
3511         * config/tc-alpha.c (s_alpha_prologue): Preserve visibility bits.
3512
3513 2000-11-13  H.J. Lu  <hjl@gnu.org>
3514
3515         * config/obj-elf.c (elf_frob_symbol): Support
3516         ".symver name,name2@@@nodename".
3517         (elf_frob_file_before_adjust): Likewise.
3518
3519         * doc/as.texinfo: Updated for ".symver name,name2@@@nodename"
3520         and ".symver name,name2@@@nodename".
3521         Fix a typo.
3522
3523 2000-11-12  H.J. Lu  (hjl@gnu.org)
3524
3525         * config/obj-elf.c (obj_elf_symver): Check missing version
3526         name.
3527
3528 2000-11-12  H.J. Lu  (hjl@gnu.org)
3529
3530         * dwarf2dbg.c (dwarf2_generate_asm_lineno): Use addressT
3531         instead of bfd_vma for non-bfd assemblers.
3532
3533 2000-11-09  Kazu Hirata  <kazu@hxi.com>
3534
3535         * itbl-ops.c: Fix comment typos.
3536
3537 2000-11-08  Jim Wilson  <wilson@redhat.com>
3538
3539         * config/tc-ia64.c (struct unw_rec_list): Add slot_frag field.
3540         (struct unwind): Add next_slot_frag field.
3541         (slot_index): New parameters slot_frag and first_frag.  Add code
3542         to add in frag sizes when different.  Add comments.
3543         (fixup_unw_records): New locals first_frag and last_frag.  Pass new
3544         arguments to slot_index.
3545         (emit_one_bundle): Set slot_frag field.  Set next_slot_number after
3546         loop end.  Set next_slot_frag field.
3547
3548 2000-11-07  H.J. Lu  <hjl@gnu.org>
3549
3550         * doc/as.texinfo (.symver): Updated for versioned symbol
3551         reference.
3552
3553         * obj.h (format_ops): Add the frob_file_before_adjust field.
3554
3555         * config/obj-aout.c (aout_format_ops): Set the
3556         frob_file_before_adjust field to 0.
3557         * config/obj-coff.c (coff_format_ops): Likewise.
3558         * config/obj-ecoff.c (ecoff_format_ops): Likewise.
3559
3560         * config/obj-elf.c (obj_elf_symver): Allow duplicated version
3561         name.
3562         (elf_frob_file_before_adjust): New function to remove unneeded
3563         versioned symbols from the symbol table.
3564         (elf_format_ops): Set the frob_file_before_adjust field to
3565         elf_frob_file_before_adjust.
3566
3567         * config/obj-elf.h (obj_frob_file_before_adjust): Defined if
3568         not defined.
3569
3570         * config/obj-multi.h (obj_frob_file_before_adjust): Defined.
3571
3572 2000-11-07  Peter Targett  <peter.targett@arccores.com>
3573
3574         * config/tc-arc.h: Avoid warnings for LITTLE_ENDIAN and
3575         BIG_ENDIAN macros.
3576         * config/tc-arc.c: Use S_IS_LOCAL to test local symbols.
3577         Fix compile time warning messages.
3578
3579 2000-11-07  Nick Clifton  <nickc@redhat.com>
3580
3581         * stabs.c (generate_asm_file): Increase length of xmalloc'ed
3582         buffer in order to avoid buffer overflows.
3583
3584 2000-11-06  Steve Ellcey <sje@cup.hp.com>
3585
3586         * config/tc-ia64.c (md_shortopts, md_parse_option, md_show_usage):
3587         Change M to m for -milp32 or -mlp64 to match gcc.
3588         (dot_endp): Use bytes_per_address instead of 8.
3589         (emit_one_bundle): Use number_to_chars_littleendian instead of
3590         md_number_to_chars.
3591         (fix_insn): Likewise.
3592         (ia64_init): New function.
3593         (ia64_target_format): New function.
3594         (md_begin): Set endianness, arch, and machine as appropriate.
3595         * config/tc-ia64.h: (TARGET_BYTES_BIG_ENDIAN, md_number_to_chars):
3596         Make these macros depend on TE_HPUX macro.
3597         (TARGET_FORMAT): Define.
3598         (HOST_SPECIAL_INIT): Define.
3599         * config/te-hpux.h: New file.
3600         * configure.in: Add "ia64-*-hpux*" target to configure.
3601         * configure: Regenerate.
3602
3603 2000-11-06  Kazu Hirata  <kazu@hxi.com>
3604
3605         * as.c: Fix formatting.
3606         * dwarf2dbg.c: Likewise.
3607         * input-file.c: Likewise.
3608         * input-file.h: Likewise.
3609         * input-scrub.c: Likewise.
3610         * itbl-ops.c: Likewise.
3611         * listing.c: Likewise.
3612         * macro.h: Likewise.
3613         * messages.c: Likewise.
3614         * read.c: Likewise.
3615         * subsegs.c: Likewise.
3616         * subsegs.h: Likewise.
3617         * write.c: Likewise.
3618
3619 2000-11-06  Nick Clifton  <nickc@redhat.com>
3620
3621         * doc/as.texinfo: Add GNU Free Documentation License.
3622         * doc/gasp.texi:  Add GNU Free Documentation License.
3623         * doc/as.1:  Add GNU Free Documentation License.
3624
3625 2000-11-05  Nick Clifton  <nickc@redhat.com>
3626
3627         * config/tc-arm.c: Add include of "dwarf2dbg.h"
3628
3629 2000-11-02  Per Lundberg  <plundis@chaosdev.org>
3630
3631         * configure.in: Recognise i[3456]86-chaosdev-storm-chaos.
3632         * configure: Regenerate.
3633
3634 2000-11-01  Nick Clifton  <nickc@redhat.com>
3635
3636         * read.c (original_case_string): New global variable.
3637         (read_a_source_file): Copy opcode string into
3638         original_case_string if clobbering the case of the opcode.
3639         * read.h: Export the definition of original_case_string.
3640         * config/tc-arm.c (md_assembler): When parsing a .req
3641         directive use the original opcode string, not the case
3642         clobbered version.
3643
3644 2000-11-02  Nick Clifton  <nickc@redhat.com>
3645
3646         * config/tc-mn10300.c (debug_line): Remove this static
3647         variable.
3648         (md_assemble): Call dwarf2_generate_asm_lineno instead of
3649         dwarf2_where and dwarf2_gen_line_info.
3650
3651 2000-11-02  Theo Honohan  <th@futuretv.com>
3652
3653         * config/tc-arm.c (do_msr): Improve error message.
3654
3655 2000-10-31  Eric Christopher  <echristo@redhat.com>
3656
3657         * config/tc-mn10300.c (md_apply_fix3): Use valuep if fully resolved
3658         or pc-relative, else use fx_offset.
3659
3660 2000-10-31  Jim Wilson  <wilson@redhat.com>
3661
3662         * config/tc-ia64.c (struct md): New field tag_fixups.
3663         (ia64_flush_insns): Handle tag_fixups.  Error if dangling
3664         qualifying predicate.
3665         (emit_one_bundle): Delete spurious multiplication by one.  Handle
3666         tag_fixups.
3667         (ia64_start_line): Error if dangling qualifying predicate.
3668         (defining_tag): New static variable.
3669         (ia64_unrecognized_line, case '['): Parse tags.
3670         (ia64_frob_label): Create tag_fixups.
3671         (md_assemble): Reset md.qp.X_op after using it.
3672
3673 2000-10-31  Kaz Kojima <kkojima@rr.iij4u.or.jp>
3674
3675         * config/tc-sh.c (md_apply_fix [BFD_RELOC_SH_PCDISP12BY2]): Allow 4094.
3676
3677 2000-10-31  Bernd Schmidt  <bernds@redhat.co.uk>
3678
3679         * config/tc-ia64.c (extra_goodness): Only prefer F in slot 1 and B in slot 2.
3680
3681 2000-10-30  Kazu Hirata  <kazu@hxi.com>
3682
3683         * expr.c: Fix formatting.
3684         * flonum-copy.c: Likewise.
3685         * flonum.h: Likewise.
3686         * gasp.c: Likewise.
3687         * hash.c: Likewise.
3688
3689 2000-10-30  Hans-Peter Nilsson  <hp@bitrange.com>
3690
3691         * as.h (OPTION_MD_BASE): Bump to 190.
3692         * as.c (parse_args) <std_longopts>: Add comment about the need to
3693         check OPTION_MD_BASE in as.h.
3694
3695         * config/tc-sh.c (md_apply_fix): For ELF, do not "adjust back" VAL
3696         for weak symbols.
3697
3698 2000-10-27  Nick Clifton  <nickc@redhat.com>
3699
3700         * configure.in (emulations): Add m68hc12.
3701         * configure: Regenerate.
3702         * po/gas.pot: Regenerate.
3703
3704 2000-10-27  Aldy Hernandez  <aldyh@redhat.com>
3705
3706         * config/tc-arm.c (psrs): Remove lowercase versions of spsr* and
3707         cpsr*.
3708         (arm_psr_parse): Handle lowercase CPSR and SPSR.
3709
3710 2000-10-25  Nick Clifton  <nickc@redhat.com>
3711
3712         * dwarf2out.c (dwarf2_generate_asm_lineno): New function: Generate
3713         a DWARF2 line number information sequence.
3714
3715         *dwarf2out.h: Add prototype for dwarf2_generate_asm_lineno.
3716
3717         * read.c (generate_lineno_debug): Update comment describing why
3718         DWARF2 line number debug information is not generated
3719         automatically by this function.
3720
3721         * doc/as.texinfo: Note that --gdwarf2 only works on some targets,
3722         not all.
3723
3724         * config/tc-arm.h (md_end): Define.
3725         (DWARF2_LINE_MIN_INSN_LENGTH): Define.
3726
3727         * config/tc-arm.c (output_inst): Call dwarf2_generate_asm_lineno
3728         if generating DWARF2 line numbers.
3729         (arm_end_of_source): New function.  Call dwarf2_finish if
3730         necessary.
3731
3732         * config/tc-hppa.c (md_assemble): Use dwarf2_generate_asm_lineno.
3733         * config/tc-m68hc11.c (m68hc11_new_insn): Use dwarf2_generate_asm_lineno.
3734         * config/tc-sh.c (md_assemble): Use dwarf2_generate_asm_lineno.
3735
3736 2000-10-25  Diego Novillo  <dnovillo@cygnus.com>
3737
3738         * config/tc-i386.c: Fix prototype declarations for functions taking no
3739         arguments.
3740
3741 2000-10-24  Diego Novillo  <dnovillo@cygnus.com>
3742
3743         * config/tc-i386.c (i386_operand_modifier): Remove.
3744         (build_displacement_string): Remove.
3745         (i386_parse_seg): Remove.
3746         (i386_intel_memory_operand): Remove.
3747         (i386_intel_operand): Re-write using recursive descent parser based
3748         on MASM documentation.
3749         (struct intel_parser_s): New structure.
3750         (intel_parser): New static variable.
3751         (struct intel_token): New structure.
3752         (cur_token, prev_token): New static variables.
3753         (T_NIL): Define.
3754         (T_CONST): Define.
3755         (T_REG): Define.
3756         (T_BYTE): Define.
3757         (T_WORD): Define.
3758         (T_DWORD): Define.
3759         (T_QWORD): Define.
3760         (T_XWORD): Define.
3761         (T_SHORT): Define.
3762         (T_OFFSET): Define.
3763         (T_PTR): Define.
3764         (T_ID): Define.
3765         (intel_match_token): New function.
3766         (intel_get_token): New function.
3767         (intel_putback_token): New function.
3768         (intel_expr): New function.
3769         (intel_e05): New function.
3770         (intel_e05_1): New function.
3771         (intel_e06): New function.
3772         (intel_e06_1): New function.
3773         (intel_e09): New function.
3774         (intel_e09_1): New function.
3775         (intel_e10): New function.
3776         (intel_e10_1): New function.
3777         (intel_e11): New function.
3778
3779 2000-10-20  Jakub Jelinek  <jakub@redhat.com>
3780
3781         * config/tc-sparc.c (sparc_ip): Fix a bug which caused v9_arg_p
3782         instructions to loose any special insn->architecture mask.
3783
3784         * config/tc-sparc.c (v9a_asr_table): Add v9b ASRs.
3785         (sparc_md_end, sparc_arch_types, sparc_arch,
3786         sparc_elf_final_processing): Handle v8plusb and v9b architectures.
3787         (sparc_ip): Handle siam mode operands. Support v9b ASRs (and
3788         request v9b architecture if they are used).
3789
3790 2000-10-18  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
3791
3792         * config/tc-m68k.c: Fix the previous misapplied patch.
3793
3794 2000-10-18  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
3795
3796         * config/tc-m68k.h (RELAX_RELOC_*): New definitions for both
3797         BFD_ASSEMBLER and !BFD_ASSEMBLER.
3798         * config/tc-m68k.c (md_convert_frag_1): Use them instead of
3799         BFD_RELOC_*.
3800
3801 2000-10-17  Kazu Hirata  <kazu@hxi.com>
3802
3803         * debug.c: Fix formatting.
3804         * depend.c: Likewise.
3805         * dwarf2dbg.c: Likewise.
3806         * dwarf2dbg.h: Likewise.
3807         * ecoff.c: Likewise.
3808         * expr.c: Likewise.
3809         * expr.h: Likewise.
3810         * flonum-konst.c: Likewise.
3811         * frags.h: Likewise.
3812
3813 2000-10-17  Chandrakala Chavva  <cchavva@redhat.com>
3814
3815         * as.c: New option OPTION_TARGET_HELP. Prints all target specific
3816         options.
3817         * doc/as.texinfo: Added notes about this new option.
3818
3819 2000-10-16  Hans-Peter Nilsson  <hp@bitrange.com>
3820
3821         * config/tc-sh.c (JREG): Remove.
3822         (md_convert_frag): Remove #if 0:d code using JREG.
3823
3824 2000-10-15  Diego Novillo  <dnovillo@cygnus.com>
3825
3826         * config/tc-i386.c (i386_operand_modifier): Only match
3827         modifiers SHORT and FLAT if they are followed by a space.
3828         (parse_register): When `allow_naked_reg' is set, do not confuse
3829         identifiers that start with a register name with a register.
3830
3831 2000-10-12  Kazu Hirata  <kazu@hxi.com>
3832
3833         * app.c: Fix formatting.
3834         * as.c: Likewise.
3835         * as.h: Likewise.
3836         * bit_fix.h: Likewise.
3837         * cgen.c: Likewise.
3838         * cgen.h: Likewise.
3839         * cond.c: Likewise.
3840
3841 2000-10-11  Alan Modra  <alan@linuxcare.com.au>
3842
3843         * config/obj-elf.c (elf_frob_symbol): Revert 2000-10-07 change.
3844
3845 2000-10-07  Alan Modra  <alan@linuxcare.com.au>
3846
3847         * config/tc-hppa.c (md_apply_fix): Remove plainly wrong assert.
3848         Re-arrange function a little and improve error message.
3849
3850         * write.c (write_relocs): Fix a comment.
3851
3852         * config/obj-elf.c (elf_frob_symbol): Make section syms global on
3853         link-once sections.
3854
3855 2000-10-05  Jim Wilson  <wilson@cygnus.com>
3856
3857         * config/tc-ia64.c (resources_match): Handle IA64_RS_PRr.
3858
3859 2000-10-05  Alan Modra  <alan@linuxcare.com.au>
3860
3861         * config/tc-i386.c: Delete some useless comments, reformat others.
3862
3863         * config/tc-i386.h (TC_FIX_ADJUSTABLE): Add check to cover
3864         non-global syms in linkonce sections.
3865
3866 2000-10-04  Ralf Baechle  <ralf@gnu.org>
3867
3868         * config/tc-ia64.c (operand_match): Don't use // style comments.
3869         * config/tc-i370.c: Likewise.
3870
3871 2000-09-29  Hans-Peter Nilsson  <hp@axis.com>
3872
3873         Changes to handle varying register prefix and user symbol prefix.
3874         * config/tc-cris.c (SYNTAX_RELAX_REG_PREFIX,
3875         SYNTAX_ENFORCE_REG_PREFIX, SYNTAX_USER_SYM_LEADING_UNDERSCORE,
3876         SYNTAX_USER_SYM_NO_LEADING_UNDERSCORE, REGISTER_PREFIX_CHAR): New.
3877         (s_syntax, cris_force_reg_prefix, cris_relax_reg_prefix,
3878         cris_sym_leading_underscore, cris_sym_no_leading_underscore): New.
3879         (demand_register_prefix): New variable.
3880         (md_pseudo_table): New pseudo ".syntax".
3881         (md_longopts): New options --no-underscore and --underscore.
3882         (cris_target_format): Return elf32-us-cris or elf32-cris depending
3883         on symbols_have_leading_underscore.
3884         (get_gen_reg): Accept or require REGISTER_PREFIX_CHAR.
3885         (get_spec_reg): Ditto.
3886         (cris_number_to_imm) <case BFD_RELOC_VTABLE_ENTRY>: Remove FIXME.
3887         Fix formatting.
3888         (md_parse_option) <case 'h' 'H'>: Deprecate; add reference to
3889         --help.
3890         <case OPTION_NO_US, case OPTION_US>: New.
3891         (md_show_usage): Be brief and reformat to match continuation of
3892         --help.
3893         * po/gas.pot: Regenerate.
3894
3895 2000-09-28  Alan Modra  <alan@linuxcare.com.au>
3896
3897         * config/tc-hppa.c (hppa_force_relocation): If OBJ_SOM, don't
3898         force relocs for 12 bit branches.
3899         (md_apply_fix): Similarly, adjust logic here.
3900
3901 2000-09-28  Alan Modra  <alan@linuxcare.com.au>
3902
3903         * config/tc-hppa.c (md_apply_fix): Add fmt assertion.  Don't
3904         adjust for external and weak syms as we will use a reloc.  Allow
3905         for +8 offset when calculating limits of branches.
3906         (hppa_fix_adjustable): Undo 2000-09-23 change.
3907         (hppa_force_relocation): Likewise.  Add fx_addsy assertion.
3908         Correct distance calculation.
3909         (tc_gen_reloc): Print the file name and line number if we can't
3910         handle a fixup.
3911
3912         From John David Anglin <dave@hiauly1.hia.nrc.ca>
3913         * config/tc-hppa.c (nonzero_dibits): Define.
3914         (arg_reloc_stub_needed): Check each arg and return value
3915         separately for zero case.
3916         (pa_align): Declare argument `bytes'.
3917
3918 2000-09-25  Kazu Hirata  <kazu@hxi.com>
3919
3920         * config/tc-cris.c: Fix formatting.
3921         * config/tc-d10v.h: Likewise.
3922         * config/tc-d30v.c: Likewise.
3923         * config/tc-d30v.h: Likewise.
3924         * config/tc-fr30.c: Likewise.
3925         * config/tc-fr30.h: Likewise.
3926         * config/tc-m68k.c: Likewise.
3927         * config/tc-m68k.h: Likewise.
3928         * config/tc-pj.h: Likewise.
3929         * config/tc-ppc.c: Likewise.
3930         * config/tc-ppc.h: Likewise.
3931         * config/tc-sh.c: Likewise.
3932         * config/tc-sh.h: Likewise.
3933         * config/tc-sparc.c: Likewise.
3934         * config/tc-v850.h: Likewise.
3935         * config/tc-vax.h: Likewise.
3936         * config/tc-w65.h: Likewise.
3937         * config/tc-z8k.h: Likewise.
3938
3939 2000-09-23  Alan Modra  <alan@linuxcare.com.au>
3940
3941         * config/tc-hppa.c (hppa_fix_adjustable): Do the external and weak
3942         checks only for ELF.
3943         (hppa_force_relocation): Likewise.
3944
3945 2000-09-22  Jim Wilson  <wilson@cygnus.com>
3946
3947         * config/tc-ia64.c (dv_sem): Add "stop".
3948         (specify_resource, case IA64_RS_PR): Only handles regs 1 to 15 now.
3949         (specify_resource, case IA64_RS_PRr): New for regs 16 to 62.
3950         (specify_resource, case IA64_RS_PR63): Reorder (note == 7) test to
3951         match above.
3952         (mark_resources): Check IA64_RS_PRr.
3953
3954 2000-09-22  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
3955
3956         * config/tc-m68k.c (md_relax_table, m68k_ip, md_convert_frag_1,
3957         md_estimate_size_before_relax): Redesign and clean up the
3958         relaxation mechanism.
3959
3960 2000-09-21  Kazu Hirata  <kazu@hxi.com>
3961
3962         * config/tc-ns32k.c: Fix formatting.
3963         * config/tc-ns32k.h: Likewise.
3964
3965 2000-09-20  Kazu Hirata  <kazu@hxi.com>
3966
3967         * config/tc-m32r.c: Fix formatting.
3968         * config/tc-m32r.h: Likewise.
3969         * config/tc-m68851.h: Likewise.
3970         * config/tc-m68hc11.c: Likewise.
3971         * config/tc-m68hc11.h: Likewise.
3972         * config/tc-m88k.c: Likewise.
3973         * config/tc-mcore.c: Likewise.
3974         * config/tc-mcore.h: Likewise.
3975         * config/tc-mips.c: Likewise.
3976         * config/tc-mips.h: Likewise.
3977         * config/tc-mn10200.h: Likewise.
3978         * config/tc-mn10300.h: Likewise.
3979         * config/tc-tahoe.c: Likewise.
3980         * config/tc-tahoe.h: Likewise.
3981
3982 2000-09-19  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
3983
3984         * config/tc-vax.c (synthetic_votstrs): Remove jbssi and jbcci.
3985         Likewise in relaxation description comments.
3986
3987 2000-09-18  Alan Modra  <alan@linuxcare.com.au>
3988
3989         * config/tc-hppa.h (TC_FORCE_RELOCATION_SECTION): Allow
3990         subtraction of two syms without emitting a relocation.
3991
3992         From  David Huggins-Daines  <dhd@linuxcare.com>
3993         * config/tc-hppa.c (hppa_force_relocation): Force relocations for
3994         global or weak symbols.
3995
3996 2000-09-15  Kazu Hirata  <kazu@hxi.com>
3997
3998         * config/tc-h8300.h: Fix formatting.
3999         * config/tc-h8500.c: Likewise.
4000         * config/tc-h8500.h: Likewise.
4001         * config/tc-hppa.h: Likewise.
4002         * config/tc-i370.h: Likewise.
4003         * config/tc-i386.h: Likewise.
4004         * config/tc-i860.c: Likewise.
4005         * config/tc-i860.h: Likewise.
4006         * config/tc-i960.h: Likewise.
4007         * config/tc-ia64.c: Likewise.
4008         * config/tc-ia64.h: Likewise.
4009
4010 2000-09-14  Kazu Hirata  <kazu@hxi.com>
4011
4012         * config/tc-a29k.c: Fix formatting.
4013         * config/tc-alpha.c: Likewise.
4014         * config/tc-arc.c: Likewise.
4015         * config/tc-arc.h: Likewise.
4016         * config/tc-arm.c: Likewise.
4017         * config/tc-arm.h: Likewise.
4018         * config/tc-avr.c: Likewise.
4019         * config/tc-avr.h: Likewise.
4020         * config/tc-tic30.c: Likewise.
4021         * config/tc-tic30.h: Likewise.
4022         * config/tc-tic54x.c: Likewise.
4023         * config/tc-tic54x.h: Likewise.
4024         * config/tc-tic80.c: Likewise.
4025         * config/tc-tic80.h: Likewise.
4026
4027 2000-09-14  Timothy Wall  <twall@cygnus.com>
4028
4029         * config/tc-ia64.c (specify_resource): For PR%/PR63, note types of
4030         parallel comparisons for later use.
4031         (struct rsrc): Add parallel comparison type.
4032         (resources_match): Skip special cases of PR usage (non-conflicting
4033         parallel compares).
4034
4035 2000-09-13  Kazu Hirata  <kazu@hxi.com>
4036
4037         * config/obj-ecoff.c: Fix formatting.
4038         * config/obj-elf.c: Likewise.
4039         * config/obj-elf.h: Likewise.
4040         * config/obj-evax.h: Likewise.
4041         * config/obj-generic.h: Likewise.
4042         * config/obj-hp300.c: Likewise.
4043         * config/obj-hp300.h: Likewise.
4044         * config/obj-ieee.h: Likewise.
4045         * config/obj-vms.c: Likewise.
4046         * config/obj-vms.h: Likewise.
4047
4048 2000-09-13  Anders Norlander  <anorland@acc.umu.se>
4049
4050         * config/tc-mips.c (md_begin): Recognize 4Kc, 4Km and 4Kp processors.
4051         (md_parse_option): Ditto.
4052         (md_longopts): Add -mips32 option.
4053         (md_show_usage): Document new options.
4054         (mips_ip): Assemble sdbbp 20 bit 'm' args for MIPS32.
4055         (mips_ip): Assemble mfc0 with a sub-selection code.
4056         (validate_mips_insn): Handle 'H' (OP_*_SEL) and 'm' (OP_*_CODE20).
4057         (mips_cpu_to_str): New function.
4058         (mips_ip): Use mips_cpu_to_str instead of printing numeric cpu value.
4059         Use CPU_* defines instead of hardcoded numbers.
4060
4061         * doc/as.texinfo: Document new options.
4062         * doc/c-mips.texi: Ditto.
4063
4064 2000-09-12  Kazu Hirata  <kazu@hxi.com>
4065
4066         * as.h: Fix formatting.
4067         * asintl.h: Likewise.
4068         * bit_fix.h: Likewise.
4069         * config/obj-aout.c: Likewise.
4070         * config/obj-aout.h: Likewise.
4071         * config/obj-bout.c: Likewise.
4072         * config/obj-bout.h: Likewise.
4073         * config/obj-coff.c: Likewise.
4074         * config/obj-coff.h: Likewise.
4075         * dwarf2dbg.h: Likewise.
4076         * expr.h: Likewise.
4077         * flonum.h: Likewise.
4078         * frags.h: Likewise.
4079         * itbl-ops.h: Likewise.
4080         * macro.h: Likewise.
4081         * read.h: Likewise.
4082         * sb.h: Likewise.
4083         * struc-symbol.h: Likewise.
4084         * subsegs.h: Likewise.
4085         * symbols.h: Likewise.
4086         * tc.h: Likewise.
4087         * write.h: Likewise.
4088
4089 2000-09-11  Kazu Hirata  <kazu@hxi.com>
4090
4091         * bignum-copy.c: Fix formatting.
4092         * config/tc-i370.c: Likewise.
4093         * config/tc-i960.c: Likewise.
4094         * config/tc-m68k.c: Likewise.
4095         * ehopt.c: Likewise.
4096         * flonum-copy.c: Likewise.
4097         * flonum-konst.c: Likewise.
4098         * flonum-mult.c: Likewise.
4099         * literal.c: Likewise.
4100         * read.c: Likewise.
4101         * sb.c: Likewise.
4102         * stabs.c: Likewise.
4103         * subsegs.c: Likewise.
4104
4105 2000-09-09  Philip Blundell  <philb@gnu.org>
4106
4107         * configure.in (arm*-*-uclinux*): New target.
4108         * configure: Regenerate.
4109
4110 2000-09-09  Kazu Hirata  <kazu@hxi.com>
4111
4112         * input-file.c: Fix formatting.
4113         * itbl-ops.c: Likewise.
4114         * messages.c: Likewise.
4115
4116 2000-09-08  Philip Blundell  <philb@gnu.org>
4117
4118         * config/tc-arm.c (md_apply_fix3): Correct handling of ADRL when
4119         offset is negative.
4120
4121 2000-09-07  H.J. Lu  <hjl@gnu.org>
4122
4123         * configure.in (AC_ISC_POSIX): Put after AC_CANONICAL_SYSTEM.
4124         * configure: Rebuild.
4125
4126 2000-09-07  Kazu Hirata  <kazu@hxi.com>
4127
4128         * atof-generic.c: Fix formatting.
4129         * config/tc-mips.c: Likewise.
4130         * config/tc-vax.c: Likewise.
4131         * input-scrub.c: Likewise.
4132
4133 2000-09-07  Alexandre Oliva  <aoliva@redhat.com>
4134
4135         * config/tc-sh.h (TARGET_FORMAT): Use sh-linux targets.
4136         * configure.in (sh-*-linux*): Added.
4137         * configure: Rebuilt.
4138
4139 2000-09-06  Kazu Hirata  <kazu@hxi.com>
4140
4141         * config/tc-hppa.c: Fix formatting.
4142
4143         * ecoff.c: Fix formatting.
4144
4145 2000-09-06  Alexandre Oliva  <aoliva@redhat.com>
4146
4147         * configure: Rebuilt with new libtool.m4.
4148
4149 2000-09-05  Kazu Hirata  <kazu@hxi.com>
4150
4151         * cgen.c: Fix formatting.
4152         * config/tc-ia64.c: Likewise.
4153
4154 2000-09-05  Nick Clifton  <nickc@redhat.com>
4155
4156         * aclocal.m4: Regenerate.
4157         * config.in: Regenerate.
4158         * configure: Regenerate.
4159         * po/gas.pot: Regenerate.
4160
4161 2000-09-05  Hans-Peter Nilsson  <hp@axis.com>
4162
4163         * config/tc-cris.c: Correct comment typos.
4164
4165 2000-09-05  Eric Christopher  <echristo@cygnus.com>
4166
4167         * config/tc-mn10300.c: Cleanup.
4168         (md_pcrel_from): Enable.
4169
4170 2000-09-05  Alan Modra  <alan@linuxcare.com.au>
4171
4172         * expr.c (operand): Fix a comment typo.
4173         * write.c (write_relocs): Fix a signed/unsigned warning.
4174
4175         * config/tc-hppa.c (fudge_reg_expressions): New
4176         (hppa_force_reg_syms_absolute): New.
4177         (pa_equ): Allow reg_section expressions.
4178         * config/tc-hppa.c (md_optimize_expr): Define.
4179         (hppa_force_reg_syms_absolute): Prototype.
4180
4181         * config/tc-hppa.c (pa_11_fp_reg_struct): Delete.
4182         (pa_parse_number): Pass in arg to select fp reg parsing.
4183         Return 1 to indicate format checks pass.  If strict, then only
4184         accept a register or register symbol.  Return value in...
4185         (pa_number): New static for pa_parse_number.
4186         (FP_REG_BASE): Define.
4187         (FP_REG_RSEL): Define.
4188         (pre_defined_registers): Apply FP_REG_BASE and FP_REG_RSEL as
4189         appropriate.  White space changes.
4190         (need_pa11_opcode): Don't bother passing any params, get them from
4191         globals instead.
4192         (pa_ip): Modify all calls to pa_parse_number and need_pa11_opcode.
4193         Remove extraneous check in case 'Q'.
4194         (pa_equ): Modify call to pa_parse_number to do strict parsing. If
4195         reg, set section of resulting symbol to reg_section.
4196         (pa_parse_space_stmt): Modify call to pa_parse_number.
4197         (pa_space): Likewise.
4198
4199         * config/tc-hppa.c: (md_apply_fix): Handle vtable relocs.
4200         (hppa_force_relocation): Handle vtable relocs.
4201         (pa_vtable_entry): New.
4202         (pa_vtable_inherit): New.
4203         (md_pseudo_table): Add entries for vtable pseudos.
4204         (hppa_fix_adjustable): Reject reduction of R_PARISC_GNU_VTINHERIT
4205         and R_PARISC_GNU_VTENTRY relocs.  Reject reduction of relocs
4206         against weak syms.
4207         (tc_gen_reloc): Remove ELF_ARG_RELOC_INSN code.
4208         (pa_type_args): Don't call symbol_get_bfdsym multiple times.
4209         Set STT_PARISC_MILLICODE for OBJ_ELF when encountering a
4210         millicode import.
4211         * config/obj-elf.c (obj_elf_type): Allow md_elf_symbol_type to
4212         specify a symbol type.
4213
4214         * config/tc-hppa.h: Reorganize file a little, grouping OBJ_ELF
4215         dependent things together.
4216         (md_elf_symbol_type): Define.
4217
4218         * config/tc-hppa.c (fix_new_hppa): Elide "$PIC_pcrel$0" pseudo
4219         symbol.
4220         * config/tc-hppa.h (tc_frob_symbol): Elide "$PIC_pcrel$0" here too.
4221
4222         * config/obj-elf.h (obj_elf_vtable_inherit): Declare.
4223         (obj_elf_vtable_entry): Declare.
4224
4225         * config/obj-elf.c (obj_elf_vtable_inherit): Return struct fix *
4226         and export function.
4227         (obj_elf_vtable_entry): Similarly.
4228         (elf_pseudo_table): Fix the damage with a cast.
4229
4230 2000-09-03  Richard Henderson  <rth@cygnus.com>
4231
4232         * config/tc-ia64.c (emit_one_bundle): Stop collecting insns
4233         for template selection when a label is needed.
4234
4235 2000-09-02  Kazu Hirata  <kazu@hxi.com>
4236
4237         * config/tc-ia64.c: Fix formatting.
4238
4239 2000-09-02  Nick Clifton  <nickc@redhat.com>
4240
4241         * configure.in: Increase version number to 2.10.91.
4242         * configure: Regenerate.
4243         * aclocal.m4: Regenerate.
4244         * config.in: Regenerate.
4245         * po/gas.pot: Regenerate.
4246         * Makefile.in: Regenerate.
4247
4248 2000-09-01  Alexandre Oliva  <aoliva@redhat.com>
4249
4250         * config/tc-sh.h [OBJ_ELF] (TC_FIX_ADJUSTABLE): Define.
4251         * config/tc-sh.c (md_apply_fix): Map 32-bit relocations that
4252         become PC-relative to BFD_RELOC_32_PCREL.  Reject 16- or 8-bit
4253         similar relocs.
4254         (sh_obj_adjustable): Return 1 for PC-relative offsets used in
4255         branches.
4256
4257 2000-09-01  Niibe Yutaka  <gniibe@m17n.org>, Kaz Kojima  <kkojima@rr.iij4u.or.jp>, Alexandre Oliva  <aoliva@redhat.com>
4258
4259         * config/tc-sh.h (DIFF_EXPR_OK, GLOBAL_OFFSET_TABLE_NAME,
4260         TC_RELOC_GLOBAL_OFFSET_TABLE, TC_RELOC_RTSYM_LOC_FIXUP): Define.
4261         * config/tc-sh.c (sh_elf_cons, sh_elf_suffix): New functions.
4262         [OBJ_ELF] (md_pseudo_table) <long, int, word, short>: Use them.
4263         (GOT_symbol): New variable.
4264         (md_undefined_symbol): Set it.
4265
4266 2000-09-01  Richard Henderson  <rth@cygnus.com>
4267
4268         * config/tc-ia64.c (match): Don't inline.
4269         (extra_goodness): New.
4270         (md_begin): Prefer nop.f and nop.b for best_template.
4271
4272 2000-08-31  Kazu Hirata  <kazu@hxi.com>
4273
4274         * as.c: Fix formatting.
4275         * cond.c: Likewise.
4276         * frags.c: Likewise.
4277         * macro.c: Likewise.
4278
4279 2000-08-31  Eric Christopher  <echristo@cygnus.com>
4280
4281         * config/tc-mn10300.c:  Cleanup and fix warnings.
4282         (md_pseudo_table): Add initializers.
4283         (md_show_usage): Cleanup.
4284         (md_parse_option): Fix warnings.
4285         (md_undefined_symbol): Fix warnings.
4286         (md_conver_frag): Fix warnings.
4287         (tc_gen_reloc): Fix warnings.
4288         (md_apply_fix3): Fix warnings.
4289         (check_operand): Fix warnings.
4290
4291 2000-08-31  Alexandre Oliva  <aoliva@redhat.com>
4292
4293         * acinclude.m4: Include libtool and gettext macros from the
4294         top level.
4295         * aclocal.m4, configure: Rebuilt.
4296
4297 2000-08-30  Mark Hatle  <mhatle@mvista.com>
4298
4299         * config/tc-ppc.c (md_parse_option): Recognize -m405.
4300
4301 2000-08-31  Kazu Hirata  <kazu@hxi.com>
4302
4303         * listing.c: Fix formatting.
4304
4305 2000-08-29  Kazu Hirata  <kazu@hxi.com>
4306
4307         * app.c: Fix a comment typo.  Fix formatting.
4308
4309 2000-08-25  J. David Anglin  <dave@hiauly1.hia.nrc.ca>
4310
4311         * config/tc-vax.c (md_convert_frag): Correctly calculate the pc relative
4312         offset of the target destination for jmp instructions.
4313         (md_assemble): Change mode to VAX_ABSOLUTE_MODE as per comments.
4314
4315 2000-08-24  Hans-Peter Nilsson  <hp@axis.com>
4316
4317         * NEWS: Mention support for CRIS.
4318
4319 Thu Aug 24 20:41:05 2000  Denis Chertykov  <denisc@overta.ru>
4320
4321         * config/tc-avr.h (TC_IMPLICIT_LCOMM_ALIGNMENT): New macros.
4322         Sets `.lcomm' alignment to zero.
4323
4324 2000-08-23  Alexandre Oliva  <aoliva@redhat.com>
4325
4326         * config/tc-i386.h (OBJ_MAYBE_ELF, OBJ_MAYBE_COFF,
4327         TC_FIX_ADJUSTABLE): Define.
4328
4329 2000-08-23  Jim Wilson  <wilson@cygnus.com>
4330
4331         * config/tc-ia64.c (output_unw_records): Set U & E flags only if
4332         unwind.personality_routine is set.
4333
4334 2000-08-23  H.J. Lu  <hjl@gnu.org>
4335
4336         * write.c (TC_FIX_ADJUSTABLE): Remove the duplicate.
4337
4338 2000-08-23  Alexandre Oliva  <aoliva@redhat.com>
4339
4340         * config/tc-i386.h (TC_FIX_ADJUSTABLE): Do *NOT* define if target
4341         environment is pe.
4342
4343 2000-08-22  H.J. Lu  <hjl@gnu.org>
4344
4345         * config.in (STRICTCOFF): New for strict COFF.
4346
4347         * configure.in: Define STRICTCOFF for i386-*-msdosdjgpp*,
4348         i386-*-go32* and i386-go32-rtems*.
4349         * configure: Rebuilt.
4350
4351         * config/obj-coff.c (obj_coff_endef): Follow the historical
4352         behavior if STRICTCOFF is not defined.
4353
4354         * doc/internals.texi: Document STRICTCOFF.
4355
4356 2000-08-22  Alexandre Oliva  <aoliva@redhat.com>
4357
4358         * write.c (TC_FIX_ADJUSTABLE): Define to 1, if not defined.
4359         (fixup_segment) Use it instead of TC_DONT_FIX_NON_ADJUSTABLE.
4360         * config/tc-i386.h (TC_DONT_FIX_NON_ADJUSTABLE): Remove.
4361         <OBJ_ELF, OBJ_COFF, TE_PE> (TC_FIX_ADJUSTABLE): Define.
4362         * config/tc-arm.h (TC_DONT_FIX_NON_ADJUSTABLE): Remove.
4363         <OBJ_ELF> (TC_FIX_ADJUSTABLE): Define.
4364         * config/tc-i960.h, config/tc-m68k.h, config/tc-v850.h:
4365         Likewise.
4366
4367 2000-08-22  Eric Christopher  <echristo@cygnus.com>
4368
4369         * config/tc-mn10300.c: (md_apply_fix): New function.
4370         (mn10300_force_relocation): New function.
4371         (mn10300_fix_adjustable): New function.
4372
4373         * config/tc-mn10300.h: (TC_FORCE_RELOCATION): Define.
4374         (TC_HANDLES_FX_DONE): Define.
4375         (obj_fix_adjustable): Define.
4376         (MD_APPLY_FIX3): Define.
4377         (TC_LINKRELAX_FIXUP): Define.
4378
4379         * write.c: (TC_LINKRELAX_FIXUP):  Define if not
4380         previously defined.
4381         (fixup_segment): Use TC_LINKRELAX_FIXUP.
4382
4383         * doc/internals.texi: Document TC_LINKRELAX_FIXUP.
4384
4385 2000-08-21  Jason Eckhardt  <jle@cygnus.com>
4386
4387         * config/tc-i860.c (md_apply_fix3): Do not insert the immediate
4388         if the fixup resulted in a relocation.
4389
4390 2000-08-18  Nick Clifton  <nickc@redhat.com>
4391
4392         * config/tc-arm.c (decode_shift): Replace as_tsktsk with as_warn.
4393         Make reference to first element of shift_names explicit.
4394
4395 2000-08-18  Alexandre Oliva  <aoliva@redhat.com>
4396
4397         * write.c (fixup_segment) [TC_DONT_FIX_NON_ADJUSTABLE]: Use
4398         obj_fix_adjustable() and tc_fix_adjustable() to tell whether to
4399         add a symbol's address.  Removed all target-specific #ifdefs that
4400         used to accomplished the same.
4401         * config/tc-v850.h (TC_DONT_FIX_NON_ADJUSTABLE): Define.
4402         * config/tc-m68k.h (TC_DONT_FIX_NON_ADJUSTABLE): Define.
4403         * config/tc-arm.h (TC_DONT_FIX_NON_ADJUSTABLE): Define.
4404         * config/tc-i960.h (TC_DONT_FIX_NON_ADJUSTABLE): Define.
4405         * config/tc-i386.h (TC_DONT_FIX_NON_ADJUSTABLE): Define.
4406
4407 2000-08-17  Kazu Hirata  <kazu@hxi.com>
4408
4409         * dwarf2dbg.c: Fix formatting.
4410
4411 2000-08-17  Nick Clifton  <nickc@redhat.com>
4412
4413         * config/tc-arm.c (decode_shift): Allow illegal shifts by zero
4414         to be recoded as logical shift lefts by zero.
4415
4416 2000-08-16  Jim Wilson  <wilson@cygnus.com>
4417
4418         * config/tc-ia64.c (specify_resource, case IA64_RS_GR): Handle
4419         postincrement modified registers.  Handle IA64_OPND_R3_2 addl
4420         source registers.
4421         (note_register_values): Handle IA64_OPND_R3_2 operands.
4422
4423 2000-08-16  Jason Eckhardt  <jle@cygnus.com>
4424
4425         * config/tc-i860.c (md_operand): Silly typo fixed.
4426
4427 2000-08-16  Nick Clifton  <nickc@redhat.com>
4428
4429         * config/tc-arm.c (struct asm_shift): Delete.
4430         (shift[]): Delete.
4431         (enum asm_shift_index): New.
4432         (struct asm_shift_properties): New.
4433         (struct asm_shift_name): New.
4434         (shift_properties[]); New.
4435         (shift_names[]); New.
4436
4437         (decode_shift): Use new structures.
4438         Issue a warning is "ROR #0" is used.
4439         Issue a warning if "ASR #0" or "LSR #0" is used.
4440
4441         (md_begin): Initialise arm_shift_hsh table from new
4442         asm_shift_name array.
4443
4444 2000-08-16  Jakub Jelinek  <jakub@redhat.com>
4445
4446         * config/tc-sparc.c: Kill all warnings.
4447         (md_parse_option): Set -32/-64 for -xarch=, allow all -A archs
4448         in -xarch= as well.
4449         (md_show_usage): Update usage text.
4450
4451 2000-08-16  Nick Clifton  <nickc@redhat.com>
4452
4453         * config/tc-arm.c (do_bx): Warn about "bx px" not being very
4454         useful.
4455
4456 2000-08-15  Will Cohen  <wcohen@redhat.com>
4457
4458         * config/tc-sh.h (DWARF2_LINE_MIN_INSN_LENGTH): Defined.
4459
4460         * config/tc-sh.c (md_assemble): Changed so debug_type
4461         test performed for ppi_assemble
4462         * config/tc-sh.c: Included dwarf2dbg.h.
4463         (debug_line): Defined.
4464         (md_assemble): Generates dwarf2 line info.
4465         (sh_finalize): New function.  Finalize dwarf2 info.
4466         (assemble_ppi): Returns size of code generated.
4467         (build_Mytes): Returns size of code generated.
4468         (md_pseudo_table): Added "file" and "loc" psuedo ops.
4469         * config/tc-sh.h (md_end): Defined.
4470         (sh_finalize): Declared.
4471
4472 2000-08-15  Alexandre Oliva  <aoliva@redhat.com>
4473
4474         * config/tc-sh.c (md_apply_fix) [BFD_RELOC_32, BFD_RELOC_16]: Use
4475         md_number_to_chars.
4476
4477 2000-08-14  Nick Clifton  <nickc@redhat.com>
4478
4479         * config/tc-arm.c (do_bx): Allow "bx pc".
4480
4481 2000-08-14  Jim Wilson  <wilson@cygnus.com>
4482
4483         * config/tc-ia64.c (md_longopts): Add -mconstant-gp and -mauto-pic.
4484         (md_parse_option):  Add OPTION_MCONSTANT_GP and OPTION_MAUTO_PIC.
4485         (md_begin): Change assignment to md.flag to OR in the new bit.
4486
4487 2000-08-14  Mark Elbrecht  <snowball3@bigfoot.com>
4488
4489         * config/obj-coff.c (obj_coff_endef) [BFD_ASSEMBLER]: Set the debug
4490         flag for storage types C_ARG, C_REGPARM, C_FIELD, C_MOS, C_MOE,
4491         C_MOU, and C_EOS.
4492
4493 2000-08-14  Jason Eckhardt  <jle@cygnus.com>
4494
4495         * NEWS: Mention i860 support.
4496
4497 Mon Aug 14 11:49:12 2000  Jeffrey A Law  (law@cygnus.com)
4498
4499         * config/tc-mn10300.h (DWARF2_LINE_MIN_INSN_LENGTH): Define.
4500
4501 2000-08-14  Andreas Schwab  <schwab@suse.de>
4502
4503         * doc/c-arm.texi (ARM Directives): Fix warnings from makeinfo.
4504
4505 2000-08-11  Andreas Schwab  <schwab@suse.de>
4506
4507         * doc/c-i860.texi (Opcodes for i860): Remove braces from @item
4508         argument.
4509
4510 2000-08-11  Kazu Hirata  <kazu@hxi.com>
4511
4512         * expr.c: Fix formatting.
4513         * config/obj-bout.c: Likewise.
4514
4515 2000-08-10  Jason Eckhardt  <jle@cygnus.com>
4516
4517         * doc/c-i860.texi: Flesh out the i860 section more.
4518
4519 2000-08-10  Kazu Hirata  <kazu@hxi.com>
4520
4521         * symbols.c: Fix formatting.
4522         * expr.c: Likewise.
4523
4524 Wed Aug  9 16:28:21 EDT 2000    Diego Novillo <dnovillo@cygnus.com>
4525
4526         * config/tc-i386.c (md_assemble): Skip suffix check if the opcode
4527         modifier has the IgnoreSize bit set.
4528
4529 2000-08-09  Alan Modra  <alan@linuxcare.com.au>
4530
4531         From  Rodney Brown  <RodneyBrown@mynd.com>
4532         * configure.in: Use elf on Unixware 7 (i586-sco-sysv5uw7.1.0)
4533         * configure: Regenerate.
4534
4535 2000-08-09  Kazu Hirata  <kazu@hxi.com>
4536
4537         * hash.c: Fix formatting.
4538         * gasp.c: Likewise.
4539
4540 2000-08-08  Jason Eckhardt  <jle@cygnus.com>
4541
4542         * config/tc-i860.h: Rework completely for BFD_ASSEMBLER.
4543         (i860_fix_info): New enum.
4544         (MD_APPLY_FIX3): Define.
4545         (WORKING_DOT_WORD): Define.
4546         (TC_HANDLES_FX_DONE): Define.
4547         (DIFF_EXPR_OK): Define.
4548         (LISTING_HEADER): Define.
4549         (TARGET_FORMAT): Select target format based on endian flag.
4550         (TARGET_BYTES_BIG_ENDIAN): Default to little endian.
4551         (target_big_endian): Add external declaration.
4552
4553         * config/tc-i860.c: All existing code reworked completely. Other
4554         new code shown below.
4555         (SYNTAX_SVR4): Define.
4556         (target_warn_expand): New variable.
4557         (md_shortopts): Declare and define (-Qy, -Qn, and -V options).
4558         (md_longopts): Declare and define with new options (-EL, -EB,
4559         and -mwarn-expand).
4560         (md_show_usage): New function.
4561         (md_operand): New function.
4562         (obtain_reloc_for_imm16): New function.
4563         (md_apply_fix3): New function.
4564         (tc_gen_reloc): New function.
4565
4566 2000-08-08  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
4567
4568         * config/tc-m68hc11.c (build_jump_insn): Make sure the
4569         2 bytes of the jump address are in the same frag.
4570         (find): Accept 68hc12 register indirect modes.
4571
4572         * NEWS: Mention 68HC11 & 68HC12 support.
4573
4574 2000-08-07  Richard Henderson  <rth@cygnus.com>
4575
4576         * config/tc-ia64.c (unwind): Add prologue_mask member.
4577         (dot_vframe): Elide psp_gr record if it overlaps prologue_gr.
4578         (dot_save): Likewise for pfs_gr, rp_gr, and preds_gr.
4579         (dot_body): Clear unwind.prologue_mask.
4580         (dot_prologue): Set it.  Accept a register second argument.
4581
4582 2000-08-07  Kazu Hirata  <kazu@hxi.com>
4583
4584         * config/atof-ieee.c: Fix formatting.
4585         * config/atof-tahoe.c: Likewise.
4586
4587 2000-08-06  Nick Clifton  <nickc@cygnus.com>
4588
4589         * config/tc-sparc.c (md_begin): Fix typo in recent formatting
4590         work.
4591
4592         * doc/as.texinfo (Pseudo Ops): Update to include descriptions
4593         of .popsection, .previous, .pushsection, .subsection,
4594         .version, .vtable_entry, .vtable_inherit and .weak.
4595
4596 2000-08-05  Kazu Hirata  <kazu@hxi.com>
4597
4598         * config/tc-cris.c: Fix formatting.
4599         * config/tc-i386.c: Likewise.
4600         * config/tc-sparc.c (sparc_ip): Simplify the code.
4601
4602 2000-08-04  Kazu Hirata  <kazu@hxi.com>
4603
4604         * config/tc-cris.c: Rearrange code for readability.
4605         * config/tc-d10v.c: Fix formatting.
4606         * config/tc-m32r.c: Likewise.
4607         * config/tc-sparc.c: Likewise.
4608
4609 2000-08-02  Jim Wilson  <wilson@cygnus.com>
4610
4611         * config/tc-ia64.c (emit_one_bundle): Call ia64_free_opcode
4612         before ia64_find_opcode.
4613         (md_assemble): Likewise.
4614
4615 2000-08-01  Nick Clifton  <nickc@cygnus.com>
4616
4617         * config/tc-arm.c (do_mrs): Fix skip of 'cpsr_all' flag.
4618         Undo some formatting fixes.
4619
4620 2000-08-01  Kazu Hirata  <kazu@hxi.com>
4621
4622         * config/obj-som.c: Fix formatting.
4623         * config/obj-ieee.c: Likewise.
4624         * config/tc-arm.c: Likewise.
4625         * config/tc-v850.c: Likewise.
4626
4627 2000-08-01  Nick Clifton  <nickc@redhat.com>
4628
4629         * doc/c-m68k.texi (section M680x0 Options): Turn into a table
4630         index by command line option.
4631
4632 2000-08-01  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
4633
4634         * doc/c-m68k.texi (@cindex @samp{--pcrel}): Rewrite option description.
4635         (@node M68K-Branch): Rewrite to match the reality.
4636
4637 2000-07-31  Jason Eckhardt  <jle@cygnus.com>
4638
4639         * doc/c-i860.texi: New file.
4640         * doc/Makefile.am (CPU_DOCS): Add c-i860.texi.
4641         * doc/Makefile.in: Regenerate.
4642         * doc/all.texi: Add I860 as relevant architecture.
4643         * doc/as.texinfo: Include i860 dependent file c-i860.texi.
4644
4645 2000-07-31  Kazu Hirata  <kazu@hxi.com>
4646
4647         * config/tc-d30v.c: Fix formatting.
4648
4649 2000-07-31  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
4650
4651         * config/tc-m68k.c (flag_keep_pcrel, OPTION_PCREL): Add --pcrel option.
4652         (md_convert_frag_1, md_estimate_size_before_relax): When making DBcc
4653         long emit a long branch if available instead of an absolute jump, never
4654         emit absolute jumps for anything with --pcrel.
4655
4656         * doc/c-m68k.texi: Document new command line option.
4657
4658 2000-07-29  Marek Michalkiewicz  <marekm@linux.org.pl>
4659
4660         * config/tc-avr.c: Use PARAMS macro in function declarations.
4661         Don't declare md_pcrel_from_section (already in tc-avr.h).
4662         (avr_operands): Use AVR_UNDEF_P and AVR_SKIP_P macros.
4663         (avr_operand): Don't set (unsigned) op_mask to -1.
4664
4665 2000-07-28  Jason Eckhardt  <jle@cygnus.com>
4666
4667         * configure.in: Add bits for i860-stardent-{sysv4, elf}*.
4668         * configure: Regenerated.
4669         * config/obj-elf.c (obj_elf_type): Recognize a fifth type
4670         of operand to the .type directive (.e.g, "type").
4671
4672 2000-07-28  Alan Modra  <alan@linuxcare.com.au>
4673
4674         * as.h (warn_comment, found_comment, found_comment_file): Declare.
4675         * app.c (do_scrub_chars): Record where first comment found.
4676         * read.c (read_a_source_file): Init found_comment on entry, and
4677         notify whether comments found on exit.
4678         * config/tc-hppa.c (md_shortopts): Add "c".
4679         (md_longopts): Add warn-comment.
4680         (md_parse_option): Handle it.
4681         (md_show_usage): Show available options.
4682         * config/tc-hppa.h (WARN_COMMENTS): Define if TE_LINUX
4683
4684 Thu Jul 27 11:25:01 2000  Andrew Cagney  <cagney@b1.cygnus.com>
4685
4686         * config/tc-mn10300.c (md_convert_frag): Fix printfs.
4687         (tc_gen_reloc): Add cast when assigning bfd_abs_symbol to
4688         sym_ptr_ptr
4689         (md_estimate_size_before_relax): Don't fall off end of function.
4690
4691 2000-07-27  Kazu Hirata  <kazu@hxi.com>
4692
4693         * config/tc-avr.c: Fix formatting.
4694         * config/tc-ns32k.c: Likewise.
4695
4696 2000-07-27  Alan Modra  <alan@linuxcare.com.au>
4697
4698         * config/tc-d10v.c (find_opcode): Remove extraneous `='.
4699
4700 2000-07-27  Kazu Hirata  <kazu@hxi.com>
4701
4702         * config/tc-d10v.c: Fix formatting.
4703         * config/tc-z8k.c: Likewise.
4704         * config/tc-sparc.c: Likewise.
4705
4706 2000-07-26  Dave Brolley  <brolley@redhat.com>
4707
4708         * cgen.c (queue_fixup): Declare opinfo.
4709         (gas_cgen_parse_operand): Mark unused parameters with ATTRIBUTE_UNUSED.
4710         (gas_cgen_md_operand): Ditto.
4711         (gas_cgen_md_apply_fix3): Ditto.
4712
4713 2000-07-24  Mark Elbrecht  <snowball3@bigfoot.com>
4714
4715         * config/obj-coff.c (obj_frob_symbol): Don't merge
4716         labels. Don't merge if the symbol isn't constant. Return
4717         immediately if a symbol is merged.
4718
4719 2000-07-22  Alan Modra  <alan@linuxcare.com.au>
4720
4721         * frags.c (frag_align): Correct absolute section alignment.
4722
4723 2000-07-20  DJ Delorie  <dj@redhat.com>
4724
4725         * config/obj-coff.c (obj_frob_symbol): revert previous change,
4726         it breaks linking against DLLs.
4727
4728 2000-07-20  Hans-Peter Nilsson  <hp@axis.com>
4729
4730         * configure.in: Add CRIS support.
4731         * configure: Regenerate.
4732         * Makefile.am: (CPU_TYPES): Add cris.
4733         (CPU_OBJ_VALID) [aout]: Add cris.
4734         (MULTI_CPU_TYPES): Add cris.
4735         (MULTI_CPU_OBJ_VALID) [aout]: Add cris.
4736         [coff]: Only i386 and mips are valid.
4737         (TARGET_CPU_CFILES): Add config/tc-cris.c.
4738         (TARGET_CPU_HFILES): Add config/tc-cris.h.
4739         (MULTI_CFILES): Add config/e-crisaout.c and config/e-criself.c.
4740         Regenerate dependencies.
4741         * Makefile.in: Regenerate.
4742         * aclocal.m4: Regenerate.
4743         * as.c: Declare crisaout, criself.
4744         * config/tc-cris.h, config/tc-cris.c: New.
4745         * config/e-criself.c, config/e-crisaout.c: New.
4746         * po/POTFILES.in, po/gas.pot: Regenerate.
4747
4748 2000-07-20  Kazu Hirata  <kazu@hxi.com>
4749
4750         * read.c: Fix formatting.
4751         * write.c: Fix formatting.
4752
4753 2000-07-19  H.J. Lu  <hjl@gnu.org>
4754
4755         * sb.c: Include <stdlib.h> if exists for abort ().
4756
4757 2000-07-19  Alan Modra  <alan@linuxcare.com.au>
4758
4759         * config/tc-hppa.c (hppa_fix_adjustable): Correct LR%/RR% comment.
4760         (arg_reloc_stub_needed): #ifdef OBJ_SOM, not #ifdef SOM.
4761         (pa_type_args): Same here.
4762
4763 2000-07-17  Mark Elbrecht  <snowball3@bigfoot.com>
4764
4765         * config/obj-coff.c (obj_frob_symbol): Don't merge labels. Don't
4766         merge if the symbol isn't constant. Don't call S_SET_EXTERNAL if
4767         the storage class is already set.
4768
4769 2000-07-17  Kazu Hirata  <kazu@hxi.com>
4770
4771         * config/tc-m68hc11.c: Fix formatting.
4772         * config/tc-mn10200.c: Likewise.
4773         * config/tc-mn10300.c: Likewise.
4774         * config/tc-pj.c: Likewise.
4775         * config/tc-tic80.c: Likewise.
4776         * config/tc-w65.c: Likewise.
4777
4778 2000-07-17  Frank Ch. Eigler  <fche@redhat.com>
4779
4780         * expr.c (operand): Permit %bin literals if LITERAL_PREFIXPERCENT_BIN
4781         is defined.
4782
4783 2000-07-15  Ian Lance Taylor  <ian@zembu.com>
4784
4785         * doc/c-mips.texi (MIPS Opts): Remove erroneous space after
4786         @code.
4787
4788 2000-07-15  Alan Modra  <alan@linuxcare.com.au>
4789
4790         * config/tc-hppa.c (hppa_fix_adjustable): Use the same checks for
4791         ELF as are used for SOM (except the 32-bit reloc one) to decide
4792         whether a symbol can be reduced to a section symbol.  Expand on
4793         the comment for symbols involved in LR% and RR% expressions.
4794
4795 2000-07-14  Nick Clifton  <nickc@cygnus.com>
4796
4797         * config/tc-mips.c (mips_disable_float_construction): New
4798         static variable.  Set to true if doubles should not be
4799         constructed by loading two single width fp registers with
4800         halves of the value.
4801         (mips_ip): Test mips_disable_float_construction.
4802         (md_longopts): Add command line switches --construct-floats
4803         and --no-construct-floats.
4804         (md_parse_option): Parse new command line options.
4805         (md_show_usage): Describe new command line options.
4806
4807         * doc/c-mips.texi: Document new command line options.
4808
4809 2000-07-13  Koundinya K  <kk@ddeorg.soft.net>
4810
4811         * configure.in: Remove the test /usr/dde for mips-*-sysv4*MP*
4812         * configure: Regenerate.
4813
4814 2000-07-13  Hans-Peter Nilsson  <hp@axis.com>
4815
4816         * configure.in (DEFAULT_EMULATION setting): Revert part of
4817         2000-07-01 change that set te_multi=multi unless set to tmips.
4818         * configure: Regenerate.
4819
4820 2000-07-12  Mark Elbrecht  <snowball3@bigfoot.com>
4821
4822         * config/obj-coff.c (coff_frob_section): Add padding to the last
4823         section when aligning it increases its size.
4824
4825 2000-07-11  Kazu Hirata  <kazu@hxi.com>
4826
4827         * config/tc-tic54x.c: Fix formatting.
4828
4829 2000-07-10  Kazu Hirata  <kazu@hxi.com>
4830
4831         * config/tc-h8500.c: Fix formatting.
4832         * config/tc-tic54x.c: Fix formatting.
4833
4834 2000-07-10  Alan Modra  <alan@linuxcare.com.au>
4835
4836         * config/tc-hppa.c (md_apply_fix): Check fmt 12 and 22 pc-rel
4837         displacements correctly.
4838
4839         * read.h (s_abort): Add ATTRIBUTE_NORETURN.
4840
4841 2000-07-10  Ryan Bradetich  <rbradetich@uswest.net>
4842
4843         * hash.c (hash_insert): Add cast to obstruct_alloc to fix
4844         warning.
4845         (hash_jam): Ditto.
4846
4847 2000-07-09  Alan Modra  <alan@linuxcare.com.au>
4848
4849         From  David Huggins-Daines  <dhd@linuxcare.com>
4850         * config/te-hppalinux64.h: Add a new emulation.
4851         * configure.in (emulations): Add configure bits to support the
4852         64-bit Linux/parisc target.
4853         * configure: Regenerate.
4854
4855         * config/tc-hppa.c (md_parse_option): Support `-V' for ELF.
4856         (md_shortopts): Add `V' for ELF.
4857
4858         * config/tc-hppa.c (arg_reloc_stub_needed): Define as zero except
4859         when SOM or ELF_ARG_RELOC are defined.
4860         (pa_type_args): Only set symbol_arg_reloc_info when SOM or
4861         ELF_ARG_RELOC are defined.
4862         (pa_stringer_aux): Don't pa_check_current_space_and_subspace here..
4863         (pa_stringer): ..Do it here instead.  Fix comment typos.
4864         (hppa_force_relocation): Cast enums to int before comparing with
4865         ints.
4866
4867         From  Ryan Bradetich  <rbradetich@uswest.net>
4868         * config/tc-hppa.c: Removed unneeded libbfd.h to fix macro
4869         redifinition warning.
4870         (md_apply_fix): Added cast from enum to int for fixP->fx_r_type.
4871         (hppa_force_relocation): ditto
4872         (md_apply_fix): Added cast to buf to fix warnings.
4873
4874         * config/tc-hppa.h (pa_define_label, parse_cons_expression_hppa,
4875         cons_fix_new_hppa, hppa_force_relocation): Prototype.
4876
4877         * config/tc-hppa.c (reloc_type): It's an enum for OBJ_ELF.
4878         (R_N0SEL, R_N1SEL): Define only for OBJ_SOM.
4879         (tc_gen_reloc): Make `code' a reloc_type and `codes' a
4880         reloc_type** to avoid warnings in switch.
4881         (md_apply_fix): Make insn, val signed.  Zap buf_wd and read insn a
4882         little earlier instead.
4883
4884         * config/tc-hppa.c (symbol_arg_reloc_info): Define for both som
4885         and elf.
4886         (pa_type_args): Use symbol_arg_reloc_info.
4887         (struct pa_it): Make arg_reloc unsigned int.
4888         (struct hppa_fix_struct): Likewise for fx_arg_reloc.
4889         (pa_text, pa_data, pa_comm): Don't compile for TE_LINUX.
4890         (pa_code): Delete.  pa_text duplicates this function.
4891         (md_pseudo_table): Call obj_elf_text for ".code" if TE_LINUX.
4892         (fix_new_hppa): Argument offset is offsetT, arg_reloc is unsigned
4893         int.
4894         (cons_fix_new_hppa): Actually change selector to e_fsel when
4895         warning about assuming so.
4896         (tc_gen_reloc): More example elf arg reloc code.
4897         (md_apply_fix): Use arg_reloc_stub_needed for elf too.
4898         (hppa_force_relocation): Likewise.
4899
4900         * config/tc-hppa.h: Use TARGET_ARCH_SIZE to select target include
4901         files.
4902         (pa_end_of_source): Prototype.
4903         (hppa_fix_adjustable): Prototype.
4904         (LABELS_WITHOUT_COLONS): Move it..
4905         * config/te-hppa.h: To here.
4906
4907         * config/te-hppa64.h: New file.
4908
4909         * config/tc-hppa.c: Use TARGET_ARCH_SIZE to select target reloc
4910         type.
4911         (md_apply_fix): Pass stdoutput to bfd_hppa_insn2fmt.  Handle
4912         format -10, -16, 16 relocs.
4913         (hppa_elf_mark_end_of_function): Test for null
4914         last_call_info->start_symbol
4915
4916         * config/tc-hppa.c (pa_ip): In case 'V', pass `strict' to
4917         CHECK_FIELD, not INSERT_FIELD_AND_CONTINUE.  Don't pass opcode to
4918         re_assesmble_* functions.  Delete extraneous statements.  Fix
4919         typos in comments.
4920         (md_apply_fix): Compare against 1048575 in case 21.  Don't pass
4921         insn to re_assemble_*.
4922
4923 2000-07-08  Ulf Carlsson  <ulfc@engr.sgi.com>
4924
4925         * doc/internals.texi (Expressions): Fix typo.
4926
4927 2000-07-08  Kazu Hirata  <kazu@hxi.com>
4928
4929         * config/tc-sh.c: Fix formatting.
4930         * config/tc-tic54x.c: Fix formatting.
4931         * depend.c: Fix formatting.
4932         * flonum-konst.c: Likewise.
4933         * flonum-mult.c: Likewise.
4934
4935 2000-07-07  Kazu Hirata <kazu@hxi.com>
4936
4937         * config/tc-sh.c: Fix comments.
4938         * config/obj-vms.c: Fix comments.
4939         * config/tc-a29k.c: Likewise.
4940         * config/tc-alpha.c: Likewise.
4941         * config/tc-h8300.c: Likewise.
4942         * config/tc-h8500.c: Likewise.
4943         * config/tc-i370.c: Likewise.
4944         * config/tc-ia64.c: Likewise.
4945         * config/tc-m68hc11.c: Likewise.
4946         * config/tc-m68k.c: Likewise.
4947         * config/tc-mips.c: Likewise.
4948         * config/tc-ns32k.c: Likewise.
4949         * config/tc-ppc.c: Likewise.
4950         * config/tc-z8k.c: Likewise.
4951
4952 2000-07-06  Mark Elbrecht  <snowball3@bigfoot.com>
4953
4954         * config/obj-coff.c (TC_COFF_SECTION_DEFAULT_ATTRIBUTES): New.
4955         Default to '(SEC_LOAD | SEC_DATA)'.
4956         (obj_coff_section) [BFD_ASSEMBLER]: Use it.
4957
4958         * doc/internals.texi (CPU Backend): Describe
4959         TC_COFF_SECTION_DEFAULT_ATTRIBUTES.
4960
4961 Thu Jul  6 17:20:58 2000  Andrew Cagney  <cagney@b1.cygnus.com>
4962
4963         * as.c (parse_args): NULL terminate the long option list.
4964
4965 Tue Jul  4 14:08:28 2000  Andrew Cagney  <cagney@b1.cygnus.com>
4966
4967         * config/tc-d30v.h: Include "write.h" for fixS.
4968         (d30v_start_line, md_pcrel_from_section): Add function prototypes.
4969
4970 2000-07-05  Nick Clifton  <nickc@cygnus.com>
4971
4972         * config/tc-d30v.c (write_2_short): Further changes to warning
4973         messages produced when combining EITHER_BUT_PREFER_MU attributed
4974         opcodes.
4975
4976 2000-07-05  DJ Delorie  <dj@redhat.com>
4977
4978         * MAINTAINERS: new
4979
4980 2000-07-04  Alexandre Oliva  <aoliva@redhat.com>
4981
4982         * config/tc-arm.c (psrs): Accept combinations of flags.
4983
4984 2000-07-03  Marek Michalkiewicz  <marekm@linux.org.pl>
4985
4986         * config/tc-avr.c: Change _ () to _() around all strings marked
4987         for translation (exception from the usual coding style).
4988         (avr_opt): New struct variable, how the new switches are set.
4989         (OPTION_MMCU): Define as 'm' and actually use.
4990         (md_longopts): Add -mall-opcodes, -mno-skip-bug, -mno-wrap.
4991         (show_mcu_list): New function, display the list of known MCUs.
4992         (md_show_usage): Document the new switches.  Call show_mcu_list.
4993         (avr_set_arch): Change 'm' to OPTION_MMCU.
4994         (md_parse_option): Call show_mcu_list if unknown MCU specified.
4995         Handle the new switches.
4996         (avr_operands): Disable warnings for undefined combinations of
4997         operands if -mall-opcodes.  Disable warnings for skipping two-word
4998         instructions if enhanced core or -mno-skip-bug.
4999         (avr_operand): Accept all addressing modes on avr1 if -mall-opcodes.
5000         (md_apply_fix3): Reject 8K wrap if >8K or -mno-wrap.
5001         (md_assemble): Accept opcodes not supported by MCU if -mall-opcodes.
5002         (avr_ldi_expression): Warn about implicit lo8().
5003         * config/tc-avr.h (md_pcrel_from_section): Add prototype.
5004
5005 2000-07-01  Koundinya K  <kk@ddeorg.soft.net>
5006
5007         * configure.in: Add entry for mips-*-sysv4*MP*
5008         * configure: Rebuild
5009         * config/tc-mips.c (mips_target_format): Return elf32-tradbigmips or
5010         elf32-tradlittlemips for traditional mips targets.
5011         * config/tc-mips.c (md_estimate_size_before_relax): Duplicate the
5012         test for Link Once sections as in adjust_reloc_syms.
5013         * config/te-tmips.h: New file for traditional mips targets. Define
5014         TE_TMIPS.
5015
5016 2000-06-29 Mark Elbrecht <snowball3@bigfoot.com>
5017
5018         * config/obj-coff.c (obj_coff_setcion) [BFD_ASSEMBLER]: If the
5019         flags argument is not present, don't change an existing section's
5020         section's attributes. If the flags argument is present, warn if the
5021         attributes don't match the section's current attributes. When
5022         long section names are supported, set SEC_LINK_ONCE and
5023         SEC_LINK_DUPLICATES_DISCARD for a new .gnu.linkonce section.
5024
5025 Thu Jun 29 21:30:00 2000  Hans-Peter Nilsson  <hp@axis.com>
5026
5027         * config/obj-aout.c (obj_aout_type): Do not ignore for undefined
5028         symbols; create them.
5029
5030 2000-06-29 Mark Elbrecht <snowball3@bigfoot.com>
5031
5032         * write.c (set_segment_vma): New: Set vma and lma for a segment.
5033         (write_object_file) [BFD_ASSEMBLER && OBJ_COFF && TE_GO32]: Use it.
5034
5035 2000-06-27  Aldy Hernandez  <aldyh@redhat.com>
5036
5037         * config/tc-mips.c (mips_ip): handle "(foo-.-4)" type of
5038         expressions.  Ignore the problem when handling 16 bit signed
5039         immediates, because the assembler will take care of the relocation
5040         later.
5041
5042 2000-06-27  Nick Clifton  <nickc@cygnus.com>
5043
5044         * config/tc-d30v.c (write_2_short): Do not allow opcodes with
5045         the EITHER_BUT_PREFER_MU attribute to be combined into a reverse
5046         sequential order, and emit warning messages if the input source
5047         code contains constructs like that, or parallel constructs
5048         containing such opcodes.
5049
5050 2000-06-26  Marek Michalkiewicz  <marekm@linux.org.pl>
5051
5052         * config/tc-avr.c (mcu_types): Rename avr4 to avr5, add avr4.
5053         Add more MCU types for avr4 and avr5.  Replace at94k{10,20,40}
5054         with just at94k.  Change AVR_ISA_85xx back to AVR_ISA_2xxx.
5055         (md_show_usage): Update usage message.
5056         (md_parse_option): Allow redefinition of MCU type within the
5057         same avr[1-5] bfd machine type.  Show both old and new MCU type
5058         in the error message.
5059         (md_apply_fix3): Support 8K wrap if AVR_ISA_MEGA is not set.
5060         Simplify 8K wrap code.
5061
5062 2000-06-25  Kazu Hirata  <kazu@hxi.com>
5063
5064         * config/obj-aout.c: Remove all uses of DEFUN.
5065         * config/obj-ieee.c: Likewise.
5066         * config/tc-sh.c: Fix comment typos.
5067         * config/tc-tahoe.c: Likewise.
5068         * config/tc-vax.c: Likewise.
5069         * config/tc-w65.c: Likewise.
5070         * config/tc-z8k.c: Likewise.
5071         * config/tc-h8300.c (build_bytes): Assemble ldmac correctly.
5072
5073 2000-06-24  DJ Delorie  <dj@cygnus.com>
5074
5075         * config/tc-i386.c (md_estimate_size_before_relax): Revert
5076         more changes from Sept 1999
5077         (tc_i386_fix_adjustable): ditto
5078         (md_apply_fix3): ditto
5079
5080 2000-06-24  Frank Ch. Eigler  <fche@redhat.com>
5081
5082         * cgen.c (expr_jmp_buf_p): New validity flag for expr_jmp_buf.
5083         (gas_cgen_parse_operand): Set it around expression() call.
5084         (gas_cgen_md_operand): Test for it before longjmp().
5085
5086 2000-06-24  Kazu Hirata  <kazu@hxi.com>
5087
5088         * config/tc-h8500.c: Remove all uses of DEFUN.
5089         * config/tc-sh.c: Likewise.
5090         * config/tc-w65.c: Likewise.
5091         * config/tc-z8k.c: Likewise.
5092
5093         * config/tc-h8500.c: Fix typos in comments.
5094
5095 2000-06-23  Frank Ch. Eigler  <fche@redhat.com>
5096
5097         * expr.c (operand): Permit $hex literals if LITERAL_PREFIXDOLLAR_HEX
5098         is defined.
5099
5100 2000-06-23  matthew green  <mrg@redhat.com>
5101
5102         * expr.c (operand): Do not as_bad() if RELAX_PAREN_GROUPING is
5103         defined.  Fix error message for `[' grouping.
5104
5105 2000-06-22  Kazu Hirata  <kazu@hxi.com>
5106
5107         * config/tc-h8300.c: Fix formatting and comment typos.
5108
5109 2000-06-22  Timothy Wall  <twall@cygnus.com>
5110
5111         * config/tc-ia64.c (note_register_values): Move premature QP
5112         notation clearing into the appropriate place.
5113
5114 2000-06-22  Alan Modra  <alan@linuxcare.com.au>
5115
5116         * dep-in.sed: Escape literal `.'s on patterns.  Trim off `../'
5117         first before anything else.  Add bin-bugs.h, emul.h and progress.h
5118         Sort list of files as for $(OBJS) in Makefile.am.
5119
5120         * Makefile.am (DEP): grep for leading `/' in DEPA, and fail if we
5121         find one.  Remake dependencies.
5122         ($(OBJS)): Add bin-bugs.h, emul.h, and progress.h  Sort the list.
5123         * Makefile.in: Regenerate.
5124         * doc/Makefile.in: Regenerate.
5125
5126         * config/tc-i386.c (i386_displacement): Don't assume a constant
5127         displacement is necessarily 16 bits when in 16 bit code mode.
5128         (md_assemble): Instead size the displacement here after we know
5129         for sure that a .code16gcc operand hasn't automatically added
5130         operand size prefixes.
5131
5132 2000-06-21  H.J. Lu  <hjl@gnu.org>
5133
5134         * Makefile.am: Rebuild dependency.
5135         * Makefile.in: Rebuild.
5136
5137 2000-06-21  Kazu Hirata  <kazu@hxi.com>
5138
5139         * config/tc-h8300.c (parse_reg): Make the function static.
5140         (parse_exp): Likewise.
5141
5142 2000-06-20  DJ Delorie  <dj@cygnus.com>
5143
5144         * config/tc-i386.c (tc_i386_fix_adjustable): Revert change from
5145         Sept 1999; RVA relocs need to be treated more like DIR32 relocs
5146         for cygwin import libraries to work properly.
5147
5148 2000-06-20  H.J. Lu  <hjl@gnu.org>
5149
5150         * Makefile.am: Rebuild dependency.
5151         * Makefile.in: Rebuild.
5152         * configure: Likewise.
5153         * doc/Makefile.in: Likewise.
5154
5155 2000-06-20  Timothy Wall  <twall@cygnus.com>
5156
5157         * doc/internals.texi (CPU backend): Add @itemx for
5158         TC_START_LABEL_WITHOUT_COLON.
5159         * doc/c-tic54x.texi: New.
5160         * doc/as.texinfo: Add tic54x features and include primary tic54x
5161         documentation file.
5162         * doc/all.texi: Add C54X.
5163         * doc/Makefile.am (CPU_DOCS): Add c-tic54x.texi.
5164         * doc/Makefile.in: Regenerate.
5165         * configure.in: Add tic54x and define LIBM for tic54x.
5166         * configure: Regenrate.
5167         * config/tc-tic54x.[ch]: New.
5168         * config/obj-coff.h: Add tic54x.
5169         * Makefile.am: (CPU_TYPES): Add tic54x.
5170         (TARGET_CPU_CFILES): Add 'tc-tic54x.c'.
5171         (TARGET_CPU_HFILES): Add 'tc-tic54x.h'.
5172         (as_new_LDADD): Add $(LIBM).
5173         * Makefile.in: Regenerate.
5174
5175 2000-06-18  Stephane Carrez  <stcarrez@worldnet.fr>
5176
5177         * doc/Makefile.am (CPU_DOCS): Added 68hc11 file.
5178         * doc/c-m68hc11.texi: Document 68HC11 and 68HC12 port.
5179         * doc/as.texinfo: Likewise.
5180
5181         * configure, Makefile.in: Regenerate.
5182         * configure.in (emulations): Recognize m6811 and m6812.
5183         * Makefile.am (CPU_TYPES, TARGET_CPU_CFILES, TARGET_CPU_HFILES):
5184         Added files for 68hc11 and 68hc12 assembler.
5185         * config/tc-m68hc11.c: Assembler for 68hc11 and 68hc12.
5186         * config/tc-m68hc11.h: Header definition for that assembler.
5187
5188 2000-06-18  Nick Clifton  <nickc@redhat.com>
5189
5190         * symbols.c (resolve_symbol_value): Use bfd_octets_per_byte
5191         instead of OCTETS_PER_BYTE.
5192
5193         * config/tc-v850.c: Fix compile time warnings.
5194         * config/tc-ppc.c: Fix compile time warnings.
5195
5196 2000-06-18  H.J. Lu <hjl@gnu.org>
5197
5198         * configure.in: Don't emulate i386-pc-pe-coff with i386coff.
5199         * configure: Rebuild.
5200
5201 2000-06-17 Mark Elbrecht <snowball3@bigfoot.com>
5202
5203         * config/obj-coff.c (obj_coff_weak): Typo fix: Change BFD_ASSEMLER
5204         to BFD_ASSEMBLER.
5205
5206 2000-06-16  Nick Clifton  <nickc@cygnus.com>
5207
5208         * config/tc-mips.c (md_parse_option): Accept RM5200,RM5230,
5209         RM5231, RM5261, RM5721 and RM7000 as r5000 cpu variants.
5210
5211         * doc/c-mips.texi: Document newly accepted cpu variants.
5212
5213 2000-06-15  Ulf Carlsson  <ulfc@engr.sgi.com>
5214
5215         * config/tc-mips.h: Remove definition of ONLY_STANDARD_ESCAPES.
5216
5217 2000-06-13  Ulf Carlsson  <ulfc@engr.sgi.com>
5218
5219         * macro.c (getstring): Make it possible to escape the quote
5220         character.
5221
5222 Tue Jun 13 20:58:28 2000  Catherine Moore <clm@redhat.com>
5223
5224         * config/tc-hppa.c (pa_export): Weak symbols can be global.
5225
5226 2000-06-13  H.J. Lu  <hjl@gnu.org>
5227
5228         * configure: Regenerate.
5229
5230 2000-06-09  Alan Modra  <alan@linuxcare.com.au>
5231
5232         * app.c (do_scrub_begin): Don't default lex[';'] as a line
5233         separator.
5234         * doc/internals.texi (line_separator_chars): Semicolon is no
5235         longer a default.  Mention null and newline as defaults.
5236
5237         * read.c (is_end_of_line): Remove ifdef TC_HPPA.
5238
5239         * config/tc-i386.h (line_separator_chars): Explicitly mention `;'
5240         * config/tc-i860.h (line_separator_chars): Likewise.
5241         * config/tc-h8300.c (line_separator_chars): Likewise.
5242         * config/tc-i960.c (line_separator_chars): Likewise.
5243         * config/tc-m68k.c (line_separator_chars): Likewise.
5244         * config/tc-mips.c (line_separator_chars): Likewise.
5245         * config/tc-ns32k.c (line_separator_chars): Likewise.
5246         * config/tc-sparc.c (line_separator_chars): Likewise.
5247         * config/tc-vax.c (line_separator_chars): Likewise.
5248
5249         * config/tc-h8300.c (comment_chars): Use string initialiser.
5250         * config/tc-i960.c (line_comment_chars): Likewise.
5251         * config/tc-z8k.c (comment_chars, line_comment_chars,
5252         line_separator_chars): Likewise.
5253
5254         * config/tc-arm.c (line_separator_chars): Always use `;', not just
5255         for TE_LINUX.
5256
5257 2000-06-08  Nick Clifton  <nickc@cygnus.com>
5258
5259         * config/tc-arm.c (cons_fix_new_arm): Assign correct reloc value
5260         for size 1 fixes.
5261
5262 2000-06-08  David O'Brien  <obrien@FreeBSD.org>
5263
5264         * configure.in (VERSION): Update to show this is the CVS mainline.
5265
5266 2000-06-08  Matthew Jacob  <mjacob@feral.com>
5267
5268         * config/tc-alpha.c (md_undefined_symbol): Properly understand that
5269         $at is the integer register $r28, vs. both $r28 and the floating
5270         point register $f28.
5271
5272 2000-06-08  James E. Wilson  <wilson@cygnus.com>
5273
5274         * config/tc-ia64.c (generate_unwind_image): Call ia64_flush_insns.
5275         (dot_endp): Don't call ia64_flush_insns.
5276         (emit_one_bundle): Don't delete prologue/body records from
5277         unwind_record list in first loop.  Rewrite second loop to account for
5278         this.
5279
5280 2000-06-07  David Mosberger  <davidm@hpl.hp.com>
5281
5282         * config/tc-ia64.c: Add missing prototypes.
5283         (generate_unwind_image): Cast argument to output_unw_records call.
5284
5285 Wed Jun  7 22:44:14 2000  Denis Chertykov  <denisc@overta.ru>
5286
5287         * config/tc-avr.c (avr_operand): fix the formatting of the comment.
5288
5289 Wed Jun  7 21:26:15 2000  Denis Chertykov  <denisc@overta.ru>
5290
5291         * config/tc-avr.c (AVR_ISA_???): moved to include/opcode/avr.h
5292         (REGISTER_P): likewise.
5293         (avr_opcodes): uses include/opcode/avr.h
5294         (avr_operand): enable ld r,Z or st r,Z for at90s1200.
5295
5296 2000-06-04  Alan Modra  <alan@linuxcare.com.au>
5297
5298         * read.c (is_end_of_line): No ';' for TC_HPPA.  Add missing
5299         initializers too.
5300
5301 2000-06-03  H.J. Lu  <hjl@gnu.org>
5302
5303         * read.c (is_end_of_line): Put back `;'.
5304
5305 2000-06-03  Alan Modra  <alan@linuxcare.com.au>
5306
5307         * config/tc-i386.c (md_shortopts): Remove 'm', add 'q' to non-elf.
5308
5309 2000-06-01  Alan Modra  <alan@linuxcare.com.au>
5310
5311         * expr.c (operand): Test is_end_of_line outside switch to catch
5312         line separator chars that are also operators.
5313         (operator): Return O_illegal for line separator chars.
5314
5315         * read.c (is_end_of_line): Use 1 instead of 99.  Don't set `;'
5316         entry (or `!' entry for TC_HPPA).
5317
5318         * config/tc-arm.c (my_get_float_expression): Cast to unsigned char
5319         before indexing is_end_of_line.  Remove redundant check for '\0'.
5320         (fp_op2): Likewise.
5321         * config/tc-h8500.c (md_assemble): Likewise.
5322         * config/tc-mcore.c (md_assemble): Likewise.
5323         * config/tc-tic30.c (tic30_find_parallel_insn): Likewise.
5324         (md_atof): Likewise
5325
5326         * config/tc-m88k.c (s_bss): Cast to unsigned char before indexing
5327         is_end_of_line.
5328         * config/tc-mcore.c (mcore_cons): Likewise.
5329         (mcore_float_cons): Likewise.
5330         (mcore_stringer): Likewise.
5331         * config/tc-tic30.c (tic30_find_parallel_insn): Likewise.
5332
5333 2000-06-01  Scott Bambrough <scottb@netwinder.org>
5334
5335         * config/tc-arm.c (do_mrs): Allow SPSR_BIT to be set correctly.
5336
5337 2000-05-29  Nick Clifton  <nickc@cygnus.com>
5338
5339         * config/tc-sh.c: Fix compile time warning messages.
5340
5341         * config/tc-mips.c: Fix compile time warning messages.
5342
5343 2000-05-29  Philip Blundell  <philb@gnu.org>
5344
5345         * doc/as.texinfo: Update copyright dates.
5346         (Local Labels): Delete misplaced mention of ARM.
5347         * NEWS: Mention ARM ELF support.
5348
5349 2000-05-27  Alexandre Oliva  <aoliva@cygnus.com>
5350
5351         * config/tc-mn10300.c (md_assemble): Copy size to real_size before
5352         it is modified, and use the real_size to compute the frag address
5353         for dwarf2 line info.
5354
5355 2000-05-27  Alan Modra  <alan@linuxcare.com.au>
5356
5357         * Makefile.am (DEP, DEP1, dep, dep-in, dep-am): Use a better sed
5358         line-matching scheme to cope with automake moving variables around.
5359         ($(TARG_CPU_O)): Remove dependency on TARG_CPU_DEP_@target_cpu_type@
5360         * Makefile.in: Regenerate.
5361
5362 2000-05-26  Jakub Jelinek  <jakub@redhat.com>
5363
5364         * config/tc-sparc.c (sparc_relax): New.
5365         (md_longopts): Add -relax and -no-relax options.
5366         (md_parse_options, md_show_usage): Likewise.
5367         (md_apply_fix3): Optimize tail call into branch always if possible.
5368
5369 Thu May  4 15:27:07 2000  Donald Lindsay  <dlindsay@cygnus.com>
5370
5371         * config/tc-d10v.c (write_2_short, parallel_ok, md_assemble,
5372         d10v_cleanup) implement Mitsubishi's newly explained branch-packing
5373         rules, with warning when a GAS statement specifies a packing that
5374         will result in an instruction being squashed.
5375         Added typdef packing_type and enumerals, changed various integer
5376         literals to use the enumerals.
5377
5378 2000-05-24  David Mosberger  <davidm@hpl.hp.com>
5379
5380         * config/tc-ia64.c (dot_restorereg_p): New function.
5381         (md_pseudo_table): Add restorereg.p.
5382         (output_X3_format): Fix typo: record type should be UNW_X3, not UNW_X1.
5383         (output_X4_format): Fix typo: record type should be UNW_X4, not UNW_X2.
5384
5385         * config/tc-ia64.h (unw_record_type): Add unwabi.
5386         (unw_r_record): Rename member MASK to GRMASK.  Add sub-structure
5387         called MASK with members for imask, and the masks produced by
5388         fr_mem, gr_mem, br_mem, and frgr_mem.
5389         (unw_p_record): Add members ABI and CONTEXT.
5390         (unw_x_record): Add member AB.
5391         * config/tc-ia64.c (enum reg_symbol): Add REG_PSP and REG_PRIUNAT
5392         as pseudo-register for use during unwind info generation.
5393         (AR_PFS, AR_LC): New macros.
5394         (enum pseudo_type): Add PSEUDO_FUNC_REG to permit declaring registers
5395         whose names start with an at sign (as in "@priunat").
5396         (pseudo_func): Add "svr4", "hpux", "nt" constants and "priunat"
5397         register.
5398         (unwind_list, unwind_tail, current_unwind_entry, proc_start,
5399         proc_end, unwind_info, personality_routine): Consolidate into
5400         "unwind" structure to reduce offset-table use.  Add member
5401         NEXT_SLOT_NUMBER to track the slot number for the next instruction
5402         to be emitted.
5403         (output_R1_format, output_R3_format, output_P3_format,
5404         output_P6_format): Initialize R with zero to reduce compiler warnings.
5405         (output_P7_format): Ditto.  Add `default' branch to switch
5406         statement to reduce compiler warnings.
5407         (output_P8_format, output_B1_format, output_B4_format): Ditto.
5408         (output_P4_format): Rename 2nd & 3rd arg to IMASK and IMASK_SIZE.
5409         (format_ab_reg): Rename from format_a_b_reg.  Merge A and B args
5410         into single argument.
5411         (output_X1_format, output_X3_format): Initialize R with zero to reduce
5412         compiler warnings.  Merge A and B args into single argument.
5413         (output_X2_format, output_X4_format): Remove unused variable R.  Merge
5414         A and B args into single argument.
5415         (free_record): Removed (wasn't used).
5416         (free_list_records): Also free imasks in prologue records.
5417         (output_prologue, output_prologue_gr): Initialize mask bits to zero.
5418         (output_spill_mask): Remove.
5419         (output_unwabi): New function.
5420         (output_epilogue, output_label_state, output_copy_state): Call
5421         alloc_record.
5422         (output_spill_psprel, output_spill_sprel, output_spill_psprel_p,
5423         output_spill_sprel_p, output_spill_reg, output_spill_reg_p): Add AB
5424         argument.
5425         (process_one_record): New locals FR_MASK and GR_MASK.  Ignore
5426         gr_mem, fr_mem, br_mem, and frgr_mem records and instead emit them
5427         as part of handling the prologue records.  Emit region's imask if
5428         we have one.  Handle unwabi, epilogue, label_state, copy_state,
5429         spill_psprel, spill_sprel, spill_reg, spill_psprel_p,
5430         spill_sprel_p, and spill_reg_p records.
5431         (set_imask, count_bits, slot_index): New function.
5432         (fixup_unw_records): Fix region size computation.  Handle
5433         epilogue, spill_reg, spill_sprel, spill_psprel, spill_reg_p,
5434         spill_sprel_p, and spill_psprel_p records.  Merge mask bits of
5435         frgr_mem, fr_mem, gr_mem, br_mem on a per-region basis and
5436         set_imask accordingly.  Update imask for gr_gr, and br_gr records.
5437         (convert_expr_to_ab_reg, convert_expr_to_xy_reg): New function.
5438         (dot_save): Use manifest constants for applicaton registers.
5439         Handle REG_PR and REG_PRIUNAT.
5440         (dot_restore): Don't just ignore it.
5441         (dot_restorereg): New function..
5442         (generate_unwind_image): Ensure unwind info is a multiple of eight
5443         bytes, not just four bytes.
5444         (dot_handlerdata, dot_unwentry): Demand empty rest of line.
5445         (dot_altrp): Don't just ignore it.
5446         (dot_savemem): New function.  Replaces dot_savesp() and
5447         dot_savepsp().  Use manifest constants for applicaton registers.
5448         Handle REG_PR and REG_PRIUNAT.
5449         (dot_savef): Simplify.
5450         (dot_saveb): Support generation of br_gr.
5451         (dot_spillreg, dot_spillmem, dot_spillreg_p, dot_spillmem_p,
5452          dot_label_state, dot_copy_state): New function.
5453         (dot_unwabi): Don't just ignore it.
5454         (md_pseudo_table): Add restorereg, spillreg, spillsp, spillpsp,
5455         spillreg.p, spillsp.p, spillpsp, label_state, copy_state,
5456         unwabi, vframesp, and vframepsp.  Fix typo alprp->altrp.
5457         (emit_one_bundle): Set slot number for prologue/body records
5458         *before* emitting the first insn.
5459         (emit_one_bundle): Set UNWIND.NEXT_SLOT_NUMBER.
5460         (md_begin): Declare "psp" pseudo-register.
5461         (md_operand): Handle PSEUDO_FUNC_REG.  Fix printing of error message
5462         so we don't get segfault.
5463         (output_psp_sprel): Output sp/psp relative offsets as 4-byte word
5464         counts as required per SW Conventions manual
5465         (output_rp_psprel, output_rp_sprel, output_pfs_psprel,output_pfs_sprel,
5466         output_preds_psprel, output_preds_sprel, output_spill_base,
5467         output_unat_psprel, output_unat_sprel, output_lc_psprel,
5468         output_lc_sprel, output_fpsr_psprel, output_fpsr_sprel,
5469         output_priunat_psprel, output_priunat_sprel, output_bsp_psprel,
5470         output_bsp_sprel, output_bspstore_psprel, output_bspstore_sprel,
5471         output_rnat_psprel, output_rnat_sprel, output_spill_psprel,
5472         output_spill_sprel, output_spill_psprel_p, output_spill_sprel_p):Ditto.
5473         (dot_vframe): Implement.
5474         (dot_vframesp, dot_vframepsp): New function.
5475
5476 Tue May 23 00:57:05 2000  Hans-Peter Nilsson  <hp@axis.com>
5477
5478         * configure.in (i386-*-freebsd a.out entry): Quote properly.
5479         * configure: Regenerate.
5480
5481 2000-05-23  Alan Modra  <alan@linuxcare.com.au>
5482
5483         * config/tc-i386.c (md_assemble): Pass jump reloc in fr_var...
5484         (md_estimate_size_before_relax): so we can use it here instead of
5485         old kludges.  Localise vars to blocks.  Comment.
5486
5487         * frags.c (frag_new): Update fr_var comments.
5488         * frags.h (struct frag): Ditto.
5489
5490 2000-05-22  Richard Henderson  <rth@cygnus.com>
5491
5492         * config/tc-ia64.c (FUNC_PC_RELATIVE): New.
5493         (pseudo_func): Add pcrel.
5494         (operand_match):  Handle IA64_OPND_TGT64.
5495         (build_insn): Likewise.
5496         (md_begin): Initialize pseudo_func[FUNC_PC_RELATIVE].
5497         (ia64_gen_real_reloc_type): Handle FUNC_PC_RELATIVE.
5498         (fix_insn): Handle all three 64-bit relocation types.
5499
5500 Mon May 22 22:43:32 2000  Hans-Peter Nilsson  <hp@axis.com>
5501
5502         * obj.h (struct format_ops): New members begin, app_file,
5503         s_set_other, s_set_desc, s_get_type, s_set_type,
5504         separate_stab_sections, init_stab_section.
5505
5506         * config/obj-multi.h: Update GPL notice to v2.
5507         (obj_begin): New.
5508         (obj_app_file): New.
5509         (S_SET_SIZE): Test s_set_size for NULL before calling.
5510         (S_SET_ALIGN): Similar for s_set_align.
5511         (S_SET_OTHER): New.
5512         (S_SET_DESC): New.
5513         (S_GET_TYPE): New.
5514         (S_SET_TYPE): New.
5515         (SEPARATE_STAB_SECTIONS): New.
5516         (INIT_STAB_SECTION): New.
5517         (EMIT_SECTION_SYMBOLS): New.
5518         (AOUT_STABS) [OBJ_MAYBE_AOUT]: Define.
5519
5520         * config/obj-elf.h: Update GPL notice to v2.
5521         Mention that this file is included from obj-multi.h.
5522         (obj_begin): Wrap definition in ifndef.
5523         (elf_file_symbol): Constify declaration.
5524         (obj_app_file): Ditto.
5525         (SEPARATE_STAB_SECTIONS, INIT_STAB_SECTION, OBJ_PROCESS_STAB):
5526         Wrap in ifndef SEPARATE_STAB_SECTIONS.
5527
5528         * config/obj-elf.c (elf_s_set_other): New.
5529         (elf_file_symbol): Constify argument.
5530         (elf_separate_stab_sections): New.
5531         (elf_init_stab_section): New.
5532         (elf_format_ops): Add new members.  Remove comma at end.
5533
5534         * config/obj-ecoff.c (ecoff_separate_stab_sections): New.
5535         (ecoff_format_ops): Add new fields.  Remove comma at end.
5536         Mention inconsistency for emit_section_symbols.
5537
5538         * config/obj-coff.h (c_dot_file_symbol): Constify declaration.
5539
5540         * config/obj-coff.c (c_dot_file_symbol): Constify argument.
5541         (coff_separate_stab_sections): New.
5542         (coff_format_ops): Add new members.
5543
5544         * config/obj-aout.c (obj_aout_sec_sym_ok_for_reloc): New.
5545         (obj_aout_s_set_other): New.
5546         (obj_aout_s_set_desc): New.
5547         (obj_aout_s_get_type): New.
5548         (obj_aout_s_set_type): New.
5549         (obj_aout_separate_stab_sections): New.
5550         (aout_format_ops): New members added.  Use obj_aout_process_stab,
5551         not 0.  Use obj_aout_sec_sym_ok_for_reloc, not 0.
5552         (obj_aout_frob_symbol): Add ATTRIBUTE_UNUSED to args as
5553         appropriate.
5554         (obj_aout_line, obj_aout_weak, obj_aout_type): Ditto.
5555
5556 2000-05-22  Alan Modra  <alan@linuxcare.com.au>
5557
5558         * config/tc-i386.c (tc_i386_fix_adjustable): Prevent adjustment
5559         for OBJ_MAYBE_ELF too.  Use S_IS_EXTERNAL instead of S_IS_EXTERN.
5560         (md_estimate_size_before_relax): Ensure jumps to weak and
5561         externally visible symbols are relocatable.
5562
5563 Sat May 20 16:41:55 2000  Hans-Peter Nilsson  <hp@axis.com>
5564
5565         * stabs.c (aout_process_stab): Make global.
5566         (s_desc): Add ATTRIBUTE_UNUSED to args as appropriate.
5567         * read.h (aout_process_stab): Declare.
5568
5569         * configure.in (EMULATIONS) [i386aout, i386coff, i386elf]:
5570         Generalize to *aout, *coff *elf.
5571         * configure: Regenerated.
5572
5573         * doc/internals.texi (Object format backend): Say
5574         SEPARATE_STAB_SECTIONS needs to be nonzero, not just defined.
5575
5576         * Makefile.am (TARG_ENV_HFILES): Delete te-multi.h.
5577         * Makefile.in: Regenerated.
5578
5579 2000-05-19  Catherine Moore  <clm@cygnus.com>
5580
5581         * cgen.h (GAS_CGEN_MAX_FIXUPS): Check if already defined.
5582
5583 2000-05-18  Alan Modra  <alan@linuxcare.com.au>
5584
5585         * config/tc-hppa.c (md_apply_fix): Mask out immediate bits of
5586         instruction to reflect change in re_assemble_*.
5587
5588 Thu May 18 10:52:14 2000  Jeffrey A Law  (law@cygnus.com)
5589
5590         * configure.in (hppa-*-hpux11*): If the cpu is hppa*64*, then
5591         build PA64 ELF tools.
5592         * configure: Rebuilt.
5593
5594 2000-05-17  Alan Modra  <alan@linuxcare.com.au>
5595
5596         * Makefile.am: Regenerate dependencies.
5597         * Makefile.in: Regenerate.
5598
5599 2000-05-15  Nick Clifton  <nickc@cygnus.com>
5600
5601         * config/tc-arm.c (struct asm_psr): Add boolean field
5602         distinguishing between CSPR and SPSR.  Rename 'number' field
5603         to 'field'.
5604         (psrs): Rearrange contents to match new asm_psr structure.
5605         (arm_psr_parse): Move next to psr_required_here.  Make it
5606         return an asm_psr structure.
5607         (psr_required_here): Use asm_psr structure returned by
5608         arm_psr_parse.
5609         (do_msr): Reorganise to allow psr_required_here to be called
5610         only once.
5611         (md_undefined_name): Mark 'name' parameter as unused, since
5612         the COFF target does not use it.
5613
5614 2000-05-14  David O'Brien  <obrien@FreeBSD.org>
5615
5616         * config/te-386bsd.h:  Clean up comments to adhere to the GNU coding
5617         standards.
5618         * config/te-aux.h:  Likewise.
5619         * config/te-dpx2.h:  Likewise.
5620         * config/te-go32.h:  Likewise.
5621         * config/te-hp300.h:  Likewise.
5622         * config/te-hppa.h:  Likewise.
5623         * config/te-i386aix.h:  Likewise.
5624         * config/te-ic960.h:  Likewise.
5625         * config/te-interix.h:  Likewise.
5626         * config/te-nbsd532.h:  Likewise.
5627         * config/te-pc532mach.h:  Likewise.
5628         * config/te-ppcnw.h:  Likewise.
5629         * config/te-psos.h:  Likewise.
5630         * config/te-sparcaout.h:  Likewise.
5631         * config/te-sun3.h:  Likewise.
5632         * config/te-sysv32.h:  Likewise.
5633
5634 2000-05-14  Alan Modra  <alan@linuxcare.com.au>
5635
5636         * config/tc-h8300.c (do_a_fix_imm): Don't rely on `short' being 16
5637         bits.  Instead explicitly mask and sign extend.  Do the 8 bit mask
5638         and sign extend without an if statement.
5639         (build_bytes): Likewise.
5640
5641 2000-05-14  Kazu Hirata  <kazu@hxi.com>
5642
5643         * config/tc-h8300.c (do_a_fix_imm): Output a reloc for no
5644         X_add_symbol L_32 case.
5645
5646 2000-05-14  David O'Brien  <obrien@FreeBSD.org>
5647
5648         * config/te-freebsd.h: New file.
5649
5650 2000-05-13  Alan Modra  <alan@linuxcare.com.au>
5651
5652         * asintl.h (gettext, dgettext, dcgettext, textdomain,
5653         bindtextdomain): Replace defines with those from intl/libgettext.h
5654         to quieten gcc warnings.
5655
5656         * NEWS: Mention x86 .arch and -q.
5657
5658         * config/tc-i386.c (quiet_warnings): New.
5659         (md_assemble): Use quiet_warnings.
5660         (md_parse_option): Set quiet_warnings from -q.
5661         (md_show_usage): Mention -q, delete -m.
5662         (flag_do_long_jump): Delete.
5663         (md_parse_option): Remove -m.
5664         (md_show_usage): Remove -m.
5665         (md_create_long_jump): Remove useless flag_do_long_jump code.
5666
5667         * as.c (parse_args): In case OPTION_DEFSYM, use a valueT to hold
5668         the symbol value, and use bfd_scan_vma if BFD_ASSEMBLER.
5669
5670 2000-05-13  Alan Modra  <alan@linuxcare.com.au>
5671             Alexander Sokolov <robocop@netlink.ru>
5672
5673         * doc/c-i386.texi (i386-Arch): New section.
5674         (i386-Syntax): Mention .intel_syntax and .att_syntax.
5675
5676         * config/tc-i386.c (cpu_arch_name, cpu_arch_flags): New.
5677         (smallest_imm_type): Use smallest opcode for shift by one if cpu
5678         architecture has been given and is not 486.
5679         (set_cpu_arch): New.
5680         (md_pseudo_table): Add .arch.
5681         (md_assemble): Warn if cpu architecture has been given and an
5682         unsupported instruction.
5683
5684         * config/tc-i386.h (SMALLEST_DISP_TYPE): Delete.
5685         Move operand_types bit defines after relevant template field.
5686         (template): Add cpu_flags.
5687         (Cpu*): Define.
5688         (arch_entry): New.
5689
5690 2000-05-12  Alexandre Oliva  <aoliva@cygnus.com>
5691
5692         * config/tc-mn10300.h (md_end): Define.
5693         (mn10300_finalize): Declare.
5694         * config/tc-mn10300.c: Include dwarf2dbg.h.
5695         (debug_line): Define.
5696         (md_assemble): Generate dwarf2 line info.
5697         (mn10300_finalize): New function.  Finalize dwarf2 info.
5698
5699 2000-05-11  Ulf Carlsson  <ulfc@engr.sgi.com>
5700
5701         * config/tc-mips.c (md_estimate_size_before_relax): Use the
5702         external version of the relocation for weak symbols.
5703
5704 2000-05-08  David Mosberger  <davidm@hpl.hp.com>
5705
5706         * config/tc-ia64.c (output_P7_format, case mem_stack_f): Output fixed
5707         frame size in units of 16 bytes, as required per SW Conventions manual.
5708         (output_unw_records): Output info-block header as a dword to get
5709         byte-order right.
5710
5711 2000-05-08  Alan Modra  <alan@linuxcare.com.au>
5712
5713         * as.h: #include "file", not <file> on files from ../include.
5714         (as_abort, as_fatal): Add ATTRIBUTE_NORETURN.
5715         * config/tc-m68k.c (m68k_ip): Fix signed/unsigned warnings.
5716         (md_convert_frag): Add ATTRIBUTE_UNUSED.
5717         (tc_coff_symbol_emit_hook): Ditto.
5718         (OPTCOUNT): Cast to int to avoid compiler warning.
5719         (md_begin): Fix signed/unsigned warnings.
5720
5721 2000-05-08  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
5722
5723         * config/tc-m68k.c (md_convert_frag_1): Abort if we end up in the
5724         ABRANCH LONG case for a conditional branch on a 68000.
5725         (md_estimate_size_before_relax): Likewise.  Also handle
5726         flag_short_refs correctly for ABRANCH, BCC68000, and DBCC.
5727         (m68k-ip: case ABSL): Relax absolute references to 16-bit
5728         PC-relative on all CPUs.
5729         (md_estimate_size_before_relax): Likewise.
5730
5731 2000-05-04  Alan Modra  <alan@linuxcare.com.au>
5732
5733         * as.c (parse_args): Just mention current year in printed
5734         copyright message.
5735
5736 2000-05-03  J.T. Conklin  <jtc@redback.com>
5737
5738         * config/tc-ppc.c (pre_defined_registers): Add entries for vector
5739         unit registers.
5740         (md_parse_option): Recognize -m7400.
5741
5742 2000-05-03  Ian Lance Taylor  <ian@zembu.com>
5743
5744         * config/atof-ieee.c (gen_to_words): When adding carry back in,
5745         don't permit lp to become less than the words array.
5746
5747 2000-05-03  Rodney Brown  <RodneyBrown@pmsc.com>
5748
5749         config/tc-mcore.c (md_apply_fix3): BFD_RELOC_MCORE_PCREL_IMM11BY2
5750         Fix little-endian case.
5751
5752 2000-05-03  David O'Brien  <obrien@NUXI.com>
5753
5754         * as.c (parse_args): Update copyright.
5755
5756 2000-05-03  Mark Elbrecht  <snowball3@bigfoot.com>
5757
5758         * config/tc-i386.h (SUB_SEGMENT_ALIGN): If TE_GO32, return 4
5759         for the .bss section too.
5760
5761 2000-05-02  Alan Modra  <alan@linuxcare.com.au>
5762
5763         * configure.in: Set em=linux for hppa-*-linux.
5764         * configure: Regenerate.
5765         * doc/Makefile.in: Regenerate with correct automake.
5766
5767         * frags.c (frag_grow): Sanity check chunk_size.
5768
5769         * config/obj-elf.h: #include "bfd.h" not <bfd.h>
5770         * config/obj-som.h: Likewise.
5771         * config/obj-ieee.h: Likewise.
5772
5773         * config/tc-hppa.h: Test BFD_ARCH_SIZE, not BFD64.
5774
5775         * config/tc-hppa.c (log2): Only compile when OBJ_SOM.
5776         (md_pseudo_table): Fully initialise OBJ_ELF cases.
5777         (fix_new_hppa): Add ATTRIBUTE_UNUSED to args as appropriate.
5778         (pa_ip): low_sign_unext now returns via function value.  Use
5779         re_assemble_* instead of dis_assemble_* and
5780         INSERT_FIELD_AND_CONTINUE combination.  Don't call sign_unext
5781         unnecessarily.
5782         (md_convert_frag): Add ATTRIBUTE_UNUSED to args as appropriate.
5783         (md_section_align, md_parse_option, md_show_usage,
5784         md_undefined_symbol, pa_align, pa_block, pa_brtab, pa_try,
5785         pa_callinfo, pa_code, pa_comm, pa_end, pa_enter, pa_entry,
5786         pa_exit, pa_export, pa_import, pa_label, pa_leave, pa_level,
5787         pa_origin, pa_param, pa_proc, pa_procend, pa_space, pa_spnum,
5788         pa_version, pa_compiler, pa_copyright, pa_data, pa_fill, pa_lsym,
5789         pa_text): Likewise.
5790         (md_apply_fix): Change type of new_val to offsetT.  Delete w1, w2,
5791         w, resulti.  Add insn, val.  Move bfd_get_32 and bfd_put_32
5792         outside of switch.  Correct mask and shifting errors in case 10
5793         and case -11.  In case 21, compare against signed range to suit
5794         hppa_field_adjust changes.  In case 12, use re_assemble_12.  In
5795         case 17 and case 22, use offsetT variable to properly check range.
5796         Use re_assemble_* here too.
5797         (evaluate_absolute): Change type of value to offsetT.  Call
5798         hppa_field_adjust to do the work for us.
5799         (pa_parse_cmpb_64_cmpltr): Delete save_s.
5800         (pa_parse_cmpib_64_cmpltr): Ditto.
5801         (pa_build_unwind_subspace): Delete unused var subseg.  Change type
5802         of i to unsigned int.
5803         (pa_type_args): Conditionally declare symbol if OBJ_SOM.
5804         (pa_end_of_source): Return type is void.
5805
5806 Mon May  1 08:54:23 2000  Catherine Moore  <clm@cygnus.com>
5807
5808         * macro.c (macro_expand_body): Don't prepend macro number with zeroes.
5809
5810 Mon May  1 14:19:39 2000  Denis Chertykov  <denisc@overta.ru>
5811
5812         * config/tc-avr.c: ATTRIBUTE_UNUSED added to the necessary places.
5813         More comments added.
5814         (md_begin): Removed "construct symbols for each register name".
5815         Because register names conflicts with GCC generated function
5816         names.
5817         (avr_operand): Now constant numbers can be used as a register
5818         identifiers (0 as r0, 31 as r31).
5819         (md_assemble): use skip_space () before parsing instruction
5820         operands.
5821
5822 2000-05-01  Alan Modra  <alan@linuxcare.com.au>
5823
5824         * configure.in: Set bfd_gas=yes on i386-*-pe and i386-*-nt* to
5825         ensure all pe targets use bfd.  Remove unnecessary bfd_gas=yes on
5826         arm-*-netbsd* and arm-*-wince as this is set for all arm*.
5827         * configure: Regenerate.
5828
5829 2000-04-29  Andreas Jaeger  <aj@suse.de>
5830
5831         * as.h: Correctly check GCC version.
5832
5833 2000-04-26  David O'Brien  <obrien@FreeBSD.org>
5834
5835         * doc/as.1: Fix unbalanced brackets.
5836
5837         * config/tc-i386.c (comment_chars): Don't use '/' as comment start if
5838         TE_FreeBSD.
5839         (line_comment_chars): Set to '/' if TE_FreeBSD.
5840
5841 Tue Apr 25 11:02:02 2000  Jeffrey A Law  (law@cygnus.com)
5842
5843         * configure.in: Configury support for PA64 (currently disabled).
5844         * configure: Rebuilt.
5845
5846 2000-04-25  Machida Hiroyuki  <machida@sm.sony.co.jp>
5847
5848         * config/tc-mips.c (s_change_sec): Use record_alignment, not
5849         bfd_set_section_alignment.
5850
5851 2000-04-25  Alan Modra  <alan@linuxcare.com.au>
5852
5853         * config/tc-i386.c (offset_in_range): Ensure shift counts are less
5854         than 32.
5855
5856 2000-04-24  Nick Clifton  <nickc@cygnus.com>
5857
5858         * doc/c-arm.texi (ARM Directives): Document behaviour of .align 0.
5859         * doc/as.texinfo (Align): Include arm and strongarm in list of
5860         targets that have the second form of the behaviour of the .align
5861         directive.
5862
5863 2000-04-24  Mark Klein <mklein@dis.com>
5864
5865         * config/obj-som.c: Terminate obj_pseudo_table.
5866
5867 Mon Apr 24 15:21:11 2000  Clinton Popetz  <cpopetz@cygnus.com>
5868
5869         * as.c (parse_args): Allow md_parse_option to override -a listing
5870         option.
5871         * config/obj-coff.c (add_lineno): Change type of offset parameter
5872         from "int" to "bfd_vma."
5873         * config/tc-ppc.c (md_pseudo_table): Add "llong" and "machine."
5874         (ppc_mach, ppc_subseg_align, ppc_target_format): New.
5875         (ppc_change_csect): Align correctly for XCOFF64.
5876         (ppc_machine): New function, which discards "ppc_machine" line.
5877         (ppc_tc): Cons for 8 when code is 64 bit.
5878         (md_apply_fix3): Don't check operand->insert.  Handle 64 bit
5879         relocations.
5880         (md_parse_option): Handle -a64 and -a32.
5881         (ppc_xcoff64): New.
5882         * config/tc-ppc.h (TARGET_MACH): Define.
5883         (TARGET_FORMAT): Move to function.
5884         (SUB_SEGMENT_ALIGN): Use ppc_subseg_align.
5885
5886 Sun Apr 23 16:45:45 2000  Denis Chertykov  <denisc@overta.ru>
5887
5888         * config/tc-avr.c: New AVR_ISA_ defined.
5889         (md_assemble): Handle opcodes with optional operands (lpm,elpm).
5890         (avr_operand): Handle 'a', 'v' and 'z' constraint letters needed
5891         for `fmul', `movw' and `lpm R,Z' instructions.
5892         (avr_operands): Warn if current opcode is a two-word instruction
5893         and previous opcode was cpse/sbic/sbis/sbrc/sbrs.
5894         (avr_opcodes): New commands added.
5895         (REGISTER_P): Check 'a' and 'v' constraint letters.
5896         (mcu_types): New MCU added.
5897
5898 2000-04-22  Timothy Wall  <twall@cygnus.com>
5899
5900         * config/tc-ia64.c (pseudo_func[]): Add new "nat" entry equivalent
5901         to "natval".
5902         (operand_match): Conditionally insert default bit values for IMMU9.
5903
5904 2000-04-14  Matthew Green  <mrg@cygnus.com>
5905
5906         * configure.in: Add NetBSD/sparc ELF and NetBSD/sparc64 support.
5907         * configure: Rebuilt.
5908
5909 Fri Apr 21 14:29:43 2000  Jeffrey A Law  (law@cygnus.com)
5910                           Jason Eckhardt  <jle@cygnus.com>
5911
5912         * config/tc-hppa.c (md_apply_fix): Handle new PA2.0 formats.
5913
5914         * config/tc-hppa.c (CHECK_ALIGN): New macro.
5915         Added handling of new operand types l,y,&,fe,fE,fx.
5916
5917 Fri Apr 21 13:20:53 2000  Richard Henderson  <rth@cygnus.com>
5918                           David Mosberger  <davidm@hpl.hp.com>
5919                           Timothy Wall <twall@cygnus.com>
5920                           Andrew MacLeod  <amacleod@cygnus.com>
5921                           Jim Wilson  <wilson@cygnus.com>
5922
5923         * Makefile.am (CPU_TYPES): Add ia64.
5924         (TARGET_CPU_CFILES): Add config/tc-ia64.c.
5925         (TARGET_CPU_HFILES): Add config/tc-ia64.h.
5926         * Makefile.in: Rebuild.
5927         * app.c (do_scrub_chars): Handle DOUBLESLASH_COMMENTS.
5928         * configure: Rebuild.
5929         * configure.in: Recognize ia64 as cpu type.  Set bfd_gas.
5930         (ia64-*-elf*, ia64-*-linux-gnu*): New targets.
5931         * expr.c (expr): Handle md_optimize_expr.
5932         * read.c (LEX_HASH): Add comment.
5933         * config/tc-ia64.c, config/tc-ia64.h: New files.
5934
5935 2000-04-21  Richard Henderson  <rth@cygnus.com>
5936
5937         * config/tc-d30v.c (write_2_short): Disregard opcode1->ecc when
5938         bundling a non-delayed branch type instruction.
5939
5940 2000-04-20  Alexandre Oliva  <aoliva@cygnus.com>
5941
5942         * config/tc-mn10300.c (HAVE_AM30): Define.
5943         (md_assemble): Use it.
5944
5945 2000-04-19  Alan Modra  <alan@linuxcare.com.au>
5946
5947         * config/obj-elf.c (obj_elf_change_section): Check for changed
5948         section attributes.
5949
5950         * Makefile.am: (CPU_MULTI_VALID): Remove.
5951         (MULTI_CPU_TYPES): Define.
5952         (MULTI_CPU_OBJ_VALID): Define.
5953         (DEPTC): Use the above.
5954         (DEPOBJ): Same here.
5955         (DEP2): And here.
5956         Regenerate dependencies.
5957         * Makefile.in: Regenerate.
5958
5959 2000-04-19  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
5960
5961         * Makefile.am (YACC, LEX): Get them from configure.
5962
5963 2000-04-18  H.J. Lu  (hjl@gnu.org)
5964
5965         * config/tc-i386.c (offset_in_range): Use addressT instead of
5966         bfd_vma for non-bfd assemblers.
5967
5968 2000-04-17  Alan Modra  <alan@linuxcare.com.au>
5969
5970         * config/tc-i386.c (offset_in_range): Sign extend val so BFD64
5971         doesn't give spurious errors.
5972
5973 2000-04-14  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
5974
5975         * as.h (SEEK_SET): Define if undefined.
5976
5977 2000-04-13  Alan Modra  <alan@linuxcare.com.au>
5978
5979         * config/tc-arm.c (md_apply_fix3): Don't use UL suffix on
5980         constants, and don't assume offsetT is 32 bits.
5981
5982 2000-04-12  Andrew Cagney  <cagney@b1.cygnus.com>
5983
5984         * config/tc-d10v.h: Include "write.h" to get definition of fixS.
5985         (md_pcrel_from_section): Add prototype.
5986         (d10v_fix_adjustable): Add prototype.
5987         (d10v_force_relocation): Replace 'struct fix' with 'fixS'.
5988
5989         * config/tc-d10v.c (md_apply_fix3): Add paren around &&.
5990
5991 2000-04-12  Nick Clifton  <nickc@cygnus.com>
5992
5993         * config/tc-d10v.c (find_opcode): Correctly calculate position of
5994         symbol in frag chain.
5995
5996 2000-04-10  Alan Modra  <alan@linuxcare.com.au>
5997
5998         * config/tc-i386.c (fits_in_signed_byte): Change arg to offsetT.
5999         (fits_in_unsigned_byte, fits_in_unsigned_word): Ditto.
6000         (fits_in_signed_word, smallest_imm_type): Ditto.
6001         (md_assemble): Use an offsetT var to hold offsetT values, not a
6002         long.
6003         (offset_in_range): New.
6004         (md_assemble): Use it.
6005         (md_convert_frag): Change type of target_address, opcode_address,
6006         and displacement_from_opcode_start to offsetT.
6007         (md_create_short_jump): Change type of offset to offsetT.
6008         (md_create_long_jump): Ditto.
6009         (md_apply_fix3): Use -4, not 0xfffffffc for BFD_RELOC_386_PLT32.
6010         (md_chars_to_number): Remove.
6011         (output_invalid): Remove duplicate prototype.
6012
6013 2000-04-09  Nick Clifton  <nickc@cygnus.com>
6014
6015         * Makefile.am (CPU_TYPES): Add 'avr'.
6016         (TARGET_CPU_CFILES): Add 'tc-avr.c'.
6017         (TARGET_CPU_HFILES): Add 'tc-avr.h'.
6018
6019         * Makefile.in: Regenerate.
6020
6021         * doc/as.texinfo: Add M32R documentation.
6022
6023 Fri Apr  7 15:56:57 2000  Andrew Cagney  <cagney@b1.cygnus.com>
6024
6025         * configure.in (WARN_CFLAGS): Set to -W -Wall by default.  Add
6026         --enable-build-warnings option.
6027         * Makefile.am (AM_CFLAGS, WARN_CFLAGS): Add definitions.
6028         * Makefile.in, configure: Re-generate.
6029
6030 2000-04-07  Nick Clifton  <nickc@cygnus.com>
6031
6032         * config/tc-arm.c (md_apply_fix3): Treat BFD_RELOC_ARM_PCREL_BLX
6033         in the same way as BFD_RELOC_ARM_PCREL_BRANCH, and
6034         BFD_RELOC_THUMB_PCREL_BLX lie BFD_RELOC_THUMB_PCREL_BRANCH.
6035         (tc_gen_reloc): Accept BFD_RELOC_{ARM|THUMB}_PCREL_BLX.
6036         (arm_force_relocation): Force relocations for
6037         BFD_RELOC_{ARM|THUMB}_PCREL_BLX as well.
6038
6039 Wed Apr  5 22:26:32 2000  J"orn Rennecke <amylaar@cygnus.co.uk>
6040
6041         * config/tc-sh.c (get_operands): There's no third operand if the
6042         first operand is an immediate.
6043
6044 Wed Apr  5 22:07:19 2000  J"orn Rennecke <amylaar@cygnus.co.uk>
6045
6046         * config/tc-sh.c (immediate): Delete.
6047         (sh_operand_info): Add immediate member.
6048         (parse_reg): Use A_PC for pc.
6049         (parse_exp): Add second argument 'op'.  All callers changed.
6050         (parse_at): Expect pc to be coded as A_PC.
6051         Use immediate field in *op.
6052         (insert): Add fourth argument 'op'.  All callers changed.
6053         (build_relax): Add second argument 'op'.  All callers changed.
6054         (insert_loop_bounds): New function.
6055         (build_Mytes): Remove DISP_4.
6056         Split IMM_[48]{,BY[24]} into IMM[01]_[48]{,BY[24]}.  Add REPEAT.
6057         (assemble_ppi): Use immediate field in *operand.
6058         (sh_force_relocation): Handle BFD_RELOC_SH_LOOP_{START,END}.
6059         (md_apply_fix): Likewise.
6060         (tc_gen_reloc): Likewise.  Check for a pcrel BFD_RELOC_SH_LABEL.
6061
6062 Wed Apr  5 06:35:45 2000  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
6063
6064         * config/tc-sparc.c (sparc_ip): Avoid string pasting.
6065
6066 Tue Apr  4 19:27:50 2000  Hans-Peter Nilsson  <hp@axis.com>
6067
6068         * internals.texi (CPU backend): Document
6069         TC_CHECK_ADJUSTED_BROKEN_DOT_WORD.
6070
6071 2000-04-04  Alan Modra  <alan@linuxcare.com.au>
6072
6073         * po/gas.pot: Regenerate.
6074
6075         * as.c (show_usage): Restore translated part of bug string.
6076         * gasp.c (show_usage): Likewise.
6077
6078         * Makefile.am (MKDEP): Use gcc -MM rather than ../mkdep.
6079         (DEP): Quote when passing vars to sub-make.  Use "mv -f" rather
6080         than move-if-change.
6081         (DEP1): Modify for "gcc -MM".
6082         (DEPTC): Likewise.
6083         (DEPOBJ): Likewise.
6084         (DEP2): Likewise.
6085         (CLEANFILES): Add DEPTCA, DEPOBJA, DEP2a, DEPA.
6086         Update dependencies.
6087         * Makefile.in: Regenerate.
6088
6089 2000-04-03  Alexandre Oliva  <aoliva@cygnus.com>
6090
6091         * config/tc-mn10300.c (md_pseudo_table): Use constant names.
6092         (md_begin): Likewise.
6093         (HAVE_AM33): New macro.
6094         (md_assemble): Use it.  Match r_regs and xr_regs only if
6095         HAVE_AM33.
6096
6097 2000-04-03  Alan Modra  <alan@linuxcare.com.au>
6098
6099         * as.h: #include "bin-bugs.h"
6100         * as.c (show_usage): Use REPORT_BUGS_TO.
6101         * gasp.c: #include "bin-bugs.h"
6102         (show_usage): Use REPORT_BUGS_TO.
6103
6104         * config/tc-sparc.c (md_show_usage): Add a trailing newline.
6105
6106 Mon Apr  3 13:56:03 2000  Hans-Peter Nilsson  <hp@axis.com>
6107
6108         * write.c (write_object_file) [! WORKING_DOT_WORD]: If defined,
6109         call TC_CHECK_ADJUSTED_BROKEN_DOT_WORD for each word after
6110         adjustments.
6111
6112 2000-04-03  Alan Modra  <alan@linuxcare.com.au>
6113
6114         * config/tc-i386.c (i386_immediate): Don't assume a constant
6115         immediate is necessarily 16 bits when in 16 bit code mode.
6116         (md_assemble): Instead set guess_suffix here after we have checked
6117         registers.
6118
6119 2000-04-02  Richard Henderson  <rth@cygnus.com>
6120
6121         * config/tc-d30v.c (check_range): Allow signed or unsigned 32-bit
6122         quantities.  Correct right shift sign extension.
6123         (build_insn): Make `number' unsigned long.  Mask top 6 bits of
6124         32-bit value when shifting into place.
6125
6126 2000-04-01  Ian Lance Taylor  <ian@zembu.com>
6127
6128         * app.c: Add ATTRIBUTE_UNUSED as needed.
6129         * config/tc-ppc.c: Likewise.
6130         (ppc_size): Make unsigned long.
6131         (ppc_insert_operand): Add casts to avoid warnings.
6132
6133 2000-03-31  Nick Clifton  <nickc@cygnus.com>
6134
6135         * config/tc-d10v.h (md_flush_pending_output): Define.
6136
6137 2000-03-29  Nick Clifton  <nickc@cygnus.com>
6138
6139         * config/tc-sh.h (SEG_NAME): New macro: return the name of a
6140         segment.  Works for both BFD_ASSEMBLER and others.
6141         (SUB_SEGMENT_ALIGN): Use SEG_NAME.
6142
6143 2000-03-29  Nick Clifton <nickc@cygnus.com
6144
6145         * config/tc-arm.c (tinsns): Add "bal" instruction pattern.
6146
6147 2000-03-28  Alan Modra  <alan@linuxcare.com.au>
6148
6149         * listing.c (LISTING_LHS_WIDTH): Default depends on
6150         LISTING_WORD_SIZE.
6151         (LISTING_LHS_WIDTH_SECOND): Default to LISTING_LHS_WIDTH.
6152
6153 2000-03-27  Ian Lance Taylor  <ian@zembu.com>
6154
6155         * config/tc-sh.c (md_show_usage): Use backslash before newline in
6156         string literal.
6157
6158 2000-03-27  Alan Modra  <alan@linuxcare.com.au>
6159
6160         * config/tc-avr.h (TC_HANDLES_FX_DONE): Define.
6161
6162         * config/tc-avr.c (mcu_types): Add missing initialiser.
6163         (md_pcrel_from_section): Add prototype.
6164         (avr_operand): Remove redundant test of unsigned < 0.
6165         (avr_cons_fix_new): Ensure exp_mod_pm zero on function exit.
6166
6167 2000-03-27  Denis Chertykov  <denisc@overta.ru>
6168
6169         * config/tc-avr.c: New file for AVR support.
6170         * config/tc-avr.h: Likewise.
6171         * configure.in: Add AVR support.
6172         * configure: Regenerate.
6173
6174 2000-03-26  Timothy Wall <twall@cygnus.com>
6175
6176         * gasp.c (macro_op): Add new argument to check_macro call.
6177         Macro structure definitions moved to macro.h
6178         * sb.h:  Add argument to prototype for input_scrub_include_sb.
6179         * input-scrub.c (input_scrub_include_sb): Allow disabling of sb
6180         nesting checks with an additional flag.
6181         (struct input_save): Add flag to indicate whether current sb
6182         should be checked for proper macro/conditional nesting.
6183         (input_scrub_push/pop): Save/restore nest check flag.
6184         (input_scrub_next_buffer): Ditto.  Also call end of macro hook if
6185         defined.
6186         * macro.c (check_macro):  Allow caller to retrieve parsed macro
6187         information if a pointer is provided.  This information may be
6188         used by the new macro hooks.
6189         * macro.h: Update prototype for check_macro.  Macro struct
6190         definitions moved here from macro.c/gasp.c.
6191         * read.c (read_a_source_file): Add parameter to check_macro call,
6192         and pass macro info to the macro hook, if defined.
6193         (input_scrub_insert_line): New.  Allow insertion of a line of
6194         characters into the input stream.
6195         (input_scrub_insert_file): New.  Allow insertion of an arbitrary
6196         file into the input stream.
6197         (s_include): Use input_scrub_insert_file.
6198         * internals.texi: Document new macro hooks.
6199         * as.h: New prototypes added.
6200
6201 2000-03-26  Alan Modra  <alan@linuxcare.com.au>
6202
6203         * config/tc-i386.c: Don't start any as_bad or as_warn message with
6204         an initial capital letter.
6205         (i386_index_check): Reindent.
6206
6207 2000-03-19  Nick Clifton  <nickc@cygnus.com>
6208
6209         * config/tc-arm.c (md_apply_fix3): Fix bug detecting overflow of pc
6210         relative branches.
6211
6212 2000-03-17 Thomas de Lellis <tdel@windriver.com>
6213
6214         * config/tc-arm.c (do_t_adr): Flag "adr Rd,label"
6215         instruction operand bad if Rd > 7 when generating
6216         thumb instructions. Prevents for example,
6217         "adr r12,label" from silently failing and generating
6218         the wrong instruction.
6219
6220 2000-03-17  Nick Clifton  <nickc@cygnus.com>
6221
6222         * config/tc-arm.c (md_apply_fix3): Handle same-section relocations
6223         that have a destingation >= 0x400000.
6224         Fix compile time warning messages.
6225
6226 Thu Mar 16 23:45:16 2000  J"orn Rennecke <amylaar@cygnus.co.uk>
6227
6228         * config/tc-sh.c (md_begin): When encountering insn that are
6229         not supported by the current arch, only change the name if
6230         its contents are the same as prev_name.
6231         (get_specific): If the the architecture doesn't match, fail.
6232
6233 Thu Mar 16 21:18:13 2000  J"orn Rennecke <amylaar@cygnus.co.uk>
6234
6235         * config/tc-sh.c (IDENT_CHAR): Define.
6236         (parse_reg): Use it instead of isalnum.  Put r[0..7]_bank operand
6237         matching back where it came from.
6238
6239 Thu Mar 16 20:58:10 2000  J"orn Rennecke <amylaar@cygnus.co.uk>
6240
6241         * config/tc-sh.c (md_show_usage): Add description of -dsp.
6242
6243 2000-03-15  Jonathan Larmour  <jlarmour@redhat.co.uk>
6244
6245         * config/tc-sh.c (parse_reg): Match r[0..7]_bank operands before
6246         normal operands.
6247
6248 2000-03-15  Kazu Hirata  <kazu@hxi.com>
6249
6250         * config/tc-h8300.c: Add ATTRIBUTE_UNUSED as appropriate.
6251
6252 Mon Mar 13 22:02:59 2000  Hans-Peter Nilsson  <hp@axis.se>
6253
6254         * expr.c (operand) [case 'f']: When testing if '0f' can start a
6255         floating-point-number, make sure 'f' is in FLT_CHARS.
6256
6257 Sat Mar 11 00:01:39 2000  Hans-Peter Nilsson  <hp@axis.se>
6258
6259         * read.c (TC_IMPLICIT_LCOMM_ALIGNMENT): New default-definition.
6260         (s_lcomm_internal): Use it.
6261         * doc/internals.texi (CPU backend): Document it.
6262         * config/obj-evax.h (TC_IMPLICIT_LCOMM_ALIGNMENT): Set to 2**3
6263         bytes.
6264
6265 2000-03-10  Geoffrey Keating  <geoffk@cygnus.com>
6266
6267         * config/tc-mips.c (mips_ip): Don't put stuff in .rodata
6268         when embedded-pic.
6269
6270         * config/tc-mips.c (SWITCH_TABLE): The ELF embedded-pic
6271         implementation doesn't have special handling for switch
6272         statements.
6273         (macro_build): Allow for code in sections other than .text.
6274         (macro): Likewise.
6275         (mips_ip): Likewise.
6276         (md_apply_fix): Do pc-relative relocation madness for MIPS ELF.
6277         Don't perform relocs if we will be outputting them.
6278         (tc_gen_reloc): For ELF, just use fx_addnumber for pc-relative
6279         relocations.  Allow BFD_RELOC_16_PCREL_S2 relocs when
6280         embedded-pic.
6281
6282 2000-03-09  Catherine Moore  <clm@cygnus.com>
6283
6284         * config/tc-m32r.c (m32r_fix_adjustable):  Look up the
6285         relocation type based on the entry in the fixup structure.
6286         Put S_IS_EXTERN processing back in.
6287
6288 2000-03-08  H.J. Lu  (hjl@gnu.org)
6289
6290         * Makefile.am (install-exec-tooldir): Depend on
6291         install-exec-bindir for parallel make.
6292         * Makefile.in: Regenerated.
6293
6294 2000-03-06  Nick Clifton  <nickc@cygnus.com>
6295
6296         * config/tc-m32r.c (struct md_longopts): Add -m32r command line
6297         switch.
6298         (md_parse_option): Parse -m32r command line switch - disable m32rx
6299         compatability.
6300         (md_show_usage): Document new option.
6301
6302         * doc/Makefile.am (CPU_DOCS): Add c-m32r.texi.
6303         * doc/Makefile.in: Regenerate.
6304         * doc/c-m32r.texi (M32R-Opts): Document new command line switch.
6305
6306 2000-03-02  Michael Meissner  <meissner@redhat.com>
6307
6308         * config/tc-d30v.c (check_range): Remove code that incorrectly
6309         sign extended values where bits < 32.
6310
6311 2000-03-02  H.J. Lu  (hjl@gnu.org)
6312
6313         * configure.in: Support --enable-targets=all on ia32.
6314         * configure: Regenerated.
6315
6316 2000-03-01  Nick Clifton  <nickc@cygnus.com>
6317
6318         * gasp.c (do_align): Remove bogus check of alignment value.
6319
6320 2000-02-27  Thomas de Lellis  <tdel@windriver.com>
6321
6322         * config/obj-elf.c (elf_frob_symbol): Remove code which when
6323         TC_PPC was defined forced the type of a symbol with no other type
6324         to be BSF_OBJECT.
6325
6326 2000-02-27  Hans-Peter Nilsson  <hp@axis.com>
6327
6328         * doc/internals.texi (CPU backend): Mention that
6329         line_separator_chars do not break up comments.  Fix typos for
6330         LEX_AT and LEX_NAME descriptions.  Document operands for
6331         TC_EQUAL_IN_INSN, md_operand and md_section_align.  Correct
6332         description of md_create_short_jump usage.  Document argument for
6333         md_undefined_symbol.
6334
6335 2000-02-27  Jakub Jelinek  <jakub@redhat.com>
6336
6337         * config/tc-sparc.c (OPTION_UNDECLARED_REGS): New option.
6338         (md_parse_option): Handle it.
6339         (md_show_usage): Document it.
6340
6341 2000-02-27  Ian Lance Taylor  <ian@zembu.com>
6342
6343         * config/tc-alpha.c (md_assemble): Accept `1' and `9' in an
6344         opcode, for the instruction `pal19'.  From Andrea Arcangeli
6345         <andrea@suse.de>.
6346
6347 2000-02-26  Alan Modra  <alan@spri.levels.unisa.edu.au>
6348
6349         * config/tc-i386.c (i386_immediate): Move constant operand sizing
6350         from here..
6351         (md_assemble): To here, before template operands are matched.
6352         Also ensure a constant immediate is sign extended when we know the
6353         size is at most 16 bits.  This is to catch cases like "add
6354         $0xffc0,%ax" where we don't know the size, and thus that the
6355         immediate can be represented as Imm8S until after parsing the
6356         register operand.
6357         (i386_displacement): Similarly sign extend 16 bit constant
6358         displacements.
6359         (md_assemble): Relax 16-bit jump constant range check to suit sign
6360         extended displacements.
6361
6362 2000-02-26  Andreas Jaeger  <aj@suse.de>
6363
6364         * doc/c-mips.texi (MIPS Opts): Fix typo in last patch.
6365
6366 2000-02-25  Alan Modra  <alan@spri.levels.unisa.edu.au>
6367
6368         * config/tc-i386.c (md_assemble): Don't swap intersegment jmp and
6369         call operands when intel_syntax.
6370         (intel_float_operand): Return 2 for "fi...".
6371         (i386_operand_modifier): Change "DWORD PTR" test to suit above.
6372         Return SHORT_MNEM_SUFFIX for "WORD PTR" when "fi...".  Revert
6373         earlier "SHORT" change.
6374         (md_assemble): When determining suffix from Regs, exclude
6375         InOutPortReg.
6376
6377 2000-02-24  Nick Clifton  <nickc@cygnus.com>
6378
6379         * configure: Add arm-wince, mips-pe and sh-pe targets.
6380         * configure: Regenerate.
6381
6382         * config/obj-coff.h (COFF_WITH_PE): Define for mips-pe and
6383         sh-pe targets.
6384         (TARGET_FORMAT): Set to "pe-shl" for the sh-pe target and to
6385         "pe-mips" for the mips-pe target.
6386
6387         * config/tc-arm.c (insns): Change displacement encoded in BL
6388         and B instructions if the target port is arm-wince.
6389         (do_ldst): Do not bias the relocation offset if the target
6390         port is arm-wince.
6391         (md_pcrel_from): Add in missing relocation offset bias if the
6392         target os arm-wince.
6393
6394         * config/tc-mips.c (mips_target_format): Support COFF flavour.
6395         (md_begin): Disable -G support for mips-pe target.
6396         (md_apply_fix): Treat BFD_RELOC_RVA reloc as BFD_RELOC_32.
6397         * config/tc-mips.h (USE_GLOBAL_POINTER_OPT): Add support for
6398         COFF flavour.
6399
6400         * config/tc-sh.c (md_begin): sh-pe target is little endian.
6401         * config/tc-sh.h (SUB_SEGMENT_ALIGN): If using a BFD
6402         assembler, just set the alignment to 4.
6403
6404         * config/te-wince-pe.h: New file for WinCE targets.  Define
6405         TE_WINCE.
6406
6407 2000-02-25  Alan Modra  <alan@spri.levels.unisa.edu.au>
6408
6409         * config/tc-i386.c (md_assemble): Swap segments too for intel mode
6410         string instructions.
6411         (i386_operand_modifier): Set i.suffix = WORD_MNEM_SUFFIX for SHORT.
6412         (i386_intel_memory_operand): After finding a segment override,
6413         check again for no `[' before looking for a displacement.  Bomb if
6414         more than one displacement rather than silently discarding the
6415         second and subsequent ones.  Free strings malloc'd by
6416         build_displacement_string.
6417
6418 2000-02-24  Catherine Moore  <clm@cygnus.com>
6419
6420         * config/obj-som.c (obj_pseudo_table): Add "weak".
6421         (obj_som_weak): New routine.
6422
6423 2000-02-24  Alan Modra  <alan@spri.levels.unisa.edu.au>
6424
6425         * config/tc-i386.c (union i386_op): New.
6426         (struct _i386_insn): Delete disps[], imms[], regs[].  Add op[].
6427         Throughout file replace occurences of disps[n], imms[n], regs[n]
6428         with equivalent op[n].disps, op[n].imms, op[n].regs.  Simplify
6429         intel mode operand swapping.  Add assert in regKludge and
6430         fake_zero_displacement code.  Test i.types[n] when outputting
6431         displacements and immediates.  Combine output of Disp16 with
6432         Disp32.
6433         (md_assemble): Don't try to fix broken UNIXWARE_COMPAT opcodes
6434         when in intel mode by (not) reversing fsub and fdiv operands
6435         before the template search.  This fails for single operand
6436         shorthand forms of the instruction, and if UNIXWARE_COMPAT is
6437         undefined.  Instead fix the base_opcode after we've found the
6438         template.  Move base_opcode xor with found_reverse_match from
6439         opcode output code to before this fix so we test for the correct
6440         opcodes.
6441         (md_assemble): Don't use strcmp when deciding to ignore the suffix
6442         check in intel mode.  Instead compare opcodes.
6443
6444         * config/tc-i386.h (TC_RELOC): Delete.
6445         * config/tc-i386.c (TC_RELOC): Delete.  Replace usage of TC_RELOC
6446         with equivalent call to reloc.
6447
6448         * as.h (flag_m68k_mri): Move declaration after target include, and
6449         only declare when TC_M68K defined.  Define as zero otherwise.
6450         (LABELS_WITHOUT_COLONS, NO_PSEUDO_DOT): If undefined, define as 0.
6451         * app.c (scrub_m68k_mri): Declare only when TC_M68K defined.
6452         Define as zero otherwise.
6453         (do_scrub_begin): Use m68k_mri parameter only when TC_M68K defined.
6454         (struct app_save): Declare scrub_m68k_mri only when TC_M68K.
6455         (app_push, app_pop): Save scrub_m68k_mri only when TC_M68K.
6456         (do_scrub_chars): Use LABELS_WITHOUT_COLONS directly rather than
6457         testing whether defined.
6458         * cond.c (ignore_input): Use NO_PSEUDO_DOT directly.
6459         * expr.c (operand): #ifdef unused case labels when TC_M68K undefined.
6460         * read.c: Use LABELS_WITHOUT_COLONS and NO_PSEUDO_DOT directly
6461         rather than testing whether defined.
6462         (s_mri): Set flag_m68k_mri only when TC_M68K defined.
6463         (parse_mri_cons): Declare and use only when TC_M68K.
6464         * config/tc-hppa.h (LABELS_WITHOUT_COLONS): Define as 1.
6465         * config/tc-m68k.h (NO_PSEUDO_DOT): Define as 1.
6466         * config/tc-m88k.h (NO_PSEUDO_DOT): Define as 1.
6467
6468         * NEWS: Mention IBM 370 support.
6469
6470 2000-02-23  Richard Henderson  <rth@cygnus.com>
6471
6472         * config/tc-i386.c (md_assemble): When swapping operands for
6473         intel_syntax, assume everything that's not Imm or Disp is a
6474         register.
6475
6476 2000-02-23  Linas Vepstas <linas@linas.org>
6477
6478         * config/tc-i370.c, config/tc-i370.h: New files.
6479         * Makefile.am: Add support for Linux/IBM 370.
6480         * configure.in: Likewise.
6481         * app.c (do_scrub_begin): Don't lex single quote when TC_I370.
6482         * config/obj-elf.c: Include elf/i370.h
6483         (obj_elf_section): Don't do anything special for flag_mri if TC_I370.
6484
6485         * Makefile.in: Regenerate.
6486         * configure: Regenerate.
6487
6488         * doc/c-i370.texi: New file.
6489         * doc/all.texi: Include it.
6490         * doc/as.texinfo: And here.
6491         * doc/Makefile.am(CPU_DOCS): Add c-i370.texi.
6492         * doc/Makefile.in: Regenerate.
6493
6494 2000-02-19  Michael Meissner  <meissner@redhat.com>
6495
6496         * config/tc-d30v.c (parallel_ok): Use FLAG_NOT_WITH_ADDSUBppp to
6497         determine if an instruction can be used in parallel with an ADDppp
6498         or SUBppp instruction.
6499
6500 2000-02-22  Andrew Haley  <aph@cygnus.com>
6501
6502         * doc/c-mips.texi (MIPS Opts): Document -mgp32 and -mgp64.
6503
6504 2000-02-22  Andrew Haley  <aph@cygnus.com>
6505
6506         * config/tc-mips.c (mips_gp32): New variable.
6507         (macro_build) Use mips_gp32.
6508         (mips_ip): Ditto.
6509         (md_longopts): Add "-mgp32" and "-mgp64".
6510         (md_parse_option): Add OPTION_GP32 and OPTION_GP64.
6511
6512         (OPTION_M7900): Change offset
6513         (OPTION_NO_M7900): Ditto.
6514
6515 2000-02-22  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
6516
6517         * config/obj-coff.c (add_lineno): Accept non-positive lineno with
6518         warning, and bump it to 1.
6519
6520 2000-02-22  Ian Lance Taylor  <ian@zembu.com>
6521
6522         From Brad Lucier <lucier@math.purdue.edu>:
6523         * dwarf2dbg.c (print_stats): Add cast to force printf argument to
6524         match format.
6525
6526 2000-02-21  Catherine Moore  <clm@cygnus.com>
6527
6528         * config/tc-mips.c (MF_HILO_INSN): Define.
6529         (mips_7000_hilo_fix): Declare.
6530         (append_insn): Conditionally insert nops after an mfhi/mflo insn.
6531         (md_parse_option): Check for 7000_HILO_FIX options.
6532         (OPTION_M7000_HILO_FIX): Define.
6533         (OPTION_NO_M7000_HILO_FIX): Define.
6534         * doc/c-mips.texi (-mfix7000): Describe.
6535
6536 2000-02-21  Alan Modra  <alan@spri.levels.unisa.edu.au>
6537
6538         * listing.c (print_lines): Remove unused variable `end'.
6539
6540         * config/tc-i386.c (md_assemble): Use `reloc()' to select reloc
6541         type for JumpInterSegment output. Use enum bfd_reloc_code_real for
6542         reloc_type when BFD_ASSEMBLER.
6543         (md_estimate_size_before_relax): Use enum bfd_reloc_code_real for
6544         reloc_type when BFD_ASSEMBLER. Move common code out of switch
6545         statement and quell signed vs. unsigned comparison warning.
6546
6547 2000-02-18  Nick Clifton  <nickc@cygnus.com>
6548
6549         * config/tc-d10v.c (find_opcode): Add a symbol's value to
6550         the computed frag offset, rather than overwriting it.
6551
6552 Thu Feb 17 00:11:08 2000  J"orn Rennecke <amylaar@cygnus.co.uk>
6553
6554         * config/tc-sh.c ("elf/sh.h"): Include.
6555         (sh_dsp, valid_arch, reg_x, reg_y, reg_efg): New static variables.
6556         (md.begin): Initialize target_arch.
6557         Only include opcodes in has table that match selected architecture.
6558         (parse_reg): Recognize register names for sh-dsp.
6559         (parse_at): Recognize post-modify addressing.
6560         (get_operands): The leading space is now optional.
6561         (get_specific): Remove FDREG_N support.  Add support for sh-dsp
6562         arguments.  Update valid_arch.
6563         (build_Mytes): Add support for SDT_REG_N.
6564         (find_cooked_opcode): New function, broken out of md_assemble.
6565         (assemble_ppi, sh_elf_final_processing): New functions.
6566         (md_assemble): Use find_cooked_opcode and assemble_ppi.
6567         (md_longopts, md_parse_option): New option: -dsp.
6568         * config/tc-sh.h (elf_tc_final_processing): Define.
6569         (sh_elf_final_processing): Declare.
6570
6571 Fri Feb 11 14:21:51 2000  Jeffrey A Law  (law@cygnus.com)
6572
6573         * config/tc-hppa.c (pa_build_unwind_subspace): Use subseg_new to create
6574         the unwinder subspace.  Save the current seg/subseg before creating
6575         the new seg/subseg.
6576
6577 2000-02-10  Nick Clifton  <nickc@cygnus.com>
6578
6579         * config/tc-mcore.c (INST_BYTE0): Redefine to handle big and
6580         little endian targets.
6581         (INST_BYTE1): Redefine to handle big and little endian
6582         targets.
6583         (cpu_type): New type: Select between M340 and M210.
6584         (parse_psrmod): New function: Parse the PSRCLR and PSRSET
6585         instructions of the M340.
6586         (md_assemble): Add support for the MULSH and OPSR classes of
6587         instructions.
6588         (md_atof): Add support for little endian targets.
6589         (md_parse_option): Add support for -EL, -EB and -mcpu command
6590         line switches.
6591         (md_convert_frag): Add support for little endian targets.
6592         (md_apply_fix3): Add support for little endian targets.
6593         (md_number_to_chars): Add support for little endian targets.
6594
6595 2000-02-10  Timothy Wall  <twall@redhat.com>
6596
6597         * read.c (read_a_source_file): If TC_START_LABEL_WITHOUT_COLON is
6598         defined, use it to verify the symbol just read should be a label.
6599
6600 2000-02-10  Timothy Wall  <twall@redhat.com>
6601
6602         * app.c (do_scrub_chars): Handle "||" for parallel instructions
6603         when DOUBLEBAR_PARALLEL is defined.  Avoid stripping whitespace
6604         around colons when KEEP_WHITE_AROUND_COLON is defined.
6605         * doc/internals.texi (CPU backend): Document DOUBLEBAR_PARALLEL
6606         and KEEP_WHITE_AROUND_COLON.
6607
6608 2000-02-08  Timothy Wall  <twall@redhat.com>
6609
6610         * read.c (s_rept): Call do_repeat, which abstracts the repeat
6611         logic.
6612         (do_repeat): New.  Abstract repeat logic so that a "break" can be
6613         implemented.
6614         (end_repeat): New.  Provide support for a "break" out of the
6615         repeat loop.
6616         * read.h: Add prototypes for new functions.
6617
6618 2000-02-08  Timothy Wall  <twall@redhat.com>
6619
6620         * doc/internals.texi: Document NUMBERS_WITH_SUFFIX macro.
6621         * as.h: Provide a default NUMBERS_WITH_SUFFIX definition (zero).
6622         * expr.c: Handle numbers with suffixes if NUMBERS_WITH_SUFFIX is
6623         non-zero.
6624
6625 2000-02-08  Timothy Wall  <twall@redhat.com>
6626
6627         * read.c: Added elseif to directives table.
6628         * read.h: Added prototype for s_elseif.
6629         * doc/as.texinfo: Added description for elseif.
6630         * cond.c (s_elseif): New function
6631
6632 2000-02-04  Timothy Wall  <twall@redhat.com>
6633
6634         * listing.c (print_lines): Remove conditionals causing bug in
6635         listings.
6636
6637 2000-02-03  Timothy Wall  <twall@cygnus.com>
6638
6639         * as.h: Define OCTETS_PER_BYTE and OCTETS_PER_BYTE_POWER
6640         default values.
6641         * frags.c (frag_new): Calculate fr_fix in octets
6642         (frag_now_fix) Return offset as target address offset (bytes).
6643         (frag_now_fix_octets) New - Return offset in octets (8-bit
6644         quantities).
6645         * frags.h: Added prototype for frag_now_fix_octets().
6646         Distinguish between octets and bytes in field descriptions.
6647         * listing.c (calc_hex): Account for octets vs bytes when
6648         printing addresses/offsets.
6649         (print_lines) Ditto.  Also, if LISTING_WORD_SIZE is not 1, and
6650         target is little-endian, print the octets in a word in big-endian
6651         order so that the display looks like a proper hexadecimal number,
6652         instead of having the octets reversed.
6653         * read.c (do_align): When recording alignment, alignment power
6654         should be in terms of target bytes (minimum addressible unit)
6655         instead of octets.
6656         (do_org) Convert ORG target address (byte) argument into an
6657         octet offset when generating a variable fragment.
6658         * symbols.c (resolve_symbol_value): Symbol final value
6659         converted to a target address offset (bytes) from its octet offset.
6660         * config/obj-coff.c (coff_frob_symbol): Symbol target address
6661         offset (bytes) is adjusted by the frag offset (octets) converted
6662         to bytes.
6663         (coff_frob_section) Section alignment power is in terms of bytes;
6664         convert it to an octet alignment power when calculating size (and
6665         size mask) in octets.  Don't modify the section size in order to
6666         "align" it for TI COFF, since that format has a different method
6667         for storing alignment information.
6668
6669 2000-02-01  Timothy Wall  <twall@cygnus.com>
6670
6671         * stabs.c (generate_asm_file): Escape backslashes in stabs file
6672         entries, matching the way GCC generates them.  If not escaped, the
6673         filename is encoded incorrectly.
6674
6675 2000-01-31  Nick Clifton  <nickc@cygnus.com>
6676
6677         * config/tc-arm.c (reg_table): Add support for ATPCS register
6678         naming conventions.
6679
6680 2000-01-31  Geoff Keating  <geoffk@cygnus.com>
6681
6682         * config/obj-coff.h (OBJ_COPY_SYMBOL_ATTRIBUTES): Don't define if
6683         already defined.
6684         * config/tc-ppc.h [OBJ_XCOFF] (OBJ_COPY_SYMBOL_ATTRIBUTES):
6685         New macro.
6686         * config/tc-ppc.c (ppc_fix_adjustable): Don't look at the frag
6687         of a symbol when we really care about its value.
6688
6689 2000-01-19  Chandra Chavva  <cchavva@cygnus.com>
6690
6691         * config/tc-mcore.c (md_assemble): Give warning message if
6692         operands passes to instruction are more than the spec.
6693
6694 2000-01-27  Thomas de Lellis <tdel@windriver.com>
6695
6696         * config/tc-arm.c (armadjust_symtab): If the assembler is in
6697         Thumb mode but the label seen was not declared as '.thumb_func'
6698         then set the ST_INFO type to STT_ARM_16BIT mode.  This allows
6699         correct disassembly of Thumb code bounded by non function labels.
6700
6701 2000-01-27  Alan Modra  <alan@spri.levels.unisa.edu.au>
6702
6703         * Makefile.am (MULTI_CFILES): Add config/e-i386aout.c
6704         Add dependencies for e-i386aout.o.  Fix 2 comment lines.
6705
6706         * Makefile.in: Same here.
6707         Update copyright.
6708
6709         * configure.in: Set bfd_gas for i386-aout when primary target
6710         is bfd.  Handle i386aout emulation.  Don't use te_file=multi, as
6711         we may need the primary te_file.  Remove incorrect comment.
6712
6713         * configure: Regenerate.
6714
6715         * config/e-i386aout.c: New file.
6716
6717         * as.c (USE_EMULATIONS): Move to before print_version_id.
6718         (struct emulation): Add i386aout.
6719         (show_usage): Split text strings.  Reformat -a text.  Add --em
6720         help.
6721         Update copyright.
6722
6723         * obj.h (struct format_ops): Add s_get_other and s_get_desc.
6724         (aout_format_ops): New.
6725         Update copyright.
6726
6727         * read.c (s_lcomm_internal): Rewrite OBJ_AOUT,OBJ_BOUT
6728         preprocessor conditional and add aout USE_EMULATIONS tests.
6729         (read_a_source_file): Don't pass error strings to printf as
6730         format arg.
6731         Update copyright.
6732
6733         * gasp.c (exp_get_abs): Don't pass error strings to printf as
6734         format arg.
6735         (do_data): Same here.
6736         (process_file): And here.
6737         Update copyright.
6738
6739         * symbols.c (colon): Rewrite "already defined" fatal message
6740         code for aout with USE_EMULATIONS.
6741         Update copyright.
6742
6743         * config/obj-aout.c (OBJ_HEADER): Define.
6744         (obj_pseudo_table): Rename to aout_pseudo_table.  Init all
6745         fields of sentinel.
6746         (obj_aout_frob_symbol): Expand S_GET_DESC, S_GET_TYPE,
6747         S_GET_OTHER, S_SET_TYPE macros since we don't need obj-multi
6748         forms here.
6749         (obj_aout_type): Expand S_SET_OTHER here too.
6750         (obj_read_begin_hook): Remove.
6751         (aout_pop_insert): New.
6752         (obj_aout_s_get_other): New.
6753         (obj_aout_s_get_desc): New.
6754         (aout_format_ops): New.
6755         Update copyright.
6756
6757         * config/obj-aout.h (obj_pop_insert): Define so non-multi usage
6758         gets aout_pseudo_table.
6759         (aout_pseudo_table): Declare.
6760         (obj_read_begin_hook): Define.
6761         Update copyright.
6762
6763         * config/obj-coff.c (obj_pseudo_table): Rename to
6764         coff_pseudo_table.
6765         (coff_pop_insert): Use coff_pseudo_table.
6766         (coff_sec_sym_ok_for_reloc): Remove.
6767         (coff_format_ops): Add 0 entries for s_get_size, s_set_size,
6768         and comment all zero entries and remove #if 0 code.
6769         Update copyright.
6770
6771         * config/obj-coff.h (obj_pop_insert): Define.
6772         (coff_pseudo_table): Declare.
6773         Update copyright.
6774
6775         * config/obj-ecoff.c (ecoff_format_ops): Add 0 entries for
6776         s_get_size, s_set_size.  Comment all zero entries.
6777         Update copyright.
6778
6779         * config/obj-elf.c (elf_s_get_other): New function.
6780         (obj_read_begin_hook): Rename to elf_obj_read_begin_hook.
6781         (obj_symbol_new_hook): Rename to elf_obj_symbol_new_hook.
6782         (elf_format_ops): Add elf_s_get_other, 0 s_get_size entry, and
6783         comment.
6784         (obj_elf_parse_section_letters): Don't pass error strings to
6785         printf as format arg.
6786         Update copyright.
6787
6788         * config/obj-elf.h (ECOFF_DEBUGGING): Define when
6789         OBJ_MAYBE_ECOFF.
6790         (elf_s_get_other): Declare.
6791         (S_GET_OTHER) Define as elf_s_get_other if not already
6792         defined.
6793         (S_SET_OTHER): Only define when not already defined.
6794         (elf_obj_read_begin_hook): Declare.
6795         (obj_read_begin_hook): Define.
6796         (elf_obj_symbol_new_hook): Declare.
6797         (obj_symbol_new_hook): Define.
6798         Update copyright.
6799
6800         * config/obj-multi.h: Add copyright header and protect against
6801         multiple inclusion.  Add * to all function pointers.
6802         (OBJ_HEADER): If defined, include it rather than other defines
6803         in this file.
6804         (obj_frob_file_after_relocs): Test for NULL.
6805         (obj_symbol_new_hook): Here too.
6806         (obj_sec_sym_ok_for_reloc): And here.
6807         (S_GET_OTHER): Define.
6808         (S_GET_DESC): Define.
6809         (ECOFF_DEBUGGING): Remove as it's done in obj-elf.h
6810         (OBJ_MAYBE_ELF): Update comment.
6811
6812         * config/tc-i386.c (i386_immediate): Add OBJ_MAYBE_AOUT to
6813         OBJ_AOUT preprocessor conditional and handle emulation by
6814         testing OUTPUT_FLAVOR.
6815         (i386_displacement): Here too.
6816         (md_section_align): Similarly here.
6817         (i386_target_format): Conditionally compile when more than one
6818         of OBJ_MAYBE_{ELF,COFF,AOUT} defined.  Add aout case.
6819         (i386_immediate): Fix error message for aout BFD_ASSMBLER.
6820         (i386_displacement): Here too.
6821         Update copyright.
6822
6823         * config/tc-i386.h (AOUT_TARGET_FORMAT): Define for each TE_*.
6824         Define TARGET_FORMAT for aout only when not multi.
6825         Update copyright.
6826
6827         * config/te-multi.h: Delete file as it's identical to te-generic.h
6828
6829 2000-01-15  Alan Modra  <alan@spri.levels.unisa.edu.au>
6830
6831         * config/tc-i386.h (DWORD_MNEM_SUFFIX): Delete.
6832         * config/tc-i386.c (DWORD_MNEM_SUFFIX): Rename all occurrences to
6833         LONG_MNEM_SUFFIX.
6834
6835         * config/tc-i386.h (INTEL_DWORD_MNEM_SUFFIX): Rename to
6836         DWORD_MNEM_SUFFIX.
6837         * config/tc-i386.c (INTEL_DWORD_MNEM_SUFFIX): Here too.  Fix some
6838         comments.
6839
6840 2000-01-13  Clinton Popetz  <cpopetz@cygnus.com>
6841
6842         * config/tc-mips.c (mips_do_align): New function.
6843         * config/tc-mips.h (md_do_align): Define.
6844
6845 2000-01-10  Philip Blundell  <philb@gnu.org>
6846
6847         * doc/c-arm.texi (ARM Options): Fix typo.
6848         (ARM-Chars): Correct description of `#'.  Mention  that `;' is a
6849         line separator for Linux.
6850         * doc/as.texinfo (Comments): Mention the ARM.
6851
6852 2000-01-10  Philip Blundell  <pb@futuretv.com>
6853
6854         * configure.in (arm*-*-conix*): New target.
6855         (arm*-*-linux-gnu*): Match instead of arm-*-linux* and
6856         armv*-*-linux-gnu.
6857         * configure: Regenerate.
6858
6859 2000-01-03  Martin v. Loewis  <loewis@informatik.hu-berlin.de>
6860
6861         * config/obj-elf.c (elf_pseudo_table): Define visibility pseudos.
6862         (obj_elf_visibility): New function.
6863
6864         * doc/as.texinfo (Visibility): New node: document visibility
6865         pseudo ops.
6866
6867 For older changes see ChangeLog-9899