* config/tc-hppa.c (pa_ip): Check for invalid 64-bit conditions.
[external/binutils.git] / gas / ChangeLog
1 2003-09-27  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
2
3         * config/tc-hppa.c (pa_ip): Check for invalid 64-bit conditions.
4
5 2003-09-26  Matt Thomas  <matt@3am-software.com>
6
7         * config/tc-vax.c (md_shortopts): Fix a typo.  Remove 'K'.
8         (OPTION_PIC): Define.
9         (md_longopts): Add "pic" option.
10         (md_parse_option): Change 'K' to OPTION_PIC.
11
12 2003-09-23  Alan Modra  <alan@modra.org>
13
14         * config/obj-elf.c (obj_elf_change_section): Adjust for
15         _bfd_elf_get_sec_type_attr changes.  Allow SHF_MERGE and SHF_STRINGS
16         to be set when defaults are not.  Don't set attr from defaults if
17         old_sec.
18
19 2003-09-18  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
20
21         * config/tc-mips.c (macro_build_ldst_constoffset): Don't silently
22         truncate values which won't fit im 32 bits.
23         (load_register): Likewise.
24         (macro): Likewise.
25
26 2003-09-17  Dmitry Diky <diwil@mail.ru>
27
28         * config/tc-msp430.c (MAX_OP_LEN): Set to 256.
29         (msp430_operands): Remove redundant l2[16] within switch-case.
30
31 2003-09-16  Ralf Corsepius  <corsepiu@faw.uni-ulm.de>
32
33         * configure.in: Handle arm-*-rtems* and thumb-*rtems*.
34         * configure: Regenerate.
35
36 2003-09-14  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
37
38         * config/tc-mips.c (HAVE_64BIT_ADDRESS_CONSTANTS): Remove.
39         (macro_build_ldst_constoffset): Sign-extend 32-bit constants. Change
40         the function prototype.
41         (load_register): Likewise. Simplify the checks for sign-extended
42         constants.
43         (macro): Likewise. Fix code generation for 64-bit address constants
44         outside the 32-bit compatibility space. Adjust
45         macro_build_ldst_constoffset calls.
46         (s_cprestore): Adjust macro_build_ldst_constoffset call.
47
48 2003-09-11  Bob Wilson  <bob.wilson@acm.org>
49
50         * config/tc-xtensa.c (insn_labels, free_insn_labels, saved_insn_labels,
51         literal_syms): New global variables.
52         (xtensa_define_label, add_target_symbol, xtensa_find_label,
53         map_over_defined_symbols, is_loop_target_label,
54         xtensa_mark_target_fragments, xtensa_move_frag_symbol,
55         xtensa_move_frag_symbols, defined_symbols, branch_targets): Delete.
56         (xtensa_begin_directive): Call md_flush_pending_output.  Move symbols
57         from insn_labels to saved_insn_labels when entering a literal region.
58         (xtensa_end_directive): Call md_flush_pending_output.  Restore
59         insn_labels list when leaving a literal region.
60         (xtensa_literal_position): Call xtensa_clear_insn_labels.
61         (xtensa_literal_pseudo): Add check to disallow .literal inside a
62         literal region.  Move insn_labels to saved_insn_labels and then restore
63         insn_labels on exit.
64         (xg_add_branch_and_loop_targets): Replace add_target_symbol calls with
65         code to set is_loop_target or is_branch_target flag on the symbol
66         (xtensa_create_literal_symbol): Call xtensa_add_literal_sym.
67         (xtensa_add_literal_sym, xtensa_add_insn_label,
68         xtensa_clear_insn_labels): New functions.
69         (xtensa_move_labels): Remove old_frag and old_offset arguments.  Add
70         loops_ok argument.  Rewrite to use insn_labels list instead of
71         calling xtensa_find_label and to check the is_loop_target flag on
72         symbols when loops_ok is false.
73         (xtensa_frob_label): Remove call to xtensa_define_label.  Add call
74         to either xtensa_add_literal_sym or xtensa_add_insn_label.  Adjust
75         call to xtensa_move_labels.  Propagate is_branch_target and
76         is_loop_target flags from symbols to frags.
77         (xtensa_flush_pending_output): Call xtensa_clear_insn_labels.
78         (md_assemble): Use xtensa_move_labels with loops_ok = FALSE when
79         aligning a loop instruction.  Adjust call to xtensa_move_labels for
80         aligning entry instructions.  Add call to xtensa_clear_insn_labels.
81         (xtensa_end): Remove call to xtensa_mark_target_fragments.
82         (xtensa_move_literals): Replace xtensa_move_frag_symbols call with
83         code to use new literal_syms list.
84         * config/tc-xtensa.h (xtensa_symfield_type): Add is_loop_target and
85         is_branch_target flags.
86
87 2003-09-09  Bob Wilson  <bob.wilson@acm.org>
88
89         * config/tc-xtensa.c (xtensa_mark_literal_pool_location): Remove
90         "move_labels" argument and corresponding call to xtensa_move_labels.
91         (md_assemble): Add a separate call to xtensa_move_labels and remove
92         argument for call to xtensa_mark_literal_pool_location.
93         (xtensa_literal_position, xtensa_switch_to_literal_fragment): Fix
94         calls to xtensa_mark_literal_pool_location.
95         (xtensa_create_local_symbol): Delete and inline the code into...
96         (xtensa_create_literal_symbol): ...here.
97         (xtensa_frob_label): Combine conditionals.
98         (expression_maybe_register, xtensa_symbol_new_hook,
99         fix_new_exp_in_seg): Use symbol_get_tc.
100
101 2003-09-09  Bob Wilson  <bob.wilson@acm.org>
102
103         * config/tc-xtensa.c (xtensa_literal_pseudo): Remove code for
104         combining identical literals.
105         (expression_maybe_register): Remove call to find_lit_sym_translation.
106         (is_duplicate_expression, cache_literal, is_duplicate_literal,
107         add_lit_sym_translation, find_lit_sym_translation): Delete.
108
109 2003-09-07  Nick Clifton  <nickc@redhat.com>
110
111         * doc/as.texinfo (Comments): Comment character for PPC is #.
112
113 2003-09-06  Stephane Carrez  <stcarrez@nerim.fr>
114
115         PR savannah/4358:
116         * config/tc-m68hc11.c (s_m68hc11_relax): Use 2 for size to avoid
117         overflow complain.
118
119 2003-09-05  Richard Sandiford  <rsandifo@redhat.com>
120
121         * config/tc-frv.c (md_pcrel_from_section): Heed TC_FORCE_RELOCATION.
122
123 2003-09-04  Nick Clifton  <nickc@redhat.com>
124
125         * config/tc-v850.c (set_machine): Accept v850e1 machine number.
126         (md_pseudo_table): Add .v850e1 pseudo op.
127         (md_show_usage): Document -mv850e1 switch.
128         (md_parse_option): Accept -mv850e1 switch.
129         (md_begin): Allow TARGET_CPU to be v850e1.
130         * doc/c-v850.texi: Document -mv850e1 switch and .v850e1 pseudo op.
131         * NEWS: Mention support for v850e1.
132
133 2003-09-04  Alan Modra  <amodra@bigpond.net.au>
134
135         * config/tc-ppc.c (md_parse_option): Add PPC_OPCODE_ANY to existing
136         ppc_cpu selection rather than replacing.
137         (ppc_set_cpu): Ignore and preserve PPC_OPCODE_ANY in ppc_cpu.
138         (md_begin): When PPC_OPCODE_ANY, insert all opcodes in ppc_hash.
139
140 2003-09-03  Robert Millan  <robertmh@gnu.org>
141
142         * configure.in: Match GNU/KFreeBSD with new kfreebsd*-gnu
143         triplet.
144         * configure: Regenerate.
145
146 2003-09-02  Daniel Jacobowitz  <drow@mvista.com>
147
148         * configure.in: Update AC_PREREQ to 2.57.  Use AC_CONFIG_FILES
149         and AC_CONFIG_COMMANDS instead of the three-argument AC_OUTPUT.
150         Specify AC_CONFIG_AUX_DIR.
151         * aclocal.m4: Regenerated with aclocal-1.7.
152         * configure: Regenerated with autoconf 2.57.
153         * Makefile.in, doc/Makefile.in: Regenerated with automake-1.7.
154
155 2003-08-29  Jakub Jelinek  <jakub@redhat.com>
156
157         * dw2gencfi.c (cfi_pseudo_table): Add cfi_window_save.
158         (dot_cfi, output_cfi_insn): Handle DW_CFA_GNU_window_save.
159         (output_cie): Don't use DW_EH_PE_pcrel if neither DIFF_EXPR_OK
160         nor tc_cfi_emit_pcrel_expr are defined.
161         (output_fde): Use tc_cfi_emit_pcrel_expr if available and
162         DIFF_EXPR_OK is not defined.
163         * config/tc-sparc.h (TARGET_USE_CFIPOP): Define.
164         (tc_cfi_frame_initial_instructions, tc_regname_to_dw2regnum,
165         tc_cfi_emit_pcrel_expr): Define.
166         (sparc_cfi_frame_initial_instructions, sparc_regname_to_dw2regnum,
167         sparc_cfi_emit_pcrel_expr): New prototypes.
168         (sparc_cie_data_alignment): New decl.
169         (DWARF2_DEFAULT_RETURN_COLUMN, DWARF2_CIE_DATA_ALIGNMENT): Define.
170         * config/tc-sparc.c: Include dw2gencfi.h.
171         (sparc_cie_data_alignment): New variable.
172         (md_begin): Initialize it.
173         (sparc_cfi_frame_initial_instructions): New function.
174         (sparc_regname_to_dw2regnum): Likewise.
175         (sparc_cfi_emit_pcrel_expr): Likewise.
176         * doc/as.texinfo: Document .cfi_window_save.
177
178         * config/tc-sparc.c (s_common): Cast last argument to long and
179         change format string to shut up warning.
180
181 2003-08-25  Jason Eckhardt  <jle@rice.edu>
182
183         * doc/c-i860.texi: Update text about relocatable address expansions.
184
185 2003-08-24  Jason Eckhardt  <jle@rice.edu>
186
187         * config/tc-i860.c (md_assemble): Use isrc2 from the original
188         instruction when expanding E_ADDR.
189
190 2003-08-21  Nick Clifton  <nickc@redhat.com>
191
192         * po/tr.po: Updated Turkish translation.
193
194 2003-08-20  Alan Modra  <amodra@bigpond.net.au>
195
196         * config/tc-ppc.c (md_parse_option): Add PPC_OPCODE_ISEL and
197         PPC_OPCODE_RFMCI to -m440 selected ppc_cpu.
198
199 2003-08-19  Nick Clifton  <nickc@redhat.com>
200
201         * config/tc-arm.c (cp_address_required_here): Add code to handle
202         unindexed addressing mode.
203
204 2003-08-19  Alan Modra  <amodra@bigpond.net.au>
205
206         * config/tc-ppc.c (md_parse_option): Handle -m440.
207         (md_show_usage): Add -m440.
208         (md_apply_fix3): Warning fix.
209         * doc/c-ppc.texi: Document -m440.
210
211 2003-08-16  Benjamin Kalytta  <bkausbk@web.de>
212
213         * read.c (s_print): Check for NULL.
214
215 2003-08-16  Alan Modra  <amodra@bigpond.net.au>
216
217         * write.c (fixup_segment): When handling an expression involving
218         the subtraction of two symbols in the same segment, don't clear
219         fx_pcrel except for TC_M68K.
220
221 2003-08-14  Alan Modra  <amodra@bigpond.net.au>
222
223         * config/tc-i386.h: Remove BFD_ASSEMBLER tests and all !BFD_ASSEMBLER
224         code.
225         * config/tc-i386.c: Likewise.
226         (RELOC_ENUM): Don't define.  Replace throughout with enum.
227
228         * dep-in.sed: Remove libintl.h.  Ignore include/fopen-*.h
229         * Makefile.am (POTFILES.in): Unset LC_COLLATE.
230         Run "make dep-am".
231         * Makefile.in: Regenerate.
232
233 2003-08-08  Andreas Schwab  <schwab@suse.de>
234
235         * config/tc-m68k.h (TARGET_USE_CFIPOP)
236         (DWARF2_DEFAULT_RETURN_COLUMN, DWARF2_CIE_DATA_ALIGNMENT)
237         (tc_regname_to_dw2regnum, tc_cfi_frame_initial_instructions):
238         Define.
239         * config/tc-m68k.c: Include "dw2gencfi.h".
240         (tc_m68k_regname_to_dw2regnum)
241         (tc_m68k_frame_initial_instructions): New functions.
242
243 2003-08-08 Dmitry Diky <diwil@mail.ru>
244
245         * config/tc-msp430.c: Add xW42 and xE42 parts. Sort MPU list
246         according to gcc order.
247
248 2003-08-07  Jason Eckhardt  <jle@rice.edu>
249
250         * config/tc-i860.c (i860_check_label): New function.
251         * config/tc-i860.h (i860_check_label): New prototype.
252         (tc_check_label): Define macro as i860_check_label.
253
254 2003-08-06  Jason Eckhardt  <jle@rice.edu>
255
256         * config/tc-i860.c (s_align_wrapper): New function and prototype.
257         (md_pseudo_table): Change s_align_bytes to s_align_wrapper, remove
258         surrounding OBJ_ELF ifdef, and re-format slightly.
259         * doc/c-i860.texi: Document the special .align syntax available
260         in Intel mode.
261
262 2003-08-06  Jason Eckhardt  <jle@rice.edu>
263
264         * config/tc-i860.c (i860_handle_align): New function.
265         * config/tc-i860.h (HANDLE_ALIGN): Define macro.
266         (MAX_MEM_FOR_RS_ALIGN_CODE): Define macro.
267
268 2003-08-06  Jason Eckhardt  <jle@rice.edu>
269
270         * config/tc-i860.c (i860_process_insn): Check that instructions
271         with their dual-bit set are 8-byte aligned.
272
273 2003-08-06  Nick Clifton  <nickc@redhat.com>
274
275         * po/fr.po: Updated French translation.
276
277 2003-08-05  Jason Eckhardt  <jle@rice.edu>
278
279         * config/tc-i860.c (i860_process_insn): Don't handle dual-bit
280         setting during flop argument parsing.  Instead, do it after
281         instruction is fully parsed.
282
283 2003-08-05  Jason Eckhardt  <jle@rice.edu>
284
285         * doc/c-i860.texi: Mention that .dual, .enddual, and .atmp
286         directives are only available in Intel syntax mode.
287
288 2003-08-05  Jason Eckhardt  <jle@rice.edu>
289
290         * config/tc-i860.c (s_dual): Accept .dual directive only in
291         the Intel syntax mode.
292         (s_enddual): Likewise for .enddual.
293         (s_atmp): Likewise for .atmp.
294
295 2003-08-04  Alan Modra  <amodra@bigpond.net.au>
296
297         * config/tc-i386.c (i386_intel_operand): Always call i386_index_check
298         for memory operands.  Pass the full operand_string to i386_index_check.
299
300 2003-08-01  Jason Eckhardt  <jle@rice.edu>
301
302         * config/tc-i860.c: Remove SYNTAX_SVR4 macro and occurrences.
303         (target_intel_syntax): Declare variable.
304         (OPTION_INTEL_SYNTAX): Declare macro.
305         (md_longopts): Add option -mintel-syntax.
306         (md_parse_option): Set target_intel_syntax.
307         (md_show_usage): Add -mintel-syntax usage.
308         (md_begin): Set reg_prefix based on target_intel_syntax.
309         (i860_process_insn): Skip register prefix only if there is one.
310         Parse relocatable expressions in either Intel or AT&T syntax based
311         on target_intel_syntax instead of the SYNTAX_SVR4 macro.
312         * doc/c-i860.texi: Document -mintel-syntax option and give blurb
313         about the differences in syntax.
314
315 2003-08-01  Dmitry Diky  <diwil@mail.ru>
316
317         * config/tc-msp430.c (msp430_srcoperand): Extend 'push' bug workaround
318         to all arches.
319
320 2003-07-30  J"orn Rennecke <joern.rennecke@superh.com>
321
322         * config/tc-sh.c (md_assemble): For branches, check & update
323         valid_arch here.
324
325 2003-07-30  Jason Eckhardt  <jle@rice.edu>
326
327         * config/tc-i860.c: Convert to ISO C90.
328
329 2003-07-30  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
330
331         * read.c (s_space): Revert 2003-07-28 change.
332
333 2003-07-30  Alan Modra  <amodra@bigpond.net.au>
334
335         * config/obj-elf.c (obj_elf_change_section): Allow "x" for .note*.
336
337 2003-07-29  Alan Modra  <amodra@bigpond.net.au>
338
339         * config/tc-sh.c (tc_gen_reloc): Test for R_SH_IND12W only when ELF.
340
341 2003-07-29  Jakub Jelinek  <jakub@redhat.com>
342
343         * config/tc-ppc.c (md_apply_fix3): Fix check for lq insns.
344
345 2003-07-28  H.J. Lu  <hongjiu.lu@intel.com>
346
347         * config/obj-elf.c (obj_elf_section_type): Also accept "note".
348
349 2003-07-28  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
350
351         * read.c (s_space): Don't warn about .space 0.
352
353 2003-07-28  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
354
355         * config/tc-mips.c (mips_flag_pdr): Define.
356         (md_begin) [OBJ_ELF]: Use it to control .pdr creation.
357         (s_mips_end) [OBJ_ELF]: Likewise.
358         (md_longopts) [OBJ_ELF]: Define OPTION_PDR, OPTION_NO_PDR.
359         (md_parse_option) [OBJ_ELF]: Handle them.
360         (md_show_usage) [OBJ_ELF]: Document -mpdr, -mno-pdr.
361
362         * doc/c-mips.texi (MIPS Opts): Document -mpdr, -mno-pdr.
363         * doc/as.texinfo (Overview) [MIPS]: Likewise.
364
365 2003-07-25  H.J. Lu  <hongjiu.lu@intel.com>
366
367         * config/obj-elf.c (obj_elf_change_section): Update
368         elf_section_type and elf_section_flags only when they are
369         specified.
370
371 2003-07-25  H.J. Lu  <hongjiu.lu@intel.com>
372
373         * config/obj-elf.c (obj_elf_change_section): Always set section
374         type and flags.
375
376 2003-07-25  H.J. Lu  <hongjiu.lu@intel.com>
377
378         * config/obj-elf.c (special_sections): Removed.
379         (obj_elf_change_section): Call _bfd_elf_get_sec_type_attr. Set
380         elf_section_type and elf_section_flags.
381         (elf_frob_file): Set SHT_GROUP.
382
383         * config/obj-elf.h (obj_sec_set_private_data): New.
384
385         * config/tc-alpha.h (ELF_TC_SPECIAL_SECTIONS): Removed.
386         * config/tc-ia64.h: Likewise.
387         * config/tc-m32r.h: Likewise.
388         * config/tc-m68hc11.h: Likewise.
389         * config/tc-mcore.h: Likewise.
390         * config/tc-mips.h: Likewise.
391         * config/tc-ppc.h: Likewise.
392         * config/tc-sh64.h: Likewise.
393         * config/tc-v850.h: Likewise.
394         * config/tc-xtensa.h: Likewise.
395
396         * config/tc-v850.h (SHF_V850_GPREL): Removed.
397         (SHF_V850_EPREL): Likewise.
398         (SHF_V850_R0REL): Likewise.
399
400         * subsegs.c (subseg_get): Call obj_sec_set_private_data if it
401         is defined.
402
403 2003-07-24  Stephane Carrez  <stcarrez@nerim.fr>
404
405         * config/tc-m68hc11.h (DWARF2_ADDR_SIZE): Use 32-bit address for
406         debugging symbols so that we handle page memory correctly.
407
408 2003-07-24  Nick Clifton  <nickc@redhat.com>
409
410         * po/fr.po: Updated French translation.
411
412 2003-07-23  Daniel Jacobowitz  <drow@mvista.com>
413
414         * config/tc-arm.c (arm_archs): Add iwmmxt.
415
416 2003-07-22  H.J. Lu <hongjiu.lu@intel.com>
417
418         * read.c (do_parse_cons_expression): Mark nbytes unused to
419         silence gcc.
420
421 2003-07-22  Alexandre Oliva  <aoliva@redhat.com>
422
423         * config/tc-h8300.c (get_specific): No PCREL8 encoding for bsr/bc
424         or bsr/bs.
425
426         * config/tc-h8300.c (md_assemble): Make sure characters after
427         slash and dot are lower-case.
428
429 2003-07-17  Nick Clifton  <nickc@redhat.com>
430
431         * po/es.po: New Spanish translation.
432         * po/tr.po: New Turkish translation.
433         * po/opcodes.pot: Regenerate.
434
435 2003-07-16  Alan Modra  <amodra@bigpond.net.au>
436
437         * dwarf2dbg.c (get_frag_fix): Revert 2001-11-15 change.
438         (generic_dwarf2_emit_offset): Don't define function when
439         TC__DWARF2_EMIT_OFFSET is defined.
440
441 2003-07-15  Richard Sandiford  <rsandifo@redhat.com>
442
443         * config/tc-mips.c (hilo_interlocks): True for CPU_RM7000.
444         (mips_cpu_info_table): Add rm7000 and rm9000 entries.
445         * doc/c-mips.texi: Document -march=rm9000.
446
447 2003-07-15  Alan Modra  <amodra@bigpond.net.au>
448
449         * config/tc-v850.c (md_assemble): When no reloc, create pcrel fixups
450         only for V850_OPERAND_DISP operands.
451
452 2003-07-15  Alan Modra  <amodra@bigpond.net.au>
453
454         * frags.c (frag_more): Move segment checks to..
455         (frag_alloc_check): ..here.  New function.
456         (frag_append_1_char): Call frag_alloc_check.
457
458 2003-07-14  Nick Clifton  <nickc@redhat.com>
459
460         * po/tr.po: Update with latest version.
461         * po/POTFILES.in: Regenerate.
462         * po/gas.pot: Regenerate.
463         * configure: Regenerate.
464
465 2003-07-14  Nick Clifton  <nickc@redhat.com>
466
467         * config/tc-ip2k.c: Remove inclusion of <ctype.h>
468         * config/tc-tic4x.c: Replace inclusion of <ctype.h> with
469         "safe-ctype.h" and update use of macros.
470         * Makefile.am: Update dependencies.
471         * Makefile.in: Regenerate.
472
473 2003-07-11  Alan Modra  <amodra@bigpond.net.au>
474
475         * po/gas.pot: Regenerate.
476
477 2003-07-10  Jakub Jelinek  <jakub@redhat.com>
478
479         * config/tc-ppc.h (DWARF2_LINE_MIN_INSN_LENGTH): Define always.
480         (TARGET_USE_CFIPOP, tc_cfi_frame_initial_instructions,
481         tc_regname_to_dw2regnum, DWARF2_DEFAULT_RETURN_COLUMN,
482         DWARF2_CIE_DATA_ALIGNMENT): Define.
483         (ppc_cfi_frame_initial_instructions, tc_ppc_regname_to_dw2regnum): New
484         prototypes.
485         (ppc_cie_data_alignment): Declare.
486         * config/tc-ppc.c: Include dw2gencfi.h.
487         (ppc_cie_data_alignment): Define.
488         (md_begin): Initialize ppc_cie_data_alignment.
489         (ppc_cfi_frame_initial_instructions, tc_ppc_regname_to_dw2regnum): New
490         functions.
491         * config/tc-s390.h (DWARF2_LINE_MIN_INSN_LENGTH): Define always.
492         (TARGET_USE_CFIPOP, tc_cfi_frame_initial_instructions,
493         tc_regname_to_dw2regnum, DWARF2_DEFAULT_RETURN_COLUMN,
494         DWARF2_CIE_DATA_ALIGNMENT): Define.
495         (s390_cfi_frame_initial_instructions, tc_s390_regname_to_dw2regnum):
496         New prototypes.
497         (s390_cie_data_alignment): Declare.
498         * config/tc-s390.c: Include dw2gencfi.h.
499         (s390_cie_data_alignment): Define.
500         (md_begin): Initialize s390_cie_data_alignment.
501         (s390_cfi_frame_initial_instructions, tc_s390_regname_to_dw2regnum):
502         New functions.
503
504 2003-07-10  Alexandre Oliva  <aoliva@redhat.com>
505
506         2002-12-12  Alexandre Oliva  <aoliva@redhat.com>
507         * config/tc-mn10300.h (EXTERN_FORCE_RELOC): Don't define to zero.
508         2001-05-09  Alexandre Oliva  <aoliva@redhat.com>
509         * configure.in (am33_2.0, mn10300-*-linux*): Added.
510         * configure: Rebuilt.
511         * config/tc-mn10300.h (TARGET_FORMAT) [TE_LINUX]: Define to
512         elf32-am33lin.
513         * config/tc-mn10300.c (md_begin) [TE_LINUX]: Choose AM33/2.0
514         by default.
515
516 2003-07-09  Alexandre Oliva  <aoliva@redhat.com>
517
518         2003-02-25  Alexandre Oliva  <aoliva@redhat.com>
519         * config/tc-mn10300.c (mn10300_check_fixup): Set GOT_PCREL type
520         for subtracts from GLOBAL_OFFSET_TABLE that could not be
521         simplified.
522         2002-07-18  Alexandre Oliva  <aoliva@redhat.com>
523         * config/tc-mn10300.c (mn10300_check_fixup): Accept subtracts that
524         could not be simplified.
525         (tc_gen_reloc): Turn an absolute fx_subsy into part of fx_offset.
526         2001-11-04  Alexandre Oliva  <aoliva@redhat.com>
527         * config/tc-mn10300.h (TC_RELOC_RTSYM_LOC_FIXUP): Don't adjust
528         BDF_RELOC_MN10300_GOT32.
529         * config/tc-mn10300.c (mn10300_fix_adjustable): If
530         TC_RELOC_RTSYM_LOC_FIXUP doesn't hold, it's not adjustable.
531         2001-05-09  Alexandre Oliva  <aoliva@redhat.com>
532         * config/tc-mn10300.c (mn10300_parse_name): Don't return a
533         symbol if we know its value.
534         2001-05-09  Alexandre Oliva  <aoliva@redhat.com>
535         * config/tc-mn10300.h (GLOBAL_OFFSET_TABLE_NAME): Remove
536         duplicate underscore prefix.
537         2001-05-09  Alexandre Oliva  <aoliva@redhat.com>
538         * config/tc-mn10300.c (mn10300_parse_name): Store relocation
539         type in X_md, not X_add_number.  Zero X_add_number.
540         (mn10300_check_fixup): Extract relocation type from X_md.
541         * config/tc-mn10300.h: Update comment.
542         2001-04-14  Alexandre Oliva  <aoliva@redhat.com>
543         * config/tc-mn10300.h (O_GOTOFF, O_PLT, O_GOT): Replace with...
544         (O_PIC_reloc): this.
545         * config/tc-mn10300.c (mn10300_PIC_related_p): Use it.
546         (mn10300_check_fixup): Likewise.
547         (mn10300_parse_name): Set X_add_number to relocation type.
548         * config/tc-mn10300.h (DIFF_EXPR_OK, GLOBAL_OFFSET_TABLE_NAME,
549         TC_RELOC_RTSYM_LOC_FIXUP, md_parse_name, TC_CONS_FIX_NEW,
550         O_GOTOFF, O_PLT, O_GOT): Define.
551         * config/tc-mn10300.c (mn10300_PIC_related_p): New fn.
552         (mn10300_check_fixup): New fn.
553         (md_assemble): Call it.  Check for PIC-related relocs.
554         (mn10300_cons_fix_new): Likewise.  New fn.
555         (mn10300_end_of_match): New fn.
556         (mn10300_md_parse_name_cont): New fn.
557
558 2003-07-09  Alexandre Oliva  <aoliva@redhat.com>
559
560         2000-05-25  Alexandre Oliva  <aoliva@cygnus.com>
561         * config/tc-mn10300.c (mn10300_insert_operand): Negate negative
562         accumulator's shift.
563         2000-05-08  Alexandre Oliva  <aoliva@cygnus.com>
564         * config/tc-mn10300.c (md_relax_table, md_convert_frag,
565         md_assemble, md_estimate_size_before_relax): Handle fbCC.
566         2000-04-20  Alexandre Oliva  <aoliva@cygnus.com>
567         * config/tc-mn10300.c (HAVE_AM33): Redefine in terms of
568         HAVE_AM33_2.
569         2000-04-03  Alexandre Oliva  <aoliva@cygnus.com>
570         * config/tc-mn10300.c (md_pseudo_table): Use AM33_2 constant.
571         (HAVE_AM33): Match AM33_2 too.
572         (HAVE_AM33_2): New macro.
573         (md_assemble): Use it.  Match 2.0 registers only if HAVE_AM33_2.
574         2000-04-01  Alexandre Oliva  <aoliva@cygnus.com>
575         * config/tc-mn10300.c (md_pseudo_table): Added `am33_2'.
576         (float_registers, double_registers): New variables.
577         (float_register_name, double_register_name): New functions.
578         (md_assemble): Recognize FP registers.  Implement FMT_D3.
579         (mn10300_insert_operand): Support FP registers.
580
581 2003-07-08  Chris Demetriou  <cgd@broadcom.com>
582
583         * config/tc-mips.c (mips_validate_fix): Do not warn about branch
584         target being a global symbol if not compiling SVR4 PIC code.
585
586 2003-07-07  Nick Clifton  <nickc@redhat.com>
587
588         * doc/c-m32r.texi (M32R-Directives): New node.  Document the
589         .high, .shigh and .low directives.
590
591 2003-07-07  Richard Sandiford  <rsandifo@redhat.com>
592
593         * config/tc-h8300.c (h8300sxnmode): Add prototype.
594         (DSYMMODE): Remove.
595         (parse_exp): Replace expressionS argument with a h8_op.  Parse the
596         operand size as well.
597         (skip_colonthing): Remove unused expression argument.  Tighten checks
598         for 2-digit sizes.
599         (colonmod24): Remove.
600         (get_mova_operands): Combine calls to parse_exp and skip_colonthing.
601         (get_operand): Likewise.  Use the standard code to read the size of
602         pc-relative operands.
603         (fix_operand_size): Include the size-guessing logic that used to be
604         in colonmod24 and get_operand.  Don't apply dd:2 optimizations to
605         offsets with a symbolic component.
606
607 2003-07-04  Nick Clifton  <nickc@redhat.com>
608
609         * config/tc-i386.c (tc_x86_regname_to_dw2regnum): Use ARRAY_SIZE
610         macro to compute size of selected register name array.
611
612 2003-07-01  Martin Schwidefsky  <schwidefsky@de.ibm.com>
613
614         * config/tc-s390.c (md_parse_option): Add cpu type z990.
615         (md_begin): Add minimal cpu type logic for instructions with different
616         binary format depending on the cpu.
617         (md_assemble): Remove check for minimal cpu.
618         (s390_insert_operand): Add support for long displacements.
619         (md_gather_operands): Likewise.
620         (tc_s390_fix_adjustable): Likewise.
621         (tc_s390_force_relocation): Likewise.
622         (md_apply_fix3): Likewise.
623
624 2003-06-30  Chris Demetriou  <cgd@broadcom.com>
625
626         * config/tc-mips.c (s_mipsset): Implement -march= handling
627         differently.
628
629 2003-06-30  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
630
631         * config/tc-mips.c: Convert to ISO C90 prototypes. Remove unnecessary
632         prototypes and casts. Replace PTR with void *. Reformat.
633         * config/tc-mips.h: Likewise.
634
635 2003-06-30  Alan Modra  <amodra@bigpond.net.au>
636
637         * config/tc-ia64.c (note_register_values): Warning fix.
638         * config/tc-mips.c (append_insn): Likewise.
639
640 2003-06-29  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
641
642         * config/tc-mips.c (mips_set_options,mips_opts): Support for
643         .set arch=FOO.
644         (file_mips_arch): Rename mips_arch.
645         (mips_arch_info,mips_tune_info): Remove.
646         (hilo_interlocks,gpr_interlocks,cop_interlocks): Use mips_opts.arch.
647         (mips_cpu_info_from_arch): New function.
648         (md_begin): Use file_mips_arch.
649         (macro_build,macro,mips_ip): Use mips_opts.arch.
650         (mips_set_architecture): Init file_mips_arch and mips_opts.arch.
651         (mips_after_parse_args): Remove mips_arch_info and mips_tune_info.
652         Use file_mips_arch.
653         (s_mipsset): Support for .set arch=FOO.
654         (mips_cpu_info_table): Fix typo.
655
656 2003-06-26  H.J. Lu <hongjiu.lu@intel.com>
657
658         * config/tc-i386.c (md_assemble): Declare "exp" before "if".
659
660 2003-06-25  Richard Sandiford  <rsandifo@redhat.com>
661
662         * config/tc-h8300.c (get_specific): Allow ':8' to be used for
663         unsigned 8-bit operands.
664
665 2003-06-24  Nick Clifton  <nickc@redhat.com>
666
667         * read.c (s_comm): Change error message to assume an unsigned size
668         has been passed to .comm.
669         * config/tc-sparc.c (s_common): Likewise.
670         * write.c (write_contents): Replace 'unsigned long' with
671         'addressT' and 'long' with offsetT in order to allow computations
672         with very large values to work for 64-bit addressed targets.
673         (relax_and_size_all_segments): Likewise.
674         (relax_frag): Likewise.
675         (relax_segment): Likewise.
676
677 2003-06-23  Mark Mitchell  <mark@codesourcery.com>
678
679         * config/tc-ppc.c (ppc_cleanup): Use bytes to count APUinfo slots.
680
681 2003-06-23  H.J. Lu <hongjiu.lu@intel.com>
682
683         * gas/config/tc-i386.c (md_assemble): Support Intel Precott New
684         Instructions.
685
686         * gas/config/tc-i386.h (CpuPNI): New.
687         (CpuUnknownFlags): Add CpuPNI.
688
689 2003-06-23    <davidm@hpl.hp.com>
690
691         * config/tc-ia64.c (pseudo_func): Add ABI constants for linux,
692         freebsd, openvms, and nsk (non-stop kernel).
693
694 2003-06-22  Jason Thorpe  <thorpej@wasabisystems.com>
695
696         * config/tc-ns32k.c (md_begin): Initialize inst_hash_table after
697         all locals have been declared.
698
699 2003-06-21  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
700
701         * config/tc-mips.c (ADDRESS_ADD_INSN,ADDRESS_ADDI_INSN): Remove
702         special handling for n32 ABI.
703         (macro): Likewise.
704
705 2003-06-19  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
706
707         * config/tc-mips.c (s_cpsetup,s_cprestore,s_cpreturn): Revert
708         2003-06-11 change.
709
710 2003-06-19  Christian Groessler  <chris@groessler.org>
711
712         * config/tc-z8k.c (parse_reg): Invalid registers generate an error
713         now, not only a warning.  Add some more checks to detect invalid
714         registers.
715         (get_operand): For CLASS_IR remember register size in mode struct.
716         (get_specific): Handle new CLASS_IRO type.  Add register size
717         checks for CLASS_IR and CLASS_IRO.
718         (md_apply_fix3): Fix undefined usage of buf.
719
720 2003-06-19  Alan Modra  <amodra@bigpond.net.au>
721
722         * config/tc-ppc.c (ppc_csect): Pass alignment to ppc_change_csect.
723         (ppc_change_csect): Add align param.  Align frag at start of csect.
724         (ppc_section, ppc_named_section): Adjust ppc_change_csect calls.
725         (ppc_frob_section): Align vma.
726
727 2003-06-18  Jakub Jelinek  <jakub@redhat.com>
728
729         * dw2gencfi.c (EH_FRAME_ALIGNMENT): Define if not defined.
730         (output_cie): Don't pad.
731         (output_fde): Add align argument.  Pad to align if not 0.
732         (cfi_finish): Set .eh_frame alignment to EH_FRAME_ALIGNMENT.
733         Pad just last FDE to EH_FRAME_ALIGNMENT.
734
735 2003-06-18  Martin Schwidefsky  <schwidefsky@de.ibm.com>
736
737         * config/tc-s390.c (init_default_arch): Make current_mode_mask
738         dependent on s390_arch_size and current_cpu dependent on
739         current_mode_mask.
740
741 2003-06-18  Svein E. Seldal  <Svein.Seldal@solidas.com>
742
743         * configure.in: Add c4x as an architecture variant to tic4x.
744         * configure: Regenerate.
745         * Makefile.in: Regenerate.
746         * doc/Makefile.in: Regenerate.
747
748 2003-06-18  Alan Modra  <amodra@bigpond.net.au>
749
750         * config/tc-ppc.c (ppc_elf_suffix): Don't remove symbols other than
751         ".TOC." from PPC64_TOC relocs.
752
753 2003-06-17  Alan Modra  <amodra@bigpond.net.au>
754
755         * config/tc-ppc.c (md_apply_fix3): Allow BRTAKEN, BRNTAKEN relocs.
756
757 2003-06-16  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
758
759         * config/tc-mips.c (ADDRESS_ADD_INSN,ADDRESS_ADDI_INSN,
760         ADDRESS_LOAD_INSN,ADDRESS_STORE_INSN): New macros.
761         (macro_build_ldst_constoffset,load_address,macro,s_cpsetup,
762         s_cprestore,s_cpadd): Use them.
763
764 2003-06-16  Hans-Peter Nilsson  <hp@axis.com>
765
766         * configure.in: Add specific case for cris-*-linux-gnu* with
767         em=linux.
768         * configure: Regenerate.
769         * config/tc-cris.c (DEFAULT_CRIS_AXIS_LINUX_GNU): New macro, TRUE
770         if TE_LINUX defined, else FALSE.
771         (bfd_boolean demand_register_prefix): Set default from
772         DEFAULT_CRIS_AXIS_LINUX_GNU.
773         (symbols_have_leading_underscore): Similar.
774         * config/tc-cris.h (LOCAL_LABELS_DOLLAR): Define to 1.
775
776 2003-06-13  Richard Earnshaw  <rearnsha@arm.com>
777
778         * tc-arm.c (FPU_DEFAULT, case TE_LINUX): Default to FPU_ARCH_FPA.
779         (FPU_DEFAULT, case TE_NetBSD): Default to FPU_ARCH_VFP for ELF,
780         FPU_ARCH_FPA for AOUT.
781         (md_begin): Don't try to guess the floating point architecture from
782         the CPU if the OS ABI (Linux, NetBSD) mandates a particular form.
783
784 2003-06-13  Robert Millan  <zeratul2@wanadoo.es>
785
786         * configure.in: Add i386-netbsd-gnu target.
787         * configure: Regenerate.
788
789 2003-06-12  Tom Tromey  <tromey@redhat.com>
790
791         * doc/as.texinfo (Comm): Added @node.  Moved before CFI
792         directives node.
793
794 2003-06-12  Richard Sandiford  <rsandifo@redhat.com>
795
796         * config/tc-mips.c (append_insn): In a compound relocation, take the
797         field width from the final (outermost) operator.
798
799 2003-06-11  Richard Henderson  <rth@redhat.com>
800
801         * dw2gencfi.c (struct cfi_escape_data): New.
802         (cfi_add_CFA_nop): Remove.
803         (CFI_escape, dot_cfi_escape): New.
804         (dot_cfi): Remove nop.
805         (cfi_pseudo_table): Remove nop; add escape.
806         (output_cfi_insn): Likewise.
807         (select_cie_for_fde): Stop on escape.
808         * dw2gencfi.h (cfi_add_CFA_nop): Remove.
809         * read.c, read.h (do_parse_cons_expression): New.
810         * doc/as.texinfo (.cfi_escape): New.
811
812 2003-06-11  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
813
814         * config/tc-mips.c (s_cpsetup): Use mips_frame_reg instead of SP.
815         (s_cprestore): Likewise.
816         (s_cpreturn): Likewise.
817
818 2003-06-11  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
819
820         * config/tc-mips.c (tc_gen_reloc): Initialize retval amd reloc
821         with zeros.
822
823 2003-06-11  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
824
825         * config/tc-mips.c (md_pcrel_from): Return actual pcrel address.
826         (md_apply_fix3): Ignore non-special relocations. Remove superfluous
827         exceptions from size assert. Remove most of the addend fixup
828         specialcasing. Remove value, use valP directly. simplify fx_addnumber
829         handling. Remove zero addend specialcases.
830         (tc_gen_reloc): Use appropriate value for reloc2 addend. Remove
831         the addend fixup specialcase.
832         * config/tc-mips.h (MD_APPLY_SYM_VALUE): Define as 0.
833
834 2003-06-11  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
835
836         * write.c (write_relocs): Use xcalloc. Fix relocs initialization
837         in the RELOC_EXPANSION_POSSIBLE case.
838
839 2003-06-11  Alan Modra  <amodra@bigpond.net.au>
840
841         * config/tc-i960.c (line_comment_chars): Add '#'.
842         * config/tc-mn10200.c (tc_gen_reloc): Don't ignore fx_subsy.
843
844 2003-06-11  H.J. Lu <hongjiu.lu@intel.com>
845
846         * po/Make-in (DESTDIR): New.
847         (install-data-yes): Support $(DESTDIR).
848         (uninstall): Likewise.
849
850 2003-06-11  Alan Modra  <amodra@bigpond.net.au>
851
852         * Makefile.am: Run "make dep-am".
853         * Makefile.in: Regenerate.
854         * po/POTFILES.in: Regenerate.
855
856 2003-06-10  Doug Evans  <dje@sebabeach.org>
857
858         * cgen.c (gas_cgen_finish_insn): CGEN_INSN_RELAX renamed to
859         CGEN_INSN_RELAXED.
860         * config/tc-fr30.c (md_estimate_size_before_relax): Ditto.
861         * config/tc-m32r.c (md_estimate_size_before_relax): Ditto.
862         * config/tc-openrisc.c (md_estimate_size_before_relax): Ditto.
863
864 2003-06-10  Alan Modra  <amodra@bigpond.net.au>
865             Gary Hade <garyhade@us.ibm.com>
866
867         * config/tc-ppc.c (md_assemble): Handle PPC_OPERAND_DQ.
868         (md_apply_fix3): Special case lq insn.
869
870 2003-06-10  Richard Sandiford  <rsandifo@redhat.com>
871
872         * config/tc-h8300.c (get_rtsl_operands): Accept unbracketed register
873         lists.  Allow single-register ranges.
874
875 2003-06-10  Richard Sandiford  <rsandifo@redhat.com>
876
877         * config/tc-h8300.c (h8300sxnmode): New.
878         (md_pseudo_table): Add .h8300sxn entry.
879
880 2003-06-09  H.J. Lu <hongjiu.lu@intel.com>
881
882         * NEWS: Updated for the new -n option for the i386 assembler.
883
884         * config/tc-i386.c (optimize_align_code): New.
885         (md_shortopts): Add 'n'.
886         (md_parse_option): Handle 'n'.
887         (md_show_usage): Add '-n'.
888
889         * config/tc-i386.h (optimize_align_code): Declared.
890         (md_do_align): Optimize code alignment only if optimize_align_code
891         is not 0.
892
893         * doc/as.texinfo: Add the new -n option.
894
895         * doc/c-i386.texi: Document the new -n option.
896
897 2003-06-07  Richard Henderson  <rth@redhat.com>
898
899         * doc/as.texinfo: Document .cfi_rel_offset.
900
901         * dw2gencfi.c (struct cfa_save_data, cfa_save_stack): New.
902         (cfi_add_CFA_offset): Detect invalid offsets.
903         (cfi_add_CFA_remember_state): Save cur_cfa_offset.
904         (cfi_add_CFA_restore_state): Restore it.
905         (CFI_rel_offset): New.
906         (cfi_pseudo_table): Add it.
907         (dot_cfi): Handle it.
908
909 2003-06-07  H.J. Lu <hongjiu.lu@intel.com>
910
911         * app.c (do_scrub_chars): Add states 14 and 15 to handle
912         predicate for ia64.
913
914 2003-06-05  Michael Snyder  <msnyder@redhat.com>
915
916         * config/tc-h8sx.c (get_specific): Distinguish h8h from h8s ops.
917         (build_bytes): Ditto.
918
919 2003-06-05  Richard Sandiford  <rsandifo@redhat.com>
920
921         * config/tc-h8sx.c (DMODE): Remove.
922         (colonmod24): Don't choose a default if the operand is a 16-bit
923         constant integer.
924         (fix_operand_size): New function.
925         (md_assemble): Use it to choose between @(d:2, ERn) and @(d:16,ERn).
926         Adjust @(d:2,ERn) operands before choosing the specific opcodes.
927
928 2003-06-05  Michal Ludvig  <mludvig@suse.cz>
929
930         * dw2gencfi.c (cfi_add_CFA_insn, cfi_add_CFA_insn_reg)
931         (cfi_add_CFA_insn_reg_reg, cfi_add_CFA_insn_reg_offset): New.
932         (cfi_add_CFA_offset, cfi_add_CFA_def_cfa)
933         (cfi_add_CFA_register, cfi_add_CFA_def_cfa_register)
934         (cfi_add_CFA_def_cfa_offset): Use cfi_add_CFA_insn_*().
935         (cfi_add_CFA_restore, cfi_add_CFA_undefined)
936         (cfi_add_CFA_same_value, cfi_add_CFA_remember_state)
937         (cfi_add_CFA_restore_state, cfi_add_CFA_nop): New.
938         (cfi_pseudo_table): New directives .cfi_return_column,
939         .cfi_restore, .cfi_undefined, .cfi_same_value,
940         .cfi_remember_state, .cfi_restore_state, .cfi_nop.
941         (dot_cfi, output_cfi_insn): Handle new directives.
942         * dw2gencfi.h (cfi_add_CFA_restore, cfi_add_CFA_undefined)
943         (cfi_add_CFA_same_value, cfi_add_CFA_remember_state)
944         (cfi_add_CFA_restore_state, cfi_add_CFA_nop): New prototypes.
945
946 2003-06-04  Richard Henderson  <rth@redhat.com>
947
948         * dw2gencfi.c (output_cfi_insn): Fix typo for negative offsets.
949
950         * dw2gencfi.c (cfi_finish): Set .eh_frame read-only.
951
952 2003-06-04  Richard Henderson  <rth@redhat.com>
953
954         * config/tc-alpha.c (s_alpha_usepv): New.
955         (md_pseudo_table): Add it.
956         (alpha_cfi_frame_initial_instructions): New.
957         * config/tc-alpha.h (TARGET_USE_CFIPOP): New.
958         (tc_cfi_frame_initial_instructions): New.
959         * doc/c-alpha.texi: Document .usepv.
960
961 2003-06-04  Jakub Jelinek  <jakub@redhat.com>
962
963         * as.c (show_usage): Document --execstack and --noexecstack.
964         (parse_args): Add --execstack and --noexecstack.
965         (main): Create .note.GNU-stack section if --execstack or
966         --noexecstack was given on comand line, set its SHF_EXECINSTR bit.
967         * as.h (flag_execstack, flag_noexecstack): New.
968
969 2003-06-03  Chris Demetriou  <cgd@broadcom.com>
970
971         * config/tc-mips.c: (OPTION_ARCH_BASE, OPTION_ASE_BASE)
972         (OPTION_COMPAT_ARCH_BASE, OPTION_FIX_BASE)
973         (OPTION_MISC_BASE): New defines.
974         (OPTION_BREAK, OPTION_CONSTRUCT_FLOATS, OPTION_EB, OPTION_EL)
975         (OPTION_ELF_BASE, OPTION_FIX_VR4122, OPTION_FP32, OPTION_FP64)
976         (OPTION_GP32, OPTION_GP64, OPTION_M3900, OPTION_M4010, OPTION_M4100)
977         (OPTION_M4650, OPTION_M7000_HILO_FIX, OPTION_MARCH, OPTION_MDMX)
978         (OPTION_MEMBEDDED_PIC, OPTION_MIPS1, OPTION_MIPS16, OPTION_MIPS2)
979         (OPTION_MIPS3, OPTION_MIPS32, OPTION_MIPS32R2, OPTION_MIPS3D)
980         (OPTION_MIPS4, OPTION_MIPS5, OPTION_MIPS64)
981         (OPTION_MNO_7000_HILO_FIX, OPTION_MTUNE, OPTION_NO_CONSTRUCT_FLOATS)
982         (OPTION_NO_FIX_VR4122, OPTION_NO_M3900, OPTION_NO_M4010)
983         (OPTION_NO_M4100, OPTION_NO_M4650, OPTION_NO_MDMX, OPTION_NO_MIPS16)
984         (OPTION_NO_MIPS3D, OPTION_NO_RELAX_BRANCH, OPTION_RELAX_BRANCH)
985         (OPTION_TRAP): Redefine in terms of new defines.
986         (md_longopts): Reorder entries.
987
988 2003-05-14  Michael Snyder  <msnyder@redhat.com>
989         From Bernd Schmidt  <bernds@redhat.com>
990         and Michael Snyder  <msnyder@redhat.com>
991         and Alexandre Oliva <aoliva@redhat.com>
992         * config/tc-h8300.c: Add insns and addressing modes for h8300sx.
993         * config/tc-h8300.h: Ditto.
994
995 2003-06-03  Nick Clifton  <nickc@redhat.com>
996
997         * tc-v850.c (tc-gen_reloc): Translate BFD_RELOC_32 into
998         BFD_RELOC_32_PCREL if the reloc is pc-relative.  Do this
999         before calling bfd_reloc_type_lookup.
1000
1001 2003-06-02  Alan Modra  <amodra@bigpond.net.au>
1002
1003         * read.c (emit_expr): Set dot_value.
1004         * dw2gencfi.c (output_fde): Remove pcrel reloc hack.
1005
1006 2003-06-02  Alan Modra  <amodra@bigpond.net.au>
1007
1008         * macro.c (sub_actual): Don't lose string if it turns out that
1009         &string wasn't an arg.
1010
1011 2003-05-31  Richard Henderson  <rth@redhat.com>
1012
1013         * dw2gencfi.c (output_fde): Use fix_new to emit pc-relative reloc.
1014         (cfi_finish): Set flag_traditional_format around .eh_frame data.
1015
1016 2003-05-29  Richard Henderson  <rth@redhat.com>
1017
1018         * config/tc-alpha.c (alpha_cur_ent_sym): Remove.
1019         (all_frame_data, plast_frame_data, cur_frame_data): New.
1020         (s_alpha_ent): Record data for dwarf2 cfi.
1021         (s_alpha_end, s_alpha_mask, s_alpha_frame, s_alpha_prologue): Likewise.
1022         (alpha_elf_md_end): Emit dwarf2 cfi for ecoff unwind directives.
1023         * config/tc-alpha.h (md_end): New.
1024         (DWARF2_DEFAULT_RETURN_COLUMN): New.
1025         (DWARF2_CIE_DATA_ALIGNMENT): New.
1026
1027 2003-05-29  Nick Clifton  <nickc@redhat.com>
1028
1029         * configure.in: Add i386-*-freebsd* entry.
1030         * configure: Regenerate.
1031
1032 2003-05-29  Kazuhiro Inaoka  <inaoka.kazuhiro@renesas.com>
1033
1034         * config/tc-m32r.c: Amend comment to refer to Renesas
1035
1036 2003-05-27  Richard Henderson  <rth@redhat.com>
1037
1038         * expr.c (make_expr_symbol): Fold FAKE_LABEL_NAME use into the
1039         symbol_create call.
1040         (current_location): Use symbol_temp_new_now.
1041         * stabs.c (s_stab_generic): Use symbol_temp_new.
1042         * symbols.c (temp_label_name): Remove.
1043         (symbol_temp_new, symbol_temp_make): Use FAKE_LABEL_NAME.
1044
1045 2003-05-27  Richard Henderson  <rth@redhat.com>
1046
1047         * dw2gencfi.c, dw2gencfi.h: Rewrite from scratch.
1048         * as.c (main): Always call cfi_finish.
1049         * config/tc-i386.c (x86_dwarf2_return_column): New.
1050         (x86_cie_data_alignment): New.
1051         (md_begin): Set them.
1052         (tc_x86_cfi_init): Remove.
1053         (tc_x86_regname_to_dw2regnum): Fix 32-bit register numbers;
1054         return int, not unsigned long; don't as_bad here.
1055         (tc_x86_frame_initial_instructions): Streamline; use
1056         updated api.
1057         * config/tc-i386.h (tc_cfi_init): Remove.
1058         (DWARF2_DEFAULT_RETURN_COLUMN): New.
1059         (DWARF2_CIE_DATA_ALIGNMENT): New.
1060
1061 2003-05-27  Richard Henderson  <rth@redhat.com>
1062
1063         * symbols.c (temp_label_name): New.
1064         (symbol_temp_new, symbol_temp_new_now, symbol_temp_make): New.
1065         (symbol_set_value_now): New.
1066         * symbols.h: Prototype them.
1067         * dwarf2dbg.c: Use them.
1068         (fake_label_name, symbol_new_now, set_symbol_value_now): Remove.
1069
1070 2003-05-23  Jason Eckhardt  <jle@rice.edu>
1071
1072         * config/tc-i860.c (target_xp): Declare variable.
1073         (OPTION_XP): Declare macro.
1074         (md_longopts): Add option -mxp.
1075         (md_parse_option): Set target_xp.
1076         (md_show_usage): Add -mxp usage.
1077         (i860_process_insn): Recognize XP registers bear, ccr, p0-p3.
1078         (md_assemble): Don't try expansions if XP_ONLY is set.
1079         * doc/c-i860.texi: Document -mxp option and i860XP support.
1080
1081 2003-05-23  Eric Christopher  <echristo@redhat.com>
1082
1083         * config/tc-mips.c (macro_build_jalr): Warning patrol.
1084
1085 2003-05-22  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1086
1087         * config/tc-mips.c (append_insn): Use actual relocation size for new
1088         fixp's. Don't relax overflow checking for partial_inplace relocations.
1089         Use the actual relocation type in combined relocs, not just the type
1090         of the first one.
1091         (macro_build_jalr): Use actual relocation size for new fix.
1092         (s_cpsetup, s_gpdword): Likewise.
1093
1094 2003-05-22  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1095
1096         * config/tc-mips.c (macro): Don't use uninitialized tempreg.
1097
1098 2003-05-22  Nick Clifton  <nickc@redhat.com>
1099
1100         * config/tc-xstormy16.c (md_pcrel_from_section): Do not produce
1101         section relative offsets for relocs that will not be based on the
1102         section symbol.
1103         (xstormy16_md_apply_fix3): Remove previous patch to this
1104         function.
1105
1106 2003-05-07  Eric Christopher  <echristo@redhat.com>
1107
1108         * config/tc-mips.c (mips_abicalls): New variable.
1109         (md_parse_option): Use.
1110         (s_option): Ditto.
1111         (s_abicalls): Ditto.
1112         (mips_elf_final_processing): Set EF_MIPS_PIC and
1113         EF_MIPS_CPIC dependent on above.
1114
1115 2003-05-21  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
1116
1117         * tc-hppa.c (hppa_symbol_chars): Remove `,' and `!'.
1118
1119 2003-05-21  Nick Clifton  <nickc@redhat.com>
1120
1121         * config/obj-elf.c: Include dwarf2dbg.h.
1122         (elf_pseudo_tab): Add .file and .loc.
1123         * config/tc-arc.c (md_pseudo_table): Remove .file and .loc.
1124         * config/tc-arm.c: Likewise.
1125         * config/tc-h8300.c: Likewise.
1126         * config/tc-hppa.c: Likewise.
1127         * config/tc-ia64.c: Likewise.
1128         * config/tc-m68hc11.c: Likewise.
1129         * config/tc-m68k.c: Likewise.
1130         * config/tc-mmix.c: Likewise.
1131         * config/tc-mn10300.c: Likewise.
1132         * config/tc-ppc.c: Likewise.
1133         * config/tc-sh.c: Likewise.
1134         * config/tc-sparc.c: Likewise.
1135         * config/tc-v850.c: Likewise.
1136         * config/tc-frv.c: Likewise, and remove redundant inclusion of
1137         dwarf2dbg.h.
1138         * config/tc-ip2k.c: Likewise.
1139         * config/tc-iq2000.c: Likewise.
1140         * config/tc-xstormy16.c: Likewise.
1141         * config/tc-xtensa.c: Likewise.
1142         * Makefile.am: Regenerate dependencies.
1143         * Makefile.in: Regenerate.
1144         * aclocal.m4: Regenerate.
1145         * config.in: Regenerate.
1146         * configure: Regenerate.
1147         * po/POTFILES.in: Regenerate.
1148         * po/gas.pot: Regenerate.
1149
1150 2003-05-21  Nick Clifton  <nickc@redhat.com>
1151
1152         * dw2gencfi.c (cfi_get_label): Use symbol_make for non
1153         BFD_ASSEMBLER targets.
1154         (cfi_startproc): Change type of saved_seg and cfi_seg to segT.
1155         (dot_cfi_endproc): Only call bfd_set_section_flags for targets
1156         defining BFD_ASSEMBLER.
1157
1158 2003-05-20  Michal Ludvig  <mludvig@suse.cz>
1159
1160         * as.c (main): Remove tc_cfi_init().
1161         * dw2gencfi.c (cfi_parse_arg): Allow regnames beginning
1162         with '%'.
1163         (cfi_pseudo_table): Add "cfi_register" entry.
1164         (cfi_make_insn): Handle CFA_register.
1165         (cfi_output_insn): Ditto.
1166         (dot_cfi): Ditto.
1167         (cfi_get_label): Add 'simple' modifier to .cfi_startproc.
1168         (dot_cfi_endproc): Reuse already emitted CIEs.
1169         * testsuite/gas/cfi/cfi-i386.d: New pattern.
1170         * testsuite/gas/cfi/cfi-x86-64.d: Ditto.
1171
1172 2003-05-20  Nick Clifton  <nickc@redhat.com>
1173
1174         * config/tc-xstormy16.c: Include dwarf2dbg.h.
1175         (md_pseudo_table): Add entries for .loc and .line.
1176
1177 2003-05-20  Alan Modra  <amodra@bigpond.net.au>
1178
1179         * dw2gencfi.c (cfi_parse_arg): Only use tc_regname_to_dw2regnum if
1180         defined.
1181         (dot_cfi_endproc): Avoid C99 construct.
1182
1183 2003-05-20  Michal Ludvig  <mludvig@suse.cz>
1184
1185         * dw2gencfi.c, dw2gencfi.h: New files.
1186         * config/tc-i386.c (tc_x86_cfi_init): New function.
1187         * config/tc-i386.h (TARGET_USE_CFIPOP, tc_cfi_init): New defines.
1188         * as.c (parse_args): Set verbose flag on --verbose.
1189         (main): Call tc_cfi_init()/cfi_finish().
1190         * as.h (verbose): New external variable.
1191         * read.c (pobegin): Insert CFI pops to the list.
1192         * symbols.c (local_symbol_make): Make symbol external.
1193         * symbols.h (local_symbol_make): New prototype.
1194         * Makefile.am: Add dw2gencfi.[ch] files.  Run "make dep-am".
1195         * Makefile.in: Regenerate.
1196         * doc/as.texinfo: Added node "CFI directives" with description of
1197         all implemented .cfi_* directives.
1198         * doc/Makefile.in: Regenerate.
1199         * po/POTFILES.in: Regenerate.
1200
1201 2003-05-19  Svein E. Seldal  <Svein.Seldal@solidas.com>
1202
1203         * config/tc-tic4x.c (md_assemble): Added support for one-line parallel
1204         insns.
1205         * config/tc-tic4x.h: Added DOUBLEBAR_PARALLEL definition
1206
1207 2003-05-18  Jason Eckhardt  <jle@rice.edu>
1208
1209         * config/tc-i860.c (i860_process_insn): Initialize fc after
1210         each opcode mismatch.
1211
1212 2003-05-16  Kelley Cook  <kelleycook@wideopenwest.com>
1213
1214         * configure.in: Accept i[3-7]86 variants.
1215         * configure: Regenerate.
1216
1217 2003-05-15  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1218
1219         * config/tc-mips.h: Fix comment formatting.
1220
1221 2003-05-13  Hans-Peter Nilsson  <hp@axis.com>
1222
1223         * read.c (old_buffer, old_input, old_limit): Remove variables.
1224         (read_a_source_file): Delete label contin.
1225         <handling #APP/#NO_APP>: Use an "sb" to push #APP expansion into
1226         input as with macros, instead of in separate old_* variables.
1227         Zero-terminate string being scrubbed.
1228
1229 2003-05-12  Nick Clifton  <nickc@redhat.com>
1230
1231         * config/tc-xstormy16.c (skipping_fptr): New local variable.
1232         (md_assemble): Reset skipping_fptr.
1233         (md_operand): If @fptr() is followed by a minus sign, set
1234         skipping_fptr and ignore the fptr.  If skipping_fptr is set and an
1235         @fptr is detected, ignore it and reset skipping_fptr.
1236
1237 2003-05-11  Jason Eckhardt  <jle@rice.edu>
1238
1239         * config/tc-i860.c (MAX_FIXUPS): Define.
1240         (struct i860_fi fi[]): New struct.
1241         (struct i860_it the_insn): Add above as member and move fields
1242         exp, reloc, pcrel and fup into i860_fi.
1243         (md_assemble): Replace all instances of exp, reloc, pcrel
1244         and fup with fi[].exp, fi[].reloc, fi[].pcrel, fi[].fup.
1245         Add a loop to possibly emit multiple fix-ups for each insn.
1246         (i860_process_insn): Likewise.
1247         (i860_get_expression): Likewise.
1248         (md_apply_fix3): Use a bitwise check for OP_IMM_U5, not equality.
1249
1250 2003-05-09  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1251
1252         * config/tc-s390.c (s390_target_format): Always call init_default_arch.
1253
1254 2003-05-07  H.J. Lu <hongjiu.lu@intel.com>
1255
1256         * config/tc-ia64.c (alias_hash): New.
1257         (alias_name_hash): New.
1258         (secalias_hash): New.
1259         (secalias_name_hash): New.
1260         (md_pseudo_table): Add "secalias".
1261         (md_begin): Initialize alias_hash, alias_name_hash,
1262         secalias_hash and secalias_name_hash.
1263         (struct alias): New.
1264         (dot_alias): Implement .alias and .secalias directives.
1265         (do_alias): New.
1266         (ia64_adjust_symtab): New.
1267         (do_secalias): New.
1268         (ia64_frob_file): New.
1269
1270         * config/tc-ia64.h (ia64_adjust_symtab): New.
1271         (tc_adjust_symtab): Defined.
1272         (ia64_frob_file): New.
1273         (tc_frob_file): Defined.
1274
1275 2003-05-07  Dmitry Diky  <diwil@mail.ru>
1276
1277         * tc-msp430.c: Add missing lines to known cpus list.
1278
1279 2003-05-06  Alexandre Oliva  <aoliva@redhat.com>
1280
1281         * configure.in (MIPS_DEFAULT_ABI): AC_DEFINE.
1282         * config/tc-mips.c (mips_after_parse_args): Set mips_abi to it.
1283         * config.in, configure: Rebuilt.
1284
1285 2003-05-05  H.J. Lu <hjl@gnu.org>
1286
1287         * config/tc-mips.c (tc_gen_reloc): Add addend just once if
1288         howto->partial_inplace is false.
1289
1290 2003-05-05  Daniel Jacobowitz  <drow@mvista.com>
1291
1292         * config/tc-mips.c (mips_need_elf_addend_fixup): Remove
1293         symbol_used_in_reloc_p check.
1294         (md_apply_fix3): Remove check for howto->pcrel_offset.
1295
1296 2003-05-03  H.J. Lu <hjl@gnu.org>
1297
1298         * config/obj-elf.c (obj_elf_parse_section_letters): Make it a
1299         fatal error for unknown section attribute.
1300
1301         * config/tc-alpha.c (alpha_elf_section_letter): Return -1 for
1302         unknown section attribute.
1303         * config/tc-ia64.c (ia64_elf_section_letter): Likewise.
1304         * config/tc-ppc.c (ppc_section_letter): Likewise.
1305
1306         * config/tc-ia64.c (ia64_elf_section_letter): Handle 'o'.
1307         (ia64_elf_section_type): Accept "unwind".
1308
1309 2003-05-02  H.J. Lu <hjl@gnu.org>
1310
1311         * read.h (demand_copy_string): New.
1312
1313         * config/tc-alpha.c (demand_copy_string): Removed.
1314
1315 2003-05-02  Michael Snyder  <msnyder@redhat.com>
1316
1317         * write.h (FAKE_LABEL_NAME): Allow override
1318         (for targets that like eg. a leading dot in a local label).
1319
1320 2003-05-02  Nick Clifton  <nickc@redhat.com>
1321
1322         * config/tc-xstormy16.c (xstormy16_md_apply_fix3): Do not bias the
1323         addend with the symbol's value for pc-relative relocations against
1324         a defined symbol - this will be done automatically.
1325
1326 2003-05-01  H.J. Lu <hjl@gnu.org>
1327
1328         * config/obj-elf.c (obj_elf_type): Accept "notype" and
1329         "STT_NOTYPE".
1330
1331 2003-05-01  H.J. Lu <hjl@gnu.org>
1332
1333         * config/tc-ia64.h (tc_canonicalize_section_name): New.
1334
1335         * config/obj-elf.c (obj_elf_section_name): Call
1336         tc_canonicalize_section_name if it is defined.
1337
1338 2003-05-01  H.J. Lu <hjl@gnu.org>
1339
1340         * config/tc-ia64.c (ia64_check_label): New.
1341         * config/tc-ia64.h (tc_check_label): New.
1342
1343         * read.c (read_a_source_file): Call tc_check_label after
1344         creating a user-defined label if defined.
1345
1346 2003-05-02  Alan Modra  <amodra@bigpond.net.au>
1347
1348         * config/tc-ppc.c (md_show_usage): Mention -a32, -a64, -l, -le, -b,
1349         -be and split strings to below 509 bytes in length.
1350
1351 2003-05-01  Christian Groessler <chris@groessler.org>
1352
1353         * expr.h: Fix comments in operatorT typedef.
1354         * config/tc-z8k.c: Add 2003 to copyright message.
1355         Fold s_segm() and s_unseg() into one function s_segm(parm) which
1356         decides by the parameter.
1357         (md_begin): Don't set linkrelax.  Only set Z8002 default if no
1358         command line argument was given to select the intended
1359         architecure.
1360         (get_interrupt_operand): Warn if NOP type code is emitted.
1361         (newfix): New parameter 'size', forward it to 'fix_new_exp'.
1362         (apply_fix): Call newfix with additional 'size' parameter.
1363         (build_bytes): Remove unused variable 'nib'.  Detect overflow in
1364         4 bit immediate arguments.
1365         (md_longopts): Add 'linkrelax' option.
1366         (md_parse_option): Adapt to new s_segm function.  Set 'linkrelax'
1367         variable when 'linkrelax' command line option is specified.
1368         (md_show_usage): Display 'linkrelax' option.
1369         (md_apply_fix3): Fix cases R_IMM4L, R_JR, and R_IMM8.  Add cases
1370         R_CALLR and R_REL16.
1371         * config/tc-z8k.h: Undef WARN_SIGNED_OVERFLOW_WORD.
1372
1373 2003-04-30  H.J. Lu <hjl@gnu.org>
1374
1375         * config/tc-ia64.c (ia64_number_to_chars): New function pointer.
1376         (ia64_float_to_chars): Likewise.
1377         (dot_byteorder): Set target_big_endian, ia64_number_to_chars
1378         and ia64_float_to_chars by tc_segment_info_data.endian from
1379         the current segment if byteorder == -1.
1380         (md_begin): Call dot_byteorder to set target_big_endian.
1381         (md_atof): Call ia64_float_to_chars to convert floating point.
1382         (ia64_float_to_chars_bigendian): New function.
1383         (ia64_float_to_chars_littleendian): Likewise.
1384         (ia64_elf_section_change_hook): Likewise.
1385
1386         * config/tc-ia64.h (ia64_number_to_chars): New.
1387         (md_number_to_chars): Changed to (*ia64_number_to_chars)
1388         (ia64_elf_section_change_hook): New.
1389         (md_elf_section_change_hook): Defined.
1390         (ia64_segment_info_type): New struct.
1391         (TC_SEGMENT_INFO_TYPE): Defined.
1392
1393 2003-04-30  H.J. Lu <hjl@gnu.org>
1394
1395         * config/tc-ia64.c (md_section_align): Deleted.
1396
1397         * config/tc-ia64.h (SUB_SEGMENT_ALIGN): New.
1398         (md_section_align): New.
1399
1400 2003-04-30  H.J. Lu <hjl@gnu.org>
1401
1402         * config/tc-ia64.c (stmt_float_cons): Fix alignment for real10
1403         and add real16.
1404         (md_pseudo_table): Add "xreal16", "xreal16.ua", "real16" and
1405         "real16.ua".
1406         (md_atof): Add 6 byte padding of zero for real16.
1407
1408 2003-04-29  Nick Clifton  <nickc@redhat.com>
1409
1410         * config/obj-elf.c (obj_elf_symver): Skip whitespace before the
1411         start of a version name.
1412
1413 2003-04-28  Chris Demetriou  <cgd@broadcom.com>
1414
1415         * configure.in (mips-*-*n*bsd*): Replace with...
1416         (mips-*-netbsd*, mips-*-openbsd*): These.
1417         * configure: Regenerate.
1418
1419 2003-04-28  H.J. Lu <hjl@gnu.org>
1420
1421         * config/tc-hppa.c (hppa_symbol_chars): New.
1422         * config/tc-hppa.h (tc_symbol_chars): Likewise.
1423
1424 2003-04-26  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1425
1426         * config/tc-mips.h (TC_FORCE_RELOCATION_SUB_SAME): Define again.
1427
1428 2003-04-25  Chris Demetriou  <cgd@broadcom.com>
1429
1430         * NEWS: Belatedly mention support for MIPS32 Release 2.
1431
1432 2003-04-24  Eric Christopher  <echristo@redhat.com>
1433
1434         * config/tc-mips.c (nopic_need_relax): Revert previous
1435         change.
1436
1437 2003-04-24 Dhananjay Deshpande <dhananjayd@kpitcummins.com>
1438
1439         * config/tc-h8300.h (DWARF2_LINE_MIN_INSN_LENGTH): New
1440         * config/tc-h8300.c (dwarf2dbg.h): Include
1441         (md_pseudo_table): Handle .loc and .file
1442         (md_assemble): Call dwarf2_emit_insn if BFD_ASSEMBLER.
1443         * Makefile.am: Add dependency on dwarf2dbg.h for h8300 targets.
1444         * Makefile.in: Regenerate.
1445
1446 2003-04-24 Dhananjay Deshpande <dhananjayd@kpitcummins.com>
1447
1448         * config/tc-h8300.c (Nmode, h8300hnmode, h8300snmode): New.
1449         (md_pseudo_table): Add h8300hn, h8300sn.
1450         * config/tc-h8300.h (COFF_MAGIC): Handle h8300hn, h8300sn.
1451         * doc/c-h8300.texi : Add documentation for new machine directives.
1452
1453 2003-04-24  Nick Clifton  <nickc@redhat.com>
1454
1455         * config/tc-ppc.c (ppc_symbol_chars): Define.
1456         * config/tc-ppc.h (tc_symbol_chars): Define.
1457
1458 2003-04-23  J"orn Rennecke <joern.rennecke@superh.com>
1459
1460         * config/tc-sh.c: Amend comment to refer to SuperH.
1461         * config/tc-sh.h: Likewise.
1462         (LISTING_HEADER): Amend to refer to SuperH.
1463         * config/tc-sh64.c: Change comment to refer to SuperH.
1464         * config/tc-sh64.h (LISTING_HEADER): Change to refer to SuperH.
1465         * doc/as.texinfo [SH, GENERIC]: Amend / Change to refer to SuperH.
1466         * doc/c-sh.texi: Amend to refer to SuperH.
1467         Add SuperH architecture documentation references.
1468         * doc/c-sh64.texi: Change to refer to SuperH.
1469
1470 2003-04-23  H.J. Lu <hjl@gnu.org>
1471
1472         * app.c (do_scrub_chars): More checks for valid labels.
1473
1474 2003-04-22  H.J. Lu <hjl@gnu.org>
1475
1476         * app.c (do_scrub_chars): Check for valid label.
1477
1478 2003-04-22  Kazuhiro Inaoka  <inaoka.kazuhiro@renesas.com>
1479
1480         * doc/as.texinfo: Replace references to Mitsubishi M32R with
1481         references to Renesas M32R.
1482         * doc/c-m32r.texi: Likewise.
1483
1484 2003-04-21  Richard Henderson  <rth@redhat.com>
1485
1486         * dwarf2dbg.c (get_filenum): Skip as-yet unassigned file numbers.
1487         (out_file_list): Assign non-null filename after generating error.
1488
1489 2003-04-18  Jakub Jelinek  <jakub@redhat.com>
1490
1491         * ehopt.c (check_eh_frame): For aug_size == 0
1492         in state_seeing_aug_size state skip the state_skipping_aug
1493         state.
1494
1495 2003-04-15  Rohit Kumar Srivastava <rohits@kpitcummins.com>
1496
1497         * doc/c-h8300.texi: Replace occurrances of 'Hitachi' with
1498         'Renesas'.
1499         * doc/c-h8500.texi: Likewise.
1500         * doc/c-sh.texi: Likewise.
1501         * doc/c-sh64.texi: Likewise.
1502         * doc/h8.texi: Likewise.
1503         * config/tc-h8300.c: Likewise.
1504         * config/tc-h8300.h: Likewise.
1505         * config/tc-h8500.c: Likewise.
1506         * config/tc-h8500.h: Likewise.
1507         * config/tc-sh.c: Likewise.
1508         * config/tc-sh.h: Likewise.
1509         * config/tc-sh64.c: Likewise.
1510         * config/tc-sh64.h: Likewise.
1511
1512 2003-04-10  Alexandre Oliva  <aoliva@redhat.com>
1513
1514         * config/tc-mips.h (tc_frag_data_type, TC_FRAG_TYPE): New.
1515         * config/tc-mips.c: Use signed add for n32 address arithmetic.
1516         (append_insn): When filling delay slots with instructions
1517         that have fixups that tc_gen_reloc might consider modifyable
1518         in variant frags, start a new frag.
1519         (load_address): Generate GOT_DISP with of without offset
1520         depending on whether symbol is local.  For -xgot, use
1521         GOT_PAGE/GOT_OFST or GOT_HI16/GOT_LO16.
1522         (macro) <M_DLA_AB, M_LA_AB>: Likewise.
1523         <M_JAL_A>: In NewABI, use CALL16 or GOT_DISP for small got,
1524         CALL_HI16/CALL_LO16 or GOT_PAGE/GOT_OFST for big got.
1525         <ld_st>: In NewABI with small got, always use
1526         GOT_PAGE/GOT_OFST, with the latter in the load/store
1527         instruction.  With big got, use GOT_HI16/GOT_LO16 or
1528         GOT_PAGE/GOT_OFST.
1529         (tc_gen_reloc): Adjust variant frags with GOT_DISP in NewABI.
1530         Add tc_frag_data.tc_fr_offset to addends.  Decay CALL16,
1531         GOT_OFST and GOT_DISP to GOT_DISP in NewABI.
1532         (md_convert_frag): Use memmove for safe copying of overlapping
1533         regions.
1534
1535 2003-04-09  Stephane Carrez  <stcarrez@nerim.fr>
1536
1537         * doc/c-m68hc11.texi (M68HC11-Opts): Document -m68hcs12, -mshort,
1538         -mlong, -mshort-double and -mlong-double options; use table @code.
1539         (M68HC11-Syntax): Update to document 68HC12 operands.
1540         (M68HC11-Modifiers): New section for operand modifiers.
1541         (M68HC11-Directives): New section for specific assembler directives.
1542         (M68HC11-Branch): Fix Overfull hbox error.
1543
1544 2003-04-09  Alexandre Oliva  <aoliva@redhat.com>
1545
1546         * config/tc-mips.c (macro): Add comments explaining the rationale
1547         for Chris' change.
1548
1549 2003-04-09  Chris Demetriou  <cgd@broadcom.com>
1550
1551         * config/tc-mips.c (macro): Put back `+ 0x8000' in test for 64-bit
1552         constant address that Alexandre took out by accident.  Reject
1553         64-bit addresses that are not sign extensions of 32 bits only if
1554         we don't support 64-bit address constants.
1555
1556 2003-04-09  Alan Modra  <amodra@bigpond.net.au>
1557
1558         * config/tc-ppc.c (md_apply_fix3): Generate ADDR16 relocs.
1559
1560 2003-04-08  Nick Clifton  <nickc@redhat.com>
1561
1562         * as.c (perform_an_assembly_pass): If using cgen, call
1563         gas_cgen_begin.
1564         * cgen.c (gas_cgen_begin): New function.  If
1565         flag_signed_overflow_ok is set call cgen_set_signed_overflow_ok
1566         otherwise call cgen_clear_signed_overflow_ok.
1567         * cgen.h: Prototype gas_cgen_begin.
1568
1569 2003-04-07  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1570
1571         * write.c (write_relocs): Remove unused variable.
1572
1573 2003-04-06  Chris Demetriou  <cgd@broadcom.com>
1574
1575         * config/tc-mips.c (HAVE_64BIT_ADDRESS_CONSTANTS): New.
1576         (macro): Use new macro to decide whether to emit constant address
1577         as 32 or 64 bits if addresses are 32-bit wide but registers are
1578         64-bit wide.
1579
1580 2003-04-05  Stephane Carrez  <stcarrez@nerim.fr>
1581
1582         * config/tc-m68hc11.c (M6811_OP_CALL_ADDR): New internal define.
1583         (M6811_OP_PAGE_ADDR): New internal define.
1584         (get_operand): New modifier %page and %addr to obtain page and
1585         address part of a far-function.
1586         (fixup8): Use BFD_RELOC_M68HC11_PAGE for a %page modifier; don't
1587         complain on overflow for the BFD_RELOC_M68HC11_PAGE and truncation
1588         relocs.
1589         (fixup16): Use BFD_RELOC_M68HC11_LO16 for a %addr modifier.
1590         (find_opcode): Add comment.
1591         (md_estimate_size_before_relax): Force relocation of
1592         STATE_UNDEXED_OFFSET types when the symbol is not absolute.
1593         (tc_m68hc11_fix_adjustable): Check for BFD_RELOC_M68HC11_LO16
1594         instead of BFD_RELOC_LO16; temporarily make the BFD_RELOC_32
1595         on the symbol itself so that DWARF2 strings are merged correctly.
1596
1597 2003-04-04  Svein E. Seldal  <Svein.Seldal@solidas.com>
1598
1599         * config/obj-coff.h (TARGET_FORMAT): Namespace cleanup, changed
1600         default tic4x target format to 'coff2-tic4x'.
1601         * config/tc-tic4x.c: Namespace cleanup. Replace s/c4x/tic4x/ and
1602         s/c3x/tic3x/
1603         * config/tc-tic4x.h: Ditto
1604
1605 2003-04-03  Nick Clifton  <nickc@redhat.com>
1606
1607         * NEWS: Mention support for Xtensa architecture.
1608
1609 2003-04-02  Philip Blundell  <philb@gnu.org>
1610
1611         * config/tc-arm.c (arm_force_relocation): Return 0 for OFFSET_IMM.
1612
1613 2003-04-02  Chris Demetriou  <cgd@broadcom.com>
1614
1615         * config/tc-mips.c (macro2): Adjust implementation of
1616         M_ULH, M_ULHU, M_ULW, and M_ULD so that they work properly
1617         in the case where the source and destination registers
1618         are the same.
1619
1620 2003-04-01  Bob Wilson  <bob.wilson@acm.org>
1621
1622         * Makefile.am (CPU_TYPES): Add xtensa.
1623         (TARGET_CPU_CFILES): Add config/tc-xtensa.c.
1624         (TARGET_CPU_HFILES): Add config/tc-xtensa.h.
1625         (xtensa-relax.o): New target.
1626         Run "make dep-am".
1627         * Makefile.in: Regenerate.
1628         * configure.in: Handle xtensa-*-*.  Add xtensa-relax.o to
1629         extra_objects for xtensa targets.
1630         * configure: Regenerate.
1631         * write.c (write_object_file): Add new md_post_relax_hook.
1632         * config/tc-xtensa.c: New file.
1633         * config/tc-xtensa.h: Likewise.
1634         * config/xtensa-istack.h: Likewise.
1635         * config/xtensa-relax.c: Likewise.
1636         * config/xtensa-relax.h: Likewise.
1637         * doc/Makefile.am (CPU_DOCS): Add c-xtensa.texi.
1638         * doc/Makefile.in: Regenerate.
1639         * doc/all.texi: Set new XTENSA variable.
1640         * doc/as.texinfo: Set new Xtensa variable.  Describe
1641         Xtensa-specific options.  Define line comment character for
1642         Xtensa.  Add Xtensa processors to list of ELF targets where
1643         alignment is specified in bytes.  Add new Xtensa-Dependent node.
1644         Add acknowledgements for those contributing to the Xtensa port.
1645         * doc/internals.texi: Describe new md_post_relax_hook.
1646         * doc/c-xtensa.texi: New file.
1647
1648 2003-04-01  Nick Clifton  <nickc@redhat.com>
1649             Richard Earnshaw  <rearnsha@arm.com>
1650
1651         * config/tc-arm.c: Remove presence of (r) and (tm) symbols.
1652         (ARM_ARCH_IWMMXT): Simplify.
1653         (insns): Place iwmmx instructions in correct place in table.
1654         (arm_add_note): New function: Add a note entry to a .note section.
1655         (md_begin): Make the default architecture be unknown.
1656         Suppress the creation of an arm note section.
1657
1658 2003-03-26  Eric Christopher  <echristo@redhat.com>
1659
1660         * config/tc-mips.c (nopic_need_relax): Check for S_IS_EXTERN.
1661
1662 2003-03-25  Stan Cox   <scox@redhat.com>
1663             Nick Clifton  <nickc@redhat.com>
1664
1665         Contribute support for Intel's iWMMXt chip - an ARM variant:
1666
1667         * config/tc-arm.c: (ARM_CEXT_IWMMXT, ARM_ARCH_IWMMXT, WR_PREFIX,
1668         WC_PREFIX, REG_TYPE_IWMMXT): New constants.
1669         (enum wreg_type, enum iwmmxt_insn_type): New types.
1670         (wr_register, wc_register, wcg_register): New macros.
1671         (iwmmxt_table): New variable.
1672         (wreg_required_here, do_iwmmxt_byte_addr, do_iwmmxt_tandc,
1673         do_iwmmxt_tbcst, do_iwmmxt_textrc, do_iwmmxt_textrm,
1674         do_iwmmxt_tinsr, do_iwmmxt_tmcr, do_iwmmxt_tmcrr, do_iwmmxt_tmia,
1675         do_iwmmxt_tmovmsk, do_iwmmxt_tmrc, do_iwmmxt_tmrrc,
1676         do_iwmmxt_torc, do_iwmmxt_waligni, do_iwmmxt_wmov,
1677         do_iwmmxt_word_addr, do_iwmmxt_wrwr, do_iwmmxt_wrwrwcg,
1678         do_iwmmxt_wrwrwr, do_iwmmxt_wshufh, do_iwmmxt_wzero,
1679         cp_byte_address_offset, cp_byte_address_required_here,
1680         check_iwmmxt_insn): New functions.
1681         (asm_opcode_insns): Add iWMMXt instructions.
1682         (md_begin): Set the mach value for iWMMXt targets.  Create a note
1683         section to identify iwmmxt binaries.
1684         (md_apply_fix3): Handle BFD_RELOC_ARM_CP_OFF_IMM_S2.
1685         * doc/c-arm.texi: Document the support for the iWMMXt.
1686         * NEWS: Mention new support.
1687
1688 2003-03-24  Daniel Néri  <dne@mayonnaise.net>
1689
1690         * doc/as.texinfo: Rename the all occurances of C54X to TIC54X.
1691         * doc/all.texi: Likewise.
1692         * doc/c-tic54x.texi: Likewise.
1693
1694 2003-03-21  Andreas Schwab  <schwab@suse.de>
1695
1696         * config/tc-ia64.c (generate_unwind_image): Fix type of unw_rec to
1697         avoid aliasing issue.
1698
1699 2003-03-21  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1700
1701         * config/tc-s390.c (s390_arch_size): Initialize to zero.
1702         (current_arch_mask): Rename to current_mode_mask.
1703         (current_arch_requested): Remove variable.
1704         (current_cpu): New variable.
1705         (init_default_arch): Set defaults values for s390_arch_size,
1706         current_mode_mask and current_cpu.
1707         (md_parse_option): New options -mesa, -mzarch and -march={g5,g6,z900}.
1708         (md_begin): Replace current_arch_mask by current_cpu.
1709         (md_assemble): Adapt check and error message to current_mode_mask and
1710         current_cpu.
1711
1712 2003-03-09  James E Wilson  <wilson@tuliptree.org>
1713
1714         * macro.c (buffer_and_nest): Store more to sb instead of '\n'.
1715         * read.c (get_line_sb): Return end of line character or '\n' if
1716         it is zero or non-existent.
1717
1718 2003-03-12  Alexandre Oliva  <aoliva@redhat.com>
1719
1720         * config/tc-mips.c (mips_validate_fix): New function.
1721         * config/tc-mips.h (TC_VALIDATE_FIX): Define.
1722         (mips_validate_fix): Declare.
1723
1724 2003-03-12  Alexandre Oliva  <aoliva@redhat.com>
1725
1726         * Reverted 2003-03-02's patch.
1727
1728 2003-03-11  Steve Ellcey  <sje@cup.hp.com>
1729
1730         * dwarf2dbg.c (generic_dwarf2_emit_offset): New.
1731         (TC_DWARF2_EMIT_OFFSET): Provide default.
1732         (out_debug_aranges, out_debug_info): Use it.
1733         * config/tc-ia64.c (ia64_dwarf2_emit_offset): New.
1734         (ia64_cons_fix_new): Move FUNC_DTP_RELATIVE handling ...
1735         (ia64_gen_real_reloc_type): ... here.
1736         * config/tc-ia64.h (TC_DWARF2_EMIT_OFFSET): New.
1737
1738 2003-03-09  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1739
1740         * config/tc-mips.c (s_mips_end): Remove !BFD_ASSEMBLER case.
1741         (s_mips_ent): Likewise.
1742
1743 2003-03-04  Dmitry Diky  <diwil@mail.ru>
1744
1745         * config/tc-msp430.c (mcu_types): Add recently announced x1122
1746         and x1123 devices, add missed x437.
1747         (md_show_usage): Sort device list.
1748
1749 2003-03-03  J"orn Rennecke <joern.rennecke@superh.com>
1750
1751         * config/tc-sh.c (sh_dsp): Replace with preset_target_arch.
1752         (md_begin): Use preset_target_arch.
1753         (md_longopts): Make isa option unconditional.
1754         (md_parse_option): Make OPTION_DSP and OPTION_ISA sh4 / any
1755         set preset_target_arch.
1756         (md_apply_fix3): If BFD_ASSEMBLER, adjust SWITCH_TABLE fixups
1757         by -S_GET_VALUE  (fixP->fx_subsy).
1758         (tc_gen_reloc): For SWITCH_TABLE fixups, the symbol is fixp->fx_subsy,
1759         and the addend is 0.
1760         Adjust addend of R_SH_IND12W relocations by fixp->fx_offset - 4.
1761         * config/tc-sh.h (TC_FORCE_RELOCATION_SUB_LOCAL): Define.
1762
1763 2003-03-02  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1764
1765         * config/tc-mips.c (append_insn): Add handling of
1766         BFD_RELOC_MIPSEMB_16_PCREL_S2. Avoid emitting unneeded
1767         BFD_RELOC_16_PCREL_S2 relocs and add earlier warnings about
1768         misaligned address and reange overflow.
1769         (macro_build): Add handling of BFD_RELOC_MIPSEMB_16_PCREL_S2. Add
1770         earlier warnings about misaligned address and reange overflow.
1771         (mips_ip): Add handling of BFD_RELOC_MIPSEMB_16_PCREL_S2.
1772         (md_apply_fix): Likewise. Fix warning output.
1773         (tc_gen_reloc): Add handling of BFD_RELOC_MIPSEMB_16_PCREL_S2.
1774         Allow BFD_RELOC_16_PCREL_S2 for all ABIs.
1775         (md_convert_frag): Add handling of BFD_RELOC_MIPSEMB_16_PCREL_S2.
1776
1777 2003-02-21  Nick Clifton  <nickc@redhat.com>
1778
1779         * NEWS: Mention availability of test generator program.
1780
1781 2003-02-21  Miles Bader  <miles@gnu.org>
1782
1783         * config/tc-v850.c (system_registers): Add v850e debug registers.
1784         (system_register_name): Accept up to 27 (the last v850e sys register).
1785
1786 2003-02-21  Bob Wilson  <bob.wilson@acm.org>
1787
1788         * doc/as.texinfo: Define new COFF-ELF variable to conditionalize text
1789         relevant to both COFF and ELF.  Fix obvious typos and texinfo bugs.
1790         Capitalize section headings consistently.  Format index entries more
1791         consistently.  Unconditionalize text about whether text and data
1792         sections are alterable.  Use @ifnottex for alternatives to @tex output
1793         so that HTML works.  Clean up COFF vs. ELF descriptions of .section,
1794         .size and .type directives.  Be more polite about bad bug reports.
1795         Move FDL into a separate file.
1796         * doc/fdl.texi: New file.
1797
1798 2003-02-21  Richard Sandiford  <rsandifo@redhat.com>
1799
1800         * config/tc-mips.c (prev_reloc_op_frag): New variable.
1801         (macro): Check it to decide whether a new frag is needed.
1802         (my_getSmallExpression): Set it.
1803
1804 2003-02-20  jmc  <jmc@prioris.mini.pw.edu.pl>
1805
1806         * cgen.c: Fix typo: intial -> initial.
1807
1808 2003-02-19  Jie Zhang  <zhangjie@magima.com.cn>
1809
1810         * app.c (do_scrub_chars): Handle '||' in two states.
1811
1812 2003-02-13  Alan Modra  <amodra@bigpond.net.au>
1813
1814         * write.c (TC_FORCE_RELOCATION_SUB_SAME): Revert last change.
1815         * config/tc-s390.h (TC_FORCE_RELOCATION_SUB_SAME): Define.
1816
1817 2003-02-11  Uwe Stieber  <uwe@wwws.de>
1818
1819         * configure.in: Add support for kaOS as cross build target system.
1820         * configure: Regenerated.
1821
1822 2003-02-10  Nick Clifton  <nickc@redhat.com>
1823
1824         * config/tc-arm.c (md_begin): If the Maverick co-processor is
1825         selected, set the EF_ARM_MAVERICK_FLOAT flag and
1826         bfd_mach_arm_ep9312 machine number.
1827
1828 2003-02-08  Richard Sandiford  <rsandifo@redhat.com>
1829
1830         * config/tc-mips.c (reloc_needs_lo_p): New function.
1831         (fixup_has_matching_lo_p): New function.
1832         (append_insn): Use reloc_needs_lo_p to check whether a relocation
1833         might need a matching %lo().  Reuse the head of mips_hi_fixup_list
1834         if that fixup already has a matching %lo().  Don't call frag_wane here.
1835         (macro): Call frag_wane here if the last unmatched hi was in the
1836         current frag.
1837         (pic_need_relax): New function, split out from...
1838         (md_estimate_size_before_relax): ...here.
1839         (mips_frob_file): Use reloc_needs_lo_p.  Use pic_need_relax to test
1840         whether BFD_RELOC_MIPS_GOT16 fixups refer to global symbols.
1841
1842 2003-02-07  Richard Sandiford  <rsandifo@redhat.com>
1843
1844         * config/tc-mips.c (my_getSmallExpression): Rework bracket handling.
1845
1846 2003-02-06  Alan Modra  <amodra@bigpond.net.au>
1847
1848         * config/tc-ppc.c (ppc_elf_suffix): Undo part of last change so that
1849         x@toc+off works.
1850
1851 2003-02-05  Alan Modra  <amodra@bigpond.net.au>
1852
1853         * config/tc-ppc.c (mapping): Handle new TLS reloc specs.
1854         (ppc_elf_suffix): Don't warn for x+off@got when ppc64 and don't
1855         accept x@got+off etc.
1856         (md_assemble): Handle TLS relocs.
1857         (ppc_force_relocation): Force for all TLS relocs.
1858         (ppc_fix_adjustable): Likewise.
1859         (md_apply_fix3): Handle TLS relocs.
1860
1861 2003-02-04  Alan Modra  <amodra@bigpond.net.au>
1862
1863         * config/obj-elf.c (obj_elf_change_section): Set SEC_LINK_ONCE and
1864         SEC_LINK_DUPLICATES_DISCARD directly rather than using elf_linkonce_p.
1865
1866 2003-02-02  Richard Sandiford  <rsandifo@redhat.com>
1867
1868         * config/tc-mips.c (enum small_ex_type): Remove.
1869         (imm_unmatched_hi): Remove.
1870         (md_assemble): Remove use of imm_unmatched_hi.  Remove the last
1871         argument from calls to append_insn.
1872         (append_insn): Remove unmatched_hi parameter; check reloc_type[0]
1873         instead.
1874         (macro_build): Update append_insn calls.
1875         (mips16_macro_build, macro_build_lui): Likewise.
1876         (mips_ip): Rework handling of small expressions.  Move explicit
1877         relocation handling into my_getSmallExpression.  Assume that the
1878         value of 'o' operands is zero if there is only one bracketed
1879         expression left.
1880         (percent_op): Make constant.  Record the BFD relocation code
1881         associated with each operator.
1882         (my_getSmallParser, my_getPercentOp): Remove.
1883         (parse_relocation): New function.
1884         (my_getSamllExpression): Rework.  Fill in relocations here
1885         rather than in mips_ip.
1886
1887 2003-01-29  Nick Clifton  <nickc@redhat.com>
1888
1889         * config/tc-i386.c (line_comment_chars): Add '#'.  This makes the
1890         assembler's handling of # <linenum> "<filename>" directives work.
1891
1892 2003-01-28  Jakub Jelinek  <jakub@redhat.com>
1893
1894         * dwarf2dbg.c: Include filenames.h.
1895         (struct file_entry): Make filename const char *.
1896         (dirs, dirs_in_use, dirs_allocated): New variables.
1897         (get_filenum): Add NUM argument.  Build directory table.
1898         (dwarf2_where): Adjust caller.
1899         (dwarf2_directive_file): Use get_filenum to allocate
1900         slot in file and directory tables.
1901         (dwarf2_directive_loc): Recreate full filename from
1902         directory and filename part if needed for listing.
1903         (out_file_list): Output directory table.
1904         Output main source file dirname before its filename.
1905
1906 2003-01-28    Dmitry Diky <diwil@mail.ru>
1907
1908         * config/tc-msp430.c: Replace occurences of 'tolower' with
1909         'TOLOWER'.
1910
1911 2003-01-27  David Mosberger  <davidm@hpl.hp.com>
1912
1913         * config/tc-ia64.c (dot_vframesp): Correct error message.
1914         (dot_vframepsp): Ditto.
1915
1916 2003-01-27  Alexandre Oliva  <aoliva@redhat.com>
1917
1918         * configure.in (em): Set to irix on all Irix systems.
1919         * configure: Rebuilt.
1920         * config/te-irix.h: New file.
1921         * config/tc-mips.c (mips_dwarf2_format): Use TE_IRIX to decide
1922         whether to use Irix-specific 64-bit format.
1923
1924 2003-01-27  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1925
1926         * config/tc-s390.c (s390_elf_cons): Avoid designated initializers.
1927
1928 2003-01-25  Jakub Jelinek  <jakub@redhat.com>
1929
1930         * config/tc-sparc.c (sparc_ip): Handle TLS % operators.
1931         (tc_gen_reloc): Handle TLS relocs.
1932         (sparc_cons, cons_fix_new_sparc): Handle %r_tls_dtpoff.
1933         * config/tc-sparc.h (tc_fix_adjustable): Don't adjust TLS
1934         relocs.
1935         * config/obj-elf.c (obj_elf_section_word): Handle tls.
1936         (obj_elf_type): Handle tls_object.
1937
1938 2003-01-24  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1939
1940         * config/tc-s390.c (s390_tls_suffix): New function.
1941         (elf_suffix_type): Add suffix enums for TLS relocations.
1942         (s390_elf_suffix): Add suffix strings for TLS relocations.
1943         (s390_elf_cons): Map new lenght/elf suffix combinations for TLS to
1944         bfd relocations.
1945         (md_gather_operands): Map new instruction operand/elf suffix
1946         combinations for TLS to bfd relocations.
1947         (tc_s390_fix_adjustable): Add new TLS relocations.
1948         (tc_s390_force_relocation): Likewise.
1949         (md_apply_fix3): Likewise.
1950
1951 2003-01-24  Alan Modra  <amodra@bigpond.net.au>
1952
1953         * as.h: Update copyright date.
1954         * symbols.c: Likewise.
1955         * config/tc-d10v.h: Likewise.
1956         * config/tc-fr30.h: Likewise.
1957         * config/tc-i960.h: Likewise.
1958         * config/tc-mips.h: Likewise.
1959
1960         * config/tc-hppa.h (DIFF_EXPR_OK): Define.
1961         (MD_APPLY_SYM_VALUE): Move.
1962
1963 2003-01-23  Nick Clifton  <nickc@redhat.com>
1964
1965         * NEWS: Announce sh2e support.
1966
1967         Add sh2e support:
1968         2002-04-02  Alexandre Oliva  <aoliva@redhat.com>
1969         * config/tc-sh.c (md_show_usage): Added sh2e next to sh3e.
1970         (sh_elf_final_processing): Handle arch_sh2e.
1971
1972 2003-01-23  Alan Modra  <amodra@bigpond.net.au>
1973
1974         * symbols.c (S_FORCE_RELOC): Add "strict" param.
1975         * symbols.h (S_FORCE_RELOC): Likewise.
1976         * config/obj-aout.h (S_FORCE_RELOC): Likewise.
1977         * config/obj-bout.h (S_FORCE_RELOC): Likewise.
1978         * config/obj-coff.h (S_FORCE_RELOC): Likewise.
1979         * config/obj-ieee.h (S_FORCE_RELOC): Likewise.
1980         * config/obj-vms.h (S_FORCE_RELOC): Likewise.
1981         * write.c (generic_force_reloc): New function.
1982         (TC_FORCE_RELOCATION): Use it here instead of S_FORCE_RELOC.
1983         (TC_FORCE_RELOCATION_SUB_SAME): Test TC_FORCE_RELOCATION too.
1984         (adjust_reloc_syms): Adjust S_FORCE_RELOC call.
1985         * as.h (generic_force_reloc): Declare.
1986         * doc/internals.texi (S_FORCE_RELOC): Update.
1987         (TC_FORCE_RELOCATION_SUB_SAME): Update.
1988
1989         * config/tc-alpha.c (alpha_force_relocation): Adjust to use
1990         generic_force_reloc.
1991         (alpha_fix_adjustable): Likewise.
1992         * config/tc-arm.c (arm_force_relocation): Likewise.
1993         * config/tc-cris.c (md_cris_force_relocation): Likewise.
1994         * config/tc-frv.c (frv_force_relocation): Likewise.
1995         * config/tc-i386.c (md_apply_fix3): Likewise.
1996         * config/tc-ia64.c (ia64_force_relocation): Likewise.
1997         * config/tc-ip2k.c (ip2k_force_relocation): Likewise.
1998         * config/tc-m32r.c (m32r_force_relocation): Likewise.
1999         * config/tc-m68hc11.c (tc_m68hc11_force_relocation): Likewise.
2000         * config/tc-mcore.c (mcore_force_relocation): Likewise.
2001         * config/tc-mips.c (mips_force_relocation): Likewise.
2002         * config/tc-mmix.c (mmix_force_relocation): Likewise.
2003         * config/tc-ppc.c (ppc_force_relocation): Likewise.
2004         * config/tc-s390.c (tc_s390_force_relocation): Likewise.
2005         * config/tc-sh.c (sh_force_relocation): Likewise.
2006         (md_pcrel_from_section): Likewise.
2007         * config/tc-sparc.c (tc_gen_reloc): Likewise.
2008         * config/tc-v850.c (v850_force_relocation): Likewise.
2009         * config/tc-xstormy16.c (xstormy16_force_relocation): Likewise.
2010         * config/tc-i386.h (TC_FORCE_RELOCATION): Likewise.
2011         * config/tc-mcore.h (TC_FORCE_RELOCATION): Likewise.
2012         * config/tc-sparc.h (tc_fix_adjustable): Likewise.
2013
2014         * config/tc-d10v.c (d10v_force_relocation): Delete.
2015         * config/tc-d10v.h (TC_FORCE_RELOCATION): Don't define.
2016         * config/tc-dlx.c (md_dlx_force_relocation): Delete.
2017         * config/tc-dlx.h (TC_FORCE_RELOCATION): Don't define.
2018         * config/tc-fr30.c (fr30_force_relocation): Delete.
2019         * config/tc-fr30.h (TC_FORCE_RELOCATION): Don't define.
2020         * config/tc-mn10300.c (mn10300_force_relocation): Delete.
2021         * config/tc-mn10300.h (TC_FORCE_RELOCATION): Don't define.
2022         (TC_FORCE_RELOCATION_SUB_SAME): Test TC_FORCE_RELOCATION too.
2023         * config/tc-i960.h (TC_FORCE_RELOCATION_SUB_SAME): Likewise.
2024         * config/tc-hppa.c (hppa_force_relocation): Adjust S_FORCE_RELOC call.
2025         * config/tc-mips.c (RELAX_BRANCH_TOOFAR): Warning fix.
2026         * config/tc-mips.h (TC_FORCE_RELOCATION_SUB_SAME): Don't define.
2027         * config/tc-openrisc.c (openrisc_force_relocation): Delete.
2028         * config/tc-openrisc.h (TC_FORCE_RELOCATION): Don't define.
2029         * config/tc-sparc.c (elf32_sparc_force_relocation): Delete.
2030         * config/tc-sparc.h (TC_FORCE_RELOCATION): Don't define for ELF.
2031         * config/tc-i386.c (i386_force_relocation): Delete.
2032         * config/tc-i386.h (TC_FORCE_RELOCATION): Don't define for
2033         BFD_ASSEMBLER.
2034         (EXTERN_FORCE_RELOC): Fix TE_PE and STRICT_PE_FORMAT nesting.
2035         * config/tc-m68k.h (TC_FORCE_RELOCATION): Don't define.
2036         * config/tc-pj.h (TC_FORCE_RELOCATION): Don't define.
2037         * config/tc-sh.h (TC_FORCE_RELOCATION_SUB_ABS): Don't call
2038         S_FORCE_RELOC.
2039         (TC_FORCE_RELOCATION_SUB_SAME): Test TC_FORCE_RELOCATION too.
2040         * config/tc-sh64.h (TC_FORCE_RELOCATION_SUB_SAME): Likewise.
2041
2042 2003-01-23  Alan Modra  <amodra@bigpond.net.au>
2043
2044         * config/tc-sh64.c (shmedia_frob_section_type): Adjust for changed
2045         sh64_elf_section_data.
2046         * config/tc-sh64.h: Include elf32-sh64.h.
2047         * config/tc-m68hc11.c: Don't include stdio.h.
2048         (md_show_usage): Fix missing continuation.
2049         * Makefile.am: Run "make dep-am".
2050         * Makefile.in: Regenerate.
2051
2052 2003-01-22  Nick Clifton  <nickc@redhat.com>
2053
2054         * as.h: Include fopen-bin.h not fopen-same.h for mingw32 hosts.
2055
2056 2003-01-21  Fabio Alemagna  <falemagn@aros.org>
2057
2058         * configure.in: Handle *-*-aros*.
2059         * configure:    Regenerated from configure.in.
2060
2061 2003-01-20  Martin Schwidefsky  <schwidefsky@de.ibm.com>
2062
2063         * config/tc-s390.c (elf_suffix_type): Add suffix enums for gotoff,
2064         gotplt and pltoff relocations.
2065         (s390_elf_suffix): Add suffix strings for gotoff, gotplt and pltoff.
2066         (s390_elf_cons): Map new lenght/elf suffix combinations for gotoff,
2067         gotplt and pltoff to bfd relocations.
2068         (md_gather_operands): Map new instruction operand/elf suffix
2069         combinations to bfd relocations.
2070         (tc_s390_fix_adjustable): Add new gotoff, gotplt and pltoff relocations
2071         to the list of unadjustable relocations.
2072         (tc_s390_force_relocation): Always emit relocations for gotoff, gotplt
2073         and pltoff relocations.
2074         (md_apply_fix3): Add the new relocations.
2075
2076 2003-01-20  Martin Schwidefsky  <schwidefsky@de.ibm.com>
2077
2078         * config/tc-s390.c (md_apply_fix3): Emit error message for relocations
2079         with a subsy symbol.
2080
2081 2003-01-17  Stephane Carrez  <stcarrez@nerim.fr>
2082
2083         * config/tc-m68hc11.c (tc_m68hc11_fix_adjustable): Prevent adjustment
2084         of relocs for memory bank addressing.
2085
2086 2003-01-17  Stephane Carrez  <stcarrez@nerim.fr>
2087
2088         * config/tc-m68hc11.c (md_show_usage): Update usage.
2089         (md_parse_option): Recognize -m68hcs12.
2090         (m68hc11_elf_final_processing): Set EF_M68HCS12_MACH flag to identify
2091         HCS12.
2092         * doc/as.texinfo (Overview): Document new option -m68hcs12.
2093
2094 2003-01-16  Jakub Jelinek  <jakub@redhat.com>
2095
2096         * config/tc-ia64.c (ia64_cons_fix_new): Handle @dtprel() in data.
2097
2098 2003-01-16  Alan Modra  <amodra@bigpond.net.au>
2099
2100         * Makefile.am: Run "make dep-am".
2101         * Makefile.in: Regenerate.
2102         * po/POTFILES.in: Regenerate.
2103
2104 2003-01-11  Alan Modra  <amodra@bigpond.net.au>
2105
2106         * read.c (get_absolute_expr): New, split out from..
2107         (get_absolute_expression): ..here.
2108         * read.h (get_absolute_expr): Declare.
2109         * config/obj-elf.c (elf_common): Use offsetT for "temp" and "size".
2110         Trim size to arch bits_per_address, and test for negative input
2111         via get_absolute_expr.
2112
2113 2003-01-07  DJ Delorie  <dj@redhat.com>
2114
2115         * config/tc-xstormy16.c (md_cgen_lookup_reloc): Adjust value based
2116         on operand type.
2117         (xstormy16_md_apply_fix3): Use adjustment.
2118
2119 2003-01-02  Ben Elliston  <bje@redhat.com>
2120
2121         * configure.in: Add iq2000-elf target.
2122         * configure: Regenerate.
2123         * config/tc-iq2000.c: New file.
2124         * config/tc-iq2000.h: Likewise.
2125         * po/gas.pot: Regenerate.
2126
2127 2003-01-02  Chris Demetriou  <cgd@broadcom.com>
2128
2129         * config/tc-mips.c: Update copyright years to include 2003.
2130         (mips_ip): Fix indentation of "+A", "+B", and "+C" handling.
2131         Additionally, clean up their code slightly and clean up their
2132         comments some more.
2133
2134         * doc/c-mips.texi: Add MIPS32r2 to ".set mipsN" documentation.
2135
2136 2003-01-01  Daniel Jacobowitz  <drow@mvista.com>
2137
2138         * doc/Makefile.am (as.1): Depend on "asconfig.texi gasver.texi
2139         $(CPU_DOCS)".
2140         * doc/Makefile.in: Regenerate.
2141
2142 2003-01-01  John David Anglin  <dave.anglin@nrc.ca>
2143
2144         * config/obj-elf.c (special_sections): Work around HP's incorrect usage
2145         of .init and .fini sections for array initializers and finalizers.
2146
2147 2002-12-31  Chris Demetriou  <cgd@broadcom.com>
2148
2149         * config/tc-mips.c (validate_mips_insn, mips_ip): Recognize
2150         the "+D" operand, which will be used only by the disassembler.
2151
2152 2002-12-30  Chris Demetriou  <cgd@broadcom.com>
2153
2154         * configure.in: Recognize mipsisa32r2, mipsisa32r2el, and
2155         CPU variants.
2156         * configure: Regenerate.
2157         * config/tc-mips.c (ISA_HAS_DROR, ISA_HAS_ROR): New defines.
2158         (macro_build): Handle "K" operand.
2159         (macro2): Use ISA_HAS_DROR and ISA_HAS_ROR in the places where
2160         CPU_HAS_DROR and CPU_HAS_ROR are currently used.
2161         (mips_ip): New variable "lastpos", and implement "+A", "+B",
2162         and "+C" operands for MIPS32 Release 2 ins/ext instructions.
2163         Implement "K" operand for MIPS32 Release 2 rdhwr instruction.
2164         (validate_mips_insn): Implement "+" as a way to extend the
2165         allowed operands, and implement "K", "+A", "+B", and "+C"
2166         operands.
2167         (OPTION_MIPS32R2): New define.
2168         (md_longopts): Add entry for OPTION_MIPS32R2.
2169         (OPTION_ELF_BASE): Adjust to accomodate OPTIONS_MIPS32R2.
2170         (md_parse_option): Handle OPTION_MIPS32R2.
2171         (s_mipsset): Reimplement handling of ".set mipsN" options
2172         and add support for ".set mips32r2".
2173         (mips_cpu_info_table): Add entry for "mips32r2" (MIPS32 Release 2).
2174         (md_show_usage): Document "-mips32r2" option.
2175         * doc/as.texinfo: Document "-mips32r2" option.
2176         * doc/c-mips.texi: Likewise.
2177
2178 2002-12-30  Dmitry Diky  <diwil@mail.ru>
2179
2180         * configure.in: Add msp430 target.
2181         * configure: Regenerate.
2182         * Makefile.am: Add msp430 target.
2183         * Makefile.in: Regenerate.
2184         * config/tc-msp430.c: New file: msp430 assembler.
2185         * config/tc-msp430.h: New file: target macros for msp430.
2186         * doc/Makefile.am: Add msp430 target.
2187         * doc/Makefile.in: Regenerate.
2188         * doc/as.texinfo: Include msp430 documenation.
2189         * doc/all.texi: Enable msp430 documentation.
2190         * doc/c-msp430.texi: New file: document msp430 specific features
2191         of the assembler.
2192
2193 2002-12-25  Alexandre Oliva  <aoliva@redhat.com>
2194
2195         * dwarf2dbg.c (DWARF2_ADDR_SIZE): New macro.
2196         (dwarf2_finish): Use it.
2197         * doc/internals.texi (DWARF2_ADDR_SIZE): Document it.
2198         * config/tc-mips.h (DWARF2_ADDR_SIZE): Override.
2199
2200 2002-12-20  DJ Delorie  <dj@redhat.com>
2201
2202         * config/tc-xstormy16.c (md_cgen_lookup_reloc): Support
2203         BFD_RELOC_XSTORMY16_12.
2204
2205 2002-12-19  Alan Modra  <amodra@bigpond.net.au>
2206
2207         * doc/as.texinfo (Invoking): Typo fix.
2208         * config/tc-tic54x.c (encode_operand): Comment typo fix.
2209
2210 2002-12-18  Kazu Hirata  <kazu@cs.umass.edu>
2211
2212         * doc/c-alpha.texi: Fix typos.
2213         * doc/c-arm.texi: Likewise.
2214         * doc/c-d10v.texi: Likewise.
2215         * doc/c-i370.texi: Likewise.
2216         * doc/c-i960.texi: Likewise.
2217         * doc/c-ia64.texi: Likewise.
2218         * doc/c-mmix.texi: Likewise.
2219         * doc/c-ns32k.texi: Likewise.
2220         * doc/c-pdp11.texi: Likewise.
2221         * doc/c-pj.texi: Likewise.
2222         * doc/c-sh64.texi: Likewise.
2223         * doc/c-sparc.texi: Likewise.
2224         * doc/c-tic54x.texi: Likewise.
2225         * doc/c-v850.texi: Likewise.
2226         * doc/c-vax.texi: Likewise.
2227         * doc/internals.texi: Likewise.
2228
2229 2002-12-18  Chris Demetriou  <cgd@broadcom.com>
2230
2231         * config/tc-mips.c (macro): In M_DROL, M_DROR, M_ROL, and M_ROR,
2232         use hardware rotate ops as appropriate.  In M_DROL_I, M_DROR_I,
2233         M_ROL_I, and M_ROR_I, simplify code, clean up warnings, and
2234         arrange not to issue warnings about use of AT when AT is not
2235         actually used.
2236
2237 2002-12-17  Nick Clifton  <nickc@redhat.com>
2238
2239         * as.c (std_longopts): Duplicate --keep-locals entry in order to
2240         prevent it being confused with -k.
2241
2242 2002-12-16  Andrew MacLeod  <amacleod@redhat.com>
2243
2244         * config/tc-xstormy16.c (md_cgen_lookup_reloc): If a relocation
2245         has already been set up, use it.
2246
2247 2002-12-16  Kazu Hirata  <kazu@cs.umass.edu>
2248
2249         * ChangeLog-9295: Fix a typo.
2250         * README: Likewise.
2251         * config/tc-d10v.c: Fix a comment typo.
2252         * config/tc-dlx.c: Likewise.
2253         * config/tc-h8300.h: Likewise.
2254         * config/tc-h8500.h: Likewise.
2255         * config/tc-mips.c: Likewise.
2256         * config/tc-s390.c: Likewise.
2257         * config/tc-sh.h: Likewise.
2258         * config/tc-tic80.h: Likewise.
2259         * config/tc-w65.h: Likewise.
2260         * config/tc-z8k.c: Likewise.
2261         * config/tc-z8k.h: Likewise.
2262         * testsuite/gas/h8300/cmpsi2.s: Likewise.
2263
2264 2002-12-16  Alan Modra  <amodra@bigpond.net.au>
2265
2266         * config/tc-d30v.c (check_range): Warning fixes, formatting.
2267         Simplify sign extension.  Remove redundant unsigned < 0 test.
2268         * config/tc-i960.c (md_ri_to_chars): Prototype.
2269         * config/tc-mcore.c (md_pseudo_table): Fix typo.
2270         (dump_literals): Init brarsym, and test later instead of isforce.
2271
2272         * config/tc-ns32k.c (encode_operand): Constify operandsP and suffixP.
2273         (parse): Constify line and lineptr.
2274         (md_begin): Calculate endop here.
2275
2276 2002-12-13  Alan Modra  <amodra@bigpond.net.au>
2277
2278         * config/obj-vms.c: Formatting.  Include fnctl.h.
2279         (Create_VMS_Object_File): Fix creat call for sane unix systems.
2280         (Object_Record_Offset): Make it a size_t.
2281         (Flush_VMS_Object_Record_Buffer): Fix signed/unsigned warning.
2282         (VMS_TBT_Routine_End <Size>): Make var unsigned long.
2283         (VMS_Fix_Indirect_Reference <Offset>): Make arg addressT.
2284         (synthesize_data_segment <data_size>): Remove ATTRIBUTE_UNUSED.
2285         (vms_fixup_data_section <data_size>): Add here instead.
2286         * config/e-criself.c: Fix typo in last change.
2287
2288 2002-12-13  Alan Modra  <amodra@bigpond.net.au>
2289
2290         * write.c (write_object_file): Fix signed/unsigned warning.
2291         * config/e-crisaout.c (crisaout_bfd_name): Prototype.
2292         * config/e-criself.c (criself_bfd_name): Prototype.
2293         * config/obj-aout.c (s_sect): Remove unused function.
2294         * config/obj-bout.c (obj_bout_line <ignore>): Add ATTRIBUTE_UNUSED.
2295         * config/obj-coff.c (coff_last_bf): Don't declare for OBJ_XCOFF.
2296         (fixup_mdeps <h>): Add ATTRIBUTE_UNUSED.
2297         * config/obj-ecoff.c (ecoff_frob_file <addr>): Likewise.
2298         * config/obj-vms.c (setup_basic_type <spnt>): Likewise.
2299         (VMS_RSYM_Parse <Current_Routine>): Likewise.
2300         (vms_fixup_text_section <text_siz>): Likewise.
2301         (synthesize_data_segment <data_size>): Likewise.
2302         (vms_fixup_xtors_section <sect_no>): Likewise.
2303         (structure_count): Don't use implicit int type.
2304         * config/tc-a29k.c (insert_sreg): Prototype.
2305         (define_some_regs): Prototype, make static.
2306         (parse_operand): Likewise.
2307         (md_parse_option <c,arg>): Add ATTRIBUTE_UNUSED.
2308         (md_show_usage <stream>): Likewise.
2309         (md_section_align <segment>): Likewise.
2310         (md_convert_frag <all args>): Likewise.
2311         (md_estimate_size_before_relax <all args>): Likewise.
2312         (md_apply_fix3): Don't cast valP pointer type.  Fix bogus >>='s.
2313         * config/tc-arm.c (arm_validate_fix): Only for OBJ_COFF or OBJ_ELF.
2314         * config/tc-d30v.c (md_parse_option <arg>): Add ATTRIBUTE_UNUSED.
2315         (md_undefined_symbol <name>): Likewise.
2316         (md_convert_frag <all args>): Likewise.
2317         (write_long <opcode>): Likewise.
2318         (tc_gen_reloc <seg>): Likewise.
2319         (md_estimate_size_before_relax <all args>): Likewise.
2320         (md_apply_fix3 <seg>): Likewise.
2321         (s_d30v_align <ignore>): Likewise.
2322         (build_insn): Correct format string.
2323         (md_apply_fix3): Likewise.
2324         * config/tc-fr30.c (md_parse_option <c,arg>): Add ATTRIBUTE_UNUSED.
2325         (md_undefined_symbol <name>): Likewise.
2326         (md_convert_frag <all args>): Likewise.
2327         (md_cgen_lookup_reloc <insn>): Likewise.
2328         (md_begin): Delete unused vars.
2329         (md_assemble): Likewise.
2330         (md_estimate_size_before_relax): Likewise.
2331         (fr30_relax_frag): #if 0 out, seems unused.
2332         (md_atof): Remove declaration of atof_ieee.
2333         (restore_colon): Prototype.
2334         * config/tc-frv.c (frv_insert_vliw_insn): Prototype.
2335         (frv_find_in_vliw): Likewise.
2336         (frv_debug_tomcat): Likewise.
2337         (frv_adjust_vliw_count): Likewise.
2338         (frv_tomcat_shuffle): Likewise.
2339         (frv_tomcat_analyze_vliw_chains): Likewise.  Correct args to
2340         frv_find_in_vliw call.
2341         (md_atof): Remove declaration of atof_ieee.
2342         * config/tc-h8500.c (cons): Delete declaration.
2343         (md_begin <opcode>): Constify.
2344         (displacement_size, immediate_size, absolute_size): Remove.
2345         (build_relaxable_instruction <operand>): Add ATTRIBUTE_UNUSED.
2346         (tc_crawl_symbol_chain <headers>): Likewise.
2347         (md_undefined_symbol <name>): Likewise.
2348         (tc_headers_hook <headers>): Likewise.
2349         (md_parse_option <c,arg>): Likewise.
2350         (md_show_usage <stream>): Likewise.
2351         (md_convert_frag <headers, seg>): Likewise.
2352         (tc_coff_symbol_emit_hook <ignore>): Likewise.
2353         (md_atof): Remove declaration of atof_ieee.
2354         (tc_aout_fix_to_chars): Remove unused function.
2355         (parse_reg): Prototype.
2356         (parse_exp): Prototype.
2357         (skip_colonthing): Prototype.  Use &&, not & in logical expressions.
2358         (parse_reglist): Prototype.
2359         (get_operand): Prototype.
2360         (get_operands): Prototype.
2361         (get_specific): Prototype.  Make "this_index" signed.
2362         (check): Prototype, make static.
2363         (insert): Prototype
2364         (build_relaxable_instruction): Prototype, make static.
2365         (build_bytes): Prototype.
2366         (wordify_scb): Prototype.
2367         * config/tc-h8500.h (start_label): Declare.
2368         (tc_coff_sizemachdep): Declare.
2369         * config/tc-i370.c (i370_ebcdic <unused>): Add ATTRIBUTE_UNUSED.
2370         (i370_rmode <unused>): Likewise.
2371         (i370_csect <unused>): Likewise.
2372         (i370_dc <unused>): Likewise.
2373         (i370_ds <unused>): Likewise.
2374         (i370_elf_lcomm <unused>): Likewise.
2375         (i370_ltorg <ignore>): Likewise.
2376         (i370_using <ignore>): Likewise.
2377         (i370_drop <ignore>): Likewise.
2378         (i370_byte <ignore>): Likewise.
2379         (i370_tc <ignore>): Likewise.
2380         (md_estimate_size_before_relax <fragp, seg>): Likewise.
2381         (md_convert_frag <all args>): Likewise.
2382         (md_undefined_symbol <name>): Likewise.
2383         (md_pcrel_from_section <sec>): Likewise.
2384         (tc_gen_reloc <seg>): Likewise.
2385         (i370_section_letter): #if 0 unused functions.
2386         (i370_section_word, i370_section_type, i370_section_flags): Likewise.
2387         (symbol_locate): Prototype.
2388         * config/tc-i860.c (md_atof): Remove declaration of atof_ieee.
2389         (md_number_to_disp, md_number_to_field): Remove.
2390         (md_apply_fix3): Correct format string and cast "fup".
2391         * config/tc-i960.c (md_convert_frag): Add ATTRIBUTE_UNUSED to args.
2392         (s_endian <ignore>): Likewise.
2393         (md_undefined_symbol <name>): Likewise.
2394         (tc_crawl_symbol_chain <headers>): Likewise.
2395         (tc_set_bal_of_call): Likewise.
2396         (tc_coff_symbol_emit_hook <symbolP>): Likewise.
2397         (i960_handle_align <fragp>): Likewise.
2398         (i960_validate_fix <this_segment_type>): Likewise
2399         (tc_gen_reloc <section>): Likewise.
2400         (tc_coff_symbol_emit_hook): Only define for OBJ_COFF.
2401         (struct memS, struct regop): Forward declare.
2402         (brcnt_emit, brlab_next, cobr_fmt, ctrl_fmt, emit, get_args,
2403         get_cdisp, get_ispec, get_regnum, i_scan, mem_fmt, mema_to_memb,
2404         parse_expr, parse_ldconst, parse_memop, parse_po, parse_regop,
2405         reg_fmt, relax_cobr, s_leafproc, s_sysproc, shift_ok, syntax,
2406         targ_has_sfr, targ_has_iclass, tc_bfd_fix2rtype): Prototype.
2407         (md_chars_to_number, md_number_to_imm): Make static, prototype.
2408         (md_number_to_field): Likewise.
2409         (md_number_to_disp): Remove unused function.
2410         (md_atof): Remove declaration of atof_ieee.
2411         (md_apply_fix3): Correct md_number_to_imm call.
2412         * config/tc-ip2k.c (md_assemble): Warning fix.
2413         * config/tc-m32r.c (md_parse_option <arg>): Add ATTRIBUTE_UNUSED.
2414         (fill_insn <ignore>): Likewise.
2415         (debug_sym <ignore>): Likewise.
2416         (md_undefined_symbol <name>): Likewise.
2417         (m32r_scomm <ignore>): Likewise.
2418         (md_convert_frag <abfd>): Likewise.
2419         (md_cgen_lookup_reloc <insn>): Likewise.
2420         (m32r_record_hi16 <seg>): Likewise.
2421         (md_estimate_size_before_relax): #if 0 old_fr_fix.
2422         (allow_m32rx): Prototype.
2423         (first_writes_to_seconds_operands): Prototype.
2424         (writes_to_pc): Prototype.
2425         (can_make_parallel): Prototype.
2426         (make_parallel): Prototype.
2427         (target_make_parallel): Prototype.
2428         (assemble_two_insns): Prototype.
2429         (m32r_record_hi16): Prototype.
2430         (md_atof): Remove declaration of atof_ieee.
2431         * config/tc-m32r.h (m32r_fix_adjustable): Declare.
2432         (m32r_force_relocation): Prototype.
2433         (m32r_elf_section_change_hook): Prototype.
2434         * config/tc-m68k.c (tc_gen_reloc <section>): Add ATTRIBUTE_UNUSED.
2435         (md_show_usage): Fix signed/unsigned warning.
2436         * config/tc-m88k.c (get_reg): Make reg_prefix param unsigned.
2437         (calcop): Ditto for reg_prefix var.
2438         (hexval): Add cast to fix signed/unsigned warning.
2439         (md_number_to_disp): Delete unused function.
2440         (md_number_to_field): Likewise.
2441         (float_cons, cons, s_globl, s_space, s_set, s_lcomm): Remove decl.
2442         (match_name): Prototype.
2443         (get_bf2): Prototype.
2444         (get_bf_offset_expression): Prototype.
2445         * config/tc-mcore.c (mcore_s_literals <ignore>): Add ATTRIBUTE_UNUSED.
2446         (md_undefined_symbol <ignore>): Likewise.
2447         (md_create_short_jump <all args>): Likewise.
2448         (md_create_long_jump <all args>): Likewise.
2449         (md_convert_frag <abfd, sec>): Likewise.
2450         (md_apply_fix3 <segment>): Likewise.
2451         (md_section_align <segment>): Likewise.
2452         (md_pcrel_from_section <sec>): Likewise.
2453         (tc_gen_reloc <section>): Likewise.
2454         (reg_m, reg_n, immediate): Delete unused vars.
2455         (dump_literals): Fix signed/unsigned warning.
2456         (enter_literal): Likewise.
2457         (parse_imm): Likewise.  Also fix format string.
2458         (parse_mem): Remove unused var.
2459         (md_assemble <LS>): Abort on unexpected inst.
2460         (md_atof): Remove declaration of atof_ieee.
2461         (md_parse_option): Remove unused vars.
2462         (md_apply_fix3): Fix format strings, cast args.
2463         (tc_gen_reloc): Delete unused var.
2464         * config/tc-mcore.h (tc_coff_sizemachdep): Declare.
2465         * config/tc-mn10200.c (md_parse_option <c, arg>): Add ATTRIBUTE_UNUSED.
2466         (md_undefined_symbol <name>): Likewise.
2467         (md_convert_frag <abfd>): Likewise.
2468         (tc_gen_reloc <seg>): Likewise.
2469         (check_operand <insn>): Likewise.
2470         (md_convert_frag): Fix format strings.
2471         (tc_gen_reloc): Delete fx_addsy - fx_subsy code.
2472         * config/tc-openrisc.c (ignore_pseudo): Prototype.
2473         (md_atof): Remove declaration of atof_ieee.
2474         * config/tc-or32.c (parse_operand): Prototype non-BFD too.
2475         (md_apply_fix3): Fix bogus >>='s.
2476         (md_undefined_symbol): Delete unused var.
2477         * config/tc-pj.c (little, big, parse_exp_save_ilp): Prototype.
2478         (c_to_r, ipush_code, fake_opcode, alias): Likewise.
2479         (fake_opcode): Adjust for pj_opc_int_t change.
2480         (md_begin): Likewise.
2481         (md_assemble): Likewise.
2482         (ipush_code): Correct parse_exp_save_ilp call.  Test pending_reloc
2483         instead of non-existent third arg of parse_exp_save_ilp.
2484         (md_parse_option): Correct "little" and "big" calls.
2485         * config/tc-sparc.c (s_register): Only declare #ifdef OBJ_ELF.
2486         (md_apply_fix3 <segment>): Add ATTRIBUTE_UNUSED.
2487         (tc_gen_reloc <section>): Likewise.
2488         * config/tc-tic30.c: #include stdarg.h or varargs.h.
2489         (debug): Rewrite using VA_* macros.
2490         (md_estimate_size_before_relax): Add ATTRIBUTE_UNUSED to args.
2491         (md_convert_frag): Likewise.
2492         (md_parse_option): Likewise.
2493         (md_show_usage): Likewise.
2494         (md_undefined_symbol): Likewise.
2495         (tc_gen_reloc): Likewise.
2496         (md_operand): Likewise.
2497         (tc_aout_pre_write_hook): Delete.
2498         (struct tic30_insn): Make "operands" unsigned.
2499         (struct tic30_par_insn): Likewise.
2500         (md_assemble): Likewise for "count", "i" and "numops".
2501         (tic30_parallel_insn): Likewise for vars here.
2502         (tic30_operand): Likewise.  Remove useless unsigned >= 0 comparison.
2503         * config/tc-tic30.h (tc_aout_pre_write_hook): Define as empty.
2504         * config/tc-tic80.c (obj_coff_section): Delete declaration.
2505         (md_estimate_size_before_relax): Add ATTRIBUTE_UNUSED on args.
2506         (md_undefined_symbol): Likewise.
2507         (md_parse_option): Likewise.
2508         (md_convert_frag): Likewise.
2509         (tc_coff_symbol_emit_hook): Likewise.
2510         (md_atof): Remove declaration of atof_ieee.
2511         (const_overflow): Warning fixes, tidy.
2512         (get_operands): Delete unused vars.
2513         (internal_error_a): Adjust format string to expect a long for arg.
2514         (find_opcode): Warning fixes, simplify.
2515         (build_insn): Cast internal_error_a arg.
2516         (md_begin): Likewise.
2517         (md_apply_fix3): Likewise.
2518         (md_assemble): Delete unused var.
2519         * config/tc-tic80.h (tc_coff_fix2rtype): Prototype.
2520         * config/tc-z8k.c (cons, obj_coff_section): Delete declarations.
2521         (whatreg, parse_reg, parse_exp): Make static, prototype.
2522         (checkfor, regword, regaddr, get_ctrl_operand): Prototype.
2523         (get_flags_operand, get_interrupt_operand, get_cc_operand): Likewise.
2524         (get_operand, get_operands, get_specific, newfix): Likewise.
2525         (apply_fix, build_bytes): Likewise.
2526         (md_atof): Remove declaration of atof_ieee.
2527         (tc_aout_fix_to_chars): Delete.
2528         (md_begin): Constify "opcode".  Don't try to init opcode->idx.
2529         Fix s_unseg call.
2530         (md_parse_option): Fix s_segm and s_unseg calls.
2531
2532 2002-12-12  Alexandre Oliva  <aoliva@redhat.com>
2533
2534         * tc-mips.c (RELAX_BRANCH_ENCODE): Remove reloc_s2 argument.
2535         Adjust callers.
2536         (RELAX_BRANCH_RELOC_S2): Delete.
2537         (append_insn): Use only BFD_RELOC_16_PCREL_S2 for branches.
2538         Do not handle BFD_RELOC_16_PCREL.
2539         (macro_build, mips_ip): Likewise.
2540         (md_pcrel_from): Return 4 for undefined symbols regardless of
2541         mips_pic.
2542         (md_apply_fix3): Use only BFD_RELOC_16_PCREL_S2 for branches.
2543         Don't dereference howto if no such relocation is available.
2544         Do not apply hack for in-place zero addend in NEWABI.
2545         (md_convert_frag): Use only BFD_RELOC_16_PCREL_S2 for branches.
2546
2547 2002-12-12  Alexandre Oliva  <aoliva@redhat.com>,
2548             Alan Modra  <amodra@bigpond.net.au>
2549
2550         * config/tc-mn10300.h (TC_VALIDATE_FIX_SUB): Define.
2551         (TC_LINKRELAX_FIXUP): Add comments.
2552
2553 2002-12-12  Alexandre Oliva  <aoliva@redhat.com>
2554
2555         * config/tc-mn10300.c (set_arch_mach): Change argument type to
2556         avoid warnings.
2557         (r_register_name, xr_register_name): Add prototype declarations.
2558
2559 2002-12-08  H.J. Lu <hjl@gnu.org>
2560
2561         * config/tc-ia64.c (md_apply_fix3): Remove the PCREL hack
2562         copied from tc-i386.c.
2563
2564 2002-12-08  Stephane Carrez  <stcarrez@nerim.fr>
2565
2566         Fix Bug savannah/1825:
2567         * config/tc-m68hc11.c (STATE_INDEXED_PCREL): New relax code.
2568         (md_relax_table): Define specific relax for PC-rel offsets.
2569         (build_indexed_byte): Use a STATE_INDEXED_PCREL relax code.
2570         (m68hc11_relax_frag): Handle the new relax code.
2571         (md_convert_frag): Likewise.
2572         (md_estimate_size_before_relax): Likewise.
2573
2574 2002-12-08  Alan Modra  <amodra@bigpond.net.au>
2575
2576         * subsegs.c (section_symbol): Use the symbol, not the section, name.
2577
2578 2002-12-05  Richard Henderson  <rth@redhat.com>
2579
2580         * config/ia64.c (enum reloc_func): Add FUNC_LT_RELATIVE_X.
2581         (ia64_gen_real_reloc_type): Handle it.
2582         (pseudo_func): Add @ltoffx.
2583         (md_begin): Build .<ltoffx>.
2584         (ia64_force_relocation): True for LTOFF22X and LDXMOV.
2585
2586 2002-12-05  Alan Modra  <amodra@bigpond.net.au>
2587
2588         * config/tc-arm.c (arm_force_relocation): Move out of #if OBJ_ELF.
2589         Move OBJ_COFF TC_FORCE_RELOCATION code here so that COFF handles
2590         ARM_IMMEDIATE and ARM_ADRL_IMMEDIATE relocs as for ELF.
2591         * config/tc-arm.h (TC_FORCE_RELOCATION): Define for both ELF and
2592         COFF to call arm_force_relocation.
2593
2594 2002-12-04  David Mosberger  <davidm@hpl.hp.com>
2595
2596         * config/tc-ia64.c (pseudo_func): Add "@pause" constant for "hint"
2597         instruction.
2598         (emit_one_bundle): Handle "hint" instruction.
2599         (operand_match): Match IA64_OPND_AR_CSD.
2600
2601 2002-12-04  Alan Modra  <amodra@bigpond.net.au>
2602
2603         * dwarf2dbg.c (scale_addr_delta): Correct parameter.  Move prototype
2604         inside #if.
2605
2606 2002-12-03  Nick Clifton  <nickc@redhat.com>
2607
2608         * config/tc-ppc.c (ppc_cleanup): Do not set SEC_MERGE flag on
2609         .PPC.EMB.apuinfo sections.
2610
2611 2002-12-03  Richard Henderson  <rth@redhat.com>
2612
2613         * config/tc-ia64.c (operand_match): Add IA64_OPND_LDXMOV case.
2614
2615 2002-12-03  Alan Modra  <amodra@bigpond.net.au>
2616
2617         * config/tc-w65.c (s_longa): Prototype.  Make static, specify int arg.
2618         (cons, s_align_bytes): Delete declaration.
2619         (relax): Delete.
2620         (md_begin): Constify "struct opinfo *" var.  Don't try to make "name"
2621         strings common.
2622         (dot): Delete unused function.
2623         (w65_expression): Remove unused arg.
2624         (parse_exp): Prototype.  Remove unused arg.  Adjust w65_expression
2625         call.
2626         (get_operands): Prototype.  Constify "struct opinfo *" arg.  Fix
2627         parse_exp call.
2628         (get_specific): Prototype.  Constify "struct opinfo *" arg and return
2629         value.
2630         (check): Remove unused function.
2631         (build_Mytes): Prototype.  Constify "struct opinfo *" arg.  Abort
2632         on unhandled switch case.
2633         (md_assemble): Remove unused op_start, op_end, nlen, p vars.  Constify
2634         "opcode".
2635         (tc_crawl_symbol_chain): Delete unused function.
2636         (tc_headers_hook): Likewise.
2637         (tc_Nout_fix_to_chars): Likewise.
2638         (md_undefined_symbol): Add ATTRIBUTE_UNUSED.
2639         (md_parse_option): Likewise.
2640         (md_convert_frag): Likewise.
2641         (tc_coff_symbol_emit_hook): Likewise.
2642         (md_show_usage): Likewise.
2643         * config/tc-w65.h (tc_coff_sizemachdep): Declare.
2644         (TC_PARSE_CONS_EXPRESSION): w65_expression takes one arg.
2645         (w65_expression): Declare.
2646
2647         * po/POTFILES.in: Regenerate.
2648
2649         * config/tc-arm.c (arm_force_relocation): Return 0 for ARM_IMMEDIATE
2650         and ARM_ADRL_IMMEDIATE.
2651
2652 2002-12-02  Nick Clifton  <nickc@redhat.com>
2653
2654         * gasp.c: Delete.  It has been deprecated.
2655         * NEWS: Mention that gasp has been removed.
2656         * Makefile.am: Remove references to gasp.
2657         * makefile.vms: Likewise.
2658         * mpw-make.sed: Likewise.
2659         * Makeile.in: Regenerate.
2660         * doc/gasp.texi: Delete.
2661         * doc/Makefile.am: Remove references to gasp.texi.
2662         * doc/Makefile.in: Regenerate.
2663         * macro.c: Delete references to gasp.
2664         Remove use of comment_char function parameter as it is no longer
2665         needed.
2666         * macro.h: Update prototypes to remove comment_char parameter.
2667         Fix formatting.
2668         * read.c (read_a_source_file, s_irp): Remove comment_char
2669         parameter from invocation of functions in macro.c
2670
2671 2002-12-02  Hans-Peter Nilsson  <hp@axis.com>
2672
2673         * read.c (emit_expr) [!WORKING_DOT_WORD]: Initialize x->use_jump.
2674
2675 2002-12-01  Stephane Carrez  <stcarrez@nerim.fr>
2676
2677         * config/tc-m68hc11.c (md_begin): Fix qsort warning.
2678         (tc_gen_reloc): Mark section param as not used.
2679
2680 2002-12-01  Stephane Carrez  <stcarrez@nerim.fr>
2681
2682         Fix Bug savannah/1825:
2683         * config/tc-m68hc11.h (md_relax_frag): Define to support relaxations
2684         that are not pc-relative.
2685         (m68hc11_relax_frag): Declare.
2686
2687         * config/tc-m68hc11.c (build_indexed_byte): Use a frag_var to handle
2688         the offsetable indexed addressing modes (n,r).
2689         (build_insn): Cleanup some locals.
2690         (m68hc11_relax_frag): New function imported from tc-cris.c to handle
2691         relaxation of difference between two symbols of same section.
2692         (md_convert_frag): For INDEXED_OFFSET relaxs, use the displacement
2693         only when this is a PC-relative operand and the offset is not absolute.
2694         (md_estimate_size_before_relax): Convert the INDEXED_OFFSET,UNDEF frag
2695         to INDEXED_OFFSET,STATE_BITS5 when the symbol is absolute; this will
2696         be handled by m68hc11_relax_frag.
2697
2698 2002-12-01  Stephane Carrez  <stcarrez@nerim.fr>
2699
2700         * config/tc-m68hc11.c (elf_flags): Set default ABI to gcc default
2701         (32-bit int, 64-bit double).
2702         (md_longopts): New options -mshort, -mlong, -mshort-double and
2703         -mlong-double to control the ABI.
2704         (md_show_usage): Update.
2705         (md_parse_option): Handle new options.
2706         * doc/as.texinfo (Overview): Document new options for HC11/HC12.
2707
2708 2002-12-01  Nathan Sidwell  <nathan@codesourcery.com>
2709
2710         * symbols.c (report_op_error): New function, broken out of ...
2711         (resolve_symbol_value): ... here. Use for both monadic and dyadic
2712         operators.
2713
2714 2002-11-30  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
2715
2716         * config/tc-sh.c (md_apply_fix3): Take account of fx_offset
2717         for BFD_RELOC_32_PLT_PCREL.
2718
2719 2002-11-30  Alan Modra  <amodra@bigpond.net.au>
2720
2721         * dwarf2dbg.c, write.c, config/obj-aout.c, config/obj-coff.c,
2722         config/obj-ecoff.c, config/obj-elf.c, config/obj-som.c,
2723         config/tc-arm.c, config/tc-arm.h, config/tc-avr.c, config/tc-cris.c,
2724         config/tc-d10v.c, config/tc-d10v.h, config/tc-d30v.c, config/tc-d30v.h,
2725         config/tc-dlx.c, config/tc-dlx.h, config/tc-fr30.c, config/tc-fr30.h,
2726         config/tc-frv.c, config/tc-frv.h, config/tc-hppa.c, config/tc-i370.c,
2727         config/tc-i386.c, config/tc-i386.h, config/tc-m32r.c,
2728         config/tc-m68hc11.c, config/tc-mcore.c, config/tc-mcore.h,
2729         config/tc-mips.c, config/tc-mips.h, config/tc-mn10200.c,
2730         config/tc-mn10300.c, config/tc-mn10300.h, config/tc-openrisc.c,
2731         config/tc-openrisc.h, config/tc-ppc.c, config/tc-s390.c,
2732         config/tc-sh.c, config/tc-sh.h, config/tc-sh64.c, config/tc-tic54x.c,
2733         config/tc-v850.c, config/tc-v850.h, config/tc-xstormy16.c,
2734         config/tc-xstormy16.h: Replace boolean with bfd_boolean, true with
2735         TRUE, false with FALSE.  Simplify comparisons of bfd_boolean vars with
2736         TRUE/FALSE.  Formatting.
2737
2738 2002-11-29  Nick Clifton  <nickc@redhat.com>
2739
2740         * config/tc-arm.c (do_t_bkpt): If no operand is specified,
2741         assume a value of zero.
2742         (do_bkpt): Likewise.
2743
2744 2002-11-29  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
2745
2746         * config/tc-sh.c (md_apply_fix3): Call S_SET_THREAD_LOCAL
2747         for TLS relocations.
2748
2749 2002-11-29  Jakub Jelinek  <jakub@redhat.com>
2750
2751         * config/tc-ia64.c (md_apply_fix3): Add default case.
2752
2753 2002-11-28  Jakub Jelinek  <jakub@redhat.com>
2754
2755         * symbols.c (S_SET_THREAD_LOCAL): New function.
2756         * symbols.h (S_SET_THREAD_LOCAL): New prototype.
2757         * config/tc-i386.c (md_apply_fix3): Call S_SET_THREAD_LOCAL
2758         for TLS relocations.
2759         * config/tc-ia64.c (md_apply_fix3): Likewise.
2760         * config/tc-alpha.c (md_apply_fix3): Likewise.
2761
2762 2002-11-28  Jakub Jelinek  <jakub@redhat.com>
2763
2764         * write.c (subsegs_finish): For SEC_MERGE sections pad last fragment
2765         to entsize.
2766
2767 2002-11-26  DJ Delorie  <dj@redhat.com.
2768
2769         * dwarf2dbg.c (scale_addr_delta): New.
2770         (size_inc_line_addr): Use it.
2771         (emit_inc_line_addr): Use it.
2772
2773 2002-11-26  Hans-Peter Nilsson  <hp@axis.com>
2774
2775         * config/tc-cris.c (cris_relax_frag): Fix typo in comment.
2776         (md_assemble): Don't pass on branches to constants as relaxable.
2777         Tweak comment.
2778
2779 2002-11-25  Svein E. Seldal  <Svein.Seldal@solidas.com>
2780
2781         * config/tc-tic4x.c (c4x_operands_match): Bugfix in direct mode
2782
2783 2002-11-21  Randolph Chung  <randolph@tausq.org>
2784
2785         * config/tc-hppa.h (tc_frob_symbol): Frob undefined unused symbols
2786         only if they have default visibility.
2787
2788 2002-11-21  Richard Henderson  <rth@redhat.com>
2789
2790         * config/tc-alpha.c (alpha_fix_adjustable): Remove redundant
2791         S_IS_DEFINED test.
2792
2793 2002-11-21  Alan Modra  <amodra@bigpond.net.au>
2794
2795         * config/tc-mcore.c (mcore_pool_count): New function.
2796         (mcore_cons, mcore_float_cons, mcore_stringer, mcore_fill): Use it.
2797
2798 2002-11-20  Klee Dienes  <kdienes@apple.com>
2799
2800         * config/tc-mcore.c (md_begin): Use a const iterator.  Don't
2801         coalesce the name fields to use the same pointer.
2802
2803         * config/tc-sh.c (md_begin): Use a const iterator.  Don't coalesce
2804         the name fields to use the same pointer.
2805         (get_specific): Check for opcodes with the same name using strcmp
2806         as well as comparing the pointer.
2807
2808 2002-11-20  Alan Modra  <amodra@bigpond.net.au>
2809
2810         * write.c (adjust_reloc_syms): Don't reduce SEC_MERGE fixups with
2811         fx_subsy non-NULL.
2812
2813 2002-11-19  Richard Henderson  <rth@redhat.com>
2814
2815         * config/obj-elf.c (obj_elf_visibility): Overwrite only the
2816         visibility portion of st_other.
2817
2818 2002-11-19  Klee Dienes  <kdienes@apple.com>
2819
2820         * config/tc-h8300.c (struct h8_instruction): New type, used to
2821         wrap h8_opcodes with length, noperands, idx, and size fields
2822         (computed at run-time).
2823         (h8_instructions): New variable.
2824         (md_begin): Allocate the storage for h8_instructions.  Fill
2825         h8_instructions with pointers to the appropriate opcode and the
2826         correct value for the additional fields.
2827         (clever_message): Update to use h8_instructions instead of
2828         h8_opcodes.
2829         (build_bytes): Ditto.
2830         (get_specific): Ditto.
2831         (md_assemble): Ditto.
2832
2833 2002-11-19  Martin Schwidefsky  <schwidefsky@de.ibm.com>
2834
2835         * config/tc-s390.c (tc_s390_fix_adjustable): Re-add patch to prevent
2836         adjustments to symbols in merge sections.
2837
2838 2002-11-19  Luke Deller <luked@cse.unsw.edu.au>
2839
2840         * config/tc-alpha.c (s_alpha_prologue): as_bad when sym is NULL.
2841
2842 2002-11-18  Kevin Buettner  <kevinb@redhat.com>
2843
2844         * dwarf2dbg.h (dwarf2_format): New enum.
2845         * dwarf2dbg.c (DWARF2_FORMAT): Provide default definition.
2846         (out_debug_line, out_debug_info): Add code for handling 64-bit
2847         DWARF 2 formats.
2848         * config/tc-mips.h (mips_dwarf2_format): Declare.
2849         * config/tc-mips.c (mips_dwarf2_format): New function.
2850         * doc/internals.texi (DWARF2_FORMAT): Document.
2851
2852 2002-11-18  Alexandre Oliva  <aoliva@redhat.com>
2853
2854         * config/tc-mips.c (s_change_section): Make sure input buffer
2855         is not accessed past the end.  Don't hand
2856         obj_elf_change_section a pointer into the input buffer.
2857
2858 2002-11-18  Alexandre Oliva  <aoliva@redhat.com>, Chris Demetriou  <cgd@broadcom.com>
2859
2860         * config/tc-mips.c (tc_gen_reloc): Fix typo in handling of
2861         GOT_LO16 on NEWABI.
2862
2863 2002-11-18  Svein E. Seldal  <Svein.Seldal@solidas.com>
2864
2865         * config/tc-tic4x.c: Fixed proper commandline
2866         parameters. Added support for new opcode-list format. General
2867         error message fixups.
2868         (c4x_inst_add): Reject insn not for our CPU
2869         (md_begin): Added matrix for setting the proper opcode-level &
2870         device-flags according to cpu type and revision. Rewrite the
2871         opcode hasher.
2872         (c4x_operand_parse): Fix opcode bug
2873         (c4x_operands_match): New function argument. Added dry-run
2874         mechanism, that is optional error generation. Added constraint 'i'
2875         and 'j'.
2876         (c4x_insn_check): Added new function for post-verification of the
2877         generated insn.
2878         (md_assemble): Check all opcodes before croaking because of an
2879         argument mismatch. Need this to be able to fully support
2880         ortogonally arguments.
2881         (md_parse_options): Revised commandprompt swicthes and added new
2882         ones.
2883         (md_show_usage): Complete rewrite of printout.
2884
2885 2002-11-16  Svein E. Seldal  <Svein.Seldal@solidas.com>
2886
2887         * config/tc-tic4x.c: Remove c4x_pseudo_ignore function.
2888           (c4x_operands_match): Added check for 8-bits LDF insn. Give
2889           warning when using constant direct bigger than 2^16. Add the new
2890           arguments.
2891
2892 2002-11-11  Christopher Faylor  <cgf@redhat.com>
2893
2894         * configure.in: Use .gdbinit under Cygwin.
2895         * configure: Regenerate.
2896
2897 2002-11-11  Christopher Faylor  <cgf@redhat.com>
2898
2899         * config/tc-i386.h (EXTERN_FORCE_RELOC): Define only if
2900         STRICT_PE_FORMAT.
2901
2902 2002-11-11  Svein E. Seldal  <Svein.Seldal@solidas.com>
2903
2904         * config/tc-tic4x.c: Declare as many functions as possible as
2905         static. Maintenance on the general indenting. Removed unnecessary
2906         pseudo-ops and added new ones. Removed obsoleted c4x_pseudo_ignore
2907         function. Add support for new DSP, TMS320VC33. Fix bug for
2908         converting flonum constants.
2909         (c4x_do_align): Add proper align handling. Setup align to insert
2910         NOP's.
2911         (c4x_gen_to_words): Support for extended TI type floats.
2912         (md_atof): Proper dumping of multiple-word littlenums.
2913         (c4x_atof): Added support for extended TI type floats.
2914         (c4x_stringer): Added new function to handle compact strings.
2915         (c4x_emit_char): Added new function argument to handle custom
2916         length inserts, like single-byte strings.
2917         * config/tc-tic4x.h: Add proper align handling with NOP's.
2918         * Makefile.am: Added tic4x dependecy
2919         * Makefile.in: Regenerate
2920
2921 2002-11-11  Hans-Peter Nilsson  <hp@bitrange.com>
2922
2923         * macro.c (get_any_string): Correct logic for not going beyond end
2924         of in->ptr[].
2925
2926 2002-11-10  Hans-Peter Nilsson  <hp@bitrange.com>
2927
2928         * config/tc-mmix.c (get_putget_operands): Mark both possible
2929         operands as invalid at beginning.
2930
2931         * config/tc-mmix.c (md_convert_frag) <case STATE_GREG_DEF>:
2932         Initialize target of fixup to zero.
2933
2934 2002-11-07  Alexandre Oliva  <aoliva@redhat.com>
2935
2936         * config/tc-mips.c (macro_build_lui): _gp_disp is not special on
2937         NEWABI, but we should still emit HI16_S for non-PIC n32.
2938
2939 2002-11-06  Richard Henderson  <rth@redhat.com>
2940
2941         * config/tc-alpha.c (alpha_validate_fix): Move code ...
2942         (alpha_fix_adjustable): ... here.
2943         * config/tc-alpha.h (TC_VALIDATE_FIX): Remove.
2944
2945 2002-11-07  Eric Kohl  <ekohl@rz-online.de>
2946
2947         * config/te-pe.h (LEX_AT): Accept at-sign (@) as first character
2948         of a label.
2949
2950 2002-11-05  H.J. Lu <hjl@gnu.org>
2951
2952         * config/tc-mips.c (support_64bit_objects): Check *l before it
2953         is freed.
2954
2955 2002-11-04  Danny Smith  <dannysmith@users.sourceforge.net>
2956
2957         * config/obj-coff.c (obj-coff-section): Set SEC_DATA and
2958         SEC_LOAD flags for sections marked as 's'.
2959
2960 2002-11-01  Alan Modra  <amodra@bigpond.net.au>
2961
2962         * write.c (TC_FORCE_RELOCATION_SUB_ABS): Default to zero.
2963         (TC_FORCE_RELOCATION_SUB_LOCAL): Likewise when DIFF_EXPR_OK.
2964         * doc/internals.texi (TC_FORCE_RELOCATION_SUB_ABS): Document changed
2965         default.
2966
2967         * dep-in.sed: Fix typo.
2968
2969 2002-10-30  Daniel Jacobowitz  <drow@mvista.com>
2970
2971         * configure.in: Update ARM CPU patterns.
2972         * configure: Regenerated.
2973
2974 2002-10-29  Daniel Jacobowitz  <drow@mvista.com>
2975
2976         * itbl-lex.l: Use #include <> for generated headers.
2977         * itbl-ops.c: Likewise.
2978
2979 2002-10-28  Daniel Jacobowitz  <drow@mvista.com>
2980
2981         * doc/gasp.texi: Fix typo in deprecation note.
2982
2983 2002-10-23  Nick Clifton  <nickc@redhat.com>
2984
2985         * config/tc-arm.c (tc_gen_reloc): Allow an absolute reference to
2986         _GLOBAL_TABLE_OFFSET_ to be converted into a GOT reloc.
2987
2988 2002-10-23  Hans-Peter Nilsson  <hp@bitrange.com>
2989
2990         * config/tc-mmix.h (mmix_frob_file_before_adjust): Don't declare.
2991         (tc_frob_file_before_adjust): Don't define.
2992         * config/tc-mmix.c (mmix_frob_local_reloc): Remove unused
2993         function.
2994         (mmix_frob_file_before_adjust): Remove ineffective function.
2995
2996 2002-10-23  Hans-Peter Nilsson  <hp@axis.com>
2997
2998         * config/tc-cris.c (SIMPLE_EXPR): New macro.
2999         (cris_relax_frag): New function.
3000         (md_estimate_size_before_relax) <case ENCODE_RELAX
3001         (STATE_BASE_PLUS_DISP_PREFIX, STATE_UNDF)>: Pass on unresolved
3002         expressions that will become absolute expressions to relaxation.
3003         (md_convert_frag) <case ENCODE_RELAX (STATE_BASE_PLUS_DISP_PREFIX,
3004         STATE_WORD)>: Expect only absolute expressions.  Use the symbol
3005         value, not distance to symbol.
3006         <case ENCODE_RELAX (STATE_BASE_PLUS_DISP_PREFIX, STATE_BYTE)>:
3007         Ditto.  Correct placement of fixup.
3008         (md_assemble): Use SIMPLE_EXPR when dissecting expressions.
3009         (gen_bdap): Ditto.
3010         * config/tc-cris.h (cris_relax_frag): Declare.
3011         (md_relax_frag): Define.
3012
3013 2002-10-22  Alan Modra  <amodra@bigpond.net.au>
3014
3015         * config/obj-elf.c (special_sections): Use correct types for init
3016         array sections.
3017         (obj_elf_change_section): Don't mess with init array section type.
3018
3019 2002-10-21  Richard Sandiford  <rsandifo@redhat.com>
3020
3021         * config/tc-mips.c (mips_need_elf_addend_fixup): Return true
3022         for relocs against symbols in a merged section.
3023
3024 2002-10-18  Alexandre Oliva  <aoliva@redhat.com>
3025
3026         * config/tc-mips.c (md_begin): Add $fcc registers to the symbol
3027         table as register names.
3028
3029 2002-10-18  Ulrich Weigand  <uweigand@de.ibm.com>
3030
3031         * config/tc-s390.c (md_parse_option): Set s390_arch_size to 32
3032         for option -m31.
3033
3034 2002-10-18  Svein E. Seldal  <Svein.Seldal@solidas.com>
3035
3036         * expr.c (operand): Add support for n.nn flonums.
3037
3038 2002-10-17  Johannes Stezenbach  <js@convergence.de>
3039
3040         * itbl-parse.y (entry): Provide empty action.
3041
3042 2002-10-16  Alan Modra  <amodra@bigpond.net.au>
3043
3044         * configure.in (BFDVER_H): Set and subst.
3045         * dep-in.sed: Replace bfdver.h with $(BFDVER_H).
3046         * Makefile.am: Run "make dep-am".
3047         (BFDVER_H): Define.
3048         * configure: Regenerate.
3049         * Makefile.in: Regenerate.
3050         * doc/Makefile.in: Regenerate.
3051
3052 2002-10-15  Alan Modra  <amodra@bigpond.net.au>
3053
3054         * config/tc-i386.h (EXTERN_FORCE_RELOC): Define.
3055         (MD_APPLY_SYM_VALUE): Define for PE too.
3056
3057 2002-10-14  Alan Modra  <amodra@bigpond.net.au>
3058
3059         * Makefile.am: Run "make dep-am".
3060         (CPU_OBJ_VALID): sh64 coff is invalid.
3061         * as.c: #include "bfdver.h".
3062         * Makefile.in: Regenerate.
3063         * config.in: Regenerate.
3064
3065 2002-10-14  Momchil Velikov  <velco@fadata.bg>
3066
3067         * config/tc-v850.c (CHECK_): Remove token pasting operator.
3068
3069 2002-10-14  Richard Sandiford  <rsandifo@redhat.com>
3070
3071         * configure.in (mips64vr-elf, mips64vrel-elf): New config.
3072         * configure: Regenerate.
3073
3074 2002-10-13  Eric Christopher  <echristo@redhat.com>
3075             Alexandre Oliva  <aoliva@redhat.com>
3076
3077         * config/tc-mips.c (s_gpdword): New function.
3078         (mips_pseudo_table): Add .gpdword.
3079         (mips_need_elf_addend_fixup): never for NEWABI.
3080         (md_apply_fix3): Don't mark BFD_RELOC64 after GPREL16 or
3081         GPREL32 as done.
3082         (s_cpadd): Generate .cpadd on NEWABI.
3083
3084 2002-10-12  Elias Athanasopoulos  <eathan@otenet.gr>
3085
3086         * config/tc-ppc.c (ppc_cleanup): Make 'i' unsigned int.
3087
3088 2002-10-12  Alexandre Oliva  <aoliva@redhat.com>
3089
3090         * config/tc-mips.h (mips_relax_frag): Take segment as argument.
3091         (md_relax_frag): Adjust macro.
3092         * config/tc-mips.c (mips_relax_branch): New variable.
3093         (RELAX_BRANCH_ENCODE, RELAX_BRANCH_P, RELAX_BRANCH_LIKELY,
3094         RELAX_BRANCH_LINK, RELAX_BRANCH_TOOBAR): New.
3095         (RELAX_MIPS16_P): Adjust.
3096         (append_insn): Emit branch to non-constant in a frag_var if
3097         branch-relaxation is desirable and possible.
3098         (OPTION_RELAX_BRANCH, OPTION_NO_RELAX_BRANCH): New options.
3099         (OPTION_ELF_BASE): Adjust.
3100         (md_parse_option): Handle new options.
3101         (md_apply_fix3): Update comment on EMBEDDED_PIC conditional
3102         branch relaxation.
3103         (relaxed_branch_length): New function.
3104         (md_estimate_size_before_relax): Handle branch frags.
3105         (mips_relax_frag): Likewise.
3106         (md_convert_frag): Handle branch frags.  Warn if branch is
3107         relaxed.
3108
3109 2002-10-11  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
3110
3111         * config/tc-sh.c (sh_force_relocation): Make sure TLS relocs get
3112         emitted.
3113         (md_apply_fix3): Add TLS relocs.
3114         (sh_parse_name): Support @TLSGD, @TLSLDM, @GOTTPOFF, @TPOFF and
3115         @DTPOFF.
3116
3117 2002-10-11  Michel Six  <msix@ccr.jussieu.fr>
3118             Alan Modra  <amodra@bigpond.net.au>
3119
3120         * config/tc-i386.c (output_jump): Set fx_signed for loop/jcxz.
3121         (md_estimate_size_before_relax): Likewise for 8 bit branches.
3122
3123 Thu Oct 10 14:31:30 2002  J"orn Rennecke <joern.rennecke@superh.com>
3124
3125         * config/tc-sh.c (assemble_ppi): Initialize reg_x / reg_y / reg_n
3126         inside loop.
3127
3128 2002-10-09  Richard Shann <richard.shann@superh.com>
3129             Stephen Clarke <stephen.clarke@superh.com>
3130
3131         * config/tc-sh64.c (sh64_target_format): Add support for sh64
3132         Linux environment.
3133
3134 2002-10-03  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
3135
3136         * contig/tc-sh.c (sh_local_pcrel): New.
3137         (sh_force_relocation): Use sh_local_pcrel.
3138         (md_pcrel_from_section): Check the relocation type whether it
3139         should be resolved locally. Use S_FORCE_RELOC.
3140
3141 2002-10-01  Alan Modra  <amodra@bigpond.net.au>
3142
3143         * config/tc-mips.h (TC_FORCE_RELOCATION_SUB_SAME): Define.
3144         (TC_FORCE_RELOCATION): Tidy arg.
3145
3146 2002-09-30  Gavin Romig-Koch  <gavin@redhat.com>
3147             Ken Raeburn  <raeburn@cygnus.com>
3148             Aldy Hernandez  <aldyh@redhat.com>
3149             DJ Delorie  <dj@redhat.com>
3150             Michael Meissner  <meissner@redhat.com>
3151             Eric Christopher  <echristo@redhat.com>
3152             Richard Sandiford  <rsandifo@redhat.com>
3153
3154         * doc/c-mips.texi: Add entries for -march=vr4120,vr4130,vr4181,
3155         vr5400 and vr5500.  Add entry for -mfix-vr4122-bugs.
3156         * config/tc-mips.c (CPU_HAS_DROR, CPU_HAS_ROR): New macros.
3157         (hilo_interlocks): True for CPU_VR5500.
3158         (gpr_interlocks, cop_interlocks): True for CPU_VR5400 and CPU_VR5500.
3159         (mips_fix_vr4122_bugs): New.
3160         (append_insn): Work around 4122 errors if mips_fix_vr4122_bugs.
3161         (mips_emit_delays): Likewise.
3162         (macro2) [M_DROLI]: Use dror or dror32 if CPU_HAS_DROR.
3163         [M_ROLI]: Likewise ror if CPU_HAS_ROR.
3164         (validate_mips_insn, mips_ip): Handle '[', ']', 'e' and '%'.
3165         (OPTION_FIX_VR4122, OPTION_NO_FIX_VR4122): New options.
3166         (md_longopts): Add -mfix-vr4122-bugs and -no-mfix-vr4122-bugs.
3167         (OPTION_ELF_BASE): Bump.
3168         (md_parse_option): Handle the new options.
3169         (mips_cpu_info_table): Add entries for vr4120, vr4130, vr4181,
3170         vr5400 and vr5500.
3171
3172 2002-09-29  H.J. Lu <hjl@gnu.org>
3173
3174         * config/tc-mips.c (md_apply_fix3): Subtract the symbol value
3175         twice if howto->pcrel_offset is true.
3176
3177 2002-09-28  Matt Thomas  <matt@3am-software.com>
3178             Jason Thorpe  <thorpej@wasabisystems.com>
3179
3180         * config/tc-vax.c (md_estimate_size_before_relax): Only try to
3181         convert undefined references to GOT32/PLT32 if PIC code is
3182         requested.  Fix comment.
3183
3184 2002-09-27  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
3185
3186         * config/tc-sh.c (sh_force_relocation): Return 0 for
3187         some PC relative relocations when not relaxing.
3188
3189 2002-09-26  Jakub Jelinek  <jakub@redhat.com>
3190
3191         * config/tc-i386.c (tc_i386_fix_adjustable): Add x86-64 TLS relocs.
3192         Define them if not BFD_ASSEMBLER.
3193         (lex_got): Handle @tlsgd, @dtpoff and @tpoff in 64-bit mode, add
3194         @tlsld.
3195         (md_apply_fix3): No addend for BFD_RELOC_X86_64_TLSGD,
3196         BFD_RELOC_X86_64_TLSLD and BFD_RELOC_X86_64_GOTTPOFF.
3197         (tc_gen_reloc): Handle x86-64 TLS relocs.
3198
3199 2002-09-27  Alan Modra  <amodra@bigpond.net.au>
3200
3201         * config/tc-avr.c (md_apply_fix3): Reinstate code handling pcrel
3202         fixups to current or absolute section.
3203
3204 2002-09-26  Jim Wilson  <wilson@redhat.com>
3205
3206         * config/tc-v850.c (v850_offset): Use frag_var instead of frag_now_fix
3207         and frag_more.
3208
3209 2002-09-26  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
3210
3211         * config/tc-mips.c (CPU_HAS_MIPS16): Add mips-lsi-elf as MIPS16
3212         capable configuration.
3213         (macro_build): Check for MIPS16 capability, not for actual MIPS16 code
3214         generation.
3215         (mips_ip): Likewise.
3216
3217 2002-09-26  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
3218
3219         * config/tc-mips.c (append_insn): Fix jump overflow check.
3220
3221 2002-09-24  Alan Modra  <amodra@bigpond.net.au>
3222
3223         * config/tc-i386.c (process_operands): Warn about "lea" segment
3224         overrides.
3225
3226 2002-09-22  Mark Elbrecht  <snowball3@softhome.net>
3227
3228         * write.c: Delete set_segment_vma and prototype. Update all callers.
3229
3230 2002-09-21  Alan Modra  <amodra@bigpond.net.au>
3231
3232         * config/tc-i386.c (md_apply_fix3): Replace S_IS_EXTERNAL,
3233         S_IS_WEAK etc. with S_FORCE_RELOC call.  Correct comment.
3234         Rename "fseg" to "sym_seg".
3235         * Makefile.am: Run "make dep-am".
3236         * Makefile.in: Regenerate.
3237         * doc/Makefile.in: Regenerate.
3238
3239 2002-09-20  Nick Clifton  <nickc@redhat.com>
3240
3241         * symbols.c (colon): Do not allow symbols to be created in the
3242         absolute section if WORKING_DOT_WORD is not defined and
3243         new_broken_words would require a new frag to be created.
3244
3245 2002-09-20  Alan Modra  <amodra@bigpond.net.au>
3246
3247         * expr.c (expr): Simplify foo-foo here.
3248         (clean_up_expression): Remove O_subtract code.
3249
3250         * write.h (struct fix): Add fx_dot_value.
3251         (dot_value): Declare.
3252         * write.c (dot_value): New var.
3253         (fix_new_internal): Save dot_value as fx_dot_value.
3254         (fixup_segment): Adjust fx_offset using fx_dot_value.
3255         * expr.c (expr): Update dot_value.
3256
3257 2002-09-19  Jakub Jelinek  <jakub@redhat.com>
3258
3259         * config/tc-i386.c (tc_i386_fix_adjustable): Handle
3260         BFD_RELOC_386_TLS_IE and BFD_RELOC_386_TLS_GOTIE.
3261         (BFD_RELOC_386_TLS_IE, BFD_RELOC_386_TLS_GOTIE): Define to 0
3262         if not defined.
3263         (lex_got): Handle @GOTNTPOFF and @INDNTPOFF.
3264         (md_apply_fix3, tc_gen_reloc): Handle BFD_RELOC_386_TLS_IE and
3265         BFD_RELOC_386_TLS_GOTIE.
3266
3267 2002-09-19  Richard Henderson  <rth@redhat.com>
3268
3269         * config/tc-alpha.c (md_pcrel_from): Only adjust special for
3270         branch type relocs.
3271         (alpha_force_relocation): Don't special-case branch type relocs.
3272
3273 2002-09-19  Nick Clifton  <nickc@redhat.com>
3274
3275         * config/tc-m68k.c (select_control_regs): Handle situation where
3276         architecture has not yet been selected.
3277
3278 2002-09-18  Chris Demetriou  <cgd@broadcom.com>
3279
3280         * config/tc-mips.c (IS_SEXT_32BIT_NUM): Move closer to top of file.
3281         (IS_SEXT_16BIT_NUM): New macro.
3282         (macro_build_ldst_constoffset): New function, to build a set of
3283         instructions to do a load or store from a constant offset relative
3284         to a given register.
3285         (macro, s_cprestore): Use macro_build_ldst_constoffset to implement
3286         .cprestore pseudo-op.
3287
3288 2002-09-18  Chris Demetriou  <cgd@broadcom.com>
3289
3290         * config/tc-mips.c (md_apply_fix3): Just return for BFD_RELOC_8.
3291
3292 2002-09-18  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
3293
3294         * config/tc-mips.c (s_change_section): Fix parsing. Code cleanup.
3295
3296 2002-09-17  Stan Cox  <scox@redhat.com>
3297
3298         * tc-mips.c (load_address): Use BFD_RELOC_MIPS_GOT_DISP for newabi.
3299         (macro): Likewise for la.  Likewise for ld.
3300         (mips_after_parse_args): Make -xgot optional, not the default.
3301         (md_apply_fix3): Allow composite relocation to set up gp.
3302         (tc_gen_reloc): Allow relaxing for newabi.
3303         Relax R_MIPS_CALL16 to R_MIPS_GOT_PAGE/R_MIPS_GOT_OFST if local.
3304         Relax R_MIPS_GOT16/R_MIPS_LO16 to R_MIPS_GOT_DISP if local.
3305
3306 2002-09-17  Nick Clifton  <nickc@redhat.com>
3307
3308         * config/tc-arm.c (md_apply_fix3): Note that an implemented
3309         BFD_RELOC_ARM_IMMEDIATE has been done.
3310         (tc_gen_reloc): Do not issue reloc number of unimplemented
3311         BFD_RELOC_ARM_IMMEDIATE and BFD_RELOC_ARM_OFFSET_IMM relocs -
3312         their name is already in the error message - plus remove them
3313         from the default case.
3314
3315         * config/tc-arm.c (do_ldmstm): Warn about unpredictable
3316         behavior of instructions.
3317
3318 2002-09-17  Svein E. Seldal  <Svein.Seldal@solidas.com>
3319
3320         * config/tc-tic4x.c: Add function declarations and ATTRIBUTE_UNUSED.
3321         Convert functions to K&R format.
3322
3323 2002-09-17  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
3324
3325         * config/tc-mips.c (pdr_seg): Define only for ELF.
3326         (s_change_section): Remove unused variable. Don't use for nonELF.
3327
3328 2002-09-17  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
3329
3330         * config/obj-elf.c (obj_elf_change_section): Move prototype to
3331         obj-elf.h
3332         * config/obj-elf.h (obj_elf_change_section): Likewise.
3333
3334 2002-09-16  Elias Athanasopoulos  <eathan@otenet.gr>
3335
3336         * dwarf2dbg.c (out_debug_abbrev): Add support for the DW_AT_name field.
3337         (out_debug_info): Likewise.
3338
3339 2002-09-16  Bruno Haible  <bruno@clisp.org>
3340
3341         * config/tc-i386.h (ELF_TARGET_FORMAT): New macro.
3342         (TARGET_FORMAT): Use ELF_TARGET_FORMAT instead of "elf32-i386".
3343         * config/tc-i386.c (i386_target_format): Likewise.
3344         * config/tc-alpha.h (ELF_TARGET_FORMAT): New macro.
3345         (TARGET_FORMAT): Use ELF_TARGET_FORMAT instead of "elf64-alpha".
3346
3347 2002-09-13  Nick Clifton  <nickc@redhat.com>
3348
3349         * config/tc-ppc.c (md_assemble): Do not count FAKE operands
3350         when deciding if any operands have been skipped.
3351
3352 2002-09-11  Nick Clifton  <nickc@redhat.com>
3353
3354         * NEWS: New TI port supports both C4x and C3x series of DSPs.
3355
3356         * po/tr.po: Updated Turkish translation.
3357
3358 2002-09-11  Jakub Jelinek  <jakub@redhat.com>
3359
3360         * config/tc-i386.c (md_apply_fix3): Allow addend for
3361         BFD_RELOC_386_TLS_LDO_32, BFD_RELOC_386_TLS_LE and
3362         BFD_RELOC_386_TLS_LE_32.
3363
3364 2002-09-05  Jeff Law  <law@redhat.com>
3365
3366         * config/tc-hppa.c (md_apply_fix3): Don't set fx_done for
3367         marker relocations such as ENTRY/EXIT.
3368         * config/tc-hppa.h (MD_APPLY_SYM_VALUE): Definition applies
3369         to both OBJ_ELF and OBJ_SOM.
3370
3371 2002-09-05  Alan Modra  <amodra@bigpond.net.au>
3372
3373         * doc/internals.texi (md_apply_fix3): Expand.
3374         (TC_VALIDATE_FIX, TC_FORCE_RELOCATION, TC_FORCE_RELOCATION_ABS,
3375         TC_FORCE_RELOCATION_LOCAL, TC_FORCE_RELOCATION_SUB_SAME,
3376         TC_FORCE_RELOCATION_SUB_ABS, TC_FORCE_RELOCATION_SUB_LOCAL,
3377         TC_VALIDATE_FIX_SUB, MD_APPLY_SYM_VALUE, S_FORCE_RELOC,
3378         EXTERN_FORCE_RELOC): Document.
3379         (TC_HANDLES_FX_DONE, obj_fix_adjustable): Remove.
3380         * as.h: Don't include struc-symbol.h for arc.
3381         (IS_ELF): Define.
3382         * cgen.c (gas_cgen_md_apply_fix3): Remove *valP fudges and code to
3383         subtract absolute symbol.
3384         * obj.h (struct format_ops): Add frob_file_before_fix.
3385         * subsegs.c (section_symbol): Set BSF_SECTION_SYM flag.
3386         * symbols.c (S_FORCE_RELOC): New function.
3387         * symbols.h (S_FORCE_RELOC): Declare.
3388         * write.c (TC_FORCE_RELOCATION): Change default.
3389         (TC_FORCE_RELOCATION_ABS): Define.
3390         (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
3391         (TC_FORCE_RELOCATION_LOCAL): Define this instead.
3392         (TC_FORCE_RELOCATION_SECTION): Don't define.
3393         (TC_FORCE_RELOCATION_SUB_SAME): Define this instead.
3394         (TC_FORCE_RELOCATION_SUB_ABS): Define.
3395         (TC_FORCE_RELOCATION_SUB_LOCAL): Define.
3396         (TC_VALIDATE_FIX_SUB): Define.
3397         (TC_FIX_ADJUSTABLE): Don't define.
3398         (MD_APPLY_SYM_VALUE): Define this instead.
3399         (abs_section_sym): New variable.
3400         (adjust_reloc_syms): Use S_FORCE_RELOC.  Remove obj_fix_adjustable
3401         call.  Don't symbol_mark_used_in_reloc here.  Simplify link_once tests.
3402         Don't put the absolute section sym on fixups here.
3403         (fix_segment): New function.
3404         (write_relocs): Don't call fixup_segment from here.
3405         (write_object_file): Instead call tc_frob_file_before_fix,
3406         obj_frob_file_before_fix, and fix_segment prior to symbol table code.
3407         Don't output the absolute section symbol.
3408         (fixup_segment): Rewrite.
3409         * write.h (abs_section_sym): Declare.
3410         * config/obj-aout.c (obj_aout_frob_file_before_fix): Rename from
3411         obj_aout_frob_file.
3412         (aout_format_ops): Adjust to suit.
3413         * config/obj-aout.h (obj_frob_file): Don't define.
3414         (obj_frob_file_before_fix): Define.
3415         (obj_aout_frob_file_before_fix): Rename from obj_aout_frob_file.
3416         (S_FORCE_RELOC): Define.
3417         * config/obj-bout.h (S_FORCE_RELOC): Define.
3418         * config/obj-coff.c (coff_format_ops): Init new field.
3419         * config/obj-coff.h: Formatting fixes.
3420         (obj_sec_sym_ok_for_reloc): Define.
3421         (S_FORCE_RELOC): Define.
3422         * config/obj-ecoff.c (ecoff_frob_file_before_fix): Split out ..
3423         (ecoff_frob_file): .. from here.
3424         (ecoff_format_ops): Add new function.
3425         * config/obj-ecoff.h (ecoff_frob_file_before_fix): Declare.
3426         (obj_frob_file_before_fix): Define.
3427         * config/obj-elf.c (elf_format_ops): Init new field.
3428         * config/obj-elf.h (obj_sec_sym_ok_for_reloc): Expand comment.
3429         * config/obj-ieee.h: Formatting fixes.
3430         (S_FORCE_RELOC): Define.
3431         * config/obj-multi.h (obj_frob_file_before_fix): Define.
3432         * config/obj-vms.h (S_FORCE_RELOC): Define.
3433         * config/tc-alpha.c (md_apply_fix3): Correct GPDISP comment.
3434         (alpha_force_relocation): Use S_FORCE_RELOC, and don't return 0
3435         for BFD_RELOC_32 and BFD_RELOC_64.
3436         (alpha_fix_adjustable): Remove extern and weak tests.
3437         (alpha_before_fix): Rename from alpha_adjust_symtab.
3438         (alpha_adjust_relocs): Rename from alpha_adjust_symtab_relocs.
3439         * config/tc-alpha.h (struct fix, struct alpha_reloc_tag): Declare.
3440         (TC_VALIDATE_FIX): Tweak param name.
3441         (TC_FORCE_RELOCATION, tc_fix_adjustable): Likewise.
3442         (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
3443         (TC_FORCE_RELOCATION_LOCAL): Define this instead.
3444         (MD_APPLY_SYM_VALUE): Define.
3445         (tc_adjust_symtab): Don't define.
3446         (alpha_adjust_symtab): Don't declare.
3447         (tc_frob_file_before_fix): Define.
3448         (alpha_before_fix): Declare.
3449         (TC_INIT_FIX_DATA): Tweak param names.
3450         * config/tc-arc.c: Include "struc-symbol.h".
3451         (md_pcrel_from): Remove undefined sym fudge.
3452         (md_apply_fix3): Remove *valP fudges and code to subtract abs sym.
3453         Don't set fx_addnumber.
3454         (tc_gen_reloc): Remove spurious fx_addnumber comment.
3455         * config/tc-arc.h (MD_APPLY_SYM_VALUE): Define.
3456         (EXTERN_FORCE_RELOC): Define.
3457         * config/tc-arm.c (md_apply_fix3 <case BFD_RELOC_ARM_GOTPC>): Remove.
3458         (tc_gen_reloc): Fudge ARM_GOTPC addend.
3459         (arm_validate_fix): Return void.
3460         (arm_fix_adjustable <elf version>): Remove extern and weak tests.
3461         Add plt and got reloc tests.
3462         (arm_force_relocation): Call S_FORCE_RELOC.
3463         * config/tc-arm.h (struct fix): Forward declare.
3464         (TC_VALIDATE_FIX): No longer set add_symbolP.
3465         (arm_validate_fix): Adjust declaration.
3466         (TC_FORCE_RELOCATION <pe version): Call S_FORCE_RELOC.
3467         (TC_FORCE_RELOCATION): Tweak param name.
3468         (TC_INIT_FIX_DATA): Likewise.
3469         (obj_fix_adjustable): Don't define.
3470         (tc_fix_adjustable): Call arm_fix_adjustable.
3471         (TC_FIX_ADJUSTABLE): Don't define.
3472         (MD_APPLY_SYM_VALUE): Define.
3473         (EXTERN_FORCE_RELOC): Define.
3474         (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
3475         (TC_FORCE_RELOCATION_LOCAL): Define this instead.
3476         * config/tc-avr.c (md_apply_fix3): Don't cast valP pointer type.
3477         Remove *valP fudges and code to subtract abs sym.  Don't set
3478         fx_addnumber.
3479         * config/tc-avr.h: Formatting.
3480         (EXTERN_FORCE_RELOC): Define.
3481         (MD_APPLY_SYM_VALUE): Define.
3482         * config/tc-cris.c (tc_gen_reloc): Don't use fx_addnumber.
3483         (md_apply_fix3): Remove code to subtract abs sym.
3484         (md_cris_force_relocation): Update comment.  Call S_FORCE_RELOC.
3485         * config/tc-cris.h (TC_FORCE_RELOCATION): Tweak param name.
3486         (IS_CRIS_PIC_RELOC, tc_fix_adjustable): Likewise.
3487         (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
3488         (TC_FORCE_RELOCATION_LOCAL): Define this instead.
3489         (tc_fix_adjustable): Remove extern, weak tests.
3490         * config/tc-d10v.c (tc_gen_reloc): Don't fiddle address of
3491         BFD_RELOC_VTABLE_INHERIT relocs.  Don't use fx_addnumber.
3492         (md_apply_fix3): Don't cast valP pointer type.  Remove *valP fudges
3493         and code to subtract abs sym.
3494         (d10v_fix_adjustable): Remove extern, weak, SEC_MERGE tests.
3495         (d10v_force_relocation): Call S_FORCE_RELOC.
3496         * config/tc-d10v.h: Don't include write.h.
3497         (struct fix): Instead, forward declare.
3498         (MD_PCREL_FROM_SECTION): Tweak param names.
3499         (md_pcrel_from_section): Use "struct fix" instead of "fixS".
3500         (d10v_fix_adjustable): Likewise.
3501         (obj_fix_adjustable): Don't define.
3502         (tc_fix_adjustable): Define.
3503         (TC_FORCE_RELOCATION): Tweak param name.
3504         (MD_APPLY_SYM_VALUE): Define.
3505         (EXTERN_FORCE_RELOC): Define.
3506         * config/tc-d30v.c (tc_gen_reloc): Don't use fx_addnumber.
3507         (md_apply_fix3): Don't cast valP pointer type.  Remove *valP fudges
3508         and code to subtract abs sym.
3509         * config/tc-d30v.h: Don't include write.h.
3510         (struct fix): Instead, forward declare.
3511         (MD_PCREL_FROM_SECTION): Tweak param names.
3512         (md_pcrel_from_section): Use "struct fix" instead of "fixS".
3513         (MD_APPLY_SYM_VALUE): Define.
3514         (EXTERN_FORCE_RELOC): Define.
3515         * config/tc-dlx.c (md_dlx_force_relocation): Call S_FORCE_RELOC.
3516         (md_dlx_fix_adjustable): Don't test for NULL fx_addsy.
3517         (md_apply_fix3): No need to test fx_pcrel before setting fx_done.
3518         (tc_gen_reloc): Don't fiddle with BFD_RELOC_VTABLE_INHERIT relocs.
3519         Adjust the address for BFD_RELOC_VTABLE_ENTRY, not the addend.
3520         Don't use fx_addnumber.
3521         * config/tc-dlx.h: Don't include write.h.
3522         (md_convert_frag): We're not alpha twice over.
3523         (EXTERN_FORCE_RELOC): Define.
3524         (obj_fix_adjustable): Don't define.
3525         (tc_fix_adjustable): Define.
3526         (TC_FIX_ADJUSTABLE): Don't define.
3527         (MD_APPLY_SYM_VALUE): Define.
3528         (LOCAL_LABELS_DOLLAR): Undef always.
3529         * config/tc-fr30.c (fr30_force_relocation): Call S_FORCE_RELOC.
3530         (fr30_fix_adjustable): Remove extern, weak tests.
3531         * config/tc-fr30.h (MD_APPLY_SYM_VALUE): Define.
3532         (obj_fix_adjustable): Don't define.
3533         (tc_fix_adjustable): Define.
3534         (struct fix): Forward declare.
3535         (MD_PCREL_FROM_SECTION): Tweak param name.  Remove duplicate.
3536         * config/tc-frv.c (frv_force_relocation): Call S_FORCE_RELOC.
3537         (frv_fix_adjustable): Don't do extern, weak tests.
3538         * config/tc-frv.h (MD_APPLY_SYM_VALUE): Define.
3539         (TC_FIX_ADJUSTABLE): Don't define.
3540         (obj_fix_adjustable): Don't define.
3541         (tc_fix_adjustable): Define.
3542         (struct fix): Forward declare.
3543         (MD_PCREL_FROM_SECTION): Tweak param name.  Remove duplicate.\
3544         * config/tc-h8300.c (md_apply_fix3): Don't cast valP pointer type.
3545         * config/tc-h8300.h (struct fix): Forward declare.
3546         (EXTERN_FORCE_RELOC): Define.
3547         * config/tc-hppa.c (md_apply_fix3): Remove subtraction of sym value.
3548         (hppa_fix_adjustable): Don't test extern or weak.  Don't
3549         symbol_mark_used_in_reloc.
3550         (hppa_force_relocation): Use S_FORCE_RELOC instead of S_IS_EXTERNAL
3551         and S_IS_WEAK.
3552         * config/tc-hppa.h (EXTERN_FORCE_RELOC): Define
3553         (TC_FORCE_RELOCATION, TC_INIT_FIX_DATA): Tweak param name.
3554         (TC_FORCE_RELOCATION_SECTION): Don't define.
3555         (MD_APPLY_SYM_VALUE): Define.
3556         * config/tc-i370.c (md_apply_fix3): Remove *valP fudges and code
3557         to subtract abs sym.
3558         * config/tc-i370.h: Remove ifdef OBJ_ELF tests.
3559         (MD_APPLY_SYM_VALUE): Define.
3560         (MD_PCREL_FROM_SECTION): Tweak param name.
3561         * config/tc-i386.c (tc_i386_fix_adjustable): Remove weak, extern tests.
3562         (md_apply_fix3): Test fx_addsy, not fx_pcrel.
3563         (i386_force_relocation): New function.
3564         * config/tc-i386.h (TC_COFF_FIX2RTYPE): Tweak param name.
3565         (TC_VALIDATE_FIX): Likewise.
3566         (TC_FIX_ADJUSTABLE): Don't define.
3567         (MD_APPLY_SYM_VALUE): Define.
3568         (TC_FORCE_RELOCATION <elf version>): Call i386_force_relocation.
3569         (i386_force_relocation): Declare.
3570         (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
3571         (TC_FORCE_RELOCATION_LOCAL): Define this instead.
3572         (TC_FORCE_RELOCATION <coff version>): Call S_FORCE_RELOC.
3573         * config/tc-i860.c (md_apply_fix3): Don't cast valP pointer type.
3574         * config/tc-i860.h (MD_APPLY_SYM_VALUE): Define.
3575         (EXTERN_FORCE_RELOC): Define.
3576         * config/tc-i960.c (reloc_callj): Remove declaration.  Return false.
3577         (md_apply_fix3): Don't cast valP pointer type.  Move code here from
3578         old fixup_segment.  No need to test fx_pcrel before setting fx_done.
3579         (i960_validate_fix): Remove add_symbolPP arg and add_symbolP macro.
3580         Use fx_addsy instead of add_symbolP, as_bad_where instead of as_bad.
3581         Remove #if 0 code.  Invert return boolean.
3582         * config/tc-i960.h (TC_COUNT_RELOC): Tweak param name.
3583         (TC_COFF_FIX2RTYPE, TC_ADJUST_RELOC_COUNT, TC_VALIDATE_FIX): Likewise.
3584         (tc_headers_hook, tc_coff_fix2rtype): Remove declaration.
3585         (tc_coff_sizemachdep): Prototype.
3586         (i960_handle_align): Likewise.
3587         (i960_validate_fix): Adjust declaration.
3588         (reloc_callj): Likewise.
3589         (EXTERN_FORCE_RELOC): Define.
3590         (TC_FORCE_RELOCATION_SUB_SAME): Define.
3591         (TC_FORCE_RELOCATION_ABS): Define.
3592         (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
3593         (TC_FORCE_RELOCATION_LOCAL): Define this instead.
3594         (TC_FIX_ADJUSTABLE): Don't define.
3595         (MD_APPLY_SYM_VALUE): Define.
3596         * config/tc-ia64.c (ia64_force_relocation): Call S_FORCE_RELOC.
3597         * config/tc-ia64.h (MD_APPLY_SYM_VALUE): Define.
3598         (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
3599         (TC_FORCE_RELOCATION_LOCAL): Define this instead.
3600         * config/tc-ip2k.c (ip2k_force_relocation): Call S_FORCE_RELOC.
3601         * config/tc-ip2k.h (MD_APPLY_FIX3): Don't define.
3602         (MD_APPLY_SYM_VALUE): Define.
3603         (EXTERN_FORCE_RELOC): Define.
3604         (TC_FORCE_RELOCATION): Tweak param name.
3605         * config/tc-m32r.c (m32r_force_relocation): Call S_FORCE_RELOC.
3606         (m32r_fix_adjustable): Don't test extern, weak.
3607         * config/tc-m32r.h (MD_PCREL_FROM_SECTION): Tweak param name.
3608         (MD_APPLY_SYM_VALUE): Define.
3609         (obj_fix_adjustable): Don't define.
3610         (tc_fix_adjustable): Define.
3611         (tc_frob_file): Don't define.
3612         (tc_frob_file_before_fix): Define.
3613         (EXTERN_FORCE_RELOC): Define.
3614         * config/tc-m68hc11.c (tc_gen_reloc): Set addend to zero.  Adjust
3615         BFD_RELOC_VTABLE_ENTRY address.
3616         (tc_m68hc11_force_relocation): Call S_FORCE_RELOC.
3617         (tc_m68hc11_fix_adjustable): Don't test relaxable_symbol.
3618         (md_apply_fix3): Remove *valP fudges and code to subtract abs sym.
3619         Remove duplicated fx_done code.
3620         * config/tc-m68hc11.h (MD_APPLY_SYM_VALUE): Define.
3621         (EXTERN_FORCE_RELOC): Define.
3622         * config/tc-m68k.c (tc_m68k_fix_adjustable): Don't test
3623         relaxable_symbol.
3624         * config/tc-m68k.h (TC_COFF_FIX2RTYPE): Tweak param name.
3625         (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
3626         (TC_FIX_ADJUSTABLE): Don't define.
3627         (EXTERN_FORCE_RELOC): Define.
3628         (MD_APPLY_SYM_VALUE): Define.
3629         (TC_FORCE_RELOCATION): Call S_FORCE_RELOC.
3630         * config/tc-mcore.c (md_apply_fix3): Don't cast valP pointer type.
3631         Remove fx_addsy tests.
3632         (mcore_force_relocation): Call S_FORCE_RELOC.
3633         (mcore_fix_adjustable): Don't test fx_addsy.
3634         * config/tc-mcore.h (MD_PCREL_FROM_SECTION): Tweak param name.
3635         (EXTERN_FORCE_RELOC): Define.
3636         (obj_fix_adjustable): Don't define.
3637         (tc_fix_adjustable): Define.
3638         (MD_APPLY_SYM_VALUE): Define.
3639         * config/tc-mips.c (enum mips_pic_level): Move to tc-mips.h.
3640         (mips_pic): No longer static.
3641         (mips_force_relocation): Call S_FORCE_RELOC.
3642         (mips_fix_adjustable): Remove extern, weak tests.
3643         * config/tc-mips.h (enum mips_pic_level): Declare.
3644         (mips_pic): Declare.
3645         (tc_frob_file): Don't define.
3646         (tc_frob_file_before_fix): Define this instead.
3647         (EXTERN_FORCE_RELOC): Define.
3648         * config/tc-mmix.c (md_apply_fix3): Replace real_reg_section tests
3649         with reg_section tests.  Set fx_done instead of calling
3650         symbol_clear_used_in_reloc on bad relocs.
3651         (tc_gen_reloc): Zero fx_addsy on bad relocs.
3652         (mmix_force_relocation): Remove weak sym test.  Call S_FORCE_RELOC.
3653         (mmix_adjust_symtab): Simplify list handling.  Abort on any
3654         nonsense.
3655         * config/tc-mmix.h (tc_fix_adjustable): Remove weak tests.  Check
3656         BFD_RELOC_MMIX_LOCAL.
3657         (tc_frob_symbol): Keep user defined syms in reg_section.  Don't punt.
3658         (EXTERN_FORCE_RELOC): Define.
3659         (MD_PCREL_FROM_SECTION): Tweak param name.
3660         (tc_frob_file): Don't define.
3661         (tc_frob_file_before_fix): Define this instead.
3662         * config/tc-mn10300.c (mn10300_force_relocation): Call S_FORCE_RELOC.
3663         Remove SEC_CODE checks.
3664         (mn10300_fix_adjustable): Remove extern and weak tests.
3665         * config/tc-mn10300.h (EXTERN_FORCE_RELOC): Define.
3666         (TC_FORCE_RELOCATION): Tweak param name.
3667         (obj_fix_adjustable): Don't define.
3668         (TC_FORCE_RELOCATION_SUB_SAME): Define to handle SEC_CODE.
3669         * config/tc-ns32k.h (TC_FIX_DATA_PRINT): Tweak param name.
3670         * config/tc-openrisc.c (openrisc_force_relocation): Call S_FORCE_RELOC.
3671         (openrisc_fix_adjustable): Don't test fx_addsy.
3672         * config/tc-openrisc.h (MD_APPLY_SYM_VALUE): Define.
3673         (obj_fix_adjustable): Don't define.
3674         (tc_fix_adjustable): Define this instead.
3675         (MD_PCREL_FROM_SECTION): Remove duplicate. Tweak param name.
3676         * config/tc-or32.c (md_apply_fix3): Don't cast valP pointer type.
3677         (tc_gen_reloc): Don't fiddle with BFD_RELOC_VTABLE_INHERIT relocs.
3678         Adjust the address for BFD_RELOC_VTABLE_ENTRY, not the addend.
3679         * config/tc-or32.h (EXTERN_FORCE_RELOC): Define.
3680         (MD_APPLY_SYM_VALUE): Define.
3681         * config/tc-pj.c (md_apply_fix3): Don't cast valP pointer type.
3682         Don't subtract symbol value.
3683         * config/tc-pj.h (md_pcrel_from): Tweak param name.
3684         (EXTERN_FORCE_RELOC): Define.
3685         (TC_FORCE_RELOCATION): Call S_FORCE_RELOC.
3686         (MD_APPLY_SYM_VALUE): Define.
3687         (obj_fix_adjustable): Don't define.
3688         (tc_fix_adjustable): Define this instead.
3689         * config/tc-ppc.c (ppc_frob_symbol <coff version>): Ignore absolute
3690         section sym.
3691         (ppc_force_relocation <coff version>): Call S_FORCE_RELOC.
3692         (ppc_force_relocation <elf version>): New.
3693         (ppc_fix_adjustable <elf version>): Remove extern and weak tests.
3694         (md_apply_fix3): Don't subtract symbol values for ELF.  Update
3695         comments.  Don't subtract fx_subsy as that is already done.
3696         * config/tc-ppc.h (tc_fix_adjustable): Tweak param name.
3697         (MD_PCREL_FROM_SECTION): Likewise.
3698         (TC_FORCE_RELOCATION): Define for both ELF and XCOFF as calling
3699         ppc_force_relocation.
3700         (TC_FORCE_RELOCATION_SECTION): Delete.
3701         (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
3702         (TC_FORCE_RELOCATION_LOCAL): Define this instead.
3703         (MD_APPLY_SYM_VALUE): Define.
3704         * config/tc-s390.c: #include "dwarf2dbg.h".
3705         (s390_insn): Remove excess parens.
3706         (tc_s390_fix_adjustable): Remove extern, weak, SEC_MERGE tests.
3707         (tc_s390_force_relocation): Call S_FORCE_RELOC.
3708         (md_apply_fix3): Add ATTRIBUTE_UNUSED on "seg".  Abort when fx_subsy
3709         non-NULL.  Don't subtract off fx_addsy value.
3710         * config/tc-s390.h (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
3711         (TC_FORCE_RELOCATION, MD_PCREL_FROM_SECTION): Tweak param name.
3712         (TC_FIX_ADJUSTABLE): Don't define.
3713         (MD_APPLY_SYM_VALUE): Define.
3714         * config/tc-sh.c (SWITCH_TABLE_CONS): Move to tc-sh.h.
3715         (SWITCH_TABLE): Likewise.
3716         (sh_force_relocation): Call S_FORCE_RELOC.
3717         (sh_fix_adjustable): Remove "return 1" cases handled by the default.
3718         Replace TC_RELOC_RTSYM_LOC_FIXUP with reloc type tests.
3719         (md_apply_fix3 <case BFD_RELOC_32_PLT_PCREL>): Simplify,
3720         fx_addnumber is zero on entry.  Save val in fx_addnumber.
3721         (tc_gen_reloc): Don't subtract fx_subsy.
3722         * config/tc-sh.h (struct fix): Move.
3723         (obj_fix_adjustable): Don't define.
3724         (tc_fix_adjustable): Define this instead.
3725         (TC_FIX_ADJUSTABLE): Don't define.
3726         (MD_APPLY_SYM_VALUE): Define.
3727         (SWITCH_TABLE_CONS): Define.
3728         (SWITCH_TABLE): Define.
3729         (TC_FORCE_RELOCATION_SUB_SAME): Define.
3730         (TC_VALIDATE_FIX_SUB): Define.
3731         (MD_PCREL_FROM_SECTION): Tweak param name.
3732         (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
3733         (TC_FORCE_RELOCATION_LOCAL): Define this instead.
3734         (TC_FORCE_RELOCATION_SUB_ABS): Define.
3735         * config/tc-sh64.h (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
3736         (TC_FORCE_RELOCATION_LOCAL): Define this instead.
3737         (TC_FORCE_RELOCATION_SUB_SAME): Define.
3738         (TC_VALIDATE_FIX_SUB): Define.
3739         (MD_PCREL_FROM_SECTION): Tweak param name.
3740         * config/tc-sparc.c (md_apply_fix3): Don't subtract off symbol value.
3741         (tc_gen_reloc): Use S_FORCE_RELOC.
3742         (elf32_sparc_force_relocation): Call S_FORCE_RELOC.
3743         * config/tc-sparc.h (TC_FORCE_RELOCATION <coff version>): Remove.
3744         (TC_FORCE_RELOCATION_ABS): Define this instead.
3745         (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
3746         (TC_FORCE_RELOCATION_LOCAL): Define this instead.
3747         (tc_fix_adjustable): Remove extern and weak tests.  Use S_FORCE_RELOC.
3748         (MD_APPLY_SYM_VALUE): Define.
3749         (TC_FIX_DATA_PRINT): Tweak param name.
3750         * config/tc-tic30.c (USE_STDOUT): Don't define.
3751         (md_parse_option): Remove stupid debug code.
3752         (tc_gen_reloc): Don't use fx_addnumber.
3753         * config/tc-v850.c (v850_fix_adjustable): Remove extern and weak tests.
3754         (v850_force_relocation): Remove weak test.  Call S_FORCE_RELOC.
3755         * config/tc-v850.h (obj_fix_adjustable): Don't define.
3756         (tc_fix_adjustable): Define this instead.
3757         (TC_FIX_ADJUSTABLE): Don't define.
3758         (MD_APPLY_SYM_VALUE): Define this instead.
3759         (TC_FORCE_RELOCATION, MD_PCREL_FROM_SECTION): Tweak param name.
3760         * config/tc-vax.h (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
3761         (TC_FIX_ADJUSTABLE): Don't define.
3762         (MD_APPLY_SYM_VALUE): Define this instead.
3763         (tc_fix_adjustable): Remove extern and weak tests.
3764         * config/tc-w65.h (struct fix): Forward declare.
3765         * config/tc-xstormy16.c (xstormy16_force_relocation): Call
3766         S_FORCE_RELOC.
3767         (xstormy16_fix_adjustable): Remove extern and weak tests.  Don't
3768         call xstormy16_force_relocation;  Instead test for FPTR16 reloc.
3769         (xstormy16_md_apply_fix3): Remove *valP fudges and code to subtract
3770         absolute symbol.
3771         * config/tc-xstormy16.h (MD_APPLY_FIX3): Don't define.
3772         (MD_APPLY_SYM_VALUE): Define.
3773         (obj_fix_adjustable): Don't define.
3774         (tc_fix_adjustable): Define this instead.
3775         (MD_PCREL_FROM_SECTION): Remove duplicate.  Tweak param name.
3776
3777 2002-09-04  Alan Modra  <amodra@bigpond.net.au>
3778
3779         * config/tc-ppc.c (ppc_frob_symbol): Formatting, warning fix.
3780         (ppc_fix_adjustable <coff version>): Cleanup.
3781
3782         * config/tc-ppc.c (PPC_HIGHER, PPC_HIGHEST): Fix warning.
3783         (md_parse_option): No -a64 without BFD64.
3784         (ppc_set_cpu): Select appropriate cpu when ppc_obj64.
3785         (ppc_arch): Use bfd_mach_rs6k for bfd_arch_rs6000.
3786
3787 2002-09-04  Nick Clifton  <nickc@redhat.com>
3788
3789         * config/tc-ppc.c (md_begin): Do not insert non-BookE32
3790         instructions into the hash table if the target cpu is the BookE32.
3791
3792 2002-08-31  Hans-Peter Nilsson  <hp@bitrange.com>
3793
3794         * read.c (do_align): Use ATTRIBUTE_UNUSED_LABEL for label, not
3795         ATTRIBUTE_UNUSED.
3796
3797 2000-08-28  Catherine Moore  <clm@redhat.com>
3798
3799         * tc-v850.c (v850_relax): Declare.
3800         (v850_longcode): New routine.
3801         (v850_handle_align): New routine.
3802         (md_pseudo_table): Add longcall and longjump.
3803         (md_parse_option): Check for relax option.
3804         (tc_gen_reloc): Handle BFD_RELOC_V850_LONGCALL,
3805         BFD_RELOC_V850_LONGJUMP, and BFD_RELOC_V850_ALIGN.
3806         (md_apply_fix3): Likewise.
3807         (v850_force_relocation): Likewise.
3808         (v850_comm): Change the current section.
3809         (md_assemble): Ensure that the correct value is put in the
3810         fixup.
3811         (v850_sdata, v850_tdata, v850_zdata, v850_sbss, v850_tbss,
3812         v850_zbss, v850_rosdata, v850_rozdata): Fix section book keeping.
3813         Remove redundant v850ea support.
3814         * tc-v850.h (HANDLE_ALIGN): Define.
3815         (v850_handle_align): Declare.
3816         * doc/c-v850.c: Document -mrelax, .longcall and .longjump.
3817
3818 2002-08-28  Svein E. Seldal  <Svein.Seldal@solidas.com>
3819
3820         * configure.in: Add tic4x-coff* and c4x-coff*-coff-coff targets.
3821         * configure: Regenerate.
3822         * NEWS: Mention new port.
3823
3824 2002-08-28  Michael Hayes <m.hayes@elec.canterbury.ac.nz>
3825
3826         * config/obj-coff.c: Add sdef definition.
3827         * config/obj-coff.h: Add tic4x include file and set
3828         target format.
3829         * config/tc-tic4x.c: New file.
3830         * config/tc-tic4x.h: New file.
3831
3832 2002-08-28  Alan Modra  <amodra@bigpond.net.au>
3833
3834         * write.c (BFD_FAST_SECTION_FILL): Remove unused macro.
3835         (TC_ADJUST_RELOC_COUNT): Tweak param name.
3836         (TC_FORCE_RELOCATION, TC_FORCE_RELOCATION_SECTION): Likewise.
3837         (TC_FIX_ADJUSTABLE, MD_PCREL_FROM_SECTION): Likewise.
3838         (RELOC_ENUM): Define.
3839         (fix_new_internal): Use RELOC_ENUM.
3840         (fix_new, fix_new_exp): Likewise.
3841         (adjust_reloc_syms): Comment.  Remove unnecessary tests on sym != NULL.
3842         Replace gotos with continue.
3843         (write_relocs): Formatting.  Avoid symbol loops in
3844         RELOC_EXPANSION_POSSIBLE case too.  Report bfd_reloc_outofrange
3845         errors, and error number in other cases.
3846         (fixup_segment): Remove param names from prototype.  Rename
3847         "this_segment_type" to "this_segment".  Update linkrelax comment.
3848         Remove "size, "place" and "where" local vars.  Formatting.  Update
3849         "no symbol" comment.  Remove #if 0 and #if 1.
3850
3851         * app.c (do_scrub_chars): Don't test IGNORE_NONSTANDARD_ESCAPES.  Tidy.
3852
3853 2002-08-27  Alan Modra  <amodra@bigpond.net.au>
3854
3855         * dwarf2dbg.c: Always include dwarf2dbg.h.
3856         (dwarf2_directive_file): Adjust dummy version args.
3857         * ecoff.c (ecoff_directive_weakext): Add ATTRIBUTE_UNUSED.
3858         * expr.c (clean_up_expression <O_subtract>): Allow subtraction
3859         when symbol values differ.
3860         * read.c (do_align): Add ATTRIBUTE_UNUSED to label.
3861         (pseudo_set <O_subtract>): Remove unnecessary segment test.
3862         * config/obj-bout.c (obj_pseudo_table): Warning fix.
3863
3864 2002-08-26  Alan Modra  <amodra@bigpond.net.au>
3865
3866         * config/tc-w65.c (md_section_align): Fix typo.
3867         (md_parse_option): Return 0, not 1.
3868
3869 2002-08-22  Nick Clifton  <nickc@redhat.com>
3870
3871         * doc/as.texinfo (Section): Note that if '@' is a comment
3872         character then another symbol is used to prefix the section's
3873         type.
3874
3875 2002-08-22  Christian Groessler <chris@groessler.org>
3876
3877         * config/tc-z8k.c (get_operands): Adjust ptr variable also in
3878         "case 0" case.
3879
3880 2002-08-12  Graeme Peterson  <gp@qnx.com>
3881
3882         * configure.in: Add support for sh-**-nto* target.
3883         * configure: Regenerate.
3884
3885 2002-08-21  Nitin  Gupta  <niting@noida.hcltech.com>
3886
3887         * config/tc-h8300.h (TC_LINKRELAX_FIXUP): Define.
3888
3889 2002-08-21  Elena Zannoni  <ezannoni@redhat.com>
3890
3891         * config/tc-ppc.c (ppc_cleanup): Do something only if format
3892         is ELF.
3893         (ppc_apuinfo_section_add): Define only if format is ELF.
3894         (md_assemble): Emit APUinfo section only if format is ELF.
3895         Fix formatting.
3896
3897 2002-08-21  Alan Modra  <amodra@bigpond.net.au>
3898
3899         * config/tc-arc.c (md_pseudo_table <dwarf2_directive_file>): Cast.
3900         * config/tc-frv.c: Likewise.
3901         * config/tc-hppa.c: Likewise.
3902         * config/tc-ia64.c: Likewise.
3903         * config/tc-ip2k.c: Likewise.
3904         * config/tc-m68hc11.c: Likewise.
3905         * config/tc-m68k.c: Likewise.
3906         * config/tc-mmix.c: Likewise.
3907         * config/tc-mn10300.c: Likewise.
3908         * config/tc-sh.c: Likewise.
3909         * config/tc-sparc.c: Likewise.
3910         * config/tc-v850.c: Likewise.
3911
3912 2002-08-20  Richard Sandiford  <rsandifo@redhat.com>
3913
3914         * config/tc-mips.c (macro2): Implement rotates by zero using shifts
3915         by zero.
3916
3917 2002-08-19  Elena Zannoni  <ezannoni@redhat.com>
3918
3919         From matthew green  <mrg@redhat.com>
3920
3921         * config/tc-ppc.c (PPC_OPCODE_CLASSIC): Enable this everywhere
3922         PPC_OPCODE_PPC is, except for BookE architectures.
3923         (md_parse_option): Add support for -mspe.
3924         (md_show_usage): Add -mspe.
3925         (md_parse_option): Add support for -me500 and
3926         -me500x2 to generate code for Motorola e500 core complex.
3927         (md_show_usage): Add -me500 and -me500x2.
3928
3929         (PPC_APUINFO_ISEL, PPC_APUINFO_PMR, PPC_APUINFO_RFMCI,
3930         PPC_APUINFO_CACHELCK, PPC_APUINFO_SPE, PPC_APUINFO_EFS,
3931         PPC_APUINFO_BRLOCK): New macros.
3932
3933         (ppc_cleanup): New function.
3934         (ppc_apuinfo_section_add): New function.
3935         (APUID): New macro.
3936         (md_assemble): Collect info and write the APUinfo section.
3937
3938         * config/tc-ppc.h (md_cleanup): Define.
3939         (ppc_cleanup): Export.
3940         (ELF_TC_SPECIAL_SECTIONS): Add .PPC.EMB.apuinfo section.
3941
3942 2002-08-17  Stan Cox  <scox@redhat.com>
3943
3944         * config/obj-elf.c (obj_elf_change_section): Make non-static.
3945         config/tc-mips.c (s_change_section): New function to support
3946         IRIX .section pseudo-op.
3947
3948 2002-08-16  Nick Clifton  <nickc@redhat.com>
3949
3950         * config/tc-v850.c (md_assemble): Fix assembling of "callt 0x3f".
3951
3952 2002-08-15  Alexandre Oliva  <aoliva@redhat.com>
3953
3954         * config/tc-mips.c (macro_build_jalr): Make sure we generate
3955         the fix-up against on the right frag.
3956         (s_cpsetup): Likewise.  Parse third argument as expression, to
3957         handle global symbols and forward/backward labels correctly.
3958
3959 2002-08-14  Nick Clifton  <nickc@redhat.com>
3960
3961         * read.c (stringer): Catch attempts to create strings in the abs
3962         section.
3963
3964         * config/tc-alpha.c: Fix compiling for COFF targets.
3965         Some minor formatting tidyups.
3966
3967 2002-08-13  Stephane Carrez  <stcarrez@nerim.fr>
3968
3969         * config/tc-m68hc11.h (MD_PCREL_FROM_SECTION): Remove.
3970         (TC_HANDLES_FX_DONE): Define to let md_apply_fix3 set fx_done flag
3971         according to the reloc.
3972         (tc_fix_adjustable, tc_m68hc11_fix_adjustable): Define.
3973         (TC_FORCE_RELOCATION): Define.
3974         (tc_m68hc11_force_relocation): Declare.
3975
3976         * config/tc-m68hc11.c (md_pseudo_table): Add relax command.
3977         (s_m68hc11_relax): New function for relax group.
3978         (build_insn, build_jump_insn): Emit a M68HC11_RL_JUMP reloc at
3979         beginning of jump instruction.
3980         (md_pcrel_from): Rename from md_pcrel_from_section and fix
3981         address computation.
3982         (tc-gen_reloc): Update.
3983         (md_estimate_size_before_relax): Create the BFD_RELOC_16_PCREL as
3984         PC-relative fixup.
3985         (tc_m68hc11_force_relocation): New function, handle new relocs.
3986         (tc_m68hc11_fix_adjustable): New to make sure there are enough
3987         reloc for the linker relax pass.
3988         (md_apply_fix3): Handle M68HC11_RL_JUMP, M68HC11_RL_GROUP
3989         and VTABLE relocs.
3990
3991 2002-08-13  Stephane Carrez  <stcarrez@nerim.fr>
3992
3993         * config/tc-m68hc11.c (m68hc11_elf_final_processing): New function.
3994         (md_pseudo_table): Add .mode, .far and .interrupt pseudo op.
3995         (s_m68hc11_mode): New function for .mode pseudo op.
3996         (s_m68hc11_mark_symbol): New function for .far and .interrupt
3997         pseudo op.
3998         * config/tc-m68hc11.h (elf_tc_final_processing): Define.
3999         (m68hc11_elf_final_processing): Declare.
4000
4001 2002-08-13  Stephane Carrez  <stcarrez@nerim.fr>
4002
4003         * config/tc-m68hc11.c (md_begin): Take into account additional
4004         page operand for call instruction.
4005         (print_opcode_format): Likewise.
4006         (check_range): Likewise for page range checking.
4007         (get_operand): Don't skip a possible comma in operands.
4008         (fixup8): Generate BFD_RELOC_M68HC11_PAGE reloc.
4009         (fixup16): Likwise with BFD_RELOC_M68HC11_LO16.
4010         (fixup24): New to handle call reloc.
4011         (build_insn): Handle missing page operand for call instruction.
4012         (find): Likewise.
4013         (md_apply_fix3): Take into account new relocs.
4014         (get_operand): Fix the mode for indexed indirect addressing.
4015         (build_indexed_byte): Fix post index byte for indexed indirect mode.
4016
4017 2002-08-12  Richard Sandiford  <rsandifo@redhat.com>
4018
4019         * config/tc-mips.c (mips_ip): Don't work out the value of
4020         constant %hi()s here.
4021
4022 2002-08-10  Alan Modra  <amodra@bigpond.net.au>
4023
4024         * config/tc-i386.c (tc_i386_fix_adjustable): Test OUTPUT_FLAVOR
4025         for ELF, and don't bother checking ELF relocs when non-ELF.
4026         (i386_immediate): Allow absolute_section expressions for aout.
4027         (i386_displacement): Likewise.  Also test bfd_is_com_section.
4028         (md_estimate_size_before_relax): Test OUTPUT_FLAVOR for ELF.
4029         (md_apply_fix3): Hack for bfd_install_relocation when fx_pcrel,
4030         not when fx_addsy.  Remove dead code.
4031
4032 2002-08-09  Graeme Peterson  <gp@qnx.com>
4033
4034         * configure.in: Add support for ppc-*-nto* target.
4035         * configure: Regenerate.
4036
4037 2002-08-09  Alan Modra  <amodra@bigpond.net.au>
4038
4039         * config/tc-i386.h: Reorganize.
4040
4041 2002-08-09  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>
4042
4043         * config/tc-mips.c (macro): Handle a register plus a 16-bit
4044         immediate offset in "dla" and "la" expansions.
4045
4046 2002-08-09  Alan Modra  <amodra@bigpond.net.au>
4047
4048         * configure.in: bfd_gas=yes for all i386 targets.  Formatting.
4049         Remove "bfd_gas=yes" from target table when covered later.
4050         Consolidate some entries.
4051         * configure: Regenerate
4052
4053 2002-08-09  Jakub Jelinek  <jakub@redhat.com>
4054
4055         * config/tc-i386.c (output_insn): Save frag_now and frag_now_fix ()
4056         at start of insn, pass it to output_disp and output_imm.
4057         (output_disp): Added arguments.  If _GLOBAL_OFFSET_TABLE_ is seen
4058         in displacement for R_386_32 reloc, use R_386_GOTPC and compute
4059         properly addend.
4060         (output_imm): Added arguments.  Compute properly addend for
4061         R_386_GOTPC.
4062         (md_apply_fix3): Remove R_386_GOTPC handling.
4063
4064 2002-08-06  George France <france@handhelds.org>
4065
4066         * config/tc-alpha.c (cpu_types): Enabled ev67, ev68,  -m21264a
4067         and m21264b processor names and cpu types.
4068         * doc/c-alpha.texi: Documented new types.
4069
4070 2002-08-06  Alan Modra  <amodra@bigpond.net.au>
4071
4072         * config/tc-ppc.c (md_apply_fix3): Adjust 16 bit XCOFF reloc offset.
4073
4074 2002-08-01  Richard Sandiford  <rsandifo@redhat.com>
4075
4076         * config/tc-mips.c (tc_gen_reloc): Extend GP-relative addend
4077         handling to BFD_RELOC_MIPS16_GPREL.
4078
4079 2002-08-01  Nick Clifton  <nickc@redhat.com>
4080
4081         * config/tc-arm.c (add_to_lit_pool): Ensure that offset to literal
4082         pool is computed using signed arithmetic so that proper sign
4083         extension is performed if X_add_number is a 64-bit integer.
4084
4085 2002-08-01  H.J. Lu  <hjl@gnu.org>
4086             Daniel Jacobowitz  <drow@mvista.com>
4087
4088         * dwarf2dbg.c (dwarf2_finish): Don't emit unreferenced
4089         .debug_line section unless it has line information.
4090
4091 2002-07-31  Ian Dall  <ian@sibyl.beware.dropbear.id.au>
4092
4093         * config/tc-ns32k.h (md_pcrel_adjust): Supply prototype.
4094         * config/tc-ns32k.c (convert_iif, md_parse_option, md_show_usage):
4095         Allow default displacement size to be an option "--disp-size-default".
4096         (md_number_to_disp): Make error messages include value. Use %d to
4097         print integers, not %s.
4098         (fix_new_ns32k): Conditionally set fx_no_overflow so we don't
4099         get duplicate messages sometimes.
4100         (convert_iif): Grow frag to max possible instruction size. Avoid
4101         creating unnecessary fixes.
4102         (md_number_to_field) Add prototype.
4103         (encode_operand, parse, convert_iif, md_fix_pcrel_adjust): Add
4104         prototypes and make static.
4105         (struct addr_mode): Make mode and scaled_mode explicitly signed.
4106         (evaluate_expr): Use resultP argument instead of exprP global.
4107         (get_addr_mode): Quiten compiler warnings.
4108         (encode_operand): eliminate unused variables. Quiten compiler
4109         warnings. Eliminate nul character in format strings.
4110         (parse): argc is unsigned.
4111         (reloc): Type cast index to quieten compiler.
4112         (md_pcrel_adjust, md_apply_fix3): Remove unused variable.
4113         (md_convert_frag): Note unused parameters. Remove unused
4114         variables.
4115         (md_create_long_jump, md_create_short_jump,
4116         md_undefined_symbol_name, md_section_align, tc_gen_reloc): Note
4117         unused parameters.
4118
4119 2002-07-31  Nick Clifton  <nickc@redhat.com>
4120
4121         * NEWS: Retroactively add entry for Lars Brinkhoff's contribution
4122         of the PDP-11 and 2.11BSD a.out support.
4123
4124 2002-07-31  Momchil Velikov  <velco@fadata.bg>
4125
4126         * config/tc-v850.c (md_assemble): Fix range check for immediate
4127         operand.
4128
4129 2002-07-30  Chris Demetriou  <cgd@broadcom.com>
4130
4131         * config/tc-mips.c (mips_cpu_info_table): Clean up entries related
4132         to Broadcom SB-1 core support.
4133
4134 2002-07-31  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
4135
4136         * config/tc-mips.c (mips_target_format): Fix formatting.
4137         Add recognition of n32 ABI formats.
4138
4139 2002-07-30  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>
4140
4141         * tc-mips.c (load_address): Don't clobber $at when loading a
4142         64-bit address in non-PIC code if noat is in effect.
4143         (macro): Likewise.
4144
4145 2002-07-30  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>
4146
4147         * config/tc-mips.c (macro): Use codes 6 and 7 in trap instructions
4148         used in division/multiply macro expansions similarly to how they
4149         are used in the variants with break instructions.
4150         (macro2): Likewise.
4151
4152 2002-07-30  Graeme Peterson  <gp@qnx.com>
4153
4154         * configure.in: Add support for arm-*-nto target.
4155         * configure: Regenerate.
4156
4157 2002-07-30  Nick Clifton  <nickc@redhat.com>
4158
4159         * config/tc-arm.c (struct literal_pool): Add fields to allow
4160         multiple literal pools to be maintained.
4161         (find_literal_pool): New function.
4162         (find_or_make_literal_pool): New function.
4163         (add_to_literal_pool): Use find_or_make_literal_pool.
4164         (arm_s_text, arm_s_data, arm_s_section): Remove - no longer
4165         needed.
4166         (s_ltorg): Use find_literal_pool.
4167         (arm_cleanup): Dump all literal pools.
4168         * doc/c-arm.texi: Document new behaviour of only dumping literal
4169         pools upon request.
4170
4171 2002-07-26  Alan Modra  <amodra@bigpond.net.au>
4172
4173         * config/tc-ppc.c (ppc_set_cpu): Use PPC_OPCODE_64 as the default
4174         rather than PPC_OPCODE_32 for powerpc64*.
4175
4176 2002-07-25  Nick Clifton  <nickc@redhat.com>
4177
4178         * po/es.po: Updated Spanish translation.
4179         * po/fr.po: Updated French translation.
4180
4181 2002-07-25  Richard Sandiford  <rsandifo@redhat.com>
4182
4183         * doc/c-mips.texi: Remove -mcpu.  Document -mabi.
4184         * configure.in (MIPS_CPU_STRING_DEFAULT): New configuration macro.
4185         (USE_E_MIPS_ABI_O32, MIPS_DEFAULT_64BIT): New configuration macros.
4186         * configure, config.in: Regenerate.
4187         * config/tc-mips.c (file_mips_abi): Rename to mips_abi.
4188         (mips_set_options): Remove "abi" field.
4189         (mips_opts): Update accordingly.  Replace all uses of mips_opts.abi
4190         with mips_abi.
4191         (mips_cpu): Remove.
4192         (mips_arch_string, mips_arch_info): New vars.
4193         (mips_tune_string, mips_tune_info): New vars.
4194         (ABI_NEEDS_32BIT_REGS, ABI_NEEDS_64BIT_REGS): New macros.
4195         (HAVE_32BIT_GPRS, HAVE_32BIT_FPRS): Don't check the ABI.
4196         (mips_isa_to_str, mips_cpu_to_str): Remove.
4197         (mips_ip): If the selected architecture is a generic ISA rather
4198         than a processor, only mention the ISA level in error messages.
4199         (OPTION_MCPU): Remove.
4200         (OPTION_FP64): New.
4201         (md_longopts): Add -mfp64, remove -mcpu.
4202         (mips_set_option_string): New fn.
4203         (md_parse_option): Make -mipsN update file_mips_isa rather than
4204         mips_opts.isa.  Use mips_set_option_string to set -march or -mtune.
4205         Don't let -mgp32 and -mfp32 change the ABI.
4206         (show): Move to end of file.  Constify string argument.
4207         (md_show_usage): Move to the end of the file.  Read available
4208         architectures from mips_cpu_info_table.
4209         (mips_set_architecture): New fn.
4210         (mips_after_parse_args): Rework.  Remove -mcpu handling.  -mipsN
4211         is an alias for -march=mipsN.  Don't change the ABI based on other
4212         flags.  Infer the register size from the ABI as well as the
4213         architecture.  Complain about more conflicting arguments.
4214         Unify logic with GCC.
4215         (s_mipsset): Don't change the ABI.
4216         (mips_elf_final_processing): Check USE_E_MIPS_ABI_O32.
4217         (mips_cpu_info_table): Remove Generic-MIPS* entries, keeping just
4218         "mipsN"-type entries.  Remove entries that vary only in the
4219         manufacturer's prefix, or that have "000" replaced by "k".
4220         Remove TARGET_CPU entries.  Make r2000 entry use CPU_R3000.
4221         (mips_strict_matching_cpu_name_p, mips_matching_cpu_name_p): New fns.
4222         (mips_parse_cpu): New fn.
4223         (mips_cpu_info_from_name, mips_cpu_info_from_cpu): Remove.
4224         (mips_cpu_info_from_isa): Minor formatting tweak.
4225
4226 2002-07-24  Nick Clifton  <nickc@redhat.com>
4227
4228         * po/sv.po: Updated Swedish translation.
4229         * po/es.po: Updated Spanish translation.
4230
4231 2002-07-23  Alan Modra  <amodra@bigpond.net.au>
4232
4233         * Makefile.am: Run "make dep-am".
4234         * Makefile.in: Regenerate.
4235         * doc/Makefile.in: Regenerate.
4236         * config.in: Regenerate.
4237         * po/POTFILES.in: Regenerate.
4238
4239 2002-07-23  Nick Clifton  <nickc@redhat.com>
4240
4241         * po/fr.po: Updated French translation.
4242
4243 2002-07-23  Nick Clifton  <nickc@redhat.com>
4244
4245         * CONTRIBUTORS: Ken Raeburn is no longer the maintainer for
4246         GAS.
4247
4248 2002-07-19  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
4249
4250         * config/tc-mips.c (mips_need_elf_addend_fixup): Use S_IS_EXTERNAL
4251         instead of S_IS_EXTERN.
4252         (md_estimate_size_before_relax): Likewise.
4253         (mips_fix_adjustable): Likewise.
4254
4255 2002-07-19  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
4256
4257         * config/tc-mips.c (mips_pic_level): Remove IRIX4_PIC.
4258
4259 2002-07-19  Miroslav Tichy <tichm9am@ss1000.ms.mff.cuni.cz>
4260             Nick Clifton  <nickc@redhat.com>
4261
4262         * cond.c (s_ifdef): Treat a referenced but not yet defined
4263         symbol as if it were undefined, in exactly the same way as
4264         .equiv.
4265
4266         * doc/as.texinfo: Document that .ifdef, .ifndef and .equiv
4267         consider referenced bug not yet defined symbols to be
4268         undefined.
4269
4270 2002-07-18  Denis Chertykov  <denisc@overta.ru>
4271             Frank Ch. Eigler  <fche@redhat.com>
4272             Alan Lehotsky  <alehotsky@cygnus.com>
4273             John Healy  <jhealy@redhat.com>
4274             Jeff Johnston  <jjohnstn@redhat.com>
4275
4276         * configure.in: Add ip2k configuraton.
4277         * configure: Regenerate.
4278         * Makefile.am: Add ip2k configuraton.
4279         * Makefile.in: Regenerate.
4280         * configure: Regenerate.
4281         * Makefile.in: Regenerate.
4282         * config/tc-ip2k.c: New file.
4283         * config/tc-ip2k.h: New files.
4284         * NEWS: Mention new support.
4285         * doc/Makefile.am (CPU_DOCS): Add c-ip2k.texi.
4286         * doc/Makefile.in: Regenerate.
4287         * doc/all.texi: Set IP2K
4288         * doc/as.texinfo: Add IP2K description.
4289         * doc/c-ip2k.texi: New file.
4290
4291 2002-07-19  Nick Clifton  <nickc@cambridge.redhat.com>
4292
4293         * NEWS: Reformat to match style of other NEWS files.
4294
4295 2002-07-17  Jan Hubicka  <jh@suse.cz>
4296
4297         * tc-i386.c (i386_align_code): Implement x86_64 neutral code fillers.
4298
4299 2002-07-16  Moritz Jodeit  <moritz@jodeit.org>
4300
4301         * config/tc-z8k.c (build_bytes): Correct order of memset args.
4302
4303 2002-07-16  Nick Clifton  <nickc@cambridge.redhat.com>
4304
4305         * NEWS: Add 'Changes in 2.13'.
4306
4307 2002-07-15  Matt Fredette  <fredette@netbsd.org>
4308
4309         * config/tc-hppa.h (LABELS_WITHOUT_COLONS): Define if TE_NetBSD.
4310
4311 2002-07-12  Alan Modra  <amodra@bigpond.net.au>
4312
4313         * config/tc-i386.c (process_suffix): Merge CODE_64BIT JumpByte
4314         case with non CODE_64BIT case.  Don't warn on "qword ptr" if
4315         not CODE_64BIT.
4316
4317 2002-07-11  Alan Modra  <amodra@bigpond.net.au>
4318
4319         * config/tc-ppc.c (ppc_elf_frob_symbol): Delete.
4320         (ppc_frob_file_before_adjust): New function.
4321         * config/tc-ppc.h (tc_frob_symbol): Don't define.
4322         (ppc_elf_frob_symbol): Don't declare.
4323         (tc_frob_file_before_adjust): Define.
4324         (ppc_frob_file_before_adjust): Declare.
4325
4326         * config/tc-ppc.c (md_pseudo_table): Warning fix.
4327         (ppc_cpu): Make it unsigned long to agree with struct powerpc_opcode
4328         flags.
4329         (ppc_size): Delete.
4330         (ppc_xcoff64): Rename to ppc_obj64.
4331         (md_parse_option <m>): Encode old ppc_size value in ppc_cpu.
4332         (ppc_set_cpu): Set PPC_OPCODE_32 too.
4333         (ppc_arch): Use ppc_obj64 instead of ppc_size to select bfd_mach_ppc64
4334         or bfd_mach_ppc.
4335         (ppc_target_format): Use ppc_obj64 to select format.
4336         (md_begin): Adjust for PPC_OPCODE_32/64 in ppc_cpu.
4337         (ppc_insert_operand): Use ppc_obj64 instead of ppc_size.
4338         (ppc_elf_suffix): Likewise.  Don't depend on BFD_DEFAULT_TARGET_SIZE.
4339         (tc_frob_symbol): Likewise.
4340         (md_assemble): Use ppc_obj64 instead of ppc_size.  Don't depend on
4341         BFD_DEFAULT_TARGET_SIZE.
4342         (ppc_tc): Likewise.
4343         (ppc_is_toc_sym): Likewise.
4344         (md_apply_fix3): Likewise.
4345         * config/tc-ppc.h (TC_FORCE_RELOCATION): Don't depend on
4346         BFD_DEFAULT_TARGET_SIZE.
4347         (ELF_TC_SPECIAL_SECTIONS): Likewise.
4348         (tc_frob_symbol): Likewise.
4349
4350 2002-07-09  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
4351
4352         * config/tc-mips.c (macro_build): Handle MIPS16 insns.
4353         (mips_ip): Likewise.
4354
4355 2002-07-09  Alan Modra  <amodra@bigpond.net.au>
4356
4357         * config/tc-i386.c (md_pseudo_table <file>): Warning fix.
4358         (BFD_RELOC_8, BFD_RELOC_8_PCREL): Define for non-BFD.
4359         (md_apply_fix3): Formatting.  Remove redundant test.
4360         (tc_gen_reloc): Remove redundant code.
4361         (tc_i386_force_relocation): Delete.  Movy body of function to..
4362         * config/tc-i386.h (TC_FORCE_RELOCATION): .. here.
4363
4364 2002-07-09  Federico G. Schwindt <fgsch@olimpo.com.br>
4365
4366         * configure.in: Add hppa-*-openbsd* target, change
4367         alpha*-*-openbsd* format to elf, and use elf for sparc-*-openbsd*
4368         with sparc64 cpu.
4369         * configure: Regenerate.
4370
4371 2002-07-08  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>
4372
4373         * config/tc-mips.c (macro): Shift the 32-bit address range
4374         accessible with a lone "lui" down by 32768.
4375
4376 2002-07-08  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>
4377
4378         * config/tc-mips.c (load_address): Use non-trapping "daddu"
4379         instead of "dadd" in address calculations.
4380         (macro): Likewise.
4381
4382 2002-07-08  Alan Modra  <amodra@bigpond.net.au>
4383
4384         * config/tc-i386.c (process_suffix): Remove intel mode movsx and
4385         movzx fudges.
4386         (md_assemble): Instead, zap the suffix here.
4387
4388 2002-07-03  Nick Clifton  <nickc@cambridge.redhat.com>
4389
4390         * NEWS: Remove next release number until the release is actually
4391         upon us.
4392
4393 2002-07-03  Alan Modra  <amodra@bigpond.net.au>
4394
4395         * Makefile.am (check-DEJAGNU): Revert 2002-06-25 change.
4396         Run "make dep-am".
4397         * Makefile.in: Regenerate.
4398
4399 2002-07-02  Martin Schwidefsky  <schwidefsky@de.ibm.com>
4400
4401         * config/tc-s390.c (tc_s390_fix_adjustable): Prevent any adjustment
4402         to symbols in merge sections, even non pc-relative ones.
4403
4404 2002-06-29  Stephane Carrez  <stcarrez@nerim.fr>
4405
4406         * config/tc-m68hc11.h (m68hc11_listing_header): Fix warning.
4407
4408 2002-06-29  Stephane Carrez  <stcarrez@nerim.fr>
4409
4410         * config/tc-m68hc11.h (ELF_TC_SPECIAL_SECTIONS): New sections
4411         .softregs and .eeprom.
4412
4413 2002-06-28  David O'Brien  <obrien@FreeBSD.org>
4414
4415         * NEWS: Note the next release is 2.13.
4416
4417 2002-06-26  Nick Clifton  <nickc@cambridge.redhat.com>
4418
4419         * po/tr.po: New translation imported.
4420
4421 2002-06-26  Elias Athanasopoulos  <eathan@otenet.gr>
4422
4423         * ecoff.c: (get_tag): Replace strcpy with xstrdup.
4424         (ecoff_directive_def): Likewise.
4425         (ecoff_directive_tag): Likewise.
4426         * listing.c (file_info): Likewise.
4427         * hash.c (what): Likewise.
4428
4429 2002-06-25  H.J. Lu <hjl@gnu.org>
4430
4431         * Makefile.am (check-DEJAGNU): Set LC_ALL=C and export it.
4432         * Makefile.in: Regenerated.
4433
4434 2002-06-19  Dhananjay R. Deshpande <dhananjayd@kpit.com>
4435
4436         * config/tc-sh.c (get_specific): Revert 2002-05-01 change.
4437         (assemble_ppi): Generate warning if the same register is used
4438         twice as destination in the same padd / pmuls instruction.
4439
4440 2002-06-18  Dave Brolley  <brolley@redhat.com>
4441
4442         From Catherine Moore, Michael Meissner, Richard Sandiford, Dave Brolley
4443         * po/POTFILES.in: Add tc-frv.c, tc-frv.h.
4444         * configure.in: Support frv-*-*.
4445         * Makefile.am (CPU_TYPES): Add frv.
4446         (TARGET_CPU_CFILES): Add tc-frv.c.
4447         (TARGET_CPU_HFILES): Add tc-frv.h.
4448         (DEPTC_frv_coff): New variable.
4449         (DEPTC_frv_elf): New variable.
4450         (DEPOBJ_frv_coff): New variable.
4451         (DEPOBJ_frv_elf): New variable.
4452         (DEP_frv_coff): New variable.
4453         (DEP_frv_elf): New variable.
4454         * tc-frv.c: New file.
4455         * tc-frv.h: New file.
4456
4457 2002-06-17  Catherine Moore <clm@redhat.com>
4458
4459         * config/obj-elf.h (TARGET_SYMBOL_FIELDS): Conditionally define.
4460
4461 2002-06-17  J"orn Rennecke <joern.rennecke@superh.com>
4462
4463         * config/tc-sh.c (assemble_ppi): Initialize reg_n.
4464
4465 2002-06-17  Tom Rix <trix@redhat.com>
4466
4467         * config/tc-i370.h (tc_comment_chars): Define for i370-elf.
4468
4469 2002-06-14  H.J. Lu  <hjl@gnu.org>
4470             Daniel Jacobowitz  <drow@mvista.com>
4471
4472         * dwarf2dbg.h (dwarf2_directive_file): Return char *.
4473         * dwarf2dbg.c (dwarf2_directive_file): Return filename.
4474         * config/tc-mips.c (s_mips_file): Call s_app_file_string
4475         and new_logical_line for the first .file directive.
4476         * read.c (s_app_file_string): New function.
4477         (s_app_file): Call it.
4478         * read.h (s_app_file_string): Add declaration.
4479
4480 2002-06-14  Daniel Jacobowitz  <drow@mvista.com>
4481
4482         * configure.in: Remove MIPS_STABS_ELF.
4483         * configure: Regenerated.
4484         * config.in: Regenerated.
4485         * config/obj-elf.h (ECOFF_DEBUGGING): Define to mips_flag_mdebug
4486         for MIPS targets.
4487         * config/tc-mips.c (mips_pseudo_table): Remove #ifdef around
4488         ".extern".
4489         (pdr_seg): Declare unconditionally.
4490         (md_begin): Always generate .pdr unless ECOFF_DEBUGGING or not ELF.
4491         (s_mips_end): Likewise.  Generate stabs function markers.
4492         (s_mips_ent): Generate stabs function markers.
4493         (s_mips_frame): Always generate .pdr unless ECOFF_DEBUGGING or not
4494         ELF.
4495         (s_mips_mask): Likewise.
4496         (mips_flag_mdebug): New.
4497         (md_longopts): Add "mdebug" and "no-mdebug".
4498         (md_parse_options): Add OPTION_MDEBUG and OPTION_NO_MDEBUG.
4499         (mips_after_parse_args): Set mips_flag_mdebug.
4500         * doc/as.texinfo: Add "-mdebug" and "-no-mdebug" for MIPS.
4501
4502 2002-06-13  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>
4503
4504         * config/tc-mips.c (md_apply_fix3): Don't subtract the symbol's
4505         value twice for RELA relocations.
4506
4507 2002-06-12  Ben Elliston  <bje@redhat.com>
4508
4509         * symbols.c (resolve_symbol_value): Initialise final_val.
4510
4511         * subsegs.c (subsegs_print_statistics): Cast frchp to void *.
4512
4513 2002-06-11  Tom Rix  <trix@redhat.com>
4514
4515         * config/tc-ppc.c (ppc_subseg_align): Delete.
4516         (ppc_change_csect): Default csect align is 2.
4517         * config/tc-ppc.h (SUB_SEGMENT_ALIGN): Delete
4518
4519 2002-06-09  Marek Michalkiewicz  <marekm@amelek.gda.pl>
4520
4521         * config/tc-avr.c (mcu_types): Update.
4522
4523 2002-06-08  Matt Thomas  <matt@3am-software.com>
4524
4525         * configure.in (vax-*-netbsdelf*, vax-*-netbsdaout*)
4526         (vax-*-netbsd*): New targets.
4527         * configure: Regenerate.
4528         * config/aout_gnu.h (enum machine_type): Add M_VAX4K_NETBSD.
4529         * config/tc-vax.c: Add support for ELF and PIC.
4530         (flag_want_pic): New flag.
4531         (float_cons): Fix prototype.
4532         (md_apply_fix3): Adjust for BFD_ASSEMBLER.
4533         (md_assemble): Introduce a new is_absolute local, and use it
4534         rather than repeating the test.  Make fatal errors actually
4535         fatal by using as_fatal as appropriate.  Adjust for BFD_ASSEMBLER.
4536         Add support for ELF.  Add support for PIC.
4537         (md_convert_frag): Adjust for BFD_ASSEMBLER.
4538         (tc_aout_fix_to_chars): Only include if OBJ_AOUT and not
4539         BFD_ASSEMBLER.
4540         (vax_reg_parse): Make the % register prefix mandatory for ELF,
4541         optional for a.out, and not allowed for VMS.  Adjust all callers.
4542         (md_create_short_jump): Add ATTRIBUTE_UNUSED to unused arguments.
4543         (md_create_long_jump): Likewise.
4544         (md_undefined_symbol): Likewise.
4545         (md_section_align): Likewise.
4546         (md_shortopts): Allow -k and -K for ELF.
4547         (md_parse_option): Set flag_want_pic if -k or -K.
4548         (tc_headers_hook): New function if OBJ_AOUT and not BFD_ASSEMBLER.
4549         (tc_gen_reloc): New function if BFD_ASSEMBLER.
4550         * config/tc-vax.h (tc_headers_hook): Remove.
4551         (TARGET_FORMAT): Set according to object format and target
4552         environment.
4553         (BFD_ARCH, TARGET_ARCH): Define.
4554         (NO_RELOC): Adjust for BFD_ASSEMBLER.
4555         (TC_RELOC_RTSYM_LOC_FIXUP, TC_FIX_ADJUSTABLE)
4556         (tc_fix_adjustable): Define if BFD_ASSEMBLER.
4557         * config/vax-inst.h (VAX_JSB, VAX_CALLS, VAX_CALLG): Define.
4558
4559 2002-06-08  Alan Modra  <amodra@bigpond.net.au>
4560
4561         * Makefile.am: Run "make dep-am".
4562         * Makefile.in: Regenerate.
4563
4564         * as.c: Replace CONST with const.
4565         * write.c: Likewise.
4566         * config/obj-coff.c: Likewise.
4567         * config/tc-a29k.c: Likewise.
4568         * config/tc-arm.c: Likewise.
4569         * config/tc-dlx.c: Likewise.
4570         * config/tc-h8300.c: Likewise.
4571         * config/tc-h8500.c: Likewise.
4572         * config/tc-i370.c: Likewise.
4573         * config/tc-i860.c: Likewise.
4574         * config/tc-i960.c: Likewise.
4575         * config/tc-m68hc11.c: Likewise.
4576         * config/tc-m68k.c: Likewise.
4577         * config/tc-m88k.c: Likewise.
4578         * config/tc-mcore.c: Likewise.
4579         * config/tc-mips.c: Likewise.
4580         * config/tc-ns32k.c: Likewise.
4581         * config/tc-pdp11.c: Likewise.
4582         * config/tc-pj.c: Likewise.
4583         * config/tc-s390.c: Likewise.
4584         * config/tc-sh.c: Likewise.
4585         * config/tc-sparc.c: Likewise.
4586         * config/tc-tahoe.c: Likewise.
4587         * config/tc-tic80.c: Likewise.
4588         * config/tc-v850.c: Likewise.
4589         * config/tc-vax.c: Likewise.
4590         * config/tc-w65.c: Likewise.
4591         * config/tc-z8k.c: Likewise.
4592
4593 2002-06-08  Daniel Jacobowitz  <drow@mvista.com>
4594
4595         Based on patch from Matt Green:
4596         * config/obj-elf.h (ECOFF_DEBUGGING): Make configurable.
4597         * config/tc-mips.c (s_mips_file): Renamed from s_file.
4598         (s_mips_loc): New function.
4599         (mips_nonecoff_pseudo_table): Call them.
4600         (append_insn): Call dwarf2_emit_insn.
4601
4602 2002-06-08  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
4603
4604         * config/tc-mips.c (mips_opts): Fix comment, all ASE fields are set
4605         to -1.
4606         (file_ase_mips16): New veriable.
4607         (mips_eabi64): Remove.
4608         (CPU_HAS_MIPS16): New define.
4609         (CPU_HAS_MDMX): Fix data type.
4610         (md_begin): Code cleanup. Use file_ase_mips16.
4611         (mips_elf_final_processing): Handle mips16 header flag.
4612         Handle EABI flag without intermediate variable.
4613
4614 2002-06-08  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
4615
4616         * doc/as.texinfo: Update MIPS documentation.
4617
4618 2002-06-08  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
4619
4620         * config/tc-mips.c: Add define for $zero register.
4621         (md_begin): Add $zero as alias name for $0.
4622         (insn_uses_reg): Use ZERO define.
4623         (mips_ip): Add $zero as alias name for $0.
4624         (mips16_ip): Likewise.
4625         (s_cplocal): Demand empty rest of input line.
4626         (tc_get_register): Likewise. Add support for $kt0, kt1 register
4627         names. Use ZERO define. Fix input_line_pointer progress.
4628
4629 2002-06-07  Alan Modra  <amodra@bigpond.net.au>
4630
4631         * symbols.c: Replace CONST by const throughout.
4632         (symbol_find_exact): Split out from..
4633         (symbol_find_base): ..here.
4634         * symbols.h: Replace CONST by const throughout.
4635         (symbol_find_exact): Declare.
4636         * config/obj-elf.c: #include "struc-symbol.h".
4637         (elf_frob_file): If group name matches an exported symbol, use that
4638         symbol for the signature and ".group" as the section name.
4639
4640 2002-06-06  J"orn Rennecke <joern.rennecke@superh.com>
4641
4642         * config/tc-sh.c (parse_at): @(symbol,pc) is A_DISP_PC again,
4643         but warn about it.
4644
4645 2002-06-06  Daniel Jacobowitz  <drow@mvista.com>
4646
4647         * tc-mips.c (mips_after_parse_args): Always set mips_opts.ase_mips3d
4648         and mips_opts.ase_mdmx if they are uninitialized.
4649
4650 2002-06-06  John David Anglin  <dave@hiauly1.hia.nrc.ca>
4651
4652         * gas/config/tc-hppa.c (pa_ip): Replace "L$0\001" with FAKE_LABEL_NAME.
4653         (hppa_force_relocation): Check if a stub just before the start symbol
4654         of the last call_info is reachable before forcing relocation.  Fix
4655         typo.
4656
4657 2002-06-04  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>
4658
4659         * config/tc-mips.c (mips_after_parse_args): New function.
4660         (md_begin): Move processing of defaults to mips_after_parse_args.
4661         config/tc-mips.h (md_after_parse_args): Define.
4662
4663 2002-06-04  Jason Thorpe  <thorpej@wasabisystems.com>
4664
4665         * configure.in (sh5*): Set cpu_type to sh64 and endian to big.
4666         (sh5le*, sh64le*): Set cpu_type to sh64 and endian to little.
4667         (sh5*-*-netbsd*, sh64*-*-netbsd*): New targets.
4668         * configure: Regenerate.
4669         * config/tc-sh64.c (sh64_target_format): Add support for NetBSD
4670         environment.
4671
4672 2002-06-04  Jason Thorpe  <thorpej@wasabisystems.com>
4673
4674         * config/tc-sh64.h (MD_PCREL_FROM_SECTION): Undef before redefining.
4675
4676 2002-06-04  Alan Modra  <amodra@bigpond.net.au>
4677
4678         * config/obj-elf.c (obj_elf_change_section): Set and check elf
4679         linkonce flag.  Print all warnings.
4680         (obj_elf_section): Parse ",comdat" for groups.
4681         (elf_frob_file): Set SEC_LINK_ONCE on COMDAT groups.  Check
4682         consistency of comdat flag.
4683
4684 2002-06-02  Richard Henderson  <rth@redhat.com>
4685
4686         * config/tc-alpha.c (alpha_adjust_symtab_relocs): Fix thinko
4687         with LITERALs without sequence numbers.
4688
4689 2002-06-01  Richard Henderson  <rth@redhat.com>
4690
4691         * config/tc-alpha.c: Move LITUSE constants to "elf/alpha.h".
4692         Rename them LITUSE_ALPHA_*.
4693
4694 2002-05-31  Shrinivas Atre <ShrinivasA@kpit.com>
4695
4696         * config/tc-h8300.c (get_operand): Allow stm.l and ldm.l insns to
4697         accept parentheses enclosed register lists.
4698
4699 2002-05-31  Alan Modra  <amodra@bigpond.net.au>
4700
4701         * Makefile.am: Run "make dep-am".
4702         * Makefile.in: Regenerate.
4703         * po/POTFILES.in: Regenerate.
4704
4705 2002-05-31  Graeme Peterson  <gp@qnx.com>
4706
4707         * configure.in: Add i386-*-nto-qnx*.
4708         * configure: Regenerate.
4709
4710 2002-05-31  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
4711
4712         * config/tc-mips.c (mips_ip): Use unsigned long values for
4713         warning output.
4714
4715 2002-05-31  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
4716
4717         * config/tc-mips.c (s_cpsetup): Fix initialization of
4718         mips_cpreturn_register and mips_cpreturn_offset.
4719
4720 2002-05-31  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
4721
4722         * config/tc-mips.c (s_cpsetup): Fix comment.
4723
4724 2002-05-31  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
4725
4726         * config/tc-mips.c (md_begin): Add $ra as alias name for $31.
4727         (mips_ip): Likewise.
4728         (mips16_ip): Likewise.
4729         (tc_get_register): Likewise.
4730
4731 2002-05-30  Chris G. Demetriou  <cgd@broadcom.com>
4732             Ed Satterthwaite  <ehs@broadcom.com>
4733
4734         * config/tc-mips.c (mips_set_options): New "ase_mdmx" member.
4735         (mips_opts): Initialize "ase_mdmx" member.
4736         (file_ase_mdmx): New variable.
4737         (CPU_HAS_MDMX): New macro.
4738         (md_begin): Initialize mips_opts.ase_mdmx and file_ase_mdmx
4739         based on command line options and configuration defaults.
4740         (macro_build): Note in comment that use of MDMX in macros is
4741         not currently allowed.
4742         (validate_mips_insn): Add support for the "O", "Q", "X", "Y", and
4743         "Z" MDMX operand types.
4744         (mips_ip): Accept MDMX instructions if mips_opts.ase_mdmx is set,
4745         and add support for the "O", "Q", "X", "Y", and "Z" MDMX operand
4746         types.
4747         (OPTION_MDMX, OPTION_NO_MDMX, md_longopts, md_parse_option):
4748         Add support for "-mdmx" and "-no-mdmx" options.
4749         (OPTION_ELF_BASE): Move to accomodate new options.
4750         (s_mipsset): Support ".set mdmx" and ".set nomdmx".
4751         (mips_elf_final_processing): Set MDMX ASE ELF header flag if
4752         file_ase_mdmx was set.
4753         * doc/as.texinfo: Document -mdmx and -no-mdmx options.
4754         * doc/c-mips.texi: Likewise, and document ".set mdmx" and ".set
4755         nomdmx" directives.
4756
4757 2002-05-31  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
4758
4759         * config/tc-mips.c (OPTION_NO_M7000_HILO_FIX): Rename to
4760         OPTION_MNO_7000_HILO_FIX. Add alternate "mno-fix7000"
4761         command line switch conforming to gcc conventions.
4762         * doc/c-mips.texi: Document -mno-fix7000 instead of no-mfix-7000.
4763
4764 2002-05-31  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
4765
4766         * config/tc-mips.c (macro_build_jalr): New Function.
4767         (md_begin): NewABI uses big GOTs.
4768         (macro_build): Recognize BFD_RELOC_MIPS_GOT_DISP,
4769         BFD_RELOC_MIPS_GOT_PAGE, BFD_RELOC_MIPS_GOT_OFST as valid.
4770         (load_address): Add some NewABI PIC support.
4771         (macro): Likewise.
4772         (md_apply_fix): Special handling for BFD_RELOC_MIPS_JALR.
4773         (tc_gen_reloc): Don't encode NewABI vtables in REL relocations.
4774
4775 2002-05-31  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
4776
4777         * config/tc-mips.c (load_address): Use mips_gp_register instead
4778         of hardcoded value. Remove dbl parameter, use HAVE_32BIT_ADDRESSES
4779         instead.
4780         (macro): Use mips_gp_register instead of hardcoded value.
4781
4782 2002-05-30  Richard Henderson  <rth@redhat.com>
4783
4784         * expr.h (operatorT): Add O_md17..O_md32.
4785         * config/tc-alpha.c (O_lituse_tlsgd, O_lituse_tlsldm, O_tlsgd,
4786         O_tlsldm, O_gotdtprel, O_dtprelhi, O_dtprello, O_dtprel, O_gottprel,
4787         O_tprelhi, O_tprello, O_tprel): New.
4788         (USER_RELOC_P, alpha_reloc_op_tag, debug_exp): Include them.
4789         (DUMMY_RELOC_LITUSE_TLSGD, DUMMY_RELOC_LITUSE_TLSLDM): New.
4790         (LITUSE_TLSGD, LITUSE_TLSLDM): New.
4791         (struct alpha_reloc_tag): Add master, saw_tlsgd, saw_tlsld,
4792         saw_lu_tlsgd, saw_lu_tlsldm.  Make multi_section_p a bit field.
4793         (md_apply_fix3): Handle TLS relocations.
4794         (alpha_force_relocation, alpha_fix_adjustable): Likewise.
4795         (alpha_adjust_symtab_relocs): Sort LITERAL relocs after the
4796         associated TLS reloc.  Check lituse_tls relocs match up.
4797         (emit_insn): Handle TLS relocations.
4798         (ldX_op): Remove.
4799
4800         * doc/c-alpha.texi: Add docs for tls relocations.
4801
4802 2002-05-30  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
4803
4804         * config/tc-mips.c (mips_gprel_offset): New variable.
4805         (s_gpvalue): Use it.
4806
4807 2002-05-30  Diego Novillo  <dnovillo@redhat.com>
4808
4809         * gas/config/tc-d10v.c (check_resource_conflict): Only check
4810         write-write conflicts.
4811         (md_assemble): Reformat introductory comment.
4812         (parallel_ok): Prevent packing only if the first
4813         instruction cannot be packed.
4814
4815 2002-05-30  Jason Eckhardt <jle@redhat.com>
4816             Tom Rix <trix@redhat.com>
4817
4818         * config/tc-d10v.c (build_insn): Check for immediates.
4819
4820 2002-05-28  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
4821
4822         * config/tc-mips.c: Replace GP in comments by $gp.
4823         (mips_big_got): Initialize.
4824         (mips_trap): Initialize.
4825         (load_address): Use mips_gp_register instead of hardcoded value.
4826         Remove dbl parameter, use HAVE_32BIT_ADDRESSES instead.
4827         (macro): Use mips_gp_register instead of hardcoded value.
4828         (macro2): Change load_address calls.
4829         (md_pcrel_from): Comment formatting.
4830         (s_cpload): Use mips_gp_register instead of hardcoded value.
4831         (s_cprestore): Likewise. Comment formatting.
4832         (s_gpword): Fix data type.
4833         (s_cpadd): Use mips_gp_register instead of hardcoded value.
4834         (nopic_need_relax): Replace GP in comments by $gp.
4835         (mips_elf_final_processing): Better comment.
4836
4837 2002-05-28  Kuang Hwa Lin <kuang@sbcglobal.net>
4838
4839         * configure.in: Add DLX configuraton
4840         * Makefile.am: Add DLX configuraton
4841         * configure: Regenerate.
4842         * Makefile.in: Regenerate.
4843         * config/tc-dlx.c: New file.
4844         * config/tc-dlx.h: New files.
4845         * NEWS: Mention new support.
4846
4847 2002-05-27  Nick Clifton  <nickc@cambridge.redhat.com>
4848
4849         * config/obj-coff.c (write_object_file): Add missing semicolon.
4850
4851 2002-05-26  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
4852
4853         * config/tc-mips.c (mips_emit_delays): Replace magic constant for RA
4854         by the define. Remove superfluous check of mips_opts.mips16.
4855         (append_insn): Likewise. Canonicalize variable increments.
4856         (macro_build): Canonicalize variable increments.
4857         (macro_build_lui): Likewise.
4858         (load_register): Likewise.
4859         (load_address): Move pointer initialization.
4860         (macro): Move pointer to a more local scope. Canonicalize variable
4861         increments. Better comments. Replace magic constant for RA by the
4862         define.
4863         (macro2): Replace magic constant for RA by the define. Canonicalize
4864         variable increments.
4865         (mips_ip): Canonicalize variable increments.
4866         (mips16_ip): Replace magic constant for RA by the define.
4867         (my_getSmallParser): Canonicalize variable increments/decrements.
4868         (my_getPercentOp): Likewise.
4869         (my_getSmallExpression): Likewise.
4870         (s_align): Likewise.
4871         (s_mipsset): Likewise.
4872         (s_cpsetup): Likewise.
4873         (s_insn): Remove superfluous check of mips_opts.mips16.
4874         (s_mips_stab): Likewise.
4875         (mips_handle_align): Canonicalize variable increments.
4876         (s_mips_ent): Likewise.
4877         (s_mips_end): Add comment.
4878
4879 2002-05-26  Jason Thorpe  <thorpej@wasabisystems.com>
4880
4881         * configure.in: Use ns32k-*-netbsd* instead of ns32k-pc532-netbsd*.
4882         * configure: Regenerate.
4883
4884 2002-05-25  Alan Modra  <amodra@bigpond.net.au>
4885
4886         * Makefile.am (OBJS): Depend on ansidecl.h and fopen-same.h.
4887         * Makefile.in: Regenerate.
4888         * dep-in.sed: Reorder to match OBJS in Makefile.am.
4889         * configure.in (ALL_OBJ_DEPS): Add symcat.h when need_bfd.
4890         * configure: Regenerate.
4891         * as.h: Use #include "" instead of <> for local header files.
4892         * flonum-konst.c: Likewise.
4893         * flonum-mult.c: Likewise.
4894         * gasp.c: Likewise.
4895         * listing.c: Likewise.
4896         * config/tc-ia64.h: Likewise.
4897         * config/tc-v850.h: Likewise.
4898
4899 2002-05-24  TAMURA Kent <kent@netbsd.org>
4900
4901         * configure.in: Add a target for i386-netbsdpe.
4902         * configure: Regenerate.
4903
4904 2002-05-23  Jakub Jelinek  <jakub@redhat.com>
4905
4906         * config/obj-elf.c (elf_common): Renamed from obj_elf_common.
4907         (obj_elf_common): Call elf_common.
4908         (obj_elf_tls_common): New function.
4909         (elf_pseudo_tab): Support .tls_common.
4910         (special_sections): Add .tdata and .tbss.
4911         (obj_elf_change_section): Set SEC_THREAD_LOCAL for SHF_TLS
4912         sections.
4913         (obj_elf_parse_section_letters): Support T in section flags (SHF_TLS).
4914         (obj_elf_parse_section_letters): Include T in error message.
4915         * config/tc-ppc.c (ppc_section_letter): Likewise.
4916         * config/tc-alpha.c (alpha_elf_section_letter): Likewise.
4917         (tc_gen_reloc): Handle SEC_THREAD_LOCAL the same way as
4918         SEC_MERGE.
4919         * config/tc-sparc.c (md_apply_fix3): Likewise.
4920         * config/tc-i386.c (tc_i386_fix_adjustable): Add TLS relocs.
4921         Define them if not BFD_ASSEMBLER.
4922         (lex_got): Support @TLSGD, @TLSLDM, @GOTTPOFF, @TPOFF, @DTPOFF
4923         and @NTPOFF.
4924         (md_apply_fix3): Add TLS relocs.
4925         * config/tc-ia64.c (enum reloc_func): Add FUNC_DTP_MODULE,
4926         FUNC_DTP_RELATIVE, FUNC_TP_RELATIVE, FUNC_LT_DTP_MODULE,
4927         FUNC_LT_DTP_RELATIVE, FUNC_LT_TP_RELATIVE.
4928         (pseudo_func): Support @dtpmod(), @dtprel() and @tprel().
4929         (ia64_elf_section_letter): Include T in error message.
4930         (md_begin): Support TLS operators.
4931         (md_operand): Likewise.
4932         (ia64_gen_real_reloc_type): Support TLS relocs.
4933         * write.c (adjust_reloc_syms): Don't change symbols in
4934         SEC_THREAD_LOCAL sections to STT_SECTION + addend.
4935
4936 2002-05-23  Nick Clifton  <nickc@cambridge.redhat.com>
4937
4938         * config/tc-arm.c (md_apply_fix3): For the Thumb BLX reloc
4939         round the relocation up rather than down.
4940
4941 2002-05-23  Nick Clifton  <nickc@cambridge.redhat.com>
4942
4943         * config/obj-coff.c (obj_coff_section): Silently ignore an 'a'
4944         flag.
4945         * doc/as.texinfo: Document that the COFF version of .section
4946         ignores the 'a' flag.
4947
4948 2002-05-23  Alan Modra  <amodra@bigpond.net.au>
4949
4950         * config/tc-alpha.c (assemble_tokens): Protect use of
4951         ALPHA_RELOC_TABLE with #ifdef RELOC_OP_P.
4952
4953         * write.c (size_seg): Check adjustment to last frag.
4954         (SUB_SEGMENT_ALIGN): If HANDLE_ALIGN defined, pad out last frag to
4955         section alignment.
4956         * config/obj-coff.c (SUB_SEGMENT_ALIGN): Likewise.
4957         * config/obj-ieee.c (SUB_SEGMENT_ALIGN): Likewise.
4958         (write_object_file): Invoke md_do_align if available, and use
4959         frag_align_code on text sections.
4960         * config/obj-vms.h (SUB_SEGMENT_ALIGN): Now two args.
4961         * config/tc-m88k.h (SUB_SEGMENT_ALIGN): Likewise.
4962         * config/tc-ppc.h (SUB_SEGMENT_ALIGN): Likewise.
4963         * config/tc-sh.h (SUB_SEGMENT_ALIGN): Likewise.
4964         * config/tc-i386.h (SUB_SEGMENT_ALIGN): Likewise.  Define for
4965         BFD_ASSEMBLER too.
4966
4967 2002-05-22  H.J. Lu <hjl@gnu.org>
4968
4969         * dwarf2dbg.c (dwarf2_directive_loc): Call listing_source_file
4970         for source file.
4971
4972 2002-05-22  Nick Clifton  <nickc@cambridge.redhat.com>
4973
4974         * config/tc-arm.c (arm_s_section): Enable for COFF builds as well
4975         as ELF builds.
4976
4977 2002-05-22  H.J. Lu <hjl@gnu.org>
4978
4979         * dwarf2dbg.c (dwarf2_emit_insn): Emit only one line symbol
4980         for one .loc for compiler.
4981
4982 2002-05-22  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
4983
4984         * config/tc-mips.c (macro): Relax warning, it's toot strict for
4985         embedded-PIC.
4986
4987 2002-05-22  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
4988
4989         * config/tc-mips.c (macro2): Add 64 bit drol, dror macros.
4990         Optimize the rotate by zero case.
4991
4992 2002-05-21  Nick Clifton  <nickc@cambridge.redhat.com>
4993
4994         * configure.in: Remove accidental enabling of bfd_gas=yes for
4995         sh-coff targets.
4996         * configure: Regenerate.
4997
4998 2002-05-18  Kazu Hirata  <kazu@cs.umass.edu>
4999
5000         * app.c: Fix formatting.
5001         * as.c: Likewise.
5002         * ehopt.c: Likewise.
5003         * expr.c: Likewise.
5004         * input-file.c: Likewise.
5005         * listing.c: Likewise.
5006         * macro.h: Likewise.
5007         * stabs.c: Likewise.
5008         * symbols.c: Likewise.
5009
5010 2002-05-17  Alan Modra  <amodra@bigpond.net.au>
5011
5012         * config/obj-generic.c: Delete file.
5013         * config/obj-generic.h: Likewise.
5014
5015 2002-05-16  Marek Michalkiewicz  <marekm@amelek.gda.pl>
5016
5017         * config/tc-avr.c (mcu_types): Update for new devices.
5018
5019 2002-05-15  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
5020
5021         * config/tc-mips.c (macro): Warn about wrong la/dla use.
5022
5023 2002-05-15  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
5024
5025         * config/tc_mips.c (s_cpsetup): Fix completely bogus code which had
5026         worked sometimes by accident. Fix copy&paste comment.
5027
5028 2002-05-15  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
5029
5030         * config/tc-mips.c (md_begin): Fix .reginfo and .MIPS.option section
5031         alignment for NewABI. Let n32 use .reginfo. Remove useless casts.
5032         (mips_elf_final_processing): Let n32 use .reginfo.
5033
5034 2002-05-15  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
5035
5036         * config/tc-mips.c (append_insn): Fix too small range of variable.
5037
5038 2002-05-14  Nick Clifton  <nickc@cambridge.redhat.com>
5039
5040         * config/tc-arm.c (arm_cleanup): Remove redundant call to
5041         listing_prev_line().
5042
5043 2002-05-13  Nick Clifton  <nickc@cambridge.redhat.com>
5044
5045         * config/tc-arm.c (md_assemble): Remove redundant call to
5046         listing_prev().
5047
5048         * dwarf2dbg.c (dwarf2_emit_insn): Do not reset
5049         loc_directive_seen.
5050
5051         * stabs.c (s_stab_generic): Fix grammatical error in warning
5052         message.
5053
5054 2002-05-13  Alan Modra  <amodra@bigpond.net.au>
5055
5056         * write.c (subsegs_finish): Don't specially align last subseg.
5057
5058 2002-05-11  Nick Clifton  <nickc@cambridge.redhat.com>
5059
5060         * stabs.c (s_stab_generic): Warn about a description field that is
5061         too big.
5062
5063         * config/obj-coff.c: Fix compile time warnings when compiling
5064         without BFD_ASSEMBLER defined.
5065         Fix formatting.
5066
5067         * config/tc-sh.c (md_pcrel_from): Define for use with sh-hms
5068         target.
5069         (md_pcrel_from_section): Use md_pcrel_from().
5070
5071 2002-05-11  Bruno Haible  <bruno@clisp.org>
5072
5073         * dwarf2dbg.c (dwarf2_emit_insn): Use the 'current' struct filled
5074         by dwarf2_directive_loc, instead of calling dwarf2_where.
5075
5076 2002-05-11  Kazu Hirata  <kazu@cs.umass.edu>
5077
5078         * config/obj-coff.h: Fix formatting.
5079         * config/tc-mcore.c: Likewise.
5080         * config/tc-mn10300.c: Likewise.
5081         * config/tc-openrisc.c: Likewise.
5082         * config/tc-or32.c: Likewise.
5083         * config/tc-pdp11.c: Likewise.
5084         * config/tc-ppc.c: Likewise.
5085         * config/tc-ppc.h: Likewise.
5086         * config/tc-sh64.c: Likewise.
5087         * config/tc-sh.c: Likewise.
5088         * config/tc-tic54x.c: Likewise.
5089         * config/tc-xstormy16.c: Likewise.
5090         * config/tc-xstormy16.h: Likewise.
5091
5092 2002-05-09  Kazu Hirata  <kazu@cs.umass.edu>
5093
5094         * config/obj-coff.c: Fix formatting.
5095         * config/obj-elf.c: Likewise.
5096         * config/tc-alpha.c: Likewise.
5097         * config/tc-arm.c: Likewise.
5098         * config/tc-d10v.c: Likewise.
5099         * config/tc-d30v.c: Likewise.
5100         * config/tc-h8300.c: Likewise.
5101         * config/tc-hppa.c: Likewise.
5102
5103 2002-05-09  Alan Modra  <amodra@bigpond.net.au>
5104
5105         * config/tc-i386.c (md_estimate_size_before_relax) Don't lose
5106         reloc when no_cond_jump_promotion.
5107
5108 2002-05-08  Jim Wilson  <wilson@redhat.com>
5109
5110         * config/tc-i960.c (md_estimate_size_before_relax): Return size of
5111         current variable part of frag.
5112
5113 2002-05-08  Kazu Hirata  <kazu@cs.umass.edu>
5114
5115         * config/tc-mmix.c: Fix formatting.
5116         * config/tc-mmix.h: Likewise.
5117
5118 2002-05-08  Alan Modra  <amodra@bigpond.net.au>
5119
5120         * configure: Regenerate.
5121
5122 2002-05-07  Kazu Hirata  <kazu@cs.umass.edu>
5123
5124         * config/tc-m68k.c: Fix formatting.
5125
5126 2002-05-07  Federico G. Schwindt <fgsch@olimpo.com.br>
5127
5128         * Makefile.am: Honour DESTDIR.
5129         * Makefile.in: Regenerate.
5130
5131 2002-05-06  Kazu Hirata  <kazu@cs.umass.edu>
5132
5133         * config/tc-ia64.c: Fix formatting.
5134         * config/tc-ia64.h: Likewise.
5135
5136 2002-05-04  Kazu Hirata  <kazu@cs.umass.edu>
5137
5138         * config/tc-mips.c: Fix formatting.
5139         * config/tc-s390.c: Likewise.
5140         * config/tc-s390.h: Likewise.
5141
5142 2002-05-03  Alexandre Oliva  <aoliva@redhat.com>
5143
5144         * config/tc-s390.c (md_gather_operands): Emit dwarf2 line-number
5145         information for instructions.
5146
5147 2002-05-02  Kazu Hirata  <kazu@cs.umass.edu>
5148
5149         * as.h: Fix formatting.
5150         * cgen.c: Likewise.
5151         * cgen.h: Likewise.
5152         * dwarf2dbg.c: Likewise.
5153         * frags.h: Likewise.
5154         * gasp.c: Likewise.
5155         * macro.c: Likewise.
5156         * read.c: Likewise.
5157         * stabs.c: Likewise.
5158         * symbols.c: Likewise.
5159
5160 2002-05-02  Alan Modra  <amodra@bigpond.net.au>
5161
5162         * app.c (mri_pseudo): Only declare for TC_M68K.
5163
5164         * config/tc-ppc.c (mapping): Map sectoff to BFD_RELOC_16_BASEREL.
5165         (ppc_elf_validate_fix): Replace BFD_RELOC_32_BASEREL with
5166         BFD_RELOC_16_BASEREL.
5167         (md_assemble): Likewise.
5168         (md_apply_fix3): Likewise.
5169
5170 2002-05-02  Nick Clifton  <nickc@cambridge.redhat.com>
5171
5172         * config/tc-arm.c (thumb_add_sub): Do not convert a subtract of
5173         zero into an add of zero - it is not the same.
5174
5175 2002-05-01  Arati Dikey <aratid@kpit.com>
5176
5177         * tc-sh.c (get_specific): Generate warning if the same
5178         destination register is used in parallel instructions.
5179
5180 2002-05-01  Andrew Macleod  <amacleod@cygnus.com>
5181
5182         * config/tc-i386.c (extra_symbol_chars): Add '[' to the list.
5183
5184 2002-05-01  Alan Modra  <amodra@bigpond.net.au>
5185
5186         * write.c (cvt_frag_to_fill): Set fr_offset to zero on .org
5187         backwards to prevent cascading errors.
5188
5189 2002-04-30  Mark Mitchell  <mark@codesourcery.com>
5190
5191         * configure.in: Add support for powerpc-*-windiss.
5192         * configure: Regenerated.
5193
5194 2002-04-28  Alan Modra  <amodra@bigpond.net.au>
5195
5196         * config/tc-s390.c (md_parse_option): Formatting.
5197
5198         * config/tc-i386.c: Formatting fixes, add missing space in error
5199         message.
5200
5201 2002-04-24  Christian Groessler <chris@groessler.org>
5202
5203         * config/tc-z8k.c (build_bytes): Add support for new cases:
5204         CLASS_IGNORE and ARG_NIM4.
5205         (md_assemble): Prevent destruction of input_line_pointer if
5206         get_operands returns failure.
5207
5208 2002-04-24  Chris G. Demetriou  <cgd@broadcom.com>
5209
5210         * config/tc-mips.c (macro_build): Do _not_ allow MIPS-3D
5211         instructions to be generated by macros.
5212
5213 2002-04-24  Andreas Schwab  <schwab@suse.de>
5214
5215         * config/tc-i386.c (output_jump, output_disp)
5216         (md_estimate_size_before_relax): Don't set fx_pcrel_adjust any
5217         more.
5218         (md_apply_fix3): Remember addend value for rela relocations.
5219         (tc_gen_reloc): Correctly compute pc-relative relocation addend.
5220
5221 2002-04-22  Chris Demetriou  <cgd@broadcom.com>
5222
5223         * config/tc-mips.c (macro_build): Add close-parenthesis missing
5224         from previous change.
5225
5226 2002-04-22  Eric Christopher  <echristo@redhat.com>
5227
5228         * config/tc-mips.c (macro_build): Add warning if macro instructions
5229         are expanded into a branch delay slot.
5230
5231 2002-04-17  Geoffrey Keating  <geoffk@redhat.com>
5232
5233         * dwarf2dbg.c (dwarf2_gen_line_info): Do emit duplicate line
5234         numbers, gdb relies on them to detect the start of the prologue.
5235
5236 2002-04-17  Martin Schwidefsky  <schwidefsky@de.ibm.com>
5237
5238         * config/tc-s390.c (tc_s390_fix_adjustable): Prevent adjustments to
5239         symbols in merge sections.
5240
5241 2002-04-16  Alan Modra  <amodra@bigpond.net.au>
5242
5243         * as.c (main): Don't reference _bfd_chunksize.
5244
5245 2002-04-15  Tom Rix  <trix@redhat.com>
5246
5247         * config/tc-d10v.c (d10v_fix_adjustable): Prevent adjustments to
5248         symbols in merge sections.
5249
5250 2002-04-11  Richard Sandiford  <rsandifo@redhat.com>
5251
5252         * doc/invoke.texi (TC_LARGEST_EXPONENT_IS_NORMAL): Document.
5253         * config/atof-ieee.c (TC_LARGEST_EXPONENT_IS_NORMAL): Add an
5254         argument for the precision.
5255         (gen_to_words): Update accordingly.
5256
5257 2002-04-10  Alan Modra  <amodra@bigpond.net.au>
5258
5259         * as.c (parse_args <OPTION_VERSION>): Use VERSION is
5260         BFD_VERSION_STRING unavailable.
5261         * config/tc-i386.c (INLINE): Define (for non-BFD assembler).
5262
5263 2002-04-09  J"orn Rennecke <joern.rennecke@superh.com>
5264
5265         * config/tc-sh.h (TC_FIX_ADJUSTABLE): Disable adjusting if
5266         symbol_used_in_reloc_p is true.
5267
5268         * config/tc-sh.c (md_apply_fix3): Don't zero relocations on big
5269         endian hosts.
5270
5271 2002-04-04  Alan Modra  <amodra@bigpond.net.au>
5272
5273         * dep-in.sed: Cope with absolute paths.
5274         * Makefile.am (dep.sed): Subst TOPDIR.
5275         Run "make dep-am".
5276         * Makefile.in: Regenerate.
5277
5278 2002-04-04  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
5279
5280         * config/tc-mips.c (mips16_macro_build): Cast type mismatch.
5281         (mips_ip): Remove unused variable.
5282         (md_apply_fix3): Cast signed/unsignes mismatches. Replace
5283         unsigned char with bfd_byte.
5284         (s_file): Remove unused variable.
5285         (s_mips_ent): Likewise.
5286
5287 2002-04-03  Tom Rix  <trix@redhat.com>
5288
5289         * config/tc-d10v.c (d10v_insert_operand): Fix warning in as_bad_where.
5290         (build_insn): Same.
5291         (find_opcode): Fix warning in as_warn.
5292         * config/tc-d10v.h: Update Copyright.
5293
5294 2002-04-03  Alan Matsuoka <alanm@redhat.com>
5295             Tom Rix  <trix@redhat.com>
5296
5297         From Jeff Knaggs <jknaggs@redhat.com>
5298         * config/tc-d10v.c (check_resource_conflict): New function to
5299         check for resource conflicts.
5300
5301         From Jason Eckhardt  <jle@redhat.com>
5302         * config/tc-d10v.c (build_insn): Check for unresolved imm4 or
5303         imm3 fields.
5304         * config/tc-d10v.c (find_opcode): Emit a warning if one of the
5305         reserved control registers is used.
5306         * config/tc-d10v.c (build_insn): Check for unresolved imm4 or
5307         imm3 fields.
5308
5309         From 2001-03-28  Diego Novillo  <dnovillo@redhat.com>
5310         * tc-d10v.c (parallel_ok): Prevent packing only if the first
5311         instruction cannot be packed.
5312
5313         From 2001-03-30  Diego Novillo  <dnovillo@redhat.com>
5314         * gas/config/tc-d10v.c (check_resource_conflict): Only check
5315         write-write conflicts.
5316         (md_assemble): Reformat introductory comment.
5317         * opcodes/d10v-opc.c (d10v_opcodes): `btsti' does not modify its
5318         arguments.
5319
5320 2002-04-03  Alan Modra  <amodra@bigpond.net.au>
5321
5322         * symbols.c (resolve_symbol_value <O_uminus, O_bit_not,
5323         O_logical_not>): Derive final_seg from add_symbol.
5324         <O_multiply..O_logical_or>: More final_seg twiddles.
5325
5326 2002-04-01  Jessica Han  <jessica@cup.hp.com>
5327
5328         * config/tc-ia64.c (ia64_cons_fix_new): Handle 8 byte iplt reloc
5329         in 32-bit mode.
5330
5331 2002-03-27  Andreas Schwab  <schwab@suse.de>
5332
5333         * config/tc-i386.c (output_jump): Set fx_pcrel_adjust to size of
5334         field for pc-relative fixups.
5335         (output_disp): Likewise.
5336         (md_estimate_size_before_relax): Likewise.
5337         (tc_gen_reloc): Subtract fx_pcrel_adjust instead of fx_size for
5338         pc-relative fixups in 64bit mode.
5339
5340 2002-03-22  Alan Modra  <amodra@bigpond.net.au>
5341
5342         * config/te-aix5.h: Typo fix.
5343
5344 2002-03-21  Alan Modra  <amodra@bigpond.net.au>
5345
5346         * Makefile.am: Run "make dep-am".
5347         * Makefile.in: Regenerate.
5348         * doc/Makefile.in: Regenerate.
5349
5350 2002-03-20  Albert Chin-A-Young  <china@thewrittenword.com>
5351
5352         * config/tc-arm.c (vfp_dp_reg_required_here): Fix typo
5353         (vfp_sp_reg_pos -> vfp_dp_reg_pos).
5354
5355 2002-03-18  Alexandre Oliva  <aoliva@redhat.com>
5356
5357         * config/tc-mips.c (md_estimate_size_before_relax): Do not modify
5358         the EXTENDED bit here; report the estimate according to the
5359         current size.
5360
5361 2002-03-18  Tom Rix  <trix@redhat.com>
5362
5363         * configure.in: Add AIX 5 support.
5364         * config/tc-ppc.c (ppc_target_format): Add AIX 5 64 bit target.
5365         * config/te-aix5.h: New file. AIX 5 support.
5366         * configure: Regenerate.
5367
5368 2002-03-18  Nick Clifton  <nickc@cambridge.redhat.com>
5369
5370         * po/fr.po: Updated version.
5371
5372 2002-03-16  Andreas Jaeger  <aj@suse.de>
5373
5374         * doc/c-mips.texi (Machine Dependencies): Add new node.
5375
5376 2002-03-15  Chris G. Demetriou  <cgd@broadcom.com>
5377
5378         * config/tc-mips.c (mips_set_options): New "ase_mips3d" member.
5379         (mips_opts): Initialize "ase_mips3d" member.
5380         (file_ase_mips3d): New variable.
5381         (CPU_HAS_MIPS3D): New macro.
5382         (md_begin): Initialize mips_opts.ase_mips3d and file_ase_mips3d
5383         based on command line options and configuration defaults.
5384         (macro_build, mips_ip): Accept MIPS-3D instructions if
5385         mips_opts.ase_mips3d is set.
5386         (OPTION_MIPS3D, OPTION_NO_MIPS3D, md_longopts, md_parse_option):
5387         Add support for "-mips3d" and "-no-mips3d" options.
5388         (OPTION_ELF_BASE): Move to accomodate new options.
5389         (s_mipsset): Support ".set mips3d" and ".set nomips3d".
5390         (mips_elf_final_processing): Add a comment indicating that a
5391         MIPS-3D ASE ELF header flag should be set, when one exists.
5392         * doc/as.texinfo: Document -mips3d and -no-mips3d options.
5393         * doc/c-mips.texi: Likewise, and document ".set mips3d" and ".set
5394         nomips3d" directives.
5395
5396 2002-03-14  Hans-Peter Nilsson  <hp@bitrange.com>
5397
5398         * config/tc-mmix.c (md_estimate_size_before_relax): Don't consider
5399         a weak symbol in same section to be within reach.
5400
5401 2002-03-13  Nick Clifton  <nickc@cambridge.redhat.com>
5402
5403         * po/fr.po: Updated version.
5404
5405 2002-03-12  Andreas Schwab  <schwab@suse.de>
5406
5407         * config/tc-ia64.c (fixup_unw_records): Clear region when seeing a
5408         body record so that an error is given for misplaced .save
5409         pseudo-ops.
5410
5411 2002-03-09  Alan Modra  <amodra@bigpond.net.au>
5412
5413         * config/tc-i386.h (REX_OPCODE): Define.
5414         (REX_MODE64, REX_EXTX, REX_EXTY, REX_EXTZ): Define.
5415         (rex_byte): typedef to int.
5416         * config/tc-i386.c: Group prototypes and vars together.
5417         Formatting fixes.  Remove occurrences of "register" keyword.
5418         (true): Delete.
5419         (false): Delete.
5420         (mode_from_disp_size): Add INLINE keyword to prototype.
5421         (fits_in_signed_byte): Likewise.
5422         (fits_in_unsigned_byte): Likewise.
5423         (fits_in_unsigned_word): Likewise.
5424         (fits_in_signed_word): Likewise.
5425         (fits_in_unsigned_long): Likewise.
5426         (fits_in_signed_long): Likewise.
5427         (type_names): Constify.
5428         (intel_float_operand): Constify param.
5429         (add_prefix): Use REX_OPCODE.
5430         (md_assemble): Likewise.  Modify for changed rex_byte.
5431         (parse_insn): Split out of md_assemble.
5432         (parse_operands): Likewise.
5433         (swap_operands): Likewise.
5434         (optimize_imm): Likewise.
5435         (optimize_disp): Likewise.
5436         (match_template): Likewise.
5437         (check_string): Likewise.
5438         (process_suffix): Likewise.
5439         (check_byte_reg): Likewise.
5440         (check_long_reg): Likewise.
5441         (check_qword_reg): Likewise.
5442         (check_word_reg): Likewise.
5443         (finalize_imm): Likewise.
5444         (process_operands): Likewise.
5445         (build_modrm_byte): Likewise.
5446         (output_insn): Likewise.
5447         (output_branch): Likewise.
5448         (output_jump): Likewise.
5449         (output_interseg_jump): Likewise.
5450         (output_disp): Likewise.
5451         (output_imm): Likewise.
5452
5453 2002-03-07  Daniel Jacobowitz  <drow@mvista.com>
5454
5455         * doc/as.texinfo: Wrap @menu in @ifnottex, not @ifinfo.
5456
5457 2002-03-06  Alan Modra  <amodra@bigpond.net.au>
5458
5459         * config/tc-i386.c (tc_gen_reloc): Don't attempt to handle 8 byte
5460         relocs except when BFD64.
5461
5462         * write.c (number_to_chars_bigendian): Don't abort when N is
5463         larger than sizeof (VAL).
5464         (number_to_chars_littleendian): Likewise.
5465
5466 2002-03-05  John David Anglin  <dave@hiauly1.hia.nrc.ca>
5467
5468         * config/tc-hppa.c (md_apply_fix3): Add cast.
5469         (hppa_fix_adjustable): Adjust list of selectors using e_lrsel and
5470         e_rrsel.
5471
5472 2002-03-05  Paul Koning  <pkoning@equallogic.com>
5473
5474         * tc-pdp11.c: Use VAX float format support for PDP-11 target.
5475         (parse_ac5): New function for parsing float regs in float operand.
5476         (parse_expression): Remove attempt to make literals be octal.
5477         (parse_op_no_deferred): Support float literals.
5478         (parse_op): Reject attempts to refer to float regs.
5479         (parse_fop): New function, like parse_op but for float operand.
5480         (md_assemble): Add cases to parse float operands.  Also fix
5481         IMM3, IMM6, IMM8 cases to pick up the operand from the right spot.
5482
5483 2002-03-04  H.J. Lu <hjl@gnu.org>
5484
5485         * config/obj-elf.c (special_section): Add .init_array,
5486         .fini_array and .preinit_array.
5487
5488         * config/tc-ia64.h (ELF_TC_SPECIAL_SECTIONS): Remove
5489         .init_array and .fini_array.
5490
5491 2002-03-01  Jakub Jelinek  <jakub@redhat.com>
5492
5493         * config/obj-elf.c (elf_copy_symbol_attributes): Don't copy
5494         visibility.
5495         (obj_frob_symbol): Copy visibility.
5496
5497 2002-02-28  Jakub Jelinek  <jakub@redhat.com>
5498
5499         * config/tc-alpha.c (s_alpha_text): Use obj_elf_text for OBJ_ELF, not
5500         s_text.
5501         (s_alpha_data): Use obj_elf_data for OBJ_ELF, not s_data.
5502
5503 2002-02-27  Nick Clifton  <nickc@cambridge.redhat.com>
5504
5505         * po/es.po: Updated.
5506
5507 2002-02-26  Chris Demetriou  <cgd@broadcom.com>
5508
5509         * config/tc-mips.c (mips_need_elf_addend_fixup): For embedded-PIC
5510         only, undo the changes made on 2001-06-08, with the
5511         effect being that common or extern symbols are
5512         adjusted for embedded-PIC, but weak symbols are not.
5513         (md_estimate_size_before_relax: Likewise, with the effect
5514         that extern symbols are treated the same as weak symbols
5515         only if not embedded-PIC.
5516         (mips_fix_adjustable) Likewise, with the effect that
5517         weak or extern symbols are not adjusted for embedded-PIC.
5518         (md_apply_fix3): Tweak so that the case where value is zero
5519         is handled more correctly for embedded-PIC code.
5520
5521 2002-02-26  Nick Clifton  <nickc@cambridge.redhat.com>
5522
5523         * doc/as.texinfo (Overview): Add missing @ifset IA64
5524
5525         * configure.in (LINGUAS): Add es.po.
5526         * configure: Regenerate.
5527         * po/es.po: New file.
5528
5529 2002-02-25  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
5530
5531         * config/tc-mips.c (set_at): Fix handling of 64bit register loads.
5532         (macro): Likewise. Fix la/dla address expansions for EMBEDDED_PIC
5533         and NO_PIC cases. Code cleanup.
5534         (macro2): Fix handling of 64bit register loads.
5535
5536 2002-02-25  David Mosberger  <davidm@hpl.hp.com>
5537
5538         * doc/as.texinfo: Add entry for IA64.
5539         * doc/c-ia64.texi: New file.
5540
5541 2002-02-25  Alan Modra  <amodra@bigpond.net.au>
5542
5543         * config/tc-hppa.c: Update copyright date.
5544
5545         * doc/c-ppc.texi (PowerPC-Opts): Add -mpower4, -maltivec and -m7400
5546         Remove references to chip manufacturers.
5547         * config/tc-ppc.c (md_parse_option): Handle -mpower4 option.
5548         Correct comments.
5549         (md_show_usage): Remove references to chip manufacturers.  Mention
5550         -mpower4.
5551         (md_begin): Test power4 opcode flag bits.
5552
5553 2002-02-22  David Mosberger  <davidm@hpl.hp.com>
5554
5555         * config/tc-ia64.c (dot_restore): Issue error message of epilogue
5556         count exceeds prologue count.
5557         (md_show_usage): Describe -mconstant-gp and -mauto-pic.
5558         (unwind.label_prologue_count): New member.
5559
5560         Based on a patch by Hans Boehm <hboehm@hpl.hp.com>:
5561
5562         (get_saved_prologue_count): New function.
5563         (save_prologue_count): New function.
5564         (free_saved_prologue_count): New function.
5565         (dot_label_state): Record state label by calling save_prologue_count().
5566         (dot_copy_state): Restore prologue count by calling
5567         get_saved_prologue_count().
5568         (generate_unwind_image): Free up list of saved prologue
5569         counts by calling free_saved_prologue_counts().
5570
5571 2002-02-22  Nick Clifton  <nickc@cambridge.redhat.com>
5572
5573         * config/tc-tic54x.c: Add missing prototypes and remove ANSI style
5574         function declarations.
5575
5576 2002-02-21  Nick Clifton  <nickc@cambridge.redhat.com>
5577
5578         * NEWS: Note that GASP is now deprecated.
5579         * Makefile.am: Do not build gasp-new by default.
5580         * Makefile.in: Regenerate.
5581         * doc/Makefile.am: Do not install gasp.info.
5582         * doc/Makefile.in: Regenerate.
5583         * gas/gasp.texi: Note that gasp is now deprecated.
5584
5585 2002-02-20  Nick Clifton  <nickc@cambridge.redhat.com>
5586
5587         * NEWS: Mark 2.12 branch.
5588
5589 2002-02-19  Tom Tromey  <tromey@redhat.com>
5590
5591         * config/tc-xstormy16.h (DWARF2_LINE_MIN_INSN_LENGTH): Define.
5592
5593 2002-02-19  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
5594
5595         * config/tc-mips.c (md_parse_option): Complain about invalid -mabi
5596         option input.
5597
5598 2002-02-19  Martin Schwidefsky  <schwidefsky@de.ibm.com>
5599
5600         * config/tc-s390.c (md_parse_option): Add switches -m31 and -m64.
5601         Make bit size independent of architecture switch.
5602         (md_begin): Add warning for -m64 with -Aesa.
5603         (s390_md_end): Use renamed architecture defines.
5604
5605 2002-02-18  Daniel Jacobowitz  <drow@mvista.com>
5606
5607         * config/obj-coff.h: Check !target_big_endian, not shl, for coff-sh.
5608
5609 2002-02-16  Nick Clifton  <nickc@cambridge.redhat.com>
5610
5611         * doc/as.texinfo (Machine Dependencies): Fix typo: MMIX used
5612         instead of CRIS.
5613
5614 2002-02-15  Chris Demetriou  <cgd@broadcom.com>
5615
5616         * config/tc-mips.c (md_estimate_size_before_relax): Really
5617         make sure we treat weak like extern only for ELF.  (Fixes
5618         patch from 2001-07-25.)
5619
5620 2002-02-15  Ben Elliston  <bje@redhat.com>
5621
5622         * doc/as.texinfo: Add duplicate directory entry so that "info gas"
5623         works as expected.
5624
5625 2002-02-15  Hans-Peter Nilsson  <hp@bitrange.com>
5626
5627         * NEWS: Mention support for MMIX.
5628
5629 2002-02-13  Chris Demetriou  <cgd@broadcom.com>
5630
5631         * config/tc-mips.c (mips_need_elf_addend_fixup): Restructure into
5632         a sequence of indpendent 'if' statements for easier debugging
5633         and future modification.
5634
5635 2002-02-13  Matt Fredette  <fredette@netbsd.org>
5636
5637         * config/tc-m68k.c (md_show_usage): No longer display a
5638         hard-coded "68020" for the default CPU, instead display the
5639         canonical name of the true, configured default CPU.
5640         (m68k_elf_final_processing): Mark objects for sub-68020
5641         CPUs with the new EF_M68000 flag.
5642
5643 2002-02-13  Andreas Schwab  <schwab@suse.de>
5644
5645         * config/tc-i386.c (tc_i386_fix_adjustable): Don't adjust
5646         pc-relative relocations to merge sections in 64-bit mode.
5647
5648 2002-02-13  Ben Elliston  <bje@redhat.com>
5649
5650         * NEWS: Document floating point number handling in gasp.
5651         * gasp.c: Include <assert.h> and "xregex.h".
5652         (is_flonum): New function.
5653         (chew_flownum): Likewise.
5654         (change_base): Consume flonums from the input, where possible.
5655         * doc/gasp.texi (Constants): Document floating point numbers.
5656
5657 2002-02-12  John David Anglin  <dave@hiauly1.hia.nrc.ca>
5658
5659         * config/tc-hppa.c (hppa_fix_adjustable): Don't adjust final types
5660         that implicitly use LR and RR selectors.
5661
5662 2002-02-12  Alexandre Oliva  <aoliva@redhat.com>
5663
5664         * config/tc-mn10300.c (other_registers): Added `epsw'.  Mark `pc'
5665         and `epsw' as available on AM33 and above only.
5666         (other_register_name): Add logic to handle machine type encoded in
5667         reg_number.
5668
5669 2002-02-11  Tom Rix  <trix@redhat.com>
5670
5671         * config/tc-ppc.c (md_apply_fix3): Check for insert fop invalid for
5672         xcoff64.
5673
5674 2002-06-11  Alexandre Oliva  <aoliva@redhat.com>
5675
5676         * config/tc-sparc.c (U0x80000000, U0xffffffff): New constants.
5677         Use all over.
5678
5679 2002-02-11  Jan Hubicka  <jh@suse.cz>
5680
5681         * i386.c (md_assemble): Support 32bit address prefix.
5682         (i386_displacement): Likewise.
5683         (i386_index_check): Accept 32bit addressing in 64bit mode.
5684
5685 2002-02-11  Alexandre Oliva  <aoliva@redhat.com>
5686
5687         * config/tc-sh.c (dot): Removed unused function.
5688
5689 2002-02-11  Alan Modra  <amodra@bigpond.net.au>
5690
5691         * Makefile.am: "make dep-am".
5692         * Makefile.in: Regenerate.
5693         * aclocal.m4: Regenerate.
5694         * config.in: Regenerate.
5695         * configure: Regenerate.
5696         * doc/Makefile.in: Regenerate.
5697
5698 2002-02-10  Richard Henderson  <rth@redhat.com>
5699
5700         * doc/c-alpha.texi: New file.
5701         * doc/Makefile.am (CPU_DOCS): Add it.
5702         * doc/all.texi, doc/as.texinfo: Add hooks for Alpha.
5703
5704 2002-02-09  Richard Henderson  <rth@redhat.com>
5705
5706         * config/tc-alpha.c (O_samegp): New.
5707         (USER_RELOC_P): Include it.
5708         (alpha_reloc_op_tag, debug_exp, find_macro_match): Add it.
5709         (md_apply_fix3): Handle BFD_RELOC_ALPHA_BRSGP.
5710         (alpha_force_relocation, alpha_fix_adjustable): Likewise.
5711         (alpha_validate_fix): New.
5712         * config/tc-alpha.h (TC_VALIDATE_FIX): New.
5713
5714 2002-02-09  Hans-Peter Nilsson  <hp@axis.com>
5715
5716         * doc/c-cris.texi: New.
5717         * doc/all.texi: @set CRIS.
5718         * doc/as.texinfo: Ditto.  Add CRIS gas manpage option overview.
5719         Include c-cris.texi.
5720         * doc/Makefile.am (CPU_DOCS): Add c-cris.texi
5721         * doc/Makefile.in: Regenerate.
5722
5723 2002-02-08  Chris Demetriou  <cgd@broadcom.com>
5724
5725         * config/tc-mips.c (IS_SEXT_32BIT_NUM): New macro to
5726         determine if a number is a sign-extended 32-bit number.
5727         (load_register): Use IS_SEXT_32BIT_NUM.
5728         (macro): Check if load/store macro handling is using a
5729         constant 32-bit address on 64-bit address systems, and if
5730         so optimize the generation of that address.
5731
5732 2002-02-08  Richard Henderson  <rth@redhat.com>
5733
5734         * config/tc-alpha.c (alpha_force_relocation): Don't assert that
5735         we've eliminated all foreign relocation types yet.
5736         (alpha_fix_adjustable): Likewise.
5737
5738 2002-02-08  Alexandre Oliva  <aoliva@redhat.com>
5739
5740         Contribute sh64-elf.
5741         2002-02-08  Alexandre Oliva  <aoliva@redhat.com>
5742                     Stephen Clarke <Stephen.Clarke@st.com>
5743         * doc/c-sh64.texi: Fix citation of SH64 architecture manual.
5744         2002-01-31  Alexandre Oliva  <aoliva@redhat.com>
5745         * config/tc-sh.c (md_relax_table): Added default sizes for
5746         non-PC-relative UNDEF_MOVI, and relaxation sequences for
5747         MOVI_16, MOVI_32 and MOVI_48.
5748         * config/tc-sh64.c (shmedia_md_apply_fix3): Fix warning.
5749         (shmedia_md_convert_frag): Handle non-PC-relative UNDEF_MOVI
5750         and MOVI_16.
5751         (shmedia_md_estimate_size_before_relax): Remove redundant
5752         blocks.  Set fragP->fr_var even if relaxation type unchanged.
5753         Retain UNDEF_MOVI until expression decays to number.
5754         2002-01-24  Alexandre Oliva  <aoliva@redhat.com>
5755         * config/tc-sh64.c (shmedia_init_reloc): Handle new SHmedia PIC
5756         relocation types.  Take fixP->fx_addnumber into account too.
5757         (shmedia_md_apply_fix): Likewise.
5758         (shmedia_md_convert_frag): Likewise.
5759         (shmedia_build_Mytes): Likewise.
5760         (sh64_consume_datalabel): Complain about nested datalabel.
5761         Support PIC relocs.  Call sh_parse_name.
5762         * config/tc-sh64.h (TC_RELOC_RTSYM_LOC_FIXUP): Extend definition
5763         in tc-sh.h to SHmedia reloc types.
5764         * config/tc-sh.c (SH64PCRELPLT, MOVI_PLT, MOVI_GOTOFF,
5765         MOVI_GOTPC): New relaxation constants.
5766         (md_relax_table): Introduce relaxation directives for PIC-related
5767         constants.
5768         (sh_PIC_related_p): Handle datalabel.
5769         (sh_check_fixup): Choose SH5 PIC relocations.
5770         (sh_cons_fix_new): Added BDF_RELOC_64.
5771         (md_apply_fix3, sh_parse_name): Handle GOTPLT.
5772         2002-01-18  Alexandre Oliva  <aoliva@redhat.com>
5773         * config/tc-sh64.c (sh64_max_mem_for_rs_align_code): If the
5774         current ISA is SHmedia, get 7 bytes.
5775         2001-11-28  Nick Clifton  <nickc@cambridge.redhat.com>
5776         * config/tc-sh.c (md_apply_fix3): Treat shmedia_md_apply_fix3 as a
5777         void function.
5778         * config/tc-sh64.c (shmedia_apply_fix): Rename to
5779         shmedia_apply_fix3 and make void.
5780         2001-05-17  Alexandre Oliva  <aoliva@redhat.com>
5781         * config/tc-sh64.c (s_sh64_abi): Remove unused arguments passed to
5782         as_bad.
5783         2001-04-12  Alexandre Oliva  <aoliva@redhat.com>
5784         * config/tc-sh64.h (md_parse_name): Take &c as argument.
5785         2001-03-14  DJ Delorie  <dj@redhat.com>
5786         * doc/Makefile.am (CPU_DOCS): Added c-sh64.texi
5787         * doc/Makefile.in(CPU_DOCS): Ditto.
5788         * doc/c-sh64.texi: New file.
5789         * doc/as.texinfo: Add SH64 support.
5790         2001-03-13  DJ Delorie  <dj@redhat.com>
5791         * config/tc-sh64.c (shmedia_get_operands): Rename A_RESV_Fx to
5792         A_REUSE_PREV so that its purpose is more obvious.
5793         (shmedia_build_Mytes): Ditto.
5794         2001-03-07  DJ Delorie  <dj@redhat.com>
5795         * config/tc-sh64.c (sh64_vtable_entry): New, strip datalabels
5796         before processing.
5797         (sh64_vtable_inherit): Ditto.
5798         (strip_datalabels): New, strip "datalabel" from given line.
5799         * config/tc-sh.c (md_pseudo_table): Add sh64-specific vtable
5800         pseudos.
5801         2001-03-06  Hans-Peter Nilsson  <hpn@cygnus.com>
5802         * config/tc-sh64.c (shmedia_md_assemble): Move dwarf2_emit_insn
5803         call ...
5804         (shmedia_build_Mytes): ... to here.
5805         2001-03-06  DJ Delorie  <dj@redhat.com>
5806         * config/tc-sh.c: Remove sh64-specific uaquad now that there
5807         is a generic one.
5808         2001-01-21  Hans-Peter Nilsson  <hpn@cygnus.com>
5809         * config/tc-sh64.h (DWARF2_LINE_MIN_INSN_LENGTH): Override.
5810         * config/tc-sh64.c (shmedia_md_assemble): Offset recorded insn
5811         address by one in call to dwarf2_emit_insn.
5812         2001-01-13  Hans-Peter Nilsson  <hpn@cygnus.com>
5813         Implement ".abi" pseudo and correct .cranges descriptors.  Correct
5814         alignment handling broken by imported changes.
5815         * config/tc-sh64.h (HANDLE_ALIGN): Override definition in tc-sh.h.
5816         (sh64_handle_align): Declare.
5817         (MAX_MEM_FOR_RS_ALIGN_CODE): Override definition in tc-sh.h.
5818         (sh64_max_mem_for_rs_align_code): Declare.
5819         (enum sh64_isa_values): Moved here from tc-sh64.c.
5820         (md_do_align): Define.
5821         (sh64_do_align): Declare.
5822         (struct sh64_tc_frag_data): New.
5823         (TC_FRAG_TYPE): Change to struct sh64_tc_frag_data.  Users
5824         changed.
5825         (TC_FRAG_INIT): Change to set new datatype.
5826         (struct sh64_segment_info_type): Rename member
5827         last_flushed_location to last_contents_mark.  All users changed.
5828         (md_elf_section_change_hook, TC_CONS_FIX_NEW): Do not define.
5829         (shmedia_elf_new_section, sh64_tc_cons_fix_new): Do not prototype.
5830         * config/tc-sh.c (md_pseudo_table): Add ".abi".
5831         (sh_elf_cons) [HAVE_SH64]: Call sh64_update_contents_mark instead
5832         of unsetting seen_insn.
5833         (md_assemble) [HAVE_SH64] <before new SHcompact sequence>: Also
5834         call sh64_update_contents_mark.
5835         (sh_handle_align): Remove HAVE_SH64-conditioned code.
5836         * config/tc-sh64.c (sh64_isa_mode): Correct type from boolean to
5837         enum sh64_isa_values.
5838         (sh64_set_contents_type): Drop segT parameter.  All callers changed.
5839         (emitting_crange): Boolean guard moved to file scope from function
5840         scope in sh64_set_contents_type.
5841         (s_sh64_abi): New.
5842         (sh64_update_contents_mark): New; most split out from
5843         sh64_flush_pending_output.
5844         (shmedia_md_end): Call sh64_update_contents_mark.  Set
5845         sh64_isa_mode to sh64_isa_sh5_guard unless sh64_isa_unspecified.
5846         (sh64_do_align): New function.
5847         (sh64_max_mem_for_rs_align_code): New function.
5848         (sh64_handle_align): Rename from shmedia_do_align.  Make
5849         non-static.  Add head comment.  Emit zero bytes for n bytes modulo
5850         four.  Change return-type to void.
5851         (shmedia_elf_new_section): Remove.
5852         (shmedia_md_assemble): Call sh64_update_contents_mark.
5853         (s_sh64_mode): Ditto.  Do not call md_flush_pending_output.  Make
5854         new frag.  Call sh64_update_contents_mark after making the new
5855         frag.
5856         (sh64_flush_pending_output): Just call sh64_update_contents_mark
5857         and sh_flush_pending_output.
5858         (sh64_flag_output): Also call md_flush_pending_output, but add
5859         condition on not emitting_crange.
5860         (sh64_tc_cons_fix_new): Remove.
5861         2001-01-12  Nick Clifton  <nickc@redhat.com>
5862         * config/tc-sh64.c (shmedia_do_align): Fix to work with new
5863         alignment handling scheme imported from sourceware.
5864         2001-01-12  Hans-Peter Nilsson  <hpn@cygnus.com>
5865         * config/tc-sh64.h (TARGET_FORMAT): Define.
5866         (sh64_target_format): Prototype.
5867         * config/tc-sh64.c (sh64_target_mach): New function.
5868         2001-01-07  Hans-Peter Nilsson  <hpn@cygnus.com>
5869         * config/tc-sh64.c (shmedia_md_end): When equating a symbol, use
5870         zero_address_frag instead of copying the frag of the symbol.
5871         (shmedia_frob_file_before_adjust): Ditto.
5872         (shmedia_md_apply_fix) <case BFD_RELOC_SH_IMM_MEDLOW16>: Cast mask
5873         to valueT to remove signedness.
5874         (shmedia_md_convert_frag): Add parameter final.  Rename parameter
5875         headers to output_bfd.  Do not evaluate symbols if final is false;
5876         do emit fixups.
5877         (shmedia_md_estimate_size_before_relax) <case C (MOVI_IMM_32,
5878         UNDEF_MOVI) et al>: If symbol cannot be modified to be PC-relative
5879         to the current frag, call shmedia_md_convert_frag to emit fixups
5880         and make frag_wane neutralize the frag.  Update comments.
5881         * config/tc-sh.c (md_convert_frag): Change caller of
5882         shmedia_md_convert_frag.
5883         2001-01-06  Hans-Peter Nilsson  <hpn@cygnus.com>
5884         * config/tc-sh64.h: Tweak comments and correct formatting.
5885         * config/tc-sh64.c: Ditto.
5886         (shmedia_md_convert_frag) <PT/PTA/PTB 32, 48 and 64 bit
5887         expansion, MOVI pcrel expansion>: Fix thinko calculating offset
5888         for the no-relocation case.
5889         (shmedia_check_limits): Fix range check being off-by-one for PTA.
5890         * config/tc-sh.c: Ditto.  Add proper comments to #ifdef/#ifndef
5891         wrappers.
5892         (SH64PCREL16_F): Increment for proper max-PTA handling.  Update
5893         comment.
5894         (SH64PCREL16_M, MOVI_16_M): Correct range thinko.
5895         (SH64PCREL48_M, MOVI_48_M): Similar; don't count in length of
5896         expansion.
5897         (SH64PCREL32_M, MOVI_32_M): Ditto; handle overflowing expression.
5898         Correct comment.
5899         2001-01-05  Hans-Peter Nilsson  <hpn@cygnus.com>
5900         * config/tc-sh64.c (shmedia_md_apply_fix) <second switch, case
5901         BFD_RELOC_SH_PT_16>: Set lowest bit in field to be relocated to 1.
5902         (shmedia_md_convert_frag) <case C (SH64PCREL16_32, SH64PCREL16) et
5903         al>: Set lowest bit of field to relocate to 1 and rest to empty,
5904         if reloc is emitted.
5905         2000-12-31  Hans-Peter Nilsson  <hpn@cygnus.com>
5906         New options plus bugfixes.
5907         * config/tc-sh.c (md_longopts): New options "-no-expand" and
5908         "-expand-pt32".
5909         (md_parse_option): Handle new options.
5910         (md_show_usage): Add blurb for new options.
5911         * config/tc-sh64.c (SHMEDIA_BFD_RELOC_PT): New macro.
5912         (sh64_expand, sh64_pt32): New variables.
5913         (shmedia_init_reloc): Handle BFD_RELOC_SH_PT_16.
5914         (shmedia_md_apply_fix): Hold original fixP->fx_r_type in
5915         orig_fx_r_type.  Change SHMEDIA_BFD_RELOC_PT into
5916         BFD_RELOC_SH_PT_16.  Handle BFD_RELOC_SH_PT_16 as pc-relative.
5917         <resolved previously-pc-relative relocs>: Handle
5918         SHMEDIA_BFD_RELOC_PT and BFD_RELOC_SH_PT_16.
5919         (shmedia_md_convert_frag) <case C (SH64PCREL16PT_64, SH64PCREL16),
5920         case C (SH64PCREL16PT_32, SH64PCREL16)>: Modify to PTB if operand
5921         points to SHcompact code.
5922         <case C (SH64PCREL16_32, SH64PCREL16), case C (SH64PCREL16_64,
5923         SH64PCREL16)>: Check that ISA of what operand points at and
5924         PTA/PTB matches, or emit error.
5925         (shmedia_check_limits): Handle BFD_RELOC_SH_PT_16 and
5926         SHMEDIA_BFD_RELOC_PT.
5927         (shmedia_immediate_op): If pcrel, emit fixup also for constant
5928         operand.
5929         (shmedia_build_Mytes) <case A_IMMS16>: Also check sh64_expand in
5930         condition for MOVI expansion.
5931         <case A_PCIMMS16BY4>: Handle expansion to 32 bits only, if
5932         sh64_pt32.  Emit only a BFD_RELOC_SH_PT_16 fixup if not
5933         sh64_expand.
5934         <case A_PCIMMS16BY4_PT>: Likewise, but emit a SHMEDIA_BFD_RELOC_PT
5935         fixup.
5936         (sh64_target_format): Error-check setting of sh64_pt32 and
5937         sh64_expand.  Fix typo in check for sh64_shcompact_const_crange.
5938         (shmedia_md_pcrel_from_section): Handle BFD_RELOC_SH_PT_16 and
5939         SHMEDIA_BFD_RELOC_PT as coming from SHmedia code.
5940         2000-12-31  Hans-Peter Nilsson  <hpn@cygnus.com>
5941         * config/tc-sh64.c: Improve comments.
5942         (shmedia_md_convert_frag): Remove inactive is_pt_variant code.  Do
5943         not say the linker will check correctness of PTA/PTB expansion.
5944         (shmedia_md_end): Make non-static.
5945         * config/tc-sh64.h (md_end): Define to shmedia_md_end.  Add
5946         prototype.
5947         * config/tc-sh.c (sh_finalize): Remove.
5948         * config/tc-sh.h (md_end): Do not define.
5949         Remove prototype for sh_finalize.
5950         2000-12-30  Hans-Peter Nilsson  <hpn@cygnus.com>
5951         * config/tc-sh64.c (shmedia_frob_section_type): Use a struct
5952         sh64_section_data container when storing section type in tdata
5953         field in elf_section_data.
5954         * config/tc-sh.c (sh_elf_final_processing): Change from EF_SH64 to
5955         EF_SH5.
5956         * Makefile.am: Update dependencies.
5957         * Makefile.in: Regenerate.
5958         2000-12-22  Hans-Peter Nilsson  <hpn@cygnus.com>
5959         * config/tc-sh64.c (shmedia_md_assemble): Don't protect
5960         dwarf2_emit_insn call with test on debug_type.
5961         2000-12-19  Hans-Peter Nilsson  <hpn@cygnus.com>
5962         * config/tc-sh64.c (sh64_set_contents_type): Make contents-type
5963         CRT_SH5_ISA32 sticky for 64-bit.
5964         2000-12-18  Hans-Peter Nilsson  <hpn@cygnus.com>
5965         Generate .crange sections when switching ISA mode or emitting
5966         constants in same section as code.
5967         * config/tc-sh64.c: Reformat structure definitions.
5968         (sh64_end_of_assembly, sh64_mix, sh64_shcompact_const_crange): New
5969         variables.
5970         (sh64_set_contents_type): Rename from sh64_init_section.  Rewrite
5971         to emit a .cranges descriptor when contents type changes.  Only
5972         emit error if changing contents type and -no-mix is in effect.
5973         (sh64_emit_crange, sh64_flush_last_crange, sh64_flag_output,
5974         sh64_flush_pending_output, sh64_tc_cons_fix_new): New functions.
5975         (shmedia_md_end): Set sh64_end_of_assembly.  Pass
5976         sh64_flush_last_crange over sections.
5977         When checking main symbol of datalabel symbol, check for
5978         STO_SH5_ISA32, not ISA type of section in definition.
5979         (shmedia_frob_file_before_adjust): Check main symbol for
5980         STO_SH5_ISA32; don't check ISA type of section in definition.
5981         (shmedia_frob_section_type): Adjust for .cranges; set section flag
5982         to SHF_SH5_ISA32_MIXED or SHF_SH5_ISA32 according to whether
5983         .cranges entries have been output.
5984         (shmedia_elf_new_section): Just call md_flush_pending_output.
5985         (shmedia_md_assemble): Do not emit a BFD_RELOC_SH_SHMEDIA_CODE
5986         fix.  Do not set tc_segment_info_data.in_code for section.  Call
5987         sh64_set_contents_type for SHmedia code.
5988         (s_sh64_mode): Do not call sh64_init_section or set seen_insn to
5989         false.  Call md_flush_pending_output.
5990         (sh64_target_format): Check that -no-mix and
5991         -shcompact-const-crange are used in sane combination with other
5992         options.
5993         (shmedia_md_pcrel_from_section): Check type of fix for how to
5994         adjust pc-relative.
5995         (sh64_consume_datalabel): Check symbol for having STO_SH5_ISA32,
5996         not ISA type of section in definition.
5997         * config/tc-sh64.h (struct sh64_segment_info_type): Rewrite to
5998         hold contents-type state.
5999         (md_flush_pending_output): Redefine to sh64_flush_pending_output.
6000         (sh64_flush_pending_output): Declare.
6001         (TC_CONS_FIX_NEW): Define to sh64_tc_cons_fix_new.
6002         (sh64_tc_cons_fix_new): Declare.
6003         * config/tc-sh.c (sh_elf_cons) [HAVE_SH64]: Unset seen_insn and
6004         call sh64_flag_output.
6005         (md_assemble) [HAVE_SH64]: Do not emit BFD_RELOC_SH_CODE.  Just
6006         call sh64_set_contents_type to mark SHcompact code and set
6007         seen_insn.
6008         (md_longopts): New options "-no-mix" and
6009         "-shcompact-const-crange".
6010         (md_parse_option): Handle new options.
6011         (md_show_usage): Add blurb for new options.
6012         (md_number_to_chars) [HAVE_SH64]: Call sh64_flag_output.
6013         2000-12-15  Hans-Peter Nilsson  <hpn@cygnus.com>
6014         * config/tc-sh64.c: Delete investigated and obsolete fixme:s.
6015         (sh64_last_insn_frag): New.
6016         (shmedia_md_convert_frag): Use tc_frag_data field of incoming frag
6017         to get frag for insn opcode for generating fixups; do not assume it
6018         is the same frag.
6019         (shmedia_build_Mytes): Set sh64_last_insn_frag after growing frag
6020         for new insn.
6021         * config/tc-sh64.h (ELF_TC_SPECIAL_SECTIONS): Define for .cranges
6022         section.
6023         (TC_FRAG_TYPE): Define as fragS *.
6024         (TC_FRAG_INIT): Define to set tc_frag_data to sh64_last_insn_frag.
6025         (sh64_last_insn_frag): Declare.
6026         (sh64_consume_datalabel): Fix typo; check for seginfo != NULL,
6027         not == NULL before dereferencing.
6028         2000-12-12  Hans-Peter Nilsson  <hpn@cygnus.com>
6029         Get rid of BFD section flag and EF_SH64_ABI64.
6030         * config/tc-sh64.c (shmedia_frob_section_type): Use
6031         elf_section_data (sec)->tdata, not a specific BFD section flag, to
6032         communicate the section as containing SHmedia code.  Describe why.
6033         * config/tc-sh.c (sh_elf_final_processing): Tweak comment.  Set
6034         EF_SH64 regardless of ABI.
6035         * config/tc-sh64.c (shmedia_md_apply_fix): Decapitalize "invalid"
6036         in error message.  Handle resolved expressions for
6037         BFD_RELOC_SH_IMMS10, BFD_RELOC_SH_IMMS10BY2,
6038         BFD_RELOC_SH_IMMS10BY4 and BFD_RELOC_64.
6039         (shmedia_check_limits): Handle BFD_RELOC_64.
6040         (sh64_adjust_symtab): Do not decrement the GAS symbol value for
6041         a STO_SH5_ISA32 symbol, only the BFD value.
6042         2000-12-11  Ben Elliston  <bje@redhat.com>
6043         * config/tc-sh64.c: Call dwarf2_emit_insn, not the defunct
6044         dwarf2_generate_asm_lineno.
6045         2000-12-11  Hans-Peter Nilsson  <hpn@cygnus.com>
6046         Handle PC-relative MOVI expansions with assembler relaxation.
6047         Generate PC-relative relocs from 16-bit PC-relative expressions.
6048         * config/tc-sh64.c (SHMEDIA_MD_PCREL_FROM_FIX): Break out from...
6049         (shmedia_md_pcrel_from_section): ...here.
6050         (shmedia_md_apply_fix): Handle fixups for 16-bit operands that has
6051         turned completely resolved.  Adjust relocation type for 16-bit
6052         immediate operands that has turned PC-relative.  Adjust back for
6053         MD_PCREL_FROM_SECTION being applied twice.
6054         (shmedia_md_convert_frag): Always emit reloc for expression with
6055         global or weak symbol.  Handle relaxation result for PC-relative
6056         expressions.
6057         (shmedia_md_estimate_size_before_relax): An expression with a weak
6058         or global symbol can not be relaxed.  Break out tests for
6059         relaxable symbol into variable sym_relaxable.
6060         <cases C (MOVI_IMM_64, UNDEF_MOVI) and C (MOVI_IMM_32,
6061         UNDEF_MOVI)>: Break out any PC-relative expression and change
6062         relaxation type.
6063         (shmedia_build_Mytes): CSE &operands->operands[j] into variable
6064         opjp.
6065         <case A_IMMS16>: Fix typo for initial minor relaxation type of
6066         MOVI expansion.  If X_op_symbol of the immediate expression is
6067         set, make an expression symbol for the argument to frag_var.
6068         * config/tc-sh.c (MOVI_IMM_32_PCREL, MOVI_IMM_64_PCREL): New
6069         relaxations.
6070         (END): Adjust for new relaxations.
6071         (md_relax_table): Add entries for new relaxations.
6072         2000-12-07  Ben Elliston  <bje@redhat.com>
6073         * config/tc-sh64.c (shmedia_parse_reg): Initialize variable len.
6074         2000-12-07  Hans-Peter Nilsson  <hpn@cygnus.com>
6075         * config/tc-sh64.c (shmedia_md_convert_frag): Correct all MOVI and
6076         SHORI operand offsets in PT/PTA/PTB expansions.
6077         2000-12-05  Hans-Peter Nilsson  <hpn@cygnus.com>
6078         Implement DataLabel semantics.
6079         * config/tc-sh.c (sh_frob_file) [HAVE_SH64]: Call
6080         shmedia_frob_file_before_adjust.
6081         * config/tc-sh64.c [! OBJ_ELF]: Emit #error.
6082         (DATALABEL_SUFFIX): Define.
6083         (shmedia_md_end) <before adjusting STO_SH5_ISA32 symbols>: Walk
6084         symbol list to update "datalabel" symbols to their main symbol
6085         counterparts.
6086         (shmedia_frob_file_before_adjust): New.
6087         (sh64_adjust_symtab): For remaining datalabel symbols, set to
6088         undefined and set STT_DATALABEL.
6089         (sh64_frob_label): Initialize TC symbol field.
6090         (sh64_consume_datalabel): Actually implement semantics.  New
6091         parameter operandf, call it instead of expression.
6092         (sh64_exclude_symbol): New.
6093         * config/tc-sh64.h (md_parse_name): Pass on the function operand
6094         to sh64_consume_datalabel.
6095         (tc_symbol_new_hook): Define to tc_frob_symbol.
6096         (TC_SYMFIELD_TYPE): Define to symbolS *.
6097         (tc_frob_symbol): Define to call sh64_exclude_symbol.
6098         2000-12-01  Hans-Peter Nilsson  <hpn@cygnus.com>
6099         * config/tc-sh64.c (shmedia_init_reloc): Tweak comment for default
6100         case.
6101         (shmedia_md_assemble): Call dwarf2_generate_asm_lineno if
6102         generating dwarf2 debug information.
6103         2000-11-30  Hans-Peter Nilsson  <hpn@cygnus.com>
6104         * config/tc-sh64.c (sh64_target_format): Use elf64-sh64l and
6105         elf64-sh64 for the 64-bit ABI.
6106         * config/tc-sh.c (md_show_usage): Tweak usage output for -abi=*
6107         option.
6108         2000-11-29  Hans-Peter Nilsson  <hpn@cygnus.com>
6109         * config/tc-sh.c: Remove conditionalizing on HAVE_SH64 for
6110         case-insensitivity.
6111         2000-11-27  Hans-Peter Nilsson  <hpn@cygnus.com>
6112         * config/tc-sh64.c: Tweak comments, formatting and error messages.
6113         (enum sh64_abi_values): New type.
6114         (enum sh64_isa_values): New type.
6115         (sh64_isa_mode): Replace shmedia_mode.  All referers changed.
6116         (seen_shcompact_mode, seen_shmedia_mode): Delete.
6117         (sh64_abi): Replace shmedia_64.
6118         (shmedia_md_convert_frag) <C (MOVI_IMM_64, MOVI_64),
6119         C (MOVI_IMM_32, MOVI_32)>: Correct register number handling.
6120         (s_sh64_mode): Check validity for this target.
6121         (sh64_target_format): Initialize defaults for ISA and ABI.
6122         Fallback to old object format if no SH64 ISA or ABI has been
6123         specified.
6124         * config/tc-sh.c (md_parse_option): Check combinations for errors.
6125         (sh_elf_final_processing): Change to have EF_SH64_ABI64 for 64-bit
6126         ABI and EF_SH64 for 32-bit ABI, if SH64 options are specified.
6127         * config/tc-sh64.h: Fix typo in comment.
6128         2000-11-25  Hans-Peter Nilsson  <hpn@cygnus.com>
6129         * config/tc-sh64.c (shmedia_md_estimate_size_before_relax)
6130         <PT fixups for absolute values>: Size will be longest, not
6131         shortest.
6132         (shmedia_md_convert_frag): Disable PTB-warning machinery.  Correct
6133         all MOVI and SHORI operand offsets in PT/PTA/PTB expansions.
6134         * config/tc-sh.c (parse_reg) [HAVE_SH64]: Add local variables l0
6135         and l1 to hold lowercase of two first characters.  Change all
6136         remaining TO_LOWER to tolower.
6137         * config/tc-sh64.c (TO_LOWER): Delete.
6138         (shmedia_find_cooked_opcode): Use tolower, not TO_LOWER.
6139         (md_parse_name): Define.
6140         (sh64_consume_datalabel): Declare.
6141         (DOLLAR_DOT): Define.
6142         * config/tc-sh64.c (shmedia_parse_exp): New.
6143         (sh64_consume_datalabel): New; just ignoring datalabel semantics.
6144         (shmedia_parse_reg): Remove const from src
6145         parameter.
6146         (shmedia_get_operands): Ditto for args parameter and ptr variable.
6147         (shmedia_md_assemble): Ditto for op_end variable.
6148         (shmedia_get_operand): Ditto for ptr parameter and src variable.
6149         Use shmedia_parse_exp, not parse_exp.
6150         * config/tc-sh64.c (shmedia_parse_reg): Add shmedia_arg_type
6151         parameter.  All callers changed.
6152         (shmedia_get_operand): Add shmedia_arg_type parameter.  All
6153         callers changed.
6154         (shmedia_parse_reg): Put first two character in local variables.
6155         Use tolower, not TO_LOWER.  If no register is found and argtype
6156         indicates a control register, scan shmedia_creg_table
6157         case-insensitive.
6158         2000-11-24  Hans-Peter Nilsson  <hpn@cygnus.com>
6159         * Makefile.am (CPU_TYPES): Add sh64.
6160         (TARGET_CPU_CFILES): Add config/tc-sh64.c.
6161         (TARGET_CPU_HFILES): Add config/tc-sh64.h.
6162         Regenerate dependencies.
6163         * Makefile.in: Regenerate.
6164         * configure.in: Add support for sh64-*-elf*.
6165         * configure: Regenerate.
6166         * config/tc-sh64.h: New.
6167         * config/tc-sh64.c: New.
6168         * config/tc-sh.c (md_pseudo_table) [HAVE_SH64]: New pseudos
6169         .mode, .isa and .uaquad.
6170         [HAVE_SH64] (SH64PCREL16_32, SH64PCREL16_64, SH64PCREL16PT_32,
6171         SH64PCREL16PT_64, MOVI_IMM_32, MOVI_IMM_64): Define.
6172         [HAVE_SH64] (END): Define as 10.
6173         [HAVE_SH64] (UNDEF_SH64PCREL, SH64PCREL16, SH64PCREL32,
6174         SH64PCREL48, SH64PCREL64, UNDEF_MOVI, MOVI_16, MOVI_32, MOVI_48,
6175         MOVI_64): Define.
6176         [HAVE_SH64] (SH64PCREL16_F, SH64PCREL16_M, SH64PCREL16_LENGTH,
6177         SH64PCREL32_F, SH64PCREL32_M, SH64PCREL32_LENGTH, SH64PCREL48_F,
6178         SH64PCREL48_M, SH64PCREL48_LENGTH, SH64PCREL64_LENGTH,
6179         MOVI_16_LENGTH, MOVI_32_LENGTH, MOVI_48_LENGTH, MOVI_64_LENGTH):
6180         Define.
6181         (md_relax_table) [HAVE_SH64]: Provide relaxations for SHmedia.
6182         (md_begin) [HAVE_SH64]: Call shmedia_md_begin.
6183         (parse_reg) [HAVE_SH64]: Parse register names case-insensitive.
6184         (md_assemble) [HAVE_SH64]: Call shmedia_md_assemble if assembling
6185         SHmedia instructions.  Handle state-change after switching to
6186         SHcompact.
6187         (md_longopts) [HAVE_SH64]: New options --isa=* and --abi=*.
6188         (md_parse_option) [HAVE_SH64]: Parse new options.
6189         (md_show_usage) [HAVE_SH64]: Show usage of new options.
6190         (md_convert_frag) [HAVE_SH64] <default>: Call
6191         shmedia_md_convert_frag instead of abort.
6192         (sh_force_relocation) [HAVE_SH64]: Also force relocation for
6193         BFD_RELOC_SH_SHMEDIA_CODE.
6194         (sh_elf_final_processing) [HAVE_SH64]: Set flags identifying
6195         SHcompact or SHmedia code.
6196         (md_apply_fix) [HAVE_SH64] <default>: Return result from calling
6197         shmedia_md_apply_fix instead of abort.
6198         (md_estimate_size_before_relax) [HAVE_SH64] <default>: Return
6199         result from calling shmedia_md_estimate_size_before_relax instead
6200         of calling abort.
6201         (sh_do_align) [HAVE_SH64]: If shmedia_mode, let shmedia_do_align
6202         do the work.
6203         (tc_gen_reloc) [HAVE_SH64]: For unrecognized relocs, call
6204         shmedia_init_reloc and do nothing more if it returns non-zero.
6205         (sh_finalize) [HAVE_SH64]: Call shmedia_md_end.
6206         * po/POTFILES.in: Regenerate.
6207         * po/gas.pot: Regenerate.
6208
6209 2002-02-06  Alexandre Oliva  <aoliva@redhat.com>
6210
6211         * config/tc-sh.c (parse_at): Install the correct version of
6212         2002-02-04's patch.
6213
6214         * config/tc-sh.c (md_apply_fix3) <BFD_RELOC_32_PLT_PCREL>: Don't
6215         assume fixP->fx_subsy is non-NULL.
6216
6217 2002-02-04  Alexandre Oliva  <aoliva@redhat.com>
6218
6219         * config/tc-sh.c (parse_at): Set arg type of @(expr,pc) to
6220         A_DISP_PC_ABS, and adjust it by -4.
6221         (get_specific): Accept A_DISP_PC_ABS where A_DISP_PC is
6222         expected.
6223         (build_Mytes): Mark PCRELIMM fix-ups as pc-relative only if
6224         the operand type is not A_DISP_PC_ABS.
6225
6226 2002-02-04  Hans-Peter Nilsson  <hp@bitrange.com>
6227
6228         * config/tc-mmix.c (tc_gen_reloc): Don't try and take the value of
6229         common and weak symbols.  Handle common and weak symbols as
6230         undefined symbols with regards to GREG handling and merging.
6231         (mmix_frob_file): Ditto.
6232
6233 2002-02-02  Jason Thorpe  <thorpej@wasabisystems.com>
6234
6235         * configure.in (hppa-*-netbsd*): New target.
6236         * configure: Regenerate.
6237         * config/tc-hppa.h: Also define WARN_COMMENTS if TE_NetBSD.
6238
6239 2002-02-02  Alan Modra  <amodra@bigpond.net.au>
6240
6241         * config/tc-v850.c: Add missing prototypes amd use old-style
6242         function definitions.
6243         (AREA_ZDA, AREA_SDA, AREA_TDA): Delete.
6244         (sdata_section tdata_section, zdata_section, sbss_section,
6245         tbss_section, zbss_section, rosdata_section, rozdata_section,
6246         scommon_section, tcommon_section, zcommon_section,
6247         call_table_data_section, call_table_text_section): Delete.
6248         (v850_sdata, v850_tdata, v850_zdata, v850_sbss, v850_tbss,
6249         v850_zbss, v850_bss, v850_rosdata, v850_rozdata,
6250         v850_call_table_data, v850_call_table_text): Delete.
6251         (struct v850_seg_entry): New.
6252         (v850_seg_table): New.
6253         (SDATA_SECTION TDATA_SECTION, ZDATA_SECTION, SBSS_SECTION,
6254         TBSS_SECTION, ZBSS_SECTION, BSS_SECTION, ROSDATA_SECTION,
6255         ROZDATA_SECTION, SCOMMON_SECTION, TCOMMON_SECTION, ZCOMMON_SECTION,
6256         CALL_TABLE_DATA_SECTION, CALL_TABLE_TEXT_SECTION): Define.
6257         (do_v850_seg): New.
6258         (v850_seg): New.
6259         (v850_comm): Use do_v850_seg and v850_seg_table.  Simplify
6260         recording of alignment.
6261         (md_pseudo_table): Use v850_seg.
6262         (md_begin): Don't init .call_table_data and .call_table_text here.
6263         Set v850_seg_table bss entry.
6264
6265 2002-02-01  Hans-Peter Nilsson  <hp@bitrange.com>
6266
6267         Support on-demand global register allocation by passing on
6268         base-plus-offset relocs to the linker.
6269         * config/tc-mmix.c: Tweak and fix typos in comments.
6270         (allocate_undefined_gregs_in_linker): New variable.
6271         (OPTION_LINKER_ALLOCATED_GREGS): New option macro.
6272         (md_longopts): Add --linker-allocated-gregs.
6273         (md_parse_option) <case 'x'>: Imply --linker-allocated-gregs.
6274         <case OPTION_LINKER_ALLOCATED_GREGS>: New.
6275         (md_show_usage): Update text for -x.  Add text for
6276         --linker-allocated-gregs.
6277         (tc_gen_reloc): Derive default value for addend from val and
6278         baddsy.  Use addsec and bfd_is_abs_section in more places.  Don't
6279         emit error for BFD_RELOC_MMIX_BASE_PLUS_OFFSET without suitable
6280         GREG if allocate_undefined_gregs_in_linker.
6281         * doc/as.texinfo (Overview) <Target MMIX options>: Add
6282         --linker-allocated-gregs.
6283         * doc/c-mmix.texi (MMIX-Opts): Add blurb about
6284         --linker-allocated-gregs.  Mention that it's implied by -x.
6285         (MMIX-Pseudos) <GREG>: Mention when and how a GREG can be omitted.
6286         (MMIX-mmixal): Clarify dated comparison and location of MMIXware.
6287
6288         * config/tc-mmix.h (md_parse_name): Use ISUPPER, not isupper.
6289
6290 2002-02-01  Alan Modra  <amodra@bigpond.net.au>
6291
6292         * Makefile.am: Run "make dep-am"
6293         * Makefile.in: Regenerate.
6294
6295 2002-01-31  Ivan Guzvinec  <ivang@opencores.org>
6296
6297         * config/tc-or32.c: New file.
6298         * config/tc-or32.h: New file.
6299         * configure.in: Add support for or32 targets.
6300         * configure: Regenerate.
6301         * config/obj-coff.c: Add support for or32 targets.
6302         * config/obj-coff.h: Add support for or32 targets.
6303         * Makefile.am: Add support for or32 targets.
6304         * Makefile.in: Regenerate.
6305         * NEWS: Mention support for OpenRISC.
6306         * doc/Makefile.in: Regenerate.
6307         * po/POTFILES.in: Regenerate.
6308         * po/gas.pot: Regenerate.
6309
6310 2002-01-30  Richard Sandiford  <rsandifo@redhat.com>
6311
6312         * config/tc-sh.c (parse_reg): Fix end-of-word check for is, ix, iy
6313         and mod.
6314
6315 2002-01-29  Chris Demetriou  <cgd@broadcom.com>
6316
6317         * config/tc-mips.c (tc_gen_reloc): Arrange for
6318         BFD_RELOC_PCREL_HI16_S relocations to be output relative to
6319         their LO16 parts, even for ELF.
6320
6321 2002-01-29  Daniel Jacobowitz  <drow@mvista.com>
6322
6323         * config/tc-i386.c: Protect definitions of true and false
6324         from redefinition.
6325
6326 2002-01-28  Jakub Jelinek  <jakub@redhat.com>
6327
6328         * config/obj-elf.c (elf_frob_file_before_adjust): Remove symbols
6329         made because of .weak, if they are neither defined nor used in any
6330         way.
6331
6332 2002-01-27  Daniel Jacobowitz  <drow@mvista.com>
6333
6334         * configure: Regenerated.
6335
6336 2002-01-26  Hans-Peter Nilsson  <hp@bitrange.com>
6337
6338         * doc/Makefile.am (install): Depend on install-info.
6339         * doc/Makefile.in: Regenerate.
6340
6341 2002-01-26  Nick Clifton <nick@redhat.com>
6342
6343         * po/fr.po: Updated version
6344
6345 2002-01-24  Kazu Hirata  <kazu@hxi.com>
6346
6347         * config/tc-h8300.c (check_operand): Don't print a warning
6348         when a valid 24-bit address is given to a 16-bit address
6349         operand.
6350
6351 2002-01-24  Alexandre Oliva  <aoliva@redhat.com>
6352
6353         * config/tc-sh.c (sh_elf_suffix): Removed.
6354         (sh_PIC_related_p, sh_check_fixup, sh_cons_fix_new,
6355         sh_end_of_match, sh_parse_name): New functions.
6356         (sh_elf_cons): Simplify.
6357         (parse_exp): Reject misplaced PIC operands.
6358         (md_undefined_symbol): Simplify.
6359         (sh_fix_adjustable): Let @GOTOFF be adjusted.
6360         (md_apply_fix3): Write @PLT and @GOTOFF addends in place.
6361         (tc_gen_reloc): Move fixp subsy absolute value into addnumber.
6362         Complain if subsy remains at the end.
6363         * config/tc-sh.h (sh_parse_name, sh_cons_fix_new): Declare.
6364         (md_parse_name, TC_CONS_FIX_NEW, O_PIC_reloc): Define.
6365
6366 2002-01-22  Alexandre Oliva  <aoliva@redhat.com>
6367
6368         * config/tc-mn10300.c (xr_registers): Move `pc'...
6369         (other_registers): ... here.
6370
6371 2002-01-22  Alan Modra  <amodra@bigpond.net.au>
6372
6373         * Makefile.am: Run "make dep-am".
6374         * Makefile.in: Regenerate.
6375         * gas/po/POTFILES.in: Regenerate.
6376
6377 2002-01-21  DJ Delorie  <dj@redhat.com>
6378
6379         * config/obj-coff.c (obj_coff_init_stab_section): Make the
6380         stabstr_name allocation permanent, as it will be referenced from
6381         the section hash.
6382
6383 2002-01-21  Jason Thorpe  <thorpej@wasabisystems.com>
6384
6385         * configure.in (ia64-*-netbsd*): New target.
6386         * configure: Regenerate.
6387
6388 2002-01-21  Hans-Peter Nilsson  <hp@bitrange.com>
6389
6390         * doc/as.texinfo (Overview) <Target ARM options>: Add missing {}
6391         to @dots call.
6392         <Detailed description, ARM options>: Ditto.
6393         * doc/c-arm.texi (ARM Options): Ditto.
6394
6395 2002-01-18  Richard Earnshaw  <rearnsha@arm.com>
6396
6397         * tc-arm.c (do_xsc_mia, do_xsc_mar, do_xsc_mra): Renamed from
6398         do_mia, do_mar and do_mra respectively.
6399         (do_mav_*): Renamed from do_c_*.
6400         (mav_reg_required_here, mav_parse_offset): Renamed from
6401         cirrus_reg_required_here and cirrus_parse_offset respectively.
6402         (MAV_MODE?): Renamed from CIRRUS_MODE?.
6403
6404 2002-01-18  Richard Earnshaw  <rearnsha@arm.com>
6405             Keith Walker  <keith.walker@arm.com>
6406
6407         * tc-arm.c (ARM_EXT_V5J, ARM_ARCH_V5TEJ): Define.
6408         (insns): Add pattern for bxj instruction.
6409         (do_bxj): New function.
6410         (arm_cpus): Add arm926ej.
6411         (arm_archs): Add armv5tej.
6412
6413 2002-01-18  Richard Earnshaw  <rearnsha@arm.com>
6414
6415         * doc/c-arm.texi: Add new fpe options to list of supported flags.
6416
6417 2002-01-19  Keith Walker  <keith.walker@arm.com>
6418
6419         * tc-arm.c (arm_fpus): Add fpe2 and fpe3.
6420
6421 2002-01-18  Richard Earnshaw  <rearnsha@arm.com>
6422
6423         * NEWS: Mention new ARM command-line options and VFP support.
6424
6425         * config/tc-arm.c (ARM_CEXT_XSCALE): Replaces ARM_EXT_XSCALE.  All
6426         uses changed.
6427         (ARM_CEXT_MAVERICK): Similarly.
6428         (ARM_ANY): Now means any core instruction.
6429         (CPU_DEFAULT): Default to ARM_ANY.
6430         (uses_apcs_26, atcps, support_interwork, uses_apcs_float)
6431         (pic_code): Declare for all object types.  Make type int.
6432         (legacy_cpu, legacy_fpu, mcpu_cpu_opt, mcpu_fpu_opt, march_cpu_opt)
6433         (march_fpu_opt, mfpu_opt): Declare.
6434         (md_longopts): Tidy up conditional definitions.
6435         (arm_opts, arm_cpus, arm_archs, arm_fpus, arm_extensions)
6436         (arm_long_opts): New tables.
6437         (arm_parse_cpu, arm_parse_arch, arm_parse_fpu): New functions.
6438         (arm_parse_extension): New function.
6439         (md_parse_option): Rewrite using new table-driven system.
6440         (md_show_usage): Use new table-driven system.
6441         (md_begin): Calculate cpu_variant from command line option data.
6442         * doc/as.texinfo (ARM ISA options): Docuement new ARM-specific
6443         command-line options.
6444         * doc/c-arm.texi: Likewise.
6445
6446 2002-01-18  Andreas Jaeger  <aj@suse.de>
6447
6448         * as.c (parse_args): Update year.
6449
6450 2002-01-17  Timothy Wall  <twall@alum.mit.edu>
6451
6452         * config/tc-tic54x.c (encode_address): Add a more informative
6453         warning about incorrect syntax.
6454
6455 2002-01-17  Nick Clifton  <nickc@cambridge.redhat.com>
6456
6457         * po/gas.pot: Regenerate.
6458
6459 2002-01-17  Nick Clifton  <nickc@cambridge.redhat.com>
6460
6461         * macro.c (get_any_string): Add no-c-format comment to prevent
6462         confusion when translating string.
6463         * gasp.c (get_any_string): Add no-c-format comment to prevent
6464         confusion when translating string.
6465
6466 2002-01-16  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
6467             Johannes Stezenbach <js@convergence.de>
6468         * config/tc-mips.c (percent_op): Ensure longer percent_op's are
6469         matched before the shorter ones.
6470         (my_getSmallParser): Fix handling of nested parentheses in
6471         percent_op's. Code cleanup.
6472         (my_getPercentOp): New function, code from my_getSmallParser.
6473         (my_getSmallExpression): Fix handling of closing parentheses.
6474         Code cleanup. Better comments.
6475
6476 2002-01-16  Nick Clifton <nickc@redhat.com>
6477
6478         po/tr.po: New file: Turkish translation.
6479         configure.in (LINGUAS): Add "tr".
6480         configure: Regenerate.
6481
6482 2002-01-15  Richard Earnshaw  <rearnsha@arm.com>
6483
6484         Support for VFP instructions
6485         * tc-arm.c (CP_WB_OK, CP_NO_WB): New defines.
6486         (cp_address_required_here): New argument wb_ok.  When false, do not
6487         accept write-back forms of addressing.  Change all callers.
6488         (FPU_VFP_EXT_NONE, FPU_VFP_EXT_V1xD, FPU_VFP_VFP_V1)
6489         (FPU_VFP_EXT_V2): Define.
6490         (FPU_ARCH_VFP, FPU_ARCH_VFP_V1xD, FPU_ARCH_VFP_V1, FPU_ARCH_VFP_V2):
6491         Define in terms of above.
6492         (vfp_dp_reg_pos, vfp_sp_reg_pos, vfp_ldstm_type): New enums.
6493         (vfp_reg): New struct.
6494         (vfp_regs): New array of registers.
6495         (insns): Add VFP instructions.
6496         (sn_table): New array of VFP single-precision register names.
6497         (dn_table): New array of VFP double-precision register names.
6498         (all_reg_maps): Add the new register tables.
6499         (arm_reg_type): Add new values for above.  Increase RET_TYPE_MAX.
6500         (vfp_sp_reg_required_here, vfp_dp_reg_required_here, do_vfp_sp_monadic)
6501         (do_vfp_dp_monadic, do_vfp_sp_dyadic, do_vfp_dp_dyadic)
6502         (do_vfp_reg_from_sp, do_vfp_sp_reg2, do_vfp_sp_from_reg)
6503         (do_vfp_reg_from_dp, do_vfp_reg2_from_dp, do_vfp_dp_from_reg)
6504         (do_vfp_dp_from_reg2, vfp_psr_parse, vfp_psr_required_here)
6505         (do_vfp_reg_from_ctrl, do_vfp_ctrl_from_reg, do_vfp_sp_ldst)
6506         (do_vfp_dp_ldst, vfp_sp_reg_list, vfp_dp_reg_list, vfp_sp_ldstm)
6507         (vfp_dp_ldstm, do_vfp_sp_ldstmia, do_vfp_sp_ldstmdb, do_vfp_ldstmia)
6508         (do_vfp_dp_ldstmdb, do_vfp_xp_ldstmia, do_vfp_xp_ldstmdb)
6509         (do_vfp_sp_compare_z, do_vfp_dp_compare_z, do_vfp_dp_sp_cvt)
6510         (do_vfp_sp_dp_cvt): New functions.
6511         (md_begin): Set soft-float flag for appropriate VFP work.
6512         (md_atof): Handle VFP-format doubles.
6513         (md_parse_option): Handle VFP command-line options.
6514         (md_show_usage): Display VFP command-line options.
6515
6516 2002-01-15  Richard Earnshaw  <rearnsha@arm.com>
6517
6518         * tc-arm.c (md_parse_option): Tidy up setting of cpu_variant for
6519         various command line options.
6520
6521 2002-01-15  Nick Clifton  <nickc@cambridge.redhat.com>
6522
6523         * config/tc-xstormy16.c: (xstormy16_fix_adjustable): Do not fix
6524         vtinherit relocs.
6525         (xstormy16_md_apply_fix3): Do not return a value.
6526
6527 2002-01-14  Richard Earnshaw  <rearnsha@arm.com>
6528
6529         * tc-arm.c (md_longopts): On targets that aren't bi-endian, support
6530         the -EL/-EB option that matches the target's endianness.
6531         (md_parse_option): Likewise.
6532
6533 2002-01-14  Richard Earnshaw  <rearnsha@arm.com>
6534
6535         * tc-arm.c (md_longopts): Fix misplaced #endif -- the -oabi option
6536         is not dependent on ARM_BI_ENDIAN.
6537
6538 2002-01-14  Richard Earnshaw  <rearnsha@arm.com>
6539
6540         * tc-arm.c (all error messages): Normalize capitalization of messages.
6541
6542         * tc-arm.h (md_operand): Delete define.
6543         * tc-arm.c (in_my_get_expression): New static variable.
6544         (my_get_expression): Set and clear it.
6545         (md_operand): New function.  If called from my_get_expression
6546         put the error in inst.error.
6547         (output_inst): Now takes argument of instruction being assembled.
6548         Print it out with any error message.
6549         (do_ldst, do_ldstv4, thumb_load_store): Fault attempt to use a store
6550         with '=' syntax.
6551         (end_of_line): Don't update inst.error if it is already set.
6552
6553 2002-01-11  Richard Earnshaw  <rearnsha@arm.com>
6554
6555         * tc-arm.c (do_ldst): Fix handling an immediate expression pseudo
6556         op that can be translated into a mvn instruction.
6557
6558 2002-01-11  Steve Ellcey  <sje@cup.hp.com>
6559
6560         * gas/config/tc-ia64.h (MD_FLAGS_DEFAULT): New Macro for
6561         setting default md.flags.
6562         (SHT_INIT_ARRAY): New elf special section used by HP-UX.
6563         (SHT_FINI_ARRAY): New elf special section used by HP-UX.
6564         * gas/config/tc-ia64.c (setup_unwind_header): Add support
6565         for 32 bit unwind info blocks.
6566         (generate_unwind_image): Add support for different types
6567         of unwind images (32 bits and/or big-endian).
6568         (ia64_init): Use MD_FLAGS_DEFAULT to set md.flags.
6569         (ia64_target_format): Add support for hpux target formats.
6570         (ia64_gen_real_reloc_type): Add support for FUNC_IPLT_RELOC.
6571         (ia64_elf_section_type): Add support for SHT_INIT_ARRAY and
6572         SHT_FINI_ARRAY elf section types.
6573
6574 2002-01-10  Richard Earnshaw  <rearnsha@arm.com>
6575
6576         * tc-arm.c (struct reg_entry): Move before prototypes.
6577         (int_register, cp_register, fp_register): Delete.
6578         (reg_table): Delete.  Replaced with ...
6579         (rn_table, cp_table, cn_table, fn_table, mav_mvf_table)
6580         (mav_mvd_table, mav_mvfx_table, mav_mvdx_table, mav_mvax_table)
6581         (mav_dspsc_table): ... one table per register set.
6582         (arm_reg_hsh): Delete.
6583         (struct reg_map): New structure.
6584         (all_reg_maps): New array.
6585         (enum arm_reg_type): New enums.
6586         (build_reg_hsh): New function.
6587         (insert_reg_alias): Use hash table passed by caller.  Adjust all
6588         callers.
6589         (create_register_alias): New function, split out from ...
6590         (md_assemble): ... here.
6591         (md_begin): Build new register hash tables.
6592         (arm_reg_parse): New argument for the hash table to search.  Adjust all
6593         callers.
6594         (arm_reg_parse_any): New function.
6595         (co_proc_number): Look up the processor number in the processor hash
6596         table.
6597         (cirrus_regtype): Delete.
6598         (cirrus_register, cirrus_mvf_register, cirrus_mvd_register)
6599         (cirrus_mvfx_register, cirrus_mvdx_register, cirrus_mvax_register)
6600         (ARM_EXT_MAVERICKsc_register): Delete.
6601         (do_c_binops_1, do_c_binops_2, do_c_binops_3): Delete.
6602         (do_c_binops_1[a-o], do_c_binops_2[a-c], do_c_binops_3[a-d]): New
6603         functions.
6604         (do_c_triple_4, do_c_triple_5): Delete.
6605         (do_c_triple_4[ab], do_c_triple_5[a-h]): New functions.
6606         (do_c_quad_6): Delete.
6607         (do_c_quad_6[ab]): New functions.
6608         (do_c_binops, do_c_triple, do_c_quad, do_c_shift, do_c_ldst): Rework
6609         arguments to use new register parsing methods.
6610         (cirrus_reg_required_here): Likewise.
6611         (insns): Reclassify cirrus maverick worker functions.
6612         (cirrus_valid_reg): Delete.
6613
6614 2002-01-07  Jason Thorpe  <thorpej@wasabisystems.com>
6615
6616         * configure.in (sh*le): Set cpu_type=sh and endian=little.
6617         (sh*-*-netbsdelf*): New target.
6618         * configure: Regenerate.
6619         * tc-sh.h: Update copyright years.
6620         (TARGET_FORMAT): Add version for TE_NetBSD.
6621
6622 2002-01-07  Nick Clifton  <nickc@cambridge.redhat.com>
6623
6624         * read.c (emit_expr): Do not allow 'size' or 'nbytes' to go
6625         negative.
6626
6627 2002-01-06  Alan Modra  <amodra@bigpond.net.au>
6628
6629         * config/tc-m68k.h (md_prepare_relax_scan): Rewrite.
6630         * config/tc-m68k.c (md_relax_table): Add md_prepare_relax_scan comment.
6631
6632 2002-01-05  Daniel Jacobowitz  <drow@mvista.com>
6633
6634         * tc-mips.c (mips_cprestore_valid): New flag.
6635         (mips_frame_reg_valid): New flag.
6636         (macro) [M_JAL_2]: Check both flags.
6637         [M_JAL_A]: Likewise.
6638         (s_cprestore): Set mips_cprestore_valid.
6639         (tc_get_register): If setting mips_frame_reg, set
6640         mips_frame_reg_valid and clear mips_cprestore_valid.
6641         (s_mips_ent): Clear both flags.
6642         (s_mips_end): Clear both flags.
6643
6644 2002-01-05  Alan Modra  <amodra@bigpond.net.au>
6645
6646         * write.c (write_object_file): Make use of bfd_section_list_remove.
6647         * config/obj-ecoff.c (ecoff_frob_file): Likewise.
6648         * config/tc-mmix.c (mmix_frob_file): Likewise.
6649
6650 2002-01-04  Jason Thorpe  <thorpej@wasabisystems.com>
6651
6652         * configure.in (i386-*-netbsdelf*): Collapse target into...
6653         (i386-*-netbsd*): ...this.  Add support for x86-64.
6654         * configure: Regenerated.
6655
6656 2002-01-03  matthew green  <mrg@redhat.com>
6657
6658         * config/tc-ppc.c (md_parse_option): BookE is not Motorola specific.
6659
6660 2002-01-02  Nick Clifton  <nickc@cambridge.redhat.com>
6661
6662         * config/tc-m68k.c (md_estimate_size_before_relax): Test for a
6663         NULL frag link.
6664
6665 For older changes see ChangeLog-0001
6666 \f
6667 Local Variables:
6668 mode: change-log
6669 left-margin: 8
6670 fill-column: 74
6671 version-control: never
6672 End: