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