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