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