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