Move entries to correct ChangeLog file...
[external/binutils.git] / gas / ChangeLog-2005
1 2005-12-30  Sterling Augustine  <sterling@tensilica.com>
2             Bob Wilson  <bob.wilson@acm.org>
3
4         * config/tc-xtensa.c (op_placement_info_struct): Delete single,
5         single_size, widest, and widest_size fields.  Add narrowest_slot.
6         (xg_emit_insn_to_buf): Remove fmt parameter and compute it here.
7         Use xg_get_single_slot to find the slot.
8         (finish_vinsn): Use emit_single_op instead of bundle_single_op.
9         (bundle_single_op): Rename this to....
10         (bundle_tinsn): ...this function, which builds a vliw_insn but does
11         not call finish_vinsn.
12         (emit_single_op): Use bundle_tinsn instead of bundle_single_op.
13         (relax_frag_immed): Get num_slots from cur_vinsn.
14         (convert_frag_narrow): Update call to xg_emit_insn_to_buf.
15         (convert_frag_immed): Likewise.  Also, get num_slots from cur_vinsn.
16         (init_op_placement_info_table): Set narrowest_slot field.  Remove
17         code for deleted fields.
18         (xg_get_single_size): Return narrowest_size field, not single_size.
19         (xg_get_single_format): Return narrowest field, not single.
20         (xg_get_single_slot): New.
21         (tinsn_to_insnbuf): Rewrite to use tinsn_to_slotbuf.
22         * config/xtensa-relax.c (widen_spec_list): Add wide branch relaxations.
23         (transition_applies): Check wide branch option availability.
24
25 2005-12-29  Sterling Augustine  <sterling@tensilica.com>
26
27         * config/tc-xtensa.h (MAX_MEM_FOR_RS_ALIGN_CODE): Define.
28
29 2005-12-29  Sterling Augustine  <sterling@tensilica.com>
30
31         * config/tc-xtensa.c (tinsn_to_slotbuf): Do not zero slotbuf.
32
33 2005-12-27  Nathan Sidwell  <nathan@codesourcery.com>
34
35         * config/tc-mt.c (mt_arch): Default to ms1_16_002.
36         (md_parse_options): Only allow lowercase.
37         (md_show_usage): Update.
38
39 2005-12-27  Leif Ekblad  <leif@rdos.net>
40
41         * configure.tgt: Add support for RDOS targets.
42
43 2005-12-27  James Troup  <james@nocrew.org>
44
45         PR 1300
46         * config/tc-arm.c (md_apply_fix): Fix casts to match type in
47         printf format.
48
49 2005-12-27  Alan Modra  <amodra@bigpond.net.au>
50
51         * Makefile.am: Run "make dep-am".
52         * Makefile.in: Regenerate.
53         * po/POTFILES.in: Regenerate.
54
55 2005-12-22  Jan Beulich  <jbeulich@novell.com>
56
57         * symbols.h (snapshot_symbol): First parameter is now pointer
58         to pointer to symbolS.
59         * symbols.c (snapshot_symbol): Likewise. Store resulting symbol
60         there. Use symbol_equated_p.
61         * expr.c (resolve_expression): Change first argument to
62         snapshot_symbol. Track possibly changed add_symbol consistently
63         across function. Resolve more special cases with known result.
64         Also update final_val when replacing add_symbol.
65
66 2005-12-13  Jan-Benedict Glaw  <jbglaw@lug-owl.de>
67
68         * config/tc-vax.c: Convert to ISO C90 format.  Fix formatting and
69         white space usage as well.
70
71 2005-12-20  Sterling Augustine  <sterling@tensilica.com>
72
73         * config/tc-xtensa.c (xtensa_mark_narrow_branches): Set
74         is_aligning_branch flag.
75         (find_address_of_next_align_frag): Limit by xtensa_fetch_width.
76         (future_alignment_required): Except for frags with is_aligning_branch
77         flag set, call frag_wane for frags that do not need to be reexamined
78         for aligning.
79         (relax_frag_immed): Replace orig_vinsn with cur_vinsn to fix a leak.
80         (convert_frag_immed): Likewise.
81         (convert_frag_narrow): Check is_aligning_branch flag.
82         * config/tc-xtensa.h (xtensa_frag_type): Add is_aligning_branch flag.
83
84 2005-12-20  Sterling Augustine  <sterling@tensilica.com>
85
86         * config/tc-xtensa.c (xg_find_narrowest_format): Optimize 1 slot case.
87         (xg_init_vinsn): Remove redundant initialization.
88         (xg_clear_vinsn): Zero all the slots with a single memset.
89         * config/xtensa-istack.h (vliw_insn): Move insnbuf field after slots.
90
91 2005-12-20  Nathan Sidwell  <nathan@codesourcery.com>
92
93         * doc/t-mt.texi: Update MS1 to MT.
94
95 2005-12-16  Nathan Sidwell  <nathan@codesourcery.com>
96
97         Second part of ms1 to mt renaming.
98         * configure: Rebuilt.
99         * configure.in (mt): Remove special case.
100         * config/tc-mt.c (opcodes/mt-desc.h, opcodes/mt-opc.h): Change
101         #includes.
102         (mt_insn, mt_mach, mt_mach_bitmask, mt_flags, mt_architectures):
103         Rename, adjust.
104         (md_parse_option, md_show_usage, md_begin, md_assemble,
105         md_cgen_lookup_reloc, md_atof): Adjust.
106         (mt_force_relocation, mt_apply_fix, mt_fix_adjustable): Rename, adjust.
107         * config/tc-mt.h (TC_MT): Rename.
108         (LISTING_HEADER, TARGET_ARCH, TARGET_FORMAT): Adjust.
109         (md_apply_fix): Adjust.
110         (mt_apply_fix, mt_fix_adjustable, mt_force_relocation): Rename.
111         (TC_FORCE_RELOCATION, tc_fix_adjustable): Adjust.
112
113 2005-12-14  Jan Beulich  <jbeulich@novell.com>
114
115         * config/tc-i386.c (add_prefix): More fine-grained handling of
116         REX prefixes. Or new prefix value into i.prefix instead of
117         assigning.
118
119 2005-12-13  DJ Delorie  <dj@redhat.com>
120
121         * config/tc-m32c.c (m32c_md_end): Only pad code sections.
122
123 2005-12-12  Paul Brook  <paul@codesourcery.com>
124
125         * config/tc-arm.c (do_branch): Generate EABI branch relocations.
126         (do_bl): New function.
127         (do_blx): Generate BFD_RELOC_ARM_PCREL_CALL relocation.
128         (do_t_blx): Generate BFD_RELOC_THUMB_PCREL_BRANCH23.
129         (insns): Use do_bl.
130         (md_pcrel_from_section): Add BFD_RELOC_ARM_PCREL_CALL and
131         BFD_RELOC_ARM_PCREL_JUMP.
132         (md_apply_fix): Merge BFD_RELOC_ARM_PCREL_BRANCH and
133         BFD_RELOC_ARM_PCREL_BLX cases.  Handle BFD_RELOC_ARM_PCREL_CALL and
134         BFD_RELOC_ARM_PCREL_JUMP.
135         (tc_gen_reloc): Handle BFD_RELOC_ARM_PCREL_CALL and
136         BFD_RELOC_ARM_PCREL_JUMP.
137
138 2005-12-12  Nathan Sidwell  <nathan@codesourcery.com>
139
140         * configure.in: Replace ms1 arch with mt arch.
141         * configure: Rebuilt.
142         * configure.tgt: Replace ms1 arch with mt arch.
143         * config/tc-mt.c: Renamed from tc-ms1.c: Update include files.
144         * doc/Makefile.am (CPU_DOCS): Replace ms1 files with mt files.
145         * doc/Makefile.in: Rebuilt.
146
147 2005-12-07  Hans-Peter Nilsson  <hp@axis.com>
148
149         Change 32-bit-branch expansion for --pic.
150         * config/tc-cris.c (STATE_COND_BRANCH_PIC): New relaxation state.
151         (md_cris_relax_table): Add entry for STATE_COND_BRANCH_PIC.
152         (cris_any_v0_v10_long_jump_size_pic): New macro.
153         (md_estimate_size_before_relax): Handle STATE_COND_BRANCH_PIC.
154         (md_convert_frag): Similar.
155         (md_create_long_jump): Change 32-bit-branch expansion for --pic.
156         (md_assemble, gen_cond_branch_32): Adjust similarly.
157         (md_parse_option) <case OPTION_PIC>: Adjust md_long_jump_size.
158         <case OPTION_ARCH>: Similar, if --pic.
159
160 2005-12-06  H.J. Lu  <hongjiu.lu@intel.com>
161
162         PR gas/1874
163         * config/tc-i386.c (match_template): Handle monitor.
164         (process_suffix): Likewise.
165
166 2005-12-05  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
167
168         Bug gas/1948
169         * symbols.c (colon): Also check if now_seg is bss_section when a symbol
170         is being redefined.
171
172 2005-12-02  Arnold Metselaar  <arnoldm@sourceware.org>
173
174         * config/tc-z80.c (emit_ldreg): fix bug in ld rr,<xx>
175
176 2005-11-26  Arnold Metselaar  <arnoldm@sourceware.org>
177
178         * config/tc-z80.c (z80_start_line_hook): issue an error when
179         redefining a symbol with equ
180         * doc/as.texinfo(equ<z80>): mention difference with .equiv 
181         * doc/as.texinfo(err): fix typo 
182         * doc/c-z80.texi(equ): redefining a symbol with equ is no longer 
183         allowed
184
185 2005-11-24  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
186
187         Bug gas/1896
188         * config/tc-hppa.c (hppa_fix_adjustable): Don't reject for reduction
189         R_HPPA relocations that are 32-bits wide.
190
191 2005-11-23  Daniel Jacobowitz  <dan@codesourcery.com>
192             Thiemo Seufer <ths@networkno.de>
193
194         * config/tc-mips.c (append_insn): Handle BFD_RELOC_16_PCREL_S2.
195         (macro_build): Complain for invalid branch displacements.
196         (mips_validate_fix): Delete.
197         (md_apply_fix): Re-add pcrel support for branches.  Use consistent
198         text for misaligned branch targets.
199         (tc_gen_reloc: Re-add pcrel support for branches.  Handle strange
200         BFD pcrel processing.  Remove error for unresolved branches.
201         * config/tc-mips.h (TC_VALIDATE_FIX, mips_validate_fix): Delete.
202
203 2005-11-22  James E Wilson  <wilson@specifix.com>
204
205         * config/tc-ia64.c (emit_one_bundle): Perform last_slot < 0 check
206         even when manual_bundling isn't set.
207
208         * config/tc-ia64.c (slot_index): Emit an error instead of a warning
209         when the frag chain is broken by section switching.
210
211 2005-11-18  Jie Zhang  <jie.zhang@analog.com>
212
213         * config/bfin-defs.h (IS_BREG, IS_LREG): New macros.
214         * config/bfin-parse.y (asm_1): Check register type for load immediate
215         instruction.
216
217 2005-11-17  Alexandre Oliva  <aoliva@redhat.com>
218
219         * config/tc-ppc.c (ppc_frob_file_before_adjust): Do not reference
220         dotname.
221         * write.c (write_object_file): Do not remove used weakrefd.
222
223 2005-11-17  Jan Beulich  <jbeulich@novell.com>
224
225         * dw2gencfi.c (dot_cfi): Put argument parsing for cases
226         DW_CFA_restore and DW_CFA_undefined in a loop.
227
228 2005-11-17  Jan Beulich  <jbeulich@novell.com>
229
230
231         * symbols.h (S_CLEAR_VOLATILE): Declare.
232         * symbols.c (colon): Also accept redefinable symbols for
233         redefinition. Clone them before modifying.
234         (S_CLEAR_VOLATILE): Define.
235         * cond.c (s_ifdef): Also test for equated symbols.
236         * read.c (s_comm_internal): Also exclude non-redefinable
237         equated symbols. Clone redefinable ones before modifying.
238         (s_weakref): Clone redefinable symbols before modifying.
239         * doc/internals.texi: Document sy_volatile, sy_forward_ref,
240         S_IS_VOLATILE, S_SET_VOLATILE, S_CLEAR_VOLATILE,
241         S_IS_FORWARD_REF, and S_SET_FORWARD_REF.
242
243 2005-11-16  Alan Modra  <amodra@bigpond.net.au>
244
245         * config/tc-hppa.c (pa_comm): Set bfd_com_section segment.
246
247 2005-11-16  Alan Modra  <amodra@bigpond.net.au>
248
249         * configure.tgt (i386-*-gnu*): Set em=gnu.
250         * config/te-gnu.h: New file.
251         * config/tc-i386.c: Don't use '/' as comment char for TE_GNU.
252
253 2005-11-16  Alan Modra  <amodra@bigpond.net.au>
254
255         * config/tc-ppc.c (ppc_pe_comm): Set bfd_com_section segment.
256         * config/tc-alpha.c (s_alpha_comm): Likewise.  Also, remove
257         redundant check.
258         * read.c (s_lsym): Remove non-BFD assembler sym handling.
259
260 2005-11-16  Alan Modra  <amodra@bigpond.net.au>
261
262         * read.c (s_comm_internal): Set bfd_com_section segment.
263         (s_mri_common): Likewise.
264         * write.c (write_object_file): Remove non-BFD assembler common
265         sym handling.
266
267 2005-11-15  Daniel Jacobowitz  <dan@codesourcery.com>
268
269         * config/tc-arm.c (s_arm_unwind_save_core): Don't emit an extra
270         opcode if r4-r15 are not saved.
271
272 2005-11-15  Alan Modra  <amodra@bigpond.net.au>
273
274         * symbols.c (S_GET_VALUE): Remove non-BFD assembler recursion guard.
275
276 2005-11-14  Jan Beulich  <jbeulich@novell.com>
277
278         * config/tc-ia64.c (AR_FCR, AR_EFLAG, AR_CSD, AR_SSD, AR_CFLG,
279         AR_FSR, AR_FIR, AR_FDR, AR_CCV, AR_EC): Define.
280         (ar): Use AR_* instead of literals.
281         (CR_DCR, CR_ITM, CR_IVA, CR_PTA, CR_GPTA, CR_LID, CR_ITV,
282         CR_PMV, CR_CMCV): Define.
283         (cr): Use CR_* instead of literals.
284
285 2005-11-14  Jan Beulich  <jbeulich@novell.com>
286
287         * config/tc-ia64.c (md): Rename regsym to indregsym and move
288         it to the end of the structure.
289         (ar): Field regnum is unsigned.
290         (cr): Likewise:
291         (indirect_reg): Likewise.
292         (declare_register_set): Parameter regnum is unsigned.
293         (declare_register): Parameter numregs and base_regnum are
294         unsigned. So is the local loop variable.
295         (md_begin): Restrict scope of local variable regnum, which
296         also is unsigned. Replace loops with function calls where
297         possible. Re-order things so that register groups are kept
298         together. Remove all uses of regsym except for indirect
299         registers. Replace use of regsym by indregsym for indirect
300         registers.
301         (ia64_optimize_expr): Replace use of regsym by indregsym for
302         indirect registers, with appropriate bias.
303
304 2005-11-14  David Ung  <davidu@mips.com>
305
306         * config/tc-mips.c (mips16_ip): Add handling of 'm' and 'M' codes
307         for the MIPS16e save/restore instructions.
308
309 2005-11-11  Jan Beulich  <jbeulich@novell.com>
310
311         * doc/Makefile.am: Make asconfig.texi writeable before trying
312         to write to it.
313         * doc/Makefile.in: Refresh.
314
315 2005-11-10  Jan Beulich  <jbeulich@novell.com>
316
317         * config/tc-i386.c (intel_e11): Don't special-case segment
318         registers in brackets.
319
320 2005-11-10  Nick Clifton  <nickc@redhat.com>
321
322         * config/tc-arm.c (BAD_ADDR_MODE): Define.
323         (arm_reg_parse_multi): Return NULL rather than FAIL.
324         (arm_reg_parse): Fix comment, the function returns FAIL rather
325         than NULL if it is unable to parse the register name.
326         (do_ldrex): Use BAD_ADDR_MODE.
327         Change error message for PC-relative addressing.
328         (do_strex): Likewise.
329         (do_t_ldrex): Use BAD_ADDR_MODE.
330         (do_t_strex): Likewise.
331
332 2005-11-08   Jean-Jacques Metayer  <jean-jacques.metayer@thomson.net>
333
334         * config/tc-sparc.c (isoctal): Fix thinko.
335
336 2005-11-08  Arnold Metselaar  <arnold.metselaar@planet.nl>
337
338         * expr.c (operand <case '$'>): Use DOLLAR_AMBIGU rather than
339         flag_mri_m68k as condition for parsing the '$' as a prefix.
340         * as.h (DOLLAR_AMBIGU): Define if needed.
341
342 2005-11-08  Nathan Sidwell  <nathan@codesourcery.com>
343
344         Add ms2 support.
345         * config/tc-ms1.c (ms1_mach_bitmask): Initialize to MS1.
346         (ms1_architectures): Add ms2.
347         (md_parse_option): Add ms2.
348         (md_show_usage): Add ms2.
349         (md_assemble): Add JAL_HAZARD detection logic.
350         (md_cgen_lookup_reloc): Add MS1_OPERAND_LOOPSIZE case.
351         * doc/c-ms1.texi: New.
352         * doc/all.texi: Add MS1.
353         * doc/Makefile.am (CPU_DOCS): Add c-ms1.texi.
354         * doc/Makefile.in: Rebuilt.
355         * doc/Makefile: Rebuilt.
356
357 2005-11-07  Steve Ellcey  <sje@cup.hp.com>
358
359         * configure: Regenerate after modifying bfd/warning.m4.
360
361 2005-11-07  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
362
363         PR gas/1804
364         * config/tc-hppa.c (md_apply_fix): Use number_to_chars_bigendian to
365         output constant data.
366
367 2005-11-07  Mark Mitchell  <mark@codesourcery.com>
368
369         * doc/Makefile.am (asconfig.texi): Set top_srcdir.
370         * doc/Makefile.in: Regenerated.
371         * doc/as.texinfo: Document "@FILE".
372
373 2005-11-07  Nick Clifton  <nickc@redhat.com>
374
375         PR binutils/1568
376         * config/obj-coff.c (obj_coff_section): Set readonly flag with the
377         'x' attribute.  Remember the actions of the 'w' and 'n' attributes
378         and do not allow the 'x','s' or 'd' attributes to change them.
379
380 2005-11-07  John Levon  <levon@movementarian.org>
381
382         * config/tc-i386.h (tc_comment_chars): Define.
383         * config/tc-i386.c (line_comment_chars): Use '/' unconditionally.
384         (i386_comment_chars): Add.
385         (md_parse_options): Process OPTION_DIVIDE.
386         (md_show_usage): Describe --divide option.
387         * doc/c-i386.texi: Document --divide option.
388
389 2005-11-07  Arnold Metselaar  <arnold.metselaar@planet.nl>
390
391         * expr.c (op_encoding): Map '=' to O_SINGLE_EQ, if defined.
392         * config/tc-z80.h: Define O_SINGLE_EQ as O_eq.
393
394 2005-11-07  Alan Modra  <amodra@bigpond.net.au>
395
396         * macro.c (buffer_and_nest): Skip labels regardless of
397         NO_PSEUDO_DOT and flag_m68k_mri.
398
399 2005-11-07  Arnold Metselaar  <arnold.metselaar@planet.nl>
400
401         * expr.c (integer_constant): Match only 'B' as binary suffix if
402         NUMBERS_WITH_SUFFIX and LOCAL_LABELS_FB.  Allow both 'b' and 'B'
403         otherwise.
404
405 2005-11-04  Alexandre Oliva  <aoliva@redhat.com>
406
407         * read.c (s_weakref): Do not permit redefinitions.
408         * symbols.c (colon): Do not permit redefinitions of equated
409         symbols.
410
411 2005-11-01  Thiemo Seufer  <ths@networkno.de>
412
413         PR gas/1299
414         * Makefile.am: Disable -Werror for the itbl-lex.o rule.
415         * Makefile.in: Regenerate.
416
417 2005-11-01  Thiemo Seufer  <ths@networkno.de>
418
419         * config/tc-mips.c (md_parse_option): Fix typo in comment.
420
421 2005-10-30  Mark Mitchell  <mark@codesourcery.com>
422
423         * as.c (show_usage): Document "@FILE".
424
425 2005-10-30  H.J. Lu  <hongjiu.lu@intel.com>
426
427         * Makefile.am (OBJ_FORMATS): Remove vms.
428         Run "make dep-am".
429         * Makefile.in: Regenerated.
430
431         * dep-in.sed: Replace " ./" with " ".
432
433 2005-10-28  Dave Brolley  <brolley@redhat.com>
434
435         Contribute the following change:
436         2005-09-19  Dave Brolley  <brolley@redhat.com>
437
438         * config/tc-m32c.c (default_isa): New static variable.
439         (m32c_isa): Now of type CGEN_BITSET.
440         (md_begin): Pass &m32c_isa to m32c_cgen_cpu_open.
441
442 2005-10-28  Paul Brook  <paul@codesourcery.com>
443
444         * config/tc-arm.c (aeabi_set_public_attributes): Use selected_cpu
445         instead of mcpu_cpu_opt.
446
447 2005-10-27  Sterling Augustine  <sterling@tensilica.com>
448
449         * config/tc-xtensa.c (find_vinsn_conflicts): Change error messages to
450         refer to "ports" instead of "queues".
451         (check_t1_t2_reads_and_writes): Pass correct interface values to
452         xtensa_interface_inout.
453
454 2005-10-27  Jan Beulich  <jbeulich@novell.com>
455
456         * read.c (assign_symbol): Also consider equates already defined.
457         * symbols.c (symbol_clone): Also clone the underlying BFD symbol.
458         * config/obj-coff.h (obj_symbol_clone_hook): New.
459         (coff_obj_symbol_clone_hook): Declare.
460         * config/obj-coff.c (coff_obj_symbol_clone_hook): New.
461
462 2005-10-26  DJ Delorie  <dj@redhat.com>
463
464         * config/tc-m32c.c (md_relax_table, subtype_mappings,
465         md_convert_frag): Add jsr.w support.
466
467         * config/tc-m32c.c (md_assemble): Don't use errmsg as the format
468         itself.
469         (md_cgen_lookup_reloc): Add m32c bitbase operands.  Add 8-s24
470         and imm-8-HI operands.
471
472 2005-10-26  Paul Brook  <paul@codesourcery.com>
473
474         * config/tc-arm.c (insns): Correct "sel" entry.
475
476 2005-10-26  Jan Beulich  <jbeulich@novell.com>
477
478         * config/tc-i386.c (i386_operand): Don't check register prefix here.
479         (parse_real_register): Rename from parse_register.
480         (parse_register): New.
481         (i386_parse_name): New.
482         (md_operand): New.
483         (intel_e11): Don't tolerate registers in offset expressions anymore.
484         (intel_get_token): Don't check register prefix here. Copy the actual
485         register token, not the canonical register name.
486         * config/tc-i386.h (md_operand): Delete.
487         (i386_parse_name): Declare.
488         (md_parse_name): Define.
489
490 2005-10-25  Arnold Metselaar  <arnold.metselaar@planet.nl>
491
492         * Makefile.am: Add Z80 cpu.
493         * Makefile.in: Regenerated.
494         * app.c (do_scrub_chars)<TC_Z80>: Correctly scrub "ex af,af'"
495         and disallow newlines in quoted strings.
496         * configure.tgt: Add z80-*-coff.
497         * config/obj-coff.h: Add format "coff-z80".
498         * doc/Makefile.am: Add c-z80.texi.
499         * doc/Makefile.in: Regenerated.
500         * doc/all.texi: Add Z80.
501         * doc/c-z80.texi: New file
502         * doc/as.texinfo: Add z80 options and some z80-related remarks.
503         * config/tc-z80.c: New file
504         * config/tc-z80.h: New file
505         * NEWS: Mention new support.
506
507 2005-10-25  H.J. Lu  <hongjiu.lu@intel.com>
508
509         * write.c (adjust_reloc_syms): Undo the change made on
510         2005-04-26 to allow local symbol set to undefined symbol.
511
512 2005-10-24  H.J. Lu  <hongjiu.lu@intel.com>
513
514         * Makefile.am (bfin-parse.tab.h): Removed.
515         (bfin-parse.h): Added.
516         * Makefile.in: Regenerated.
517
518 2005-10-25  Alan Modra  <amodra@bigpond.net.au>
519
520         * po/POTFILES.in: Regenerate.
521         * po/gas.pot: Regenerate.
522
523 2005-10-24  Bernd Schmidt  <bernd.schmidt@analog.com>
524
525         * config/tc-bfin.c (Expr_Node_Gen_Reloc): If have symbol + constant,
526         make a single reloc with an offset rather than a stack.
527         * config/tc-bfin.h (MD_APPLY_SYM_VALUE): Define to 0.
528
529 2005-10-24  Alexandre Oliva  <aoliva@redhat.com>
530
531         * read.c (potable): Add weakref.
532         (s_weakref): New.
533         * read.h (s_weakref): Declare.
534         * struc-symbol.h (struct symbol): Add sy_weakrefr and sy_weakrefd.
535         * symbols.c (colon): Clear weakrefr.
536         (symbol_find_exact): Rename to, and reimplement in terms of...
537         (symbol_find_exact_noref): ... new function.
538         (symbol_find): Likewise...
539         (symbol_find_noref): ... ditto.
540         (resolve_symbol_value): Resolve weakrefr without setting their
541         values.
542         (S_SET_WEAK): Call hook.
543         (S_GET_VALUE): Follow weakref link.
544         (S_SET_VALUE): Clear weakrefr.
545         (S_IS_WEAK): Follow weakref link.
546         (S_IS_WEAKREFR, S_SET_WEAKREFR, S_CLEAR_WEAKREFR): New.
547         (S_IS_WEAKREFD, S_SET_WEAKREFD, S_CLEAR_WEAKREFD): New.
548         (symbol_set_value_expression, symbol_set_frag): Clear weakrefr.
549         (symbol_mark_used): Follow weakref link.
550         (print_symbol_value_1): Print weak, weakrefr and weakrefd.
551         * symbols.h (symbol_find_noref, symbol_find_exact_noref): Declare.
552         (S_IS_WEAKREFR, S_SET_WEAKREFR, S_CLEAR_WEAKREFR): Declare.
553         (S_IS_WEAKREFD, S_SET_WEAKREFD, S_CLEAR_WEAKREFD): Declare.
554         * write.c (adust_reloc_syms): Follow weakref link.  Do not
555         complain if target is undefined.
556         (write_object_file): Likewise.  Remove weakrefr symbols.  Drop
557         unreferenced weakrefd symbols.
558         * config/obj-coff.c (obj_frob_symbol): Do not force WEAKREFD
559         symbols EXTERNAL.
560         (pecoff_obj_set_weak_hook, pecoff_obj_clear_weak_hook): New.
561         * config/obj-coff.h (obj_set_weak_hook, obj_clear_weak_hook): Define.
562         * doc/as.texinfo: Document weakref.
563         * doc/internals.texi: Document new struct members, internal
564         functions and hooks.
565
566 2005-10-24  Jie Zhang  <jie.zhang@analog.com>
567
568         * Makefile.am (bfin-parse.h): Renamed from bfin-parse.tab.h.
569         (EXTRA_DIST): Add bfin-parse.h and bfin-lex.c.
570         * Makefile.in: Regenerate.
571         * config/bfin-lex.l: Include bfin-parse.h instead of bfin-parse.tab.h.
572         * config/tc-bfin.c (md_chars_to_number): Change the type of first
573         argument from unsigned char * to char * to remove signedness warnings.
574
575 2005-10-24  Jan Beulich  <jbeulich@novell.com>
576
577         * config/tc-ia64.c (enum reg_symbol): Delete IND_MEM.
578         (dot_rot): Change type of num_* variables. Check for positive count.
579         (ia64_optimize_expr): Re-structure.
580         (md_operand): Check for general register.
581
582 2005-10-24  Jan Beulich  <jbeulich@novell.com>
583
584         * config/tc-ia64.c (declare_register): Call symbol_create.
585         (md_begin): Remove local variables total, ar_base, and cr_base.
586         Start loops for registers at their respective first one. Don't
587         update md.regsym for alias names. Generate alias name tp for r13.
588
589 2005-10-21  DJ Delorie  <dj@redhat.com>
590
591         * config/tc-m32c.c (md_cgen_lookup_reloc): Add more relocs.  Print
592         names unstead of numbers.
593
594 2005-10-19  David Ung  <davidu@mips.com>
595
596         * config/tc-mips.c (append_insn): Convert MIPS16 jr/jalr jumps
597         into jrc/jalrc versions if ISA_MIPS32+ and not doing the swap,
598         hence avoiding to emit a nop.
599
600 2005-10-19  Jie Zhang  <jie.zhang@analog.com>
601
602         * config/tc-bfin.c (md_begin): Let the lex_type of '(' be
603         LEX_BEGIN_NAME.
604         (bfin_start_line_hook): Remove the workaround for LSETUP(.
605         (bfin_name_is_register): Remove the workarounds for LSETUP(
606         and SAA(.
607         (bfin_start_label): Ditto.
608
609 2005-10-18  Bob Wilson  <bob.wilson@acm.org>
610
611         * config/tc-xtensa.c (xtensa_end_directive): Restore
612         default_lit_sections regardless of use_literal_section.
613
614 2005-10-18  Jie Zhang  <jie.zhang@analog.com>
615
616         * Makefile.am (bfin-lex.c): Update ylwrap invocation.
617         * Makefile.in: Regenerated.
618
619 2005-10-18  Arnold Metselaar  <arnold.metselaar@planet.nl>
620
621         * doc/as.texinfo (.loc) Fix placement of '@end table'.
622
623 2005-10-17  Bob Wilson  <bob.wilson@acm.org>
624
625         * config/xtensa-istack.h (TInsn): Replace dwarf2_line_info with an
626         unsigned line number.  Do not include "dwarf2dbg.h".
627         * config/tc-xtensa.c (md_pseudo_table): Remove entry for "loc".
628         (xtensa_dwarf2_directive_loc, xtensa_dwarf2_emit_insn): Delete.
629         (xg_build_to_insn, xg_build_token_insn): Update TInsn uses.
630         (md_assemble): Use as_where instead of dwarf2_where.
631         (xg_assemble_vliw_tokens): Use unsigned line numbers instead of
632         dwarf2_line_infos.  Change to call new_logical_line followed by
633         dwarf2_emit_insn.
634
635 2005-10-14  Mike Frysinger <vapier@gentoo.org>
636
637         * doc/as.texinfo (Section): Add missing ']' to .section example.
638
639 2005-10-12  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
640
641         PR binutils/941
642         * config/tc-hppa.c (pa_ip): Use as_bad instead of as_fatal when an
643         unknown opcode is found.
644
645 2005-10-12  Mark Mitchell  <mark@codesourcery.com>
646
647         * NEWS: Mention @file.
648
649 2005-10-12  Nick Clifton  <nickc@redhat.com>
650
651         * config/tc-avr.c: Convert to ISO C90 format.  Fix formatting and
652         generally tidy up the code.
653         * config/tc-avr.h: Likewise.
654
655 2005-10-12  Jan Beulich  <jbeulich@novell.com>
656
657         * config/tc-ia64.c (dot_reg_val): Use expression_and_evaluate.
658         (dot_pred_rel): Likewise.
659         (parse_operand): Likewise.
660         (ia64_unrecognized_line): Likewise.
661         (md_operand): Likewise.
662
663 2005-10-11  Jan Beulich  <jbeulich@novell.com>
664
665         * expr.h (enum expr_mode): New.
666         (expression): Pass third argument to expr.
667         (expression_and_evaluate): New.
668         (deferred_expression): New.
669         (expr): Add third parameter.
670         (resolve_expression): New.
671         * struc-symbol.h (struct symbol): New members sy_volatile and
672         sy_forward_ref.
673         * symbols.c, symbols.h (symbol_clone): New.
674         (symbol_clone_if_forward_ref): New.
675         (snapshot_symbol): New.
676         (S_IS_VOLATILE): New.
677         (S_IS_FORWARD_REF): New.
678         (S_SET_VOLATILE): New.
679         (S_SET_FORWARD_REF): New.
680         * as.c (macro_expr): Use expression_and_evaluate.
681         * cond.c (s_if): Likewise.
682         (s_elseif): Likewise.
683         * dw2gencfi.c (cfi_parse_reg): Likewise.
684         * expr.c (operand): Add second parameter. Optionally call
685         deferred_expression. Pass mode argument to itself and md_parse_name.
686         Check mode before trying to evaluate symbol. Call
687         symbol_clone_if_forward_ref for both operands.
688         (expr): Add third parameter. Pass mode to operand and itself.
689         Optionally call resolve_expression.
690         (resolve_expression): New.
691         (get_single_number): Pass second argument to operand.
692         * read.c (potable): New entry for .eqv.
693         (read_a_source_file): Handle new == operator.
694         (get_absolute_expr): Use expression_and_evaluate.
695         (s_lsym): Likewise.
696         (assign_symbol): Rename second parameter. Call symbol_clone on
697         legal and illegal redefinition. Call S_SET_VOLATILE and
698         S_SET_FORWARD_REF depending on mode.
699         (s_set): Update description.
700         (s_space): Call resolve_expression.
701         (pseudo_set): Optionally call deferred_expression. Check
702         S_IS_FORWARD_REF before trying to simplify/resolve an expression.
703         (equals): Handle ==.
704         * config/tc-ia64.h (md_parse_name): Add mode parameter.
705         * config/tc-arc.c (arc_parse_cons_expression): Likewise.
706         * config/tc-m32r.h (md_parse_name): Likewise.
707         (m32r_parse_name): Likewise.
708         * config/tc-mmix.h (md_parse_name): Likewise.
709         * config/tc-mn10300.h (md_parse_name): Likewise.
710         (mn10300_parse_name): Likewise.
711         * config/tc-ppc.h (md_parse_name): Likewise.
712         * config/tc-sh.h (md_parse_name): Likewise.
713         (sh_parse_name): Likewise.
714         * config/tc-sh64.h (md_parse_name): Likewise.
715         (sh64_consume_datalabel): Likewise.
716         * config/tc-tic54x.h (md_parse_name): Likewise.
717         * config/tc-m32r.c (m32r_parse_name): Add mode parameter. Check it
718         before trying to evaluate symbol.
719         * config/tc-mn10300.c (mn10300_parse_name): Likewise.
720         * config/tc-sh.c (sh_parse_name): Likewise.
721         * config/tc-sh64.c (sh64_consume_datalabel): Add mode parameter. Pass
722         second argument to operandf. Pass mode parameter to sh_parse_name.
723         * doc/as.texinfo: Document .eqv and the == assignment operator.
724
725 2005-10-10  Ian Lance Taylor  <ian@airs.com>
726
727         * Makefile.am (EXTRA_DIST): Remove bfin-lex.l and bfin-defs.h.
728         * Makefile.in: Regenerate.
729
730 2005-10-10  Arnold Metselaar  <arnold.metselaar@planet.nl>
731
732         * expr.c (operator): Allow "!=" as a synonym for "<>".
733         * doc/as.texinfo (Infix Op): Mention "!=".
734
735 2005-10-08  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
736
737         * config/tc-hppa.c (strict): Don't initialize.  Update comment.
738         (pa_ip): Promote from PA 1.0 to 1.1 immediately when 1.1 match is
739         found.  Simplify handling of "ma" and "mb" completers.
740
741 2005-10-08  Paul Brook  <paul@codesourcery.com>
742
743         * config/tc-arm.c: Don't provide fallback default for CPU_DEFAULT.
744         (arm_arch_used, thumb_arch_used, selected_cpu, selected_cpu_name):
745         New variables.
746         (arm_cpu_option_table): Add canonical_name.
747         (arm_cpus): Populate canonical_name field.
748         (s_arm_eabi_attribute, s_arm_arch, s_arm_cpu, s_arm_fpu,
749         aeabi_set_public_attributes, arm_md_end): New functions.
750         (md_pseudo_table): Add "cpu", "arch", "fpu" and "eabi_attribute".
751         (md_assemble): Set thumb_arch_used and arm_arch_used.
752         (md_begin): Set defaut cpu if CPU_DEFAULT not defined.
753         * config/tc-arm.h (md_end): Define.
754         * doc/c-arm.texi: Document .cpu, .arch, .fpu and .eabi_attribute.
755
756 2005-10-06  Khem Raj  <kraj@mvista.com>
757             NIIBE Yutaka  <gniibe@m17n.org>
758
759         * config/tc-sh.c (allow_dollar_register_prefix): New variable.
760         (parse_reg_without_prefix): New function.
761         (parse_reg): Check for '$' register prefix if --allow-reg-prefix is
762         set.
763         (option md_longopts): Add allow-reg-prefix option.
764         * doc/c-sh.texi: Document --allow-reg-prefix option.
765         * NEWS: Mention the new switch.
766
767 2005-10-03  Arnold Metselaar  <arnold.metselaar@planet.nl>
768
769         * doc/as.texinfo (Infix Ops):  '<' and '>' are not shift
770         operators.
771
772 2005-09-30  Sterling Augustine  <sterling@tensilica.com>
773             Bob Wilson  <bob.wilson@acm.org>
774
775         * config/tc-xtensa.c (xtensa_frob_label): Disallow labels in bundles.
776
777 2005-09-30  H.J. Lu  <hongjiu.lu@intel.com>
778
779         * Makefile.am: Run "make dep-am".
780         * Makefile.in: Regenerated.
781         * aclocal.m4: Likewise.
782
783 2005-09-30  Mark Mitchell  <mark@codesourcery.com>
784
785         * as.c (main): Use expandargv.
786
787 2005-09-30  Jan Beulich  <jbeulich@novell.com>
788
789         * config/tc-tic4x.c (tic4x_set): Advance input_line_pointer past
790         (removed) comma.
791
792 2005-09-30  Catherine Moore  <clm@cm00re.com>
793
794         * Makefile.am: Bfin support.
795         * Makefile.in: Regenerated.
796         * aclocal.m4: Regenerated.
797         * configure: Regenerated.
798         * configure.in: Bfin support.
799         * configure.tgt: Bfin support.
800         * config/bfin-aux.h: New file.
801         * config/bfin-defs.h: New file.
802         * config/bfin-lex.l: New file.
803         * config/bfin-parse.y: New file.
804         * config/tc-bfin.c: New file.
805         * config/tc-bfin.h: New file.
806         * doc/Makefile.am: Recognize c-bfin.texi.
807         * doc/Makefile.in: Regenerated.
808         * doc/all.texi: Bfin support.
809         * doc/as.texinfo: Likewise.
810         * doc/c-bfin.texi: Document bfin-specific syntax and
811         directives.
812
813 2005-09-30  Paul Brook  <paul@codesourcery.com>
814
815         * config/tc-arm.c (opcode_tag): Add OT_cinfix3_legacy.
816         (opcode_lookup): Handle OT_cinfix3_legacy.  Revert earlier change for
817         normal infix conditions.
818         (C3E): Include Thumb-2 definition.
819         (CL, cCL): Define.
820         (insns): Use them for legacy mnemonics.
821
822 2005-09-30  Matthias Kurz  <mk@baerlap.north.de>
823
824         * asintl.h: Prevent the inclusion of <libintl.h> from the Solaris
825         version of <locale.h> when ENABLE_NLS is not defined.
826
827 2005-09-29  Jan Beulich  <jbeulich@novell.com>
828
829         * config/tc-ia64.c (parse_operands): Always parse first operand of
830         alloc.
831
832 2005-09-29  Arnold Metselaar <arnold.metselaar@planet.nl>
833             Alan Modra  <amodra@bigpond.net.au>
834
835         * app.c (do_scrub_chars): Match open and close quote of strings.
836         Remove redundant EOF test in case 7.
837
838 2005-09-28  Jan Beulich  <jbeulich@novell.com>
839
840         * config/tc-i386.c (reloc): Disable signedness check for 4-byte
841         relocations in 16- and 32-bit modes.
842         (i386_displacement): Make pc-relative branch handling dependent
843         upon operand (rather than address) size.
844
845 2005-09-28  Jan Beulich  <jbeulich@novell.com>
846
847         * dw2gencfi.c (dot_cfi): Call ignore_rest_of_line when not fully
848         parsing the input.
849         (dot_cfi_startproc): Likewise.
850         (dot_cfi_endproc): Likewise. Also check no extra input was given.
851         (dot_cfi_escape): Likewise.
852
853 2005-09-28  Jan Beulich  <jbeulich@novell.com>
854
855         * config/tc-i386.h (x86_cons_fix_new): Declare unconditionally.
856         (TC_CONS_FIX_NEW): Define unconditionally.
857         (x86_pe_cons_fix_new): Remove.
858         * config/tc-i386.c (signed_cons): New.
859         (md_pseudo_table): Add slong.
860         (x86_cons_fix_new): Declare unconditionally.
861         (x86_pe_cons_fix_new): Merge into x86_cons_fix_new.
862         (tc_gen_reloc): Also consider BFD_RELOC_X86_64_32S for gotpc
863         conversion.
864
865 2005-09-28  Arnold Metselaar  <arnold.metselaar@planet.nl>
866
867         * app.c (do_scrub_chars <LEX_IS_SYMBOL_COMPONENT>): Check for full
868         buffer after copying string.
869
870 2005-09-27  Paul Brook  <paul@codesourcery.com>
871
872         * config/arm.c (arm_cpus): Add more cpu names.
873         * doc/c-arm.texi: Document them.
874
875 2005-09-21  Alan Modra  <amodra@bigpond.net.au>
876
877         * read.c (pseudo_set): Don't set undefined symbols to expr_section.
878
879 2005-09-20  Richard Henderson  <rth@redhat.com>
880
881         * dwarf2dbg.c (process_entries): Fix uninitialized variable warning.
882
883 2005-09-20  Richard Henderson  <rth@redhat.com>
884
885         * dwarf2dbg.c (struct line_entry): Replace frag and frag_ofs
886         with label.
887         (dwarf2_loc_mark_labels): New.
888         (dwarf2_gen_line_info_1): Split out of ...
889         (dwarf2_gen_line_info): ... here.  Create the temp symbol here.
890         (dwarf2_emit_label): New.
891         (dwarf2_directive_loc_mark_labels): New.
892         (out_set_addr): Take a symbol instead of frag+ofs.
893         (relax_inc_line_addr): Likewise.
894         (emit_inc_line_addr): Assert delta non-negative.
895         (process_entries): Remove dead code.  Update to work with temp
896         symbols instead of frag+ofs.
897         * dwarf2dbg.h (dwarf2_directive_loc_mark_labels): Declare.
898         (dwarf2_emit_label, dwarf2_loc_mark_labels): Declare.
899         * config/obj-elf.c (elf_pseudo_tab): Add loc_mark_labels.
900         * config/obj-elf.h (obj_frob_label): New.
901         * config/tc-alpha.c (alpha_define_label): Call dwarf2_emit_label.
902         * config/tc-arm.c, config/tc-hppa.c, config/tc-m68k.c,
903         config/tc-mips.c, config/tc-ppc.c, config/tc-sh.c, config/tc-xtensa.c:
904         Similarly in the respective tc_frob_label implementation functions.
905         * config/tc-i386.c (md_pseudo_table): Move file and loc to
906         non-elf section; add loc_mark_labels.
907         * config/tc-ia64.c (struct label_fix): Add dw2_mark_labels.
908         (ia64_flush_insns): Check for marked labels; emit line entry if so.
909         (emit_one_bundle): Similarly.
910         (ia64_frob_label): Record marked labels.
911         * config/tc-m68hc11.h (tc_frob_label): Remove.
912         * config/tc-ms1.c (md_pseudo_table): Remove file and loc.
913         * config/tc-sh.h (tc_frob_label): Pass sym to sh_frob_label.
914         * config/tc-sh64.h (tc_frob_label): Likewise.
915         * doc/as.texinfo (LNS directives): Docuement .loc_mark_blocks.
916
917 2005-09-20  Alan Modra  <amodra@bigpond.net.au>
918
919         * read.c (pseudo_set): Set segment of expression syms to expr_section.
920
921 2005-09-14  Jan Beulich  <jbeulich@novell.com>
922
923         * config/tc-i386.c (tc_x86_regname_to_dw2regnum): Add selector
924         registers, floating point control and status words, and mxcsr as
925         well as (for 64-bit code) segment base registers and rflags.
926
927 2005-09-09  Dmitry Diky  <diwil@spec.ru>
928
929         * config/tc-msp430.c (msp430_operands): Undo last changes. Instead...
930         (msp430_relax_frag): add a guard check to ensure that final fr_subtype
931         has been reached.
932
933 2005-09-08  Chao-ying Fu  <fu@mips.com>
934
935         * doc/as.texinfo: Document -mdsp and -mno-dsp options.
936         * doc/c-mips.texi: Likewise, and document ".set dsp" and ".set nodsp"
937         directives.
938
939 2005-09-08  Paul Brook  <paul@codesourcery.com>
940
941         * config/tc-arm.c (do_smi, do_t_smi): Rename ...
942         (do_smc, do_t_smc): ... to this.
943         (insns): Remane smi to smc.
944         (md_apply_fix, tc_gen_reloc): Rename BFD_RELOC_ARM_SMI to
945         BFD_RELOC_ARM_SMC.
946
947 2005-09-07  Richard Henderson  <rth@redhat.com>
948
949         * dwarf2dbg.c (dwarf2_where): Set line->isa.
950         (dwarf2_set_isa): New.
951         (dwarf2_directive_loc): Rearrange to allow all options on one line.
952         * dwarf2dbg.h (dwarf2_set_isa): Declare.
953         * doc/as.texinfo: Update .loc documentation.
954
955 2005-09-07  Richard Henderson  <rth@redhat.com>
956
957         * dwarf2dbg.c: Include safe-ctype.h.
958         (DWARF2_LINE_OPCODE_BASE): Bump to 13.
959         (current): Initialize.
960         (dwarf2_emit_insn): Clear DWARF2_FLAG_BASIC_BLOCK,
961         DWARF2_FLAG_PROLOGUE_END, DWARF2_FLAG_EPILOGUE_BEGIN.
962         (dwarf2_directive_file): Cope with invalid filename.
963         (dwarf2_directive_loc): Add handling for basic_block, prologue_end,
964         epilogue_begin, is_stmt, isa.
965         (emit_inc_line_addr): Move line_delta == 0, addr_delta == 0 special
966         case down lower.
967         (process_entries): Handle isa, DWARF2_FLAG_PROLOGUE_END,
968         and DWARF2_FLAG_EPILOGUE_BEGIN.
969         (out_debug_line): Emit sizes for DW_LNS_set_prologue_end,
970         DW_LNS_set_epilogue_begin, DW_LNS_set_isa.
971         * dwarf2dbg.h (DWARF2_FLAG_IS_STMT): Rename from DWARF2_FLAG_BEGIN_STMT.
972         (DWARF2_FLAG_BASIC_BLOCK): Rename from DWARF2_FLAG_BEGIN_BLOCK.
973         (DWARF2_FLAG_PROLOGUE_END, DWARF2_FLAG_EPILOGUE_BEGIN): New.
974         (struct dwarf2_line_info): Add isa member.
975         * doc/as.texinfo (LNS directives): New node.
976
977 2005-09-07  David Ung  <davidu@mips.com>
978
979         * config/tc-mips.c (append_insn): Undo last change.  Instead add
980         guard to suppress calling frag_grow if the current instruction is
981         one that allows a delay slot.
982
983 2005-09-06  Chao-ying Fu  <fu@mips.com>
984
985         * config/tc-mips.c (mips_set_options): Add ase_mt for MT instructions.
986         (mips_opts): Add -1 to initialize ase_mt.
987         (file_ase_mt): New variable for -mmt.
988         (CPU_HAS_MT): New define.
989         (validate_mips_insn): Add supports for +t, +T, !, $, *, &, g operand
990         formats.
991         (mips_ip): Check ase_mt to enable MT instructions.
992         Handle !, $, *, &, +T, +t, g operand formats.
993         For "mftc1", "mfthc1", "cftc1", "mttc1", "mtthc1", "cttc1", we allow
994         odd float registers.
995         (OPTION_MT, OPTION_NO_MT): New define.
996         (OPTION_COMPAT_ARCH_BASE): Change because of inserting MT define.
997         (md_parse_option): Parse OPTION_MT and OPTION_NO_MT.
998         (mips_after_parse_args): Set ase_mt based on CPU.
999         (s_mipsset): Handle ".set mt" and ".set nomt".
1000         (mips_elf_final_processing): Remind of adding new flag for MT ASE.
1001         (md_show_usage): Show usage of -mmt and -mno-mt.
1002         * doc/as.texinfo: Document -mmt and -mno-mt options.
1003         * doc/c-mips.texi: Likewise, and document ".set mt" and ".set nomt"
1004         directives.
1005
1006 2005-09-06  Paul Brook  <paul@codesourcery.com>
1007
1008         * config/tc-arm.c (arm_it): Add relax field.
1009         (T16_32_TAB): Add addi, addis, add_pc, add_sp, dec_sp, inc_sp,
1010         b, bcond, ldr_pc, ldr_pc2, ldr_sp, str_sp, subi, subis.
1011         (do_t_add_sub, do_t_addr, do_t_branch, do_t_ldst,
1012         do_t_mov_cmp): Allow relaxation.
1013         (output_relax_insn): New function.
1014         (put_thumb32_insn): New function.
1015         (output_inst): Use new functions.
1016         (md_assemble): Don't throw error on relaxable instructions.
1017         (insns): Change "b" entry from TCE(...) to tCE(...).
1018         (md_estimate_size_before_relax): Return 2.
1019         (md_convert_frag, relax_immediate, relax_adr, relax_addsub,
1020         relax_branch, arm_relax_frag): New functions.
1021         (arm_force_relocation): Return 0 for Thumb-2 immediate operand
1022         relocations.
1023         * config/tc-arm.h (md_convert_frag): Remove definition.
1024         (md_relax_frag): Define.
1025         (arm_relax_frag): Add prototype.
1026
1027 2005-09-02  Paul Brook  <paul@codesourcery.com>
1028
1029         * config/tc-arm.c (do_rn_rd): Enforce SWP operand constraints.
1030
1031 2005-09-02  Paul Brook  <paul@codesourcery.com>
1032
1033         * config/tc-arm.c (encode_arm_cp_address): Use
1034         BFD_RELOC_ARM_T32_CP_OFF_IMM in thumb mode.
1035         (do_iwmmxt_wldstbh): Use BFD_RELOC_ARM_T32_CP_OFF_IMM_S2 in thumb
1036         mode.
1037         (md_assemble): Only allow coprocessor instructions when Thumb-2 is
1038         available.
1039         (cCE, cC3): Define.
1040         (insns): Use them for coprocessor instructions.
1041         (md_pcrel_from_section): Handle BFD_RELOC_ARM_T32_CP_OFF_IMM.
1042         (get_thumb32_insn): New function.
1043         (put_thumb32_insn): New function.
1044         (md_apply_fix): Handle BFD_RELOC_ARM_T32_CP_OFF_IMM and
1045         BFD_RELOC_ARM_T32_CP_OFF_IMM_S2.
1046
1047 2005-09-02  Paul Brook  <paul@codesourcery.com>
1048
1049         * config/tc-arm.c (opcode_lookup): Look for infix opcode when
1050         incorrect suffix matches.
1051
1052 2005-09-01  David Ung  <davidu@mips.com>
1053
1054         * config/tc-mips.c (append_insn): Correctly handle mips16 case
1055         when the frags are different for the 2 instructions we want to
1056         swap.  If the lengths of the 2 instructions are not the same, we
1057         won't do the swap but emit an nop.
1058
1059 2005-09-01  Dmitry Diky  <diwil@spec.ru>
1060
1061         * config/tc-msp430.c (msp430_operands): Emit dwarf2_emit_insn()
1062         as appropriate. Change frag_variant() to frag_var() for relaxes.
1063
1064 2005-08-29  Nick Clifton  <nickc@redhat.com>
1065
1066         * write.c (generic_force_reloc): Do not call S_FORCE_RELOC if
1067         there is no symbol.
1068
1069 2005-08-26  Jan Beulich  <jbeulich@novell.com>
1070
1071         * config/tc-i386.c (intel_e09): Set JumpAbsolute when seeing a PTR-
1072         qualified operand of a branch.
1073         (intel_bracket_expr): Set JumpAbsolute here...
1074         (intel_e11): ... rather than here.
1075
1076 2005-08-26  Christian Groessler  <chris@groessler.org>
1077
1078         * configure.tgt: Set bfd_gas also for z8k cpu.
1079         * config/tc-z8k.c (s_segm): Use bfd_set_arch_mach to set machine
1080         type.
1081         (newfix): Adapt to bfd reloc types.
1082         (build_bytes): Adapt to bfd reloc types.  Ensure that enough space
1083         is available in the current frag.
1084         (md_convert_frag): Adapt function parameters.
1085         (tc_gen_reloc): New function.
1086         (md_section_align): Use bfd_get_section_alignment.
1087         (md_apply_fix): Adapt to bfd reloc types.  Fix handling of
1088         BFD_RELOC_Z8K_IMM4L, BFD_RELOC_8, BFD_RELOC_16, and BFD_RELOC_32
1089         relocations.
1090         * config/tc-z8k.h (TARGET_ARCH): Define.
1091         (tc_fix_adjustable): Define.
1092
1093 2005-08-25  Chao-ying Fu  <fu@mips.com>
1094
1095         * config/tc-mips.c (mips_set_options): Add ase_dsp for DSP instructions.
1096         (mips_opts): Add -1 to initialize ase_dsp.
1097         (file_ase_dsp): New variable for -mdsp.
1098         (CPU_HAS_DSP): New define.
1099         (validate_mips_insn): Add supports for 3, 4, 5, 6, 7, 8, 9, 0, ', :, @
1100         operand formats.
1101         (mips_ip): Add min_range and max_range for checking singed numbers.
1102         Check ase_dsp to enable DSP instructions.
1103         Handle 3, 4, 5, 6, 7, 8, 9, 0, ', :, @ operand formats.
1104         (OPTION_DSP, OPTION_NO_DSP): New define.
1105         (OPTION_COMPAT_ARCH_BASE): Change because of inserting DSP define.
1106         (md_parse_option): Parse OPTION_DSP and OPTION_NO_DSP.
1107         (mips_after_parse_args): Set ase_dsp based on CPU.
1108         (s_mipsset): Handle ".set dsp" and ".set nodsp".
1109         (mips_elf_final_processing): Remind of adding new flag for DSP ASE.
1110         (md_show_usage): Show usage of -mdsp and -mno-dsp.
1111
1112 2005-08-23  David Ung  <davidu@mips.com>
1113
1114         * config/tc-mips.c (mips_cpu_info_table): Add 5kf to the table of
1115         cpu names.
1116
1117 2005-08-23  Alan Modra  <amodra@bigpond.net.au>
1118
1119         PR 1036
1120         * config/tc-ppc.c (ppc_symbol_chars): Add '%' and '['.
1121
1122 2005-08-23  Phil Edwards  <phil@codesourcery.com>
1123
1124         * configure.tgt (*-*-vxworks):  Match vxworks* instead.
1125
1126 2005-08-22  Jan Beulich  <jbeulich@novell.com>
1127
1128         * config/tc-i386.c (object_64bit): New.
1129         (i386_target_format): Initialize it.
1130         (output_disp): Use object_64bit for relocation type determination.
1131         (output_imm): Likewise.
1132         (i386_validate_fix): Likewise.
1133         (tc_gen_reloc): Likewise.
1134         (lex_got): Likewise. Remove static mode_name. Change array size
1135         of gotrel's rel field, and adjust its initializer. Adjust diagnostic.
1136         (x86_cons): Use object_64bit for deciding whether quad fields can
1137         have relocations.
1138
1139 2005-08-18  Christian Groessler  <chris@groessler.org>
1140
1141         * config/tc-h8300.h: Remove TC_RELOC_MANGLE/tc_reloc_mangle.
1142         * config/tc-mcore.h: Likewise.
1143         * config/tc-z8k.h: Likewise.
1144         * config/tc-z8k.c: Likewise.
1145         * config/tc-sh.h: Remove TC_RELOC_MANGLE and
1146         sh_coff_reloc_mangle declaration.
1147         * config/tc-sh.c: (md_apply_fix): Fix comment for case
1148         BFD_RELOC_SH_USES.
1149
1150 2005-08-18  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
1151
1152         * config/tc-sh64.c (sh64_target_format): Check preset_target_arch
1153         to confirm that no ISA is specified.
1154
1155 2005-08-18  Nick Clifton  <nickc@redhat.com>
1156
1157         * write.c (relax_segment): Count the number of frags being
1158         processed and use this to compute a maximum limit on the number of
1159         iterations that will be allowed when attempting to relax the
1160         segment.
1161
1162 2005-08-17  Danny Smith  <dannysmith@users.sourceforge.net>
1163
1164         * config/obj-coff.c (obj_coff_weak): Set auxiliary record
1165         of NT weak externals to IMAGE_WEAK_EXTERN_SEARCH_NOLIBRARY.
1166
1167 2005-08-16  Alan Modra  <amodra@bigpond.net.au>
1168
1169         * config/tc-ppc.c (ppc_set_cpu): Don't select 64-bit based on
1170         default cpu.
1171
1172 2005-08-15  Paul Brook  <paul@codesourcery.com>
1173
1174         * config/tc-arm.c (do_t_mov_cmp): Fix encoding of i16-bit conditional
1175         instructions.
1176         (do_t_mvn_tst, do_t_neg, do_t_shift): Ditto.
1177
1178 2005-08-15  Daniel Jacobowitz  <dan@codesourcery.com>
1179
1180         * config/tc-ppc.c (parse_cpu): Add -me300 support.
1181         (md_show_usage): Likewise.
1182         * doc/c-ppc.texi (PowerPC-Opts): Document it.
1183
1184 2005-08-12 Martin Schwidefsky  <schwidefsky@de.ibm.com>
1185
1186         * config/tc-s390.c (md_parse_option):  Add cpu type z9-109.
1187         (md_gather_operands): Add support for optional operands.
1188
1189 2005-08-12  Dmitry Diky <diwil@spec.ru>
1190         * config/tc-msp430.c (msp430_enable_relax): New flag.
1191         (msp430_enable_polys): Likewise.
1192         (OPTION_RELAX): New option.
1193         (OPTION_POLYMORPHS): Likewise.
1194         (md_longopts): New long options.
1195         (md_show_usage): Updated.
1196         (md_parse_option): Add new options handler.
1197         (msp430_operands): Add check if polymorph insns are enabled.
1198         (msp430_force_relocation_local): New function.
1199         (md_apply_fix): Now delete relocs according to new flags combination.
1200         (msp430_relax_frag): Convert long branches to short branches only if
1201         flag msp430_enable_relax is set.
1202         * config/tc-msp430.h (TC_FORCE_RELOCATION_LOCAL): Defined.
1203         (msp430_force_relocation_local): Likewise.
1204         * doc/c-msp430.texi: Describe new options.
1205
1206 2005-08-11  Ian Lance Taylor  <ian@airs.com>
1207
1208         * Makefile.am ($(srcdir)/make-gas.com): Remove target.
1209         (stamp-mk.com): Likewise.
1210         (EXTRA_DIST): Remove make-gas.com from list.
1211         (MOSTLYCLEANFILES): Remove stamp-mk.com from list.
1212         * Makefile.in: Regenerate.
1213
1214 2005-08-11  Hans-Peter Nilsson  <hp@axis.com>
1215
1216         * subsegs.c (subseg_change): Move declaration of seginfo to before
1217         first statement.
1218
1219 2005-08-11  Alan Modra  <amodra@bigpond.net.au>
1220
1221         * README-vms: Delete.
1222         * config-gas.com: Delete.
1223         * makefile.vms: Delete.
1224         * vmsconf.sh: Delete.
1225         * config/atof-tahoe.c: Delete.
1226         * config/m88k-opcode.h: Delete.
1227         * config/obj-bout.c: Delete.
1228         * config/obj-bout.h: Delete.
1229         * config/obj-hp300.c: Delete.
1230         * config/obj-hp300.h: Delete.
1231         * config/tc-a29k.c: Delete.
1232         * config/tc-a29k.h: Delete.
1233         * config/tc-h8500.c: Delete.
1234         * config/tc-h8500.h: Delete.
1235         * config/tc-m88k.c: Delete.
1236         * config/tc-m88k.h: Delete.
1237         * config/tc-tahoe.c: Delete.
1238         * config/tc-tahoe.h: Delete.
1239         * config/tc-tic80.c: Delete.
1240         * config/tc-tic80.h: Delete.
1241         * config/tc-w65.c: Delete.
1242         * config/tc-w65.h: Delete.
1243         * config/te-aux.h: Delete.
1244         * config/te-delt88.h: Delete.
1245         * config/te-delta.h: Delete.
1246         * config/te-dpx2.h: Delete.
1247         * config/te-hp300.h: Delete.
1248         * config/te-ic960.h: Delete.
1249         * config/vms-a-conf.h: Delete.
1250         * doc/c-a29k.texi: Delete.
1251         * doc/c-h8500.texi: Delete.
1252         * doc/c-m88k.texi: Delete.
1253         * README: Remove obsolete examples, and list of supported targets.
1254         * Makefile.am: Remove a29k, h8500, m88k, tahoe, tic80, w65,
1255         bout and hp300 support.
1256         (DEP_FLAGS): Don't define BFD_ASSEMBLER.
1257         * configure.in: Remove --enable-bfd-assembler, need_bfd,
1258         primary_bfd_gas.
1259         * configure.tgt: Remove a29k, h8300-coff, h8500-*, i960 non-elf,
1260         m68k non bfd, m88k, or32-coff, tic80-*, vax non-bfd, w65k-*, *-nindy.
1261         * as.c: Remove all non-BFD_ASSEMBLER code, support for above targets.
1262         * as.h: Likewise.
1263         * dw2gencfi.c: Likewise.
1264         * dwarf2dbg.c: Likewise.
1265         * ehopt.c: Likewise.
1266         * input-file.c: Likewise.
1267         * listing.c: Likewise.
1268         * literal.c: Likewise.
1269         * messages.c: Likewise.
1270         * obj.h: Likewise.
1271         * output-file.c: Likewise.
1272         * read.c: Likewise.
1273         * stabs.c: Likewise.
1274         * struc-symbol.h: Likewise.
1275         * subsegs.c: Likewise.
1276         * subsegs.h: Likewise.
1277         * symbols.c: Likewise.
1278         * symbols.h: Likewise.
1279         * tc.h: Likewise.
1280         * write.c: Likewise.
1281         * write.h: Likewise.
1282         * config/aout_gnu.h: Likewise.
1283         * config/obj-aout.c: Likewise.
1284         * config/obj-aout.h: Likewise.
1285         * config/obj-coff.c: Likewise.
1286         * config/obj-coff.h: Likewise.
1287         * config/obj-evax.h: Likewise.
1288         * config/obj-ieee.h: Likewise.
1289         * config/tc-arm.c: Likewise.
1290         * config/tc-arm.h: Likewise.
1291         * config/tc-avr.c: Likewise.
1292         * config/tc-avr.h: Likewise.
1293         * config/tc-crx.h: Likewise.
1294         * config/tc-d10v.h: Likewise.
1295         * config/tc-d30v.h: Likewise.
1296         * config/tc-dlx.h: Likewise.
1297         * config/tc-fr30.h: Likewise.
1298         * config/tc-frv.h: Likewise.
1299         * config/tc-h8300.c: Likewise.
1300         * config/tc-h8300.h: Likewise.
1301         * config/tc-hppa.h: Likewise.
1302         * config/tc-i370.h: Likewise.
1303         * config/tc-i386.c: Likewise.
1304         * config/tc-i386.h: Likewise.
1305         * config/tc-i860.h: Likewise.
1306         * config/tc-i960.c: Likewise.
1307         * config/tc-i960.h: Likewise.
1308         * config/tc-ip2k.h: Likewise.
1309         * config/tc-iq2000.h: Likewise.
1310         * config/tc-m32c.h: Likewise.
1311         * config/tc-m32r.h: Likewise.
1312         * config/tc-m68hc11.h: Likewise.
1313         * config/tc-m68k.c: Likewise.
1314         * config/tc-m68k.h: Likewise.
1315         * config/tc-maxq.c: Likewise.
1316         * config/tc-maxq.h: Likewise.
1317         * config/tc-mcore.c: Likewise.
1318         * config/tc-mcore.h: Likewise.
1319         * config/tc-mn10200.h: Likewise.
1320         * config/tc-mn10300.c: Likewise.
1321         * config/tc-mn10300.h: Likewise.
1322         * config/tc-ms1.h: Likewise.
1323         * config/tc-msp430.c: Likewise.
1324         * config/tc-msp430.h: Likewise.
1325         * config/tc-ns32k.c: Likewise.
1326         * config/tc-ns32k.h: Likewise.
1327         * config/tc-openrisc.h: Likewise.
1328         * config/tc-or32.c: Likewise.
1329         * config/tc-or32.h: Likewise.
1330         * config/tc-ppc.c: Likewise.
1331         * config/tc-ppc.h: Likewise.
1332         * config/tc-s390.h: Likewise.
1333         * config/tc-sh.c: Likewise.
1334         * config/tc-sh.h: Likewise.
1335         * config/tc-sparc.c: Likewise.
1336         * config/tc-tic30.c: Likewise.
1337         * config/tc-tic30.h: Likewise.
1338         * config/tc-tic4x.c: Likewise.
1339         * config/tc-tic4x.h: Likewise.
1340         * config/tc-tic54x.c: Likewise.
1341         * config/tc-tic54x.h: Likewise.
1342         * config/tc-v850.h: Likewise.
1343         * config/tc-vax.c: Likewise.
1344         * config/tc-vax.h: Likewise.
1345         * config/tc-xstormy16.h: Likewise.
1346         * config/tc-xtensa.h: Likewise.
1347         * config/tc-z8k.c: Likewise.
1348         * config/tc-z8k.h: Likewise.
1349         * config/vms-a-conf.h
1350         * doc/Makefile.am: Likewise.
1351         * doc/all.texi: Likewise.
1352         * doc/as.texinfo: Likewise.
1353         * doc/internals.texi: Likewise.
1354         * doc/Makefile.in: Regenerate.
1355         * Makefile.in: Regenerate.
1356         * configure: Regenerate.
1357         * config.in: Regenerate.
1358         * po/POTFILES.in: Regenerate.
1359
1360 2005-08-09  Nick Clifton  <nickc@redhat.com>
1361
1362         PR 1070
1363         * macro.c (getstring): Do not treat round parentheses exactly the
1364         same as angle brackets - the parentheses need to be preserved and
1365         passed on to the macro processing code.
1366
1367 2005-08-08  Nick Clifton  <nickc@redhat.com>
1368
1369         * config/tc-msp430.c (MSP430_ISA_21): Define.
1370         (mcu_types): Add entries for msp430x21xx variants.
1371
1372 2005-08-08  Nick Clifton  <nickc@redhat.com>
1373
1374         PR 1070
1375         * macro.c (getstring): Treat round parentheses in the same way as
1376         angle brackets.
1377         (get_any_string): Likewise.
1378
1379 2005-08-07  H.J. Lu  <hongjiu.lu@intel.com>
1380
1381         PR gas/1118
1382         * as.c (parse_args): Handle -al=<FILE>.
1383
1384 2005-08-07  Nick Clifton  <nickc@redhat.com>
1385
1386         * read.c (s_app_line): Accept a line number of 0 for compatibility
1387         with gcc's output for assembler-with-cpp files.
1388
1389 2005-08-05  Paul Brook  <paul@codesourcery.com>
1390
1391         * config/tc-arm.c (current_it_mask, current_cc): New variables.
1392         (do_t_add_sub): Use correct encodings inside IT block.
1393         (do_t_arit3c): Ditto.
1394         (do_t_it): Simplify logic.  Set current_it_mask and current_cc.
1395         (md_assemble): Verify conditional suffixes agains IT blocks.
1396
1397 2005-08-05  Paul Brook  <paul@codesourcery.com>
1398
1399         * config/tc-arm.c (encode_thumb32_immediate): Only accept shifted
1400         constants.
1401         (encode_thumb32_shifted_operand): Prohibit register shifts.
1402         (encode_thumb32_addr_mode): Fix typo.
1403         (insns): Correct thumb2 ldm and stm opcodes.
1404
1405 2005-08-02  Khem Raj  <kraj@mvista.com>
1406
1407         * config/tc-arm.c (do_iwmmxt_wldstd): Correct the offset range for
1408         WLDRD/WSTRD instruction.
1409
1410 2005-08-02  Alan Modra  <amodra@bigpond.net.au>
1411
1412         * config/tc-ppc.c (md_apply_fix <ELF>): Don't warn on overflow
1413         if emitting a reloc.
1414
1415 2005-07-29  Thiemo Seufer  <ths@networkno.de>
1416
1417         * config/tc-mips.c (s_mips_globl): Allow multiple symbols per .globl.
1418
1419 2005-07-29  Paul Brook  <paul@codesourcery.com>
1420
1421         * config/tc-arm.c (T16_32_TAB): Add "addr". Fix encoding of push and
1422         pop.
1423         (do_t_addr): Implement 32-bit variant.
1424         (do_t_push_pop): Make some errors warnings.  Handle single register
1425         32-bit case.
1426         (insns): Use tCE for adr.
1427         (md_pcrel_from_section): Handle BFD_RELOC_ARM_T32_ADD_PC12.
1428         (md_apply_fix): Ditto.
1429
1430 2005-07-29  Paul Brook  <paul@codesourcery.com>
1431
1432         * config/tc-arm.c (parse_tb): New function.
1433         (enum operand_parse_code): Add OP_TB.
1434         (parse_operands): Handle OP_TB.
1435         (do_t_add_sub_w, do_t_tb): New functions.
1436         (insns): Add entries for addw, subw, tbb and tbh.
1437         (md_apply_fix): Handle BFD_RELOC_ARM_T32_IMM12.
1438
1439 2005-07-29  Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
1440
1441         * config/tc-m32r.c (m32r_check_fixup): Fixed X_op check.
1442
1443 2005-07-27  H.J. Lu <hongjiu.lu@intel.com>
1444
1445         * config/tc-i386.c (handle_large_common): Declare only for ELF.
1446
1447 2005-07-27  Jan Beulich  <jbeulich@novell.com>
1448
1449         * config/tc-ia64.h (unw_r_record): Change type of fr_mem to unsigned
1450         int.
1451         (unw_p_record): Remove unused/redundant fields imask and rmask.
1452         Combine spoff and pspoff into a union. Combine gr and br into a
1453         union. Change type of grmask and brmask to unsigned char. Change type
1454         of frmask to unsigned int.
1455         (unw_x_record): Combine spoff, pspoff, and treg into a union.
1456         * config/tc-ia64.c (unwind): New field 'pending_saves'.
1457         (check_pending_save): New.
1458         (alloc_record): Clear out entire record.
1459         (output_psp_gr): Use renamed structure fields.
1460         (output_psp_sprel): Likewise.
1461         (output_rp_gr): Likewise.
1462         (output_rp_br): Likewise.
1463         (output_rp_psprel): Likewise.
1464         (output_rp_sprel): Likewise.
1465         (output_pfs_gr): Likewise.
1466         (output_pfs_psprel): Likewise.
1467         (output_pfs_sprel): Likewise.
1468         (output_preds_gr): Likewise.
1469         (output_preds_psprel): Likewise.
1470         (output_preds_sprel): Likewise.
1471         (output_spill_base): Likewise.
1472         (output_unat_gr): Likewise.
1473         (output_unat_psprel): Likewise.
1474         (output_unat_sprel): Likewise.
1475         (output_lc_gr): Likewise.
1476         (output_lc_psprel): Likewise.
1477         (output_lc_sprel): Likewise.
1478         (output_fpsr_gr): Likewise.
1479         (output_fpsr_psprel): Likewise.
1480         (output_fpsr_sprel): Likewise.
1481         (output_priunat_gr): Likewise.
1482         (output_priunat_psprel): Likewise.
1483         (output_priunat_sprel): Likewise.
1484         (output_bsp_gr): Likewise.
1485         (output_bsp_psprel): Likewise.
1486         (output_bsp_sprel): Likewise.
1487         (output_bspstore_gr): Likewise.
1488         (output_bspstore_psprel): Likewise.
1489         (output_bspstore_sprel): Likewise.
1490         (output_rnat_gr): Likewise.
1491         (output_rnat_psprel): Likewise.
1492         (output_rnat_sprel): Likewise.
1493         (output_spill_psprel): Likewise.
1494         (output_spill_sprel): Likewise.
1495         (output_spill_reg): Likewise.
1496         (output_fr_mem): Likewise. Allocate one unwind record per set mask
1497         bit.
1498         (output_frgr_mem): Likewise.
1499         (output_gr_mem): Likewise.
1500         (output_br_mem): Likewise.
1501         (output_gr_gr): Likewise.
1502         (output_br_gr): Likewise.
1503         (fixup_unw_records): Likewise.
1504         (process_one_record): Use renamed structure fields. For gr_gr and
1505         br_gr, collect mask from chain of records before output.
1506         (in_prologue): Simplify and eliminate early returns. Call
1507         check_pending_save.
1508         (in_body): Simplify and eliminate early returns.
1509         (dot_body): Call check_pending_save.
1510         (md_assemble): Update comment. Deal with pending saves.
1511
1512 2005-07-26  Jan Beulich  <jbeulich@novell.com>
1513
1514         * config/tc-i386.c (optimize_imm): Calculate candidate immediates
1515         mask from guessed suffix, but mask out other immediate types only
1516         if at least on candidate is valid for the insn.
1517
1518 2005-07-25  DJ Delorie  <dj@redhat.com>
1519
1520         * config/tc-m32c.c (md_cgen_lookup_reloc): Add 8 bit operands.
1521         Support %mod() modifiers from opcodes.
1522         * doc/c-m32c.texi (M32C-Modifiers): New section.
1523
1524 2005-07-25  Jan Hubicka  <jh@suse.cz>
1525             H.J. Lu  <hongjiu.lu@intel.com>
1526
1527         * config/obj-elf.c: Include "elf/x86-64.h" if TC_I386 is
1528         defined.
1529         (elf_com_section_ptr): New.
1530         (elf_begin): Set elf_com_section_ptr to bfd_com_section_ptr.
1531         (elf_common_parse): Make it global. Use elf_com_section_ptr
1532         instead of bfd_com_section_ptr.
1533         (obj_elf_change_section): Handle x86-64 large bss sections.
1534
1535         * config/obj-elf.h (elf_com_section_ptr): New.
1536         (elf_common_parse): New.
1537
1538         * config/tc-i386.c (handle_large_common): New.
1539         (md_pseudo_table): Add "largecomm".
1540         (x86_64_section_letter): New.
1541         (x86_64_section_word): New.
1542
1543         * config/tc-i386.h (x86_64_section_word): New.
1544         (x86_64_section_letter): New.
1545         (md_elf_section_letter): New. Defined.
1546         (md_elf_section_word): Likewise.
1547
1548 2005-07-21  Ralf Corsepius  <ralf.corsepius@rtems.org>
1549
1550         * configure.tgt: Remove i386-*-rtemself*.
1551         Remove sparc-*-rtemself*.
1552
1553 2005-07-21  Ben Elliston  <bje@gnu.org>
1554
1555         * config/tc-m68k.h: Remove TE_LYNX conditional code.
1556
1557 2005-07-21  Paul Brook  <paul@codesourcery.com>
1558
1559         * config/tc-arm.c (encode_thumb32_addr_mode): Don't set
1560         inst.reloc.pc_rel.
1561
1562 2005-07-20  Tavis Ormandy <taviso@gentoo.org>
1563
1564         * messages.c: Use vsnprintf instead of vsprintf.
1565
1566 2005-07-20  Kazuhiro Inaoka  <inaoka.kazuhiro@renesas.com>
1567
1568         * config/tc-m32r.c (tc_gen_reloc): Check BFD_RELOC_32_PCREL and
1569         BFD_RELOC_16_PCREL to Support R_M32R_REL32.
1570
1571 2005-07-18  Nick Clifton  <nickc@redhat.com>
1572
1573         * configure.tgt: Restore alpha ordering to list of arches.
1574
1575 2005-07-18  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
1576
1577         * tc-hppa.c (pa_ip): Reject match for '#' immediate if not pa20.
1578
1579 2005-07-18  Jan Beulich  <jbeulich@novell.com>
1580
1581         * config/tc-i386.c (md_begin): Use IS_ELF.
1582         (tc_i386_fix_adjustable): Likewise.
1583         (md_estimate_size_before_relax): Likewise.
1584         (md_apply_fix): Likewise.
1585         (i386_target_format): Likewise.
1586         (lex_got): Define to NULL when not ELF or when LEX_AT. Check IS_ELF.
1587         (i386_immediate): Remove #ifdef LEX_AT.
1588         (i386_displacement): Likewise.
1589         * config/tc-i386.h (x86_cons): Prototype only when ELF and when not
1590         LEX_AT.
1591
1592 2005-07-18  Jan Beulich  <jbeulich@novell.com>
1593
1594         * config/tc-i386.c (reloc): Convert to ISO C90. Change first
1595         parameter to unsigned. Parameter sign now is tristate - zero/
1596         positive mean unsigned/signed, negative means signedness doesn't
1597         matter. Check field size,
1598         signedness, and pcrel-ness are in agreement between relocated field
1599         and relocation type. Adjust diagnostics.
1600         (optimize_imm): And type mask of operand instead of overwriting it.
1601         (lex_got): Convert to ISO C90. Add third parameter. Add new field to
1602         local structure and initialize gotrel accordingly. Pass caller as
1603         mask of types that the operator can match.
1604         (x86_cons_fix_new): Let reloc know that signedness of relocation
1605         doesn't matter.
1606         (x86_pe_cons_fix_new): Likewise.
1607         (x86_cons): Pass additional argument to lex_got.
1608         (i386_immediate): New local variable 'types'. Pass its address as
1609         additional argument to lex_got. Mask out operand types not supported
1610         befoe returning.
1611         (i386_displacement): Likewise. Set bigdisp to all types supported in
1612         64-bit mode, combining the previously split initialization.
1613
1614 2005-07-18  Jan Beulich  <jbeulich@novell.com>
1615
1616         * config/tc-i386.c (parse_insn): Reject prefix if unavailable in
1617         current mode.
1618
1619 2005-07-16  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
1620
1621         * config/tc-hppa.c (pa_ip): Search entire mnemonic before considering
1622         promoted match.
1623
1624 2005-07-16  Alan Modra  <amodra@bigpond.net.au>
1625
1626         * Makefile.am: Run "make dep-am".
1627         * Makefile.in: Regenerate.
1628
1629 2005-07-15  H.J. Lu <hongjiu.lu@intel.com>
1630
1631         * gas/config/tc-i386.h (CpuVMX): New.
1632         (CpuUnknownFlags): Add CpuVMX.
1633
1634 2005-07-14  Jim Blandy  <jimb@redhat.com>
1635
1636         Add support for the Renesas M32C.
1637         * Makefile.am (CPU_TYPES): List m32c.
1638         (TARGET_CPU_CFILES): List config/tc-m32c.c.
1639         (TARGET_CPU_HFILES): List config/tc-m32c.h.
1640         * configure.in: Add case for m32c.
1641         * configure.tgt: Add cases for m32c and m32c-*-elf.
1642         * configure: Regenerated.
1643         * config/tc-m32c.c, config/tc-m32c.h: New files.
1644         * doc/Makefile.am (CPU_DOCS): Add c-m32c.texi.
1645         * doc/Makefile.in: Regenerated.
1646         * doc/all.texi: Set M32C.
1647         * doc/as.texinfo: Add text for the M32C-specific options and line
1648         comment characters, and refer to c-m32c.texi.
1649         * doc/c-m32c.texi: New file.
1650
1651 2005-07-14  Nick Clifton  <nickc@redhat.com>
1652
1653         PR 1069
1654         * config/tc-crx.c (reset_vars): Use strncpy to prevent overflowing
1655         the ins_parse buffer.
1656
1657 2005-07-10  Ralf Corsepius <ralf.corsepius@rtems.org>
1658
1659         * configure.tgt: Remove a29k-*-rtems*, hppa*-*-rtems*,i386-go32-rtems*,
1660         i386-*-rtemscoff*, sparc-*-rtemsaout*.
1661
1662 2005-07-10  H.J. Lu  <hongjiu.lu@intel.com>
1663
1664         * config/tc-i386.c (optimize_disp): Optimize signed 32bit
1665         displacements.
1666
1667 2005-07-08  Ben Elliston  <bje@au.ibm.com>
1668
1669         * frags.h: Remove ANSI_PROTOTYPES conditional code.
1670         * config/obj-elf.h: Likewise.
1671         * config/tc-h8300.h: Likewise.
1672         * config/tc-h8500.h: Likewise.
1673         * config/tc-i370.h: Likewise.
1674         * config/tc-i386.h: Likewise.
1675         * config/tc-m68hc11.h: Likewise.
1676         * config/tc-m68k.h: Likewise.
1677         * config/tc-ppc.h: Likewise.
1678         * config/tc-s390.h: Likewise.
1679         * config/tc-sh.h: Likewise.
1680         * config/tc-sparc.h: Likewise.
1681         * config/tc-tic30.c: Likewise.
1682         * config/tc-w65.h: Likewise.
1683         * config/tc-xtensa.h: Likewise.
1684
1685 2005-07-08  Hans-Peter Nilsson  <hp@axis.com>
1686
1687         PR gas/1049
1688         * config/tc-cris.h (MD_APPLY_SYM_VALUE): Define.
1689
1690 2005-07-07  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
1691
1692         * config/tc-tic30.c (debug): Add format attribute.  Fix format
1693         bugs.
1694
1695 2005-07-06  H.J. Lu  <hongjiu.lu@intel.com>
1696
1697         * config/tc-i386.c (cpu_arch): Add sse3.
1698
1699         * config/tc-i386.h (CpuSSE3): Renamed from ...
1700         (CpuPNI): This. Defined as CpuSSE3.
1701
1702         * doc/c-i386.texi: Document .sse3.
1703
1704 2005-07-06  Jan Beulich  <jbeulich@novell.com>
1705
1706         * config/tc-ia64.c (nop): Use zero for L-unit pseudo-nop.
1707
1708 2005-07-05  Nick Clifton  <nickc@redhat.com>
1709
1710         * config/tc-pdp11.c (md_apply_fix): Cast first argument to
1711         md_chars_to_numbers to an unsigned pointer in order to avoid a
1712         compile time warning.
1713
1714 2005-07-05  Paul Brook  <paul@codesourcery.com>
1715
1716         * config/tc-ppc.c (ppc_target_format): Add VxWorks.
1717
1718 2005-07-05  Aldy Hernandez  <aldyh@redhat.com>
1719
1720         * config/tc-ms1.c: New.
1721         * config/tc-ms1.h: New.
1722
1723 2005-07-05  Jan Beulich  <jbeulich@novell.com>
1724
1725         * config/tc-i386.h (CpuSVME): New.
1726         (CpuUnknownFlags): Include CpuSVME.
1727         * config/tc-i386.c (cpu_arch): Add .pacifica and .svme. Add opteron
1728         as alias of sledgehammer.
1729         (md_assemble): Include invlpga in the check for insns with two source
1730         operands.
1731         (process_operands): Include SVME insns in the check for ignored
1732         segment overrides. Adjust diagnostic.
1733         (i386_index_check): Special-case SVME insns with memory operands.
1734
1735 2005-07-04  Khem Raj  <kraj@mvista.com>
1736             Nick Clifton  <nickc@redhat.com>
1737
1738         * tc-arm.c (struct arm_it): Make operands.imm signed to match its
1739         use an immediate value.
1740         (parse_vfp_reg_list): Make the 2nd parameter an unsigned pointer
1741         since the register field of the operands structure is unsigned.
1742         (s_arm_unwind_save_vfp): Make "reg" unsigned.
1743         (parse_operands): Make the 2ns parameter an unsigned pointer to
1744         match its use.
1745         (do_ldrd): When using the imm field of the operands structure as a
1746         second register field, treat it as unsigned.
1747
1748 2005-07-04  Alan Modra  <amodra@bigpond.net.au>
1749
1750         PR 1004
1751         * config/obj-elf.c (obj_elf_change_section): Use backend
1752         get_sec_type_attr.
1753
1754 2005-07-01  Jan Beulich  <jbeulich@novell.com>
1755
1756         * config/tc-ia64.c (line_separator_chars): Add '{' and '}'.
1757         (output_spill_psprel, output_spill_psprel_p): Combine.
1758         (output_spill_sprel, output_spill_sprel_p): Combine.
1759         (output_spill_reg, output_spill_regp_p): Combine.
1760         (process_one_record): Handle psp_psprel.
1761         (parse_predicate_and_operand): New.
1762         (convert_expr_to_ab_reg): Two new parameters. Return void. Always
1763         initialize output values. Emit diagnostic case here.
1764         (convert_expr_to_xy_reg): Likewise. Don't allow r0, f0, and f1.
1765         (add_unwind_entry): New second parameter. Allow first parameter to
1766         be NULL. Parse optional tag, emit warning about further support for
1767         it otherwise being missing. Check end-of-line when requested.
1768         (dot_fframe): Clear operand when wrong. Allow tag.
1769         (dot_vframe): Likewise.
1770         (dot_vframesp): Likewise. Rename parameter, issue warning when psp
1771         relative.
1772         (dot_vframepsp): Remove.
1773         (dot_altrp): Clear operand when wrong. Allow tag.
1774         (dot_save): Likewise. Let default case also go through
1775         add_unwind_entry.
1776         (dot_savemem): Likewise.
1777         (dot_restore): Don't return when wrong operand. Allow tag.
1778         (dot_spillreg, dot_spillreg_p): Combine. Simplify by using
1779         parse_predicate_and_operand and the new arguments to
1780         convert_expr_to_ab_reg and convert_expr_to_xy_reg. Don't return
1781         when wrong operand. Allow tag.
1782         (dot_restorereg, dot_restorereg_p): Likewise.
1783         (dot_spillmem, dot_spillmem_p): Likewise.
1784         (dot_saveg): Clear operand when wrong. Perform tighter operand
1785         checks. Allow tag.
1786         (dot_savef): Likewise.
1787         (dot_saveb): Likewise.
1788         (dot_savegf): Likewise.
1789         (dot_spill): Remove end-of-line check.  Combine. Simplify by using
1790         parse_predicate_and_operand and the new arguments to
1791         convert_expr_to_ab_reg and convert_expr_to_xy_reg. Don't return
1792         when wrong operand. Allow tag.
1793         (popcount): New.
1794         (dot_label_state): Don't return when wrong operand.
1795         (dot_copy_state): Likewise.
1796         (dot_unwabi): Likewise. Check if in prologue.
1797         (dot_body): Don't call demand_empty_rest_of_line.
1798         (dot_prologue): Type of mask and grsave is unsigned. Perform tighter
1799         operand checks.
1800         (md_pseudo_table): Also use dot_restorereg for .restorereg.p. Also
1801         use dot_spillreg for .spillreg.p. Also use dot_spillmem for
1802         .spillpsp.p and .spillsp.p. Also use dot_vframesp for .vframepsp.
1803         (parse_operand): New second parameter. Don't deal with '}' here
1804         anymore. Don't advance past end-of-line.
1805         (parse_operands): Pass second argument to parse_operand.
1806         (ia64_start_line): Prevent out-of-bounds access through
1807         input_line_pointer. Deal with '}' here.
1808         (ia64_unrecognized_line): Don't deal with '}' here.
1809         (dot_alias): Use ignore_rest_of_line not its deprecated alias
1810         discard_rest_of_line.
1811
1812 2005-06-30  Zack Weinberg  <zack@codesourcery.com>
1813
1814         * config/tc-arm.c (T_OPCODE_BRANCH, encode_arm_addr_mode_2)
1815         (encode_arm_addr_mode_3, encode_arm_cp_address, do_blx, do_t_blx)
1816         (do_t_branch, insns [b, bl]): Don't encode pipeline offset.
1817         (do_branch): Always set inst.reloc.pc_rel.
1818         (s_arm_elf_cons): Disallow use of (plt) suffix.
1819         (do_adrl): Adjust X_add_number unconditionally.
1820         (md_pcrel_from): Rename md_pcrel_from_section, add second segT
1821         argument.  Handle all adjustment for pipeline offset here.
1822         (md_apply_fix): No need to undo work of md_pcrel_from.  No
1823         need to extract pre-encoded pipeline adjustments from various
1824         branch instructions.  Generally, assume instructions are already
1825         all-bits-zero in the field being fixed up.  Remove all OBJ_ELF
1826         special cases.  Handle BFD_RELOC_ARM_PLT32 like
1827         BFD_RELOC_ARM_PCREL_BRANCH.
1828         (tc_gen_reloc): Remove OBJ_ELF special case.
1829         * config/tc-arm.c: Define MD_PCREL_FROM_SECTION.
1830
1831 2005-06-30  Ben Elliston  <bje@gnu.org>
1832
1833         * Makefile.am (check-DEJAGNU): Don't search for expect.
1834         * Makefile.in: Regenerate.
1835
1836 2005-06-30  Ben Elliston  <bje@gnu.org>
1837
1838         * Makefile.am (EXPECT): Set to expect.
1839         (RUNTEST): Likewise, set to runtest.
1840         * Makefile.in: Regenerate.
1841
1842 2005-06-23  Ben Elliston  <bje@gnu.org>
1843
1844         * config/m68k-parse.h: Use ISO C90.
1845         * config/m68k-parse.y: Likewise.
1846         * config/tc-m68k.h: Likewise.
1847
1848 2005-06-20  H.J. Lu  <hongjiu.lu@intel.com>
1849
1850         PR 1013
1851         * config/tc-i386.c (md_assemble): Don't call optimize_disp on
1852         movabs.
1853         (optimize_disp): Optimize only if possible. Don't use 64bit
1854         displacement on non-constants and do same on constants if
1855         possible.
1856
1857 2005-06-17  Jan Beulich  <jbeulich@novell.com>
1858
1859         * config/tc-i386.c (reloc): Also handle BFD_RELOC_64_PCREL.
1860         (tc_i386_fix_adjustable): Include BFD_RELOC_X86_64_GOTOFF64,
1861         BFD_RELOC_X86_64_DTPOFF64, and BFD_RELOC_X86_64_TPOFF64.
1862         (output_disp): Do GOTPC conversion also for BFD_RELOC_X86_64_32S
1863         and BFD_RELOC_32_PCREL. Use BFD_RELOC_X86_64_GOTPC32 instead of
1864         aborting.
1865         (output_imm): Do GOTPC conversion also for BFD_RELOC_X86_64_32S.
1866         Use BFD_RELOC_X86_64_GOTPC32 instead of aborting.
1867         (tc_gen_reloc): Do GOTPC conversion also for BFD_RELOC_32_PCREL.
1868         Use BFD_RELOC_X86_64_GOTPC32 instead of aborting. Also handle
1869         BFD_RELOC_X86_64_GOTOFF64, BFD_RELOC_X86_64_GOTPC32,
1870         BFD_RELOC_X86_64_DTPOFF64, and BFD_RELOC_X86_64_TPOFF64. Also
1871         convert 8-byte pc-relative relocations.
1872         (lex_got): Use BFD_RELOC_X86_64_GOTOFF64 for 64-bit @gotoff.
1873         (i386_validate_fix): Likewise.
1874         (x86_cons): Also handle quad values in 64-bit mode.
1875         (i386_displacement): Also handle BFD_RELOC_X86_64_GOTOFF64.
1876         (md_apply_fix): Include BFD_RELOC_X86_64_DTPOFF64 and
1877         BFD_RELOC_X86_64_TPOFF64 in the TLS check. Also convert BFD_RELOC_64
1878         to pc-relative variant. Also check for BFD_RELOC_64_PCREL.
1879
1880 2005-06-13  Zack Weinberg  <zack@codesourcery.com>
1881
1882         * config/tc-arm.c (find_real_start): Check S_IS_LOCAL on
1883         symbolP as well as for names with a leading dot.  Use ACONCAT.
1884         (md_apply_fix): For branch relocations, only replace value
1885         with fixP->fx_offset (under #ifdef OBJ_ELF) when !fixP->fx_done.
1886         (arm_force_relocation): Remove #ifdef OBJ_ELF case.
1887         * config/tc-arm.h (LOCAL_LABEL): Remove unnecessary parentheses.
1888         (LOCAL_LABEL_PREFIX): Don't define.
1889
1890 2005-06-10  Alan Modra  <amodra@bigpond.net.au>
1891
1892         * config/tc-hppa.c (pa_block): Allocate just one byte for the
1893         fill pattern.
1894
1895 2005-06-08  James E Wilson  <wilson@specifixinc.com>
1896
1897         PR 994
1898         * config/tc-ia64.c (slot_index): Revert last change.  If first_frag
1899         is NULL, then emit a warning, and return the current index.
1900
1901 2005-06-08  Tomas Hurka  <tom@hukatronic.cz>
1902
1903         PR 991
1904         * config/tc-m68k.c (m68k_ip): Test for insn compatiblity using a
1905         temporary copy of the operands array so that changes can be safely
1906         backed out if the insn does not match.
1907         (m68k_compare_opcode): Shortcut the test when the parameters are
1908         the same.  Return 1 if the names match but the second opcode is
1909         further on in the array than the first.
1910
1911 2005-06-08  Nick Clifton  <nickc@redhat.com>
1912
1913         PR 994
1914         * config/tc-ia64.c (slot_index): Check for a NULL first_frag.
1915
1916 2005-06-08  Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
1917
1918         * config/tc-m32r.c (use_parallel): Change default value from 1 to 0.
1919
1920 2005-06-07  Aldy Hernandez  <aldyh@redhat.com>
1921             Michael Snyder  <msnyder@redhat.com>
1922             Stan Cox  <scox@redhat.com>
1923
1924         * configure.in: Add ms1 case.
1925
1926         * configure: Regenerate.
1927
1928         * configure.tgt: Add ms1 case.
1929
1930 2005-06-07  Bob Wilson  <bob.wilson@acm.org>
1931
1932         * config/tc-xtensa.h (resource_table): Change units to unsigned chars.
1933         * config/tc-xtensa.c (new_resource_table): Likewise.
1934         (resize_resource_table): Likewise.
1935         (release_resources): Fix assertion for unsigned values.
1936
1937 2005-06-07  Zack Weinberg  <zack@codesourcery.com>
1938
1939         * cgen.c, cgen.h, tc.h, write.c, config/obj-coff.c
1940         * config/tc-a29k.c, config/tc-alpha.c, config/tc-alpha.h
1941         * config/tc-arc.c, config/tc-arc.h, config/tc-arm.c
1942         * config/tc-arm.h, config/tc-avr.c, config/tc-avr.h
1943         * config/tc-cris.c, config/tc-crx.c, config/tc-d10v.c
1944         * config/tc-d10v.h, config/tc-d30v.c, config/tc-d30v.h
1945         * config/tc-dlx.c, config/tc-dlx.h, config/tc-fr30.h
1946         * config/tc-frv.c, config/tc-frv.h, config/tc-h8300.c
1947         * config/tc-h8500.c, config/tc-hppa.c, config/tc-hppa.h
1948         * config/tc-i370.c, config/tc-i370.h, config/tc-i386.c
1949         * config/tc-i386.h, config/tc-i860.c, config/tc-i860.h
1950         * config/tc-i960.c, config/tc-i960.h, config/tc-ia64.c
1951         * config/tc-ip2k.c, config/tc-ip2k.h, config/tc-iq2000.c
1952         * config/tc-iq2000.h, config/tc-m32r.c, config/tc-m32r.h
1953         * config/tc-m68hc11.c, config/tc-m68hc11.h, config/tc-m68k.c
1954         * config/tc-m68k.h, config/tc-m88k.c, config/tc-maxq.c
1955         * config/tc-mcore.c, config/tc-mcore.h, config/tc-mips.c
1956         * config/tc-mips.h, config/tc-mmix.c, config/tc-mn10200.c
1957         * config/tc-mn10300.c, config/tc-msp430.c, config/tc-ns32k.c
1958         * config/tc-openrisc.h, config/tc-or32.c, config/tc-or32.h
1959         * config/tc-pdp11.c, config/tc-pj.c, config/tc-pj.h
1960         * config/tc-ppc.c, config/tc-ppc.h, config/tc-s390.c
1961         * config/tc-s390.h, config/tc-sh64.c, config/tc-sh.c
1962         * config/tc-sh.h, config/tc-sparc.c, config/tc-sparc.h
1963         * config/tc-tahoe.c, config/tc-tic30.c, config/tc-tic4x.c
1964         * config/tc-tic54x.c, config/tc-tic80.c, config/tc-v850.c
1965         * config/tc-v850.h, config/tc-vax.c, config/tc-vax.h
1966         * config/tc-w65.c, config/tc-xstormy16.c, config/tc-xstormy16.h
1967         * config/tc-xtensa.c, config/tc-z8k.c:
1968         Replace all instances of the string "_apply_fix3" with
1969         "_apply_fix".
1970         * po/POTFILES.in, po/gas.pot: Regenerate.
1971
1972 2005-06-08  Alan Modra  <amodra@bigpond.net.au>
1973
1974         * Makefile.am: Run "make dep-am".
1975         (POTFILES): Remove GAS_CFILES.
1976         * Makefile.in: Regenerate.
1977
1978 2005-06-07  David Ung  <davidu@mips.com>
1979
1980         * config/tc-mips.c (mips_cpu_info_table): Add cpu names m4k, 24k,
1981         24kc, 24kf and 24kfx under MIPS32 release 2.
1982
1983 2005-06-04  Nick Clifton  <nickc@redhat.com>
1984
1985         * config/tc-arm.c (CE, C3, CM, UE, UF): Redefine without reference
1986         to their Thumb-enabled equivalents.
1987
1988 2005-06-01  Maciej W. Rozycki  <macro@linux-mips.org>
1989
1990         * config/tc-mips.c (load_register): Add leading "0x" to the
1991         output of sprintf_vma().
1992         (macro): Likewise.
1993
1994 2005-06-01  Nick Clifton  <nickc@redhat.com>
1995
1996         * config/tc-arm.c (TxCE, TxC3, TxCM, TUE, TUF): Remove redundant
1997         test for the presence of thumb version of the parsing functions
1998         since they must always exist and the test generates a compile time
1999         warning message.
2000
2001 2005-05-31  Richard Henderson  <rth@redhat.com>
2002
2003         * config/tc-alpha.c (O_lituse_jsrdirect): New.
2004         (alpha_reloc_op): Add it.
2005         (debug_exp): Handle it.
2006         (DUMMY_RELOC_LITUSE_JSRDIRECT): New.
2007         (emit_insn): Handle it.
2008         * doc/c-alpha.texi (Alpha-Relocs): Document lituse_jsrdirect.
2009
2010 2005-05-31  Christian Groessler  <chris@groessler.org>
2011
2012         * write.c (dump_section_relocs): Convert to ISO-C.
2013         (write_relocs): Avoid signed/unsigned and fprintf argument
2014         warnings in debug code.
2015
2016 2005-05-26  Zack Weinberg  <zack@codesourcery.com>
2017
2018         * config/tc-arm.h (TC_FIX_TYPE): Change to int.
2019         (TC_INIT_FIX_DATA): Initialize to 0, not NULL.
2020         * config/tc-arm.c (fix_new_arm): Remove now-unnecessary cast.
2021         (md_apply_fix3): Delete fix_is_thumb variable; refer to
2022         fixP->tc_fix_data directly in the sole place it was used.
2023         Explicitly truncate value, *valP, fixP->fx_addnumber, and
2024         fixP->fx_offset to 32 bits, for consistent behavior between 32-
2025         and 64-bit hosts.
2026
2027 2005-05-27  Jan Beulich  <jbeulich@novell.com>
2028
2029         * config/tc-ia64.c (struct proc_pending): New.
2030         (unwind): Replace proc_start with proc_pending.
2031         (unwind_diagnostic): Check unwind.proc_pending.sym.
2032         (dot_proc): Replace unwind.proc_start with unwind.proc_pending.sym.
2033         Check if previous proc not closed. Record all entry points.
2034         (dot_endp): Replace unwind.proc_start with unwind.proc_pending.sym.
2035         Set symbol sizes for entry points recorded in dot_proc. Check
2036         arguments for consistency with respective .proc's.
2037         (md_assemble): Replace unwind.proc_start with
2038         unwind.proc_pending.sym.
2039
2040 2005-05-27  Jan Beulich  <jbeulich@novell.com>
2041
2042         * config/tc-ia64.c (emit_one_bundle): Restrict scope of ptr, end_ptr,
2043         and last_ptr. Check all in-use slots for first one with non-NULL
2044         unwind_record. Don't reload end_ptr before second update round.
2045
2046 2005-05-26  James E Wilson  <wilson@specifixinc.com>
2047
2048         * config/tc-ia64.c (extra_goodness): Update comment.
2049         (md_begin): Add debugging code to print best_template table.
2050
2051 2005-05-25  Jan Beulich  <jbeulich@novell.com>
2052
2053         * config/tc-ia64.c (md_begin): Don't try to match slot 2 of an MLX
2054         template.
2055
2056 2005-05-25  Jan Beulich  <jbeulich@novell.com>
2057
2058         * config/tc-ia64.c (ia64_gen_real_reloc_type): Also handle
2059         BFD_RELOC_UNUSED when determining the width of the reloc.
2060
2061 2005-05-25  Jan Beulich  <jbeulich@novell.com>
2062
2063         * config/tc-ia64.c (dot_endp): Clear out all three pointers in unwind
2064         section entry.
2065
2066 2005-05-25  Jan Beulich  <jbeulich@novell.com>
2067
2068         * config/tc-ia64.c (dot_radix): Rewrite.
2069
2070 2005-05-25  Jan Beulich  <jbeulich@novell.com>
2071
2072         * config/tc-ia64.c (struct unw_rec_list): Remove next_slot_number
2073         and next_slot_frag.
2074         (alloc_record): Remove references to next_slot_number and
2075         next_slot_frag.
2076         (emit_one_bundle): Likewise.
2077
2078 2005-05-22  Nick Clifton  <nickc@redhat.com>
2079
2080         * config/tc-v850.c (md_apply_fix3): Pass the address of the
2081         message buffer when invoking the insert function.
2082
2083 2005-05-21  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
2084
2085         * config/tc-hppa.c (pa_ip): Promote architecture from PA 1.0 to 1.1
2086         only if an instruction match is found.
2087
2088 2005-05-20  Bob Wilson  <bob.wilson@acm.org>
2089
2090         * config/tc-xtensa.c (xg_assemble_vliw_tokens): Change subtraction
2091         to addition in argument to xtensa_dwarf2_emit_insn.
2092
2093 2005-05-19  Zack Weinberg  <zack@codesourcery.com>
2094
2095         * Makefile.am: Have 'all' depend on 'info'.
2096         * Makefile.in: Regenerate.
2097
2098 2005-05-19  Alan Modra  <amodra@bigpond.net.au>
2099
2100         * config/tc-ppc.c (ppc_force_relocation): Add BFD_RELOC_24_PLT_PCREL.
2101
2102 2005-05-19  Anton Blanchard  <anton@samba.org>
2103
2104         * config/tc-ppc.c (parse_cpu): Handle "-mpower5".
2105         (md_show_usage): Document it.
2106         (ppc_setup_opcodes): Insert POWER5 mnemonics.
2107         * doc/c-ppc.texi (PowerPC-Opts): Document "-mpower5".
2108
2109 2005-05-19  Jan Beulich  <jbeulich@novell.com>
2110
2111         * config/tc-ia64.c (dot_endp): Don't use global symbol for unwind
2112         relocations in unwind section.
2113
2114 2005-05-18  Nick Clifton  <nickc@redhat.com>
2115
2116         * config/tc-v850.c (md_apply_fix3): Only use the insertion routine
2117         if one exists.  Ignore any error messages it may produce, just
2118         allow it to perform the insertion.
2119
2120 2005-05-17  Zack Weinberg  <zack@codesourcery.com>
2121
2122         * hash.c (hash_lookup): Add len parameter.  All callers changed.
2123         (hash_find_n): New interface.
2124         * hash.h: Prototype hash_find_n.
2125         * sb.c: Include as.h.
2126         (scrub_from_sb, sb_to_scrub, scrub_position): New statics.
2127         (sb_scrub_and_add_sb): New interface.
2128         * sb.h: Prototype sb_scrub_and_add_sb.
2129         * input-scrub.c (input_scrub_include_sb): Use sb_scrub_and_add_sb.
2130
2131         * config/tc-arm.h (TC_FORCE_RELOCATION_LOCAL): Remove
2132         reference to BFD_RELOC_ARM_GOT12 which is never generated.
2133         * config/tc-arm.c: Rewrite, adding Thumb-2 support.
2134
2135 2005-05-17  Daniel Jacobowitz  <dan@codesourcery.com>
2136
2137         * doc/Makefile.am (gasver.texi): Don't use $<.
2138         * doc/Makefile.in: Regenerated.
2139
2140 2005-05-17  Nick Clifton  <nickc@redhat.com>
2141
2142         PR 876
2143         * symbols.c (resolve_symbol_value): Do not move symbols whose
2144         value expression has not been resolved or finalized into the
2145         absolute section as this will confuse other parts of the assembler
2146         into thinking that their value is zero.
2147
2148 2005-05-17  Jan Beulich  <jbeulich@novell.com>
2149
2150         * read.c (_find_end_of_line): New.
2151         (find_end_of_line): New.
2152         (HANDLE_CONDITIONAL_ASSEMBLY): Use it.
2153         (read_a_source_file): Use it.
2154         (s_globl): Use it.
2155         (s_macro): Use it.
2156         (get_line_sb): Use it.
2157         (s_errwarn): Replace discard_rest_of_line by ignore_rest_of_line.
2158         (s_comm_internal): Likewise.
2159         (s_lsym): Likewise.
2160         (s_macro): Likewise.
2161         (s_ignore): Use ignore_rest_of_line.
2162         * read.h (find_end_of_line): Prototype.
2163         (discard_rest_of_line): Remove prototype. #define to
2164         ignore_rest_of_line.
2165
2166 2005-05-17  Nick Clifton  <nickc@redhat.com>
2167
2168         * config/tc-v850,h (TC_FIX_TYPE): Define.
2169         (TC_INIT_FIX_TYPE): Define.
2170         * config/tc-v850.c (md_assemble): When creating a fix record the
2171         operand in the tc_fix_data field.
2172         (md_apply_fix3): When applying a resolved fix use the operand's
2173         insertion procedure to store the value, if the operand has been
2174         recorded.
2175
2176 2005-05-15  Daniel Jacobowitz  <dan@codesourcery.com>
2177
2178         * Makefile.am (m68k-parse.c, itbl-parse.c): Update ylwrap
2179         invocation.
2180         * Makefile.in: Regenerated.
2181
2182 2005-05-13  Sterling Augustine  <sterling@tensilica.com>
2183             Bob Wilson  <bob.wilson@acm.org>
2184
2185         * config/tc-xtensa.c (xtensa_insnbuf_set_operand): Clarify error
2186         message.
2187         (xtensa_mark_zcl_first_insns): Fix incorrect nesting of conditional
2188         for handling RELAX_CHECK_ALIGN_NEXT_OPCODE.
2189
2190 2005-05-11  Alan Modra  <amodra@bigpond.net.au>
2191
2192         * config/tc-ppc.c (md_apply_fix3): Allow pcrel forms of BFD_RELOC_16,
2193         BFD_RELOC_LO16, BFD_RELOC_HI16 and BFD_RELOC_HI16_S.
2194
2195 2005-05-10  Michael Matz  <matz@suse.de>
2196
2197         * frags.c (frag_grow): Don't be too greedy in allocating memory.
2198
2199         * config/tc-hppa.c (pa_block): Check arguments to .block[z].
2200
2201 2005-05-10  Hans-Peter Nilsson  <hp@bitrange.com>
2202
2203         PR binutils/886
2204         * config/tc-mmix.c (mmix_handle_mmixal): Rearrange slightly.
2205         Handle label-without-colon before ordinary dot-pseudo as an
2206         ordinary label.  Don't leak memory for label-without-colon alone
2207         on a line.  Don't mmixal-munge operands for dot-pseudos.
2208
2209 2005-05-10  Jan Beulich  <jbeulich@novell.com>
2210
2211         * macro.c (get_any_string): Remove the two last parameters. Replace
2212         references to the former expand parameter by using macro_alternate.
2213         Simplify loop condition for checking for end-of-string.
2214         (get_string): Remove redunant call to sb_skip_white.
2215         (do_formals): Remove two last arguments to get_any_string.
2216         (macro_expand): Likewise.
2217         (expand_irp): Likewise.
2218
2219 2005-05-10  Jan Beulich  <jbeulich@novell.com>
2220
2221         * read.c (s_macro): Move local variable 'local' to smaller scope.
2222         Call sb_kill on it when done.
2223
2224 2005-05-09  Jan Beulich  <jbeulich@novell.com>
2225
2226         * config/tc-i386.c (optimize_disp): Discard displacement entirely
2227         when zero and not required by encoding constraints.
2228
2229 2005-05-09  H.J. Lu  <hongjiu.lu@intel.com>
2230
2231         PR 936
2232         * config/tc-sh64.c (sh64_fake_label): New.
2233
2234         * config/tc-sh64.h (TC_FAKE_LABEL): New.
2235
2236         * doc/internals.texi (TC_FAKE_LABEL): Document.
2237
2238         * write.c (TC_FAKE_LABEL): New.
2239         (adjust_reloc_syms): Use it.
2240         (write_object_file): Likewise.
2241
2242 2005-05-09  Jan Beulich  <jbeulich@novell.com>
2243
2244         * config/tc-i386.c (parse_insn): Disallow use of prefix separator
2245         and comma in Intel mode.
2246
2247 2005-05-09  Jan Beulich  <jbeulich@novell.com>
2248
2249         * config/tc-i386.c (tc_x86_regname_to_dw2regnum): Correct 64-bit mode
2250         names to match ABI. Add more registers for 32-bit and 64-bit modes.
2251         Make name array static and const. Adjust lookup to account for NULL
2252         entries (standing for unused register numbers).
2253
2254 2005-05-09  Jan Beulich  <jbeulich@novell.com>
2255
2256         * config/tc-i386.c (parse_insn): Consider all matching instructions
2257         when checking for string instruction after string-only prefix.
2258
2259 2005-05-07  H.J. Lu  <hongjiu.lu@intel.com>
2260
2261         PR 940
2262         * config/tc-ia64.c (start_unwind_section): Properly check
2263         comdat group with SHF_GROUP.
2264
2265 2005-05-06  Bob Wilson  <bob.wilson@acm.org>
2266
2267         * doc/c-xtensa.texi (Literal Directive): Spelling correction.
2268
2269 2005-05-06  Bob Wilson  <bob.wilson@acm.org>
2270
2271         * config/tc-xtensa.c: Remove excess whitespace.
2272         * config/tc-xtensa.h: Likewise.
2273         * config/xtensa-istack.h: Likewise.
2274         * config/xtensa-relax.c: Likewise.
2275         * config/xtensa-relax.h: Likewise.
2276
2277 2005-05-06  Nick Clifton  <nickc@redhat.com>
2278
2279         * sb.h: Fix formatting of comments.
2280         * sb.c: Fix formatting of comments.
2281
2282 2005-05-06  Jan Beulich  <jbeulich@novell.com>
2283
2284         * sb.h (sb_add_buffer): Reintroduce.
2285         * sb.c (sb_add_buffer): Likewise.
2286
2287 2005-05-06  Jan Beulich  <jbeulich@novell.com>
2288
2289         * macro.c (new_formal, del_formal): New.
2290         (do_formals): Use new_formal. Check for and parse qualifier. Warn if
2291         required argument has default value. Stop looking for more formal
2292         when there was a vararg one.
2293         (macro_expand_body): Use new_formal and del_formal.
2294         (macro_expand): Likewise. Initialize local variable err. Don't
2295         return immediately when encountering an error. Warn when keyword
2296         argument already had a value assigned. Eliminate duplicate clearing
2297         of argument value. When current positional argument matches parameter
2298         of vararg type, assign to it all the remaining arguments. Issue error
2299         when required parameter does not have value.
2300         (free_macro): Use del_formal.
2301         (expand_irp): Initialize formal type. Free buffers associated with
2302         formal prior to returning.
2303         * macro.h (struct formal_struct): Add new field 'type' with new
2304         enumeration type 'formal_type'.
2305         * doc/as.texinfo: Document macro parameter qualifiers.
2306         * NEWS: Mention new functionality.
2307
2308 2005-05-06  Jan Beulich  <jbeulich@novell.com>
2309
2310         * cond.c (s_ifb): New.
2311         * read.c (potable): Add s_ifb as handler for .ifb and .ifnb.
2312         * read.h (s_ifb): Prototype.
2313         * doc/as.texinfo: Document .ifb and .ifnb.
2314
2315 2005-05-05  Steve Ellcey  <sje@cup.hp.com>
2316
2317         * config/tc-ia64.c (MIN): Undef.
2318
2319 2005-05-05  Paul Brook  <paul@codesourcery.com>
2320
2321         * config/tc-i386.h (ELF_TARGET_FORMAT): Define for TE_VXWORKS.
2322
2323 2005-05-05  Matt Thomas <matt@3am-software.com>
2324
2325         * config/tc-vax.c (md_assemble): Don't assume a valueT is 4
2326         bytes.
2327
2328 2005-05-05  Nick Clifton  <nickc@redhat.com>
2329
2330         * Update the address and phone number of the FSF organization in
2331         the GPL notices in the following files:
2332         COPYING, app.c, as.c, as.h, asintl.h, atof-generic.c, bignum.h,
2333         bit_fix.h, cgen.c, cgen.h, cond.c, debug.c, depend.c, dw2gencfi.c,
2334         dw2gencfi.h, dwarf2dbg.c, dwarf2dbg.h, ecoff.c, ecoff.h, ehopt.c,
2335         emul-target.h, emul.h, expr.c, expr.h, flonum-copy.c,
2336         flonum-konst.c, flonum.h, frags.c, frags.h, hash.c, hash.h,
2337         input-file.c, input-file.h, input-scrub.c, itbl-lex.h, itbl-lex.l,
2338         itbl-ops.c, itbl-ops.h, itbl-parse.y, listing.c, listing.h,
2339         literal.c, macro.c, macro.h, messages.c, obj.h, output-file.c,
2340         output-file.h, read.c, read.h, sb.c, sb.h, stabs.c,
2341         struc-symbol.h, subsegs.c, subsegs.h, symbols.c, symbols.h, tc.h,
2342         write.c, write.h, config/aout_gnu.h, config/atof-ieee.c,
2343         config/atof-vax.c, config/itbl-mips.h, config/m68k-parse.h,
2344         config/m68k-parse.y, config/m88k-opcode.h, config/obj-aout.c,
2345         config/obj-aout.h, config/obj-bout.c, config/obj-bout.h,
2346         config/obj-coff.c, config/obj-coff.h, config/obj-ecoff.c,
2347         config/obj-ecoff.h, config/obj-elf.c, config/obj-elf.h,
2348         config/obj-evax.c, config/obj-evax.h, config/obj-hp300.c,
2349         config/obj-hp300.h, config/obj-ieee.c, config/obj-ieee.h,
2350         config/obj-multi.h, config/obj-som.c, config/obj-som.h,
2351         config/tc-a29k.c, config/tc-a29k.h, config/tc-alpha.c,
2352         config/tc-alpha.h, config/tc-arc.c, config/tc-arc.h,
2353         config/tc-arm.h, config/tc-avr.c, config/tc-avr.h,
2354         config/tc-cris.c, config/tc-cris.h, config/tc-crx.c,
2355         config/tc-crx.h, config/tc-d10v.c, config/tc-d10v.h,
2356         config/tc-d30v.c, config/tc-d30v.h, config/tc-dlx.c,
2357         config/tc-dlx.h, config/tc-fr30.c, config/tc-fr30.h,
2358         config/tc-frv.c, config/tc-frv.h, config/tc-generic.c,
2359         config/tc-generic.h, config/tc-h8300.c, config/tc-h8300.h,
2360         config/tc-h8500.c, config/tc-h8500.h, config/tc-hppa.c,
2361         config/tc-hppa.h, config/tc-i370.c, config/tc-i370.h,
2362         config/tc-i386.c, config/tc-i386.h, config/tc-i860.c,
2363         config/tc-i860.h, config/tc-i960.c, config/tc-i960.h,
2364         config/tc-ia64.c, config/tc-ia64.h, config/tc-ip2k.c,
2365         config/tc-ip2k.h, config/tc-iq2000.c, config/tc-iq2000.h,
2366         config/tc-m32r.c, config/tc-m32r.h, config/tc-m68851.h,
2367         config/tc-m68hc11.c, config/tc-m68hc11.h, config/tc-m68k.c,
2368         config/tc-m68k.h, config/tc-m88k.c, config/tc-m88k.h,
2369         config/tc-maxq.c, config/tc-maxq.h, config/tc-mcore.c,
2370         config/tc-mcore.h, config/tc-mips.c, config/tc-mips.h,
2371         config/tc-mmix.c, config/tc-mmix.h, config/tc-mn10200.c,
2372         config/tc-mn10200.h, config/tc-mn10300.c, config/tc-mn10300.h,
2373         config/tc-msp430.c, config/tc-msp430.h, config/tc-ns32k.c,
2374         config/tc-ns32k.h, config/tc-openrisc.c, config/tc-openrisc.h,
2375         config/tc-or32.c, config/tc-or32.h, config/tc-pdp11.c,
2376         config/tc-pdp11.h, config/tc-pj.c, config/tc-pj.h,
2377         config/tc-ppc.c, config/tc-ppc.h, config/tc-s390.c,
2378         config/tc-s390.h, config/tc-sh.c, config/tc-sh.h,
2379         config/tc-sh64.c, config/tc-sh64.h, config/tc-sparc.c,
2380         config/tc-sparc.h, config/tc-tahoe.c, config/tc-tahoe.h,
2381         config/tc-tic30.c, config/tc-tic30.h, config/tc-tic4x.c,
2382         config/tc-tic4x.h, config/tc-tic54x.c, config/tc-tic54x.h,
2383         config/tc-tic80.c, config/tc-tic80.h, config/tc-v850.c,
2384         config/tc-v850.h, config/tc-vax.c, config/tc-vax.h,
2385         config/tc-w65.c, config/tc-w65.h, config/tc-xstormy16.c,
2386         config/tc-xstormy16.h, config/tc-xtensa.c, config/tc-xtensa.h,
2387         config/tc-z8k.c, config/tc-z8k.h, config/te-386bsd.h,
2388         config/te-freebsd.h, config/te-hp300.h, config/te-hppa.h,
2389         config/te-ic960.h, config/te-irix.h, config/te-nbsd.h,
2390         config/te-netware.h, config/te-sparcaout.h, config/te-sun3.h,
2391         config/te-tmips.h, config/te-vxworks.h, config/vax-inst.h,
2392         config/xtensa-istack.h, config/xtensa-relax.c,
2393         config/xtensa-relax.h, doc/fdl.texi
2394
2395 2005-05-05  Nick Clifton  <nickc@redhat.com>
2396
2397         * config/tc-arm.c (arm_opts): Make -mlittle-endian switch set
2398         the target_big_endian variable to false.
2399
2400 2005-05-04  Alan Modra  <amodra@bigpond.net.au>
2401
2402         * config/obj-ecoff.c (ecoff_frob_file_before_fix): Correct section
2403         list traversal.  Use bfd_section_list_prepend.
2404         * config/tc-mmix.c (mmix_frob_file): Don't needlessly iterate
2405         over the section list.
2406         * config/tc-xtensa.c (xtensa_remove_section): Delete.
2407         (xtensa_insert_section): Delete.
2408         (xtensa_move_seg_list_to_beginning): Use bfd_section_list_remove
2409         and bfd_section_list_prepend.
2410         (xtensa_reorder_seg_list): Use bfd_section_list_remove and
2411         bfd_section_list_insert_after.
2412
2413 2005-05-03  Nick Clifton  <nickc@redhat.com>
2414
2415         * config/obj-ecoff.c (ecoff_frob_file_before_fix): Fix invocations
2416         of bfd_section_list... macros.
2417         * config/tc-mmix.c (mmix_frob_file): Likewise.
2418         * config/tc-xtensa.c (xtensa_remove_section): Likewise.
2419         (xtensa_insert_section): Likewise.
2420
2421         * macro.c (macro_hash): Remove static.
2422         * macro.h (macro_hash): Provide an external declaration.
2423
2424 2005-05-02  H.J. Lu  <hongjiu.lu@intel.com>
2425
2426         * write.c (write_object_file): Use bfd_section_double_list_remove
2427         to remove sections.
2428
2429 2005-05-02  Daniel Jacobowitz  <dan@codesourcery.com>
2430
2431         * doc/Makefile.am (gasver.texi): Correct quoting.
2432         * doc/Makefile.in: Regenerated.
2433
2434 2005-04-29  Ralf Corsepius <ralf.corsepius@rtems.org>
2435
2436         * configure.tgt: Add h8300*-*-rtemscoff.
2437         Switch h8300*-*-rtems* to elf.
2438
2439 2005-04-29  H.J. Lu  <hongjiu.lu@intel.com>
2440
2441         * hash.c: Undo the last change.
2442         * hash.h: Likewise.
2443
2444 2005-04-29  Daniel Jacobowitz  <dan@codesourcery.com>
2445
2446         * doc/Makefile.am (gasver.texi): Depend on bfd/configure instead
2447         of Makefile.
2448         (DISTCLEANFILES): Remove.
2449         (MAINTAINERCLEANFILES): Add asconfig.texi.
2450         * aclocal.m4, Makefile.in, doc/Makefile.in: Regenerated.
2451
2452 2005-04-29  Ben Elliston  <bje@au.ibm.com>
2453
2454         * Makefile.am (GAS_CFILES): Remove bignum-copy.c.
2455         (GENERIC_OBJS): Likewise, remove bignum-copy.o.
2456         (bignum-copy.o): Remove.
2457         * Makefile.in: Regenerate.
2458         * makefile.vms (OBJS): Remove bignum-copy.obj.
2459         * symbols.h (local_symbol_make): Remove declaration.
2460         (verify_symbol_chain_2): Likewise.
2461         * symbols.c (local_symbol_make): Make static.
2462         (max_indent_level): Likewise.
2463         (verify_symbol_chain_2): Remove.
2464         * macro.c (macro_hash): Make static.
2465         * messages.c (fprint_value): Remove.
2466         * read.h (get_absolute_expr): Remove.
2467         (emit_leb128_expr): Likewise.
2468         (do_s_func): Likewise.
2469         * read.c (do_s_func): Make static.
2470         (emit_leb128_expr): Likewise.
2471         (get_absolute_expr): Likewise.
2472         * as.h (as_howmuch): Remove declaration.
2473         (fprint_value): Likewise.
2474         * as.c (myname): Make static.
2475         * input-scrub.c (as_howmuch): Remove.
2476         (as_1_char): Likewise.
2477         * input-file.h (input_file_is_open): Remove.
2478         * input-file.c (input_file_is_open): Likewise.
2479         * expr.h (expr_build_unary): Remove declaration.
2480         (expr_build_binary): Likewise.
2481         * expr.c (expr_build_unary): Remove.
2482         (expr_build_binary): Likewise.
2483         * hash.h (hash_replace): Remove declaration.
2484         (hash_delete): Likewise.
2485         * hash.c (hash_replace): Remove.
2486         (hash_delete): Likewise.
2487         * bignum-copy.c (bignum_copy): Move from here ..
2488         * config/tc-vax.c (bignum_copy): .. to here.
2489         * bignum.h (LOG_TO_BASE_2_OF_10): Remove.
2490         (bignum_copy): Remove extern declaration.
2491         * sb.h (string_count): Remove extern declaration.
2492         (sb_build, sb_add_buffer, sb_print, sb_print_at): Likewise.
2493         (sb_name): Likewise.
2494         * sb.c (dsize): Replace preprocessor macro with static int.
2495         (string_count): Make static.
2496         (sb_build, sb_add_buffer, sb_print, sb_print_at): Likewise.
2497         (sb_name): Likewise.
2498         * config/obj-coff.c (dim_index): Make static.
2499         * config/tc-i386.c (GOT_symbol): Likewise.
2500         (output_invalid_buf): Likewise.
2501         * doc/internals.texi (Warning and error messages): Remove the
2502         prototype for fprint_value.
2503
2504 2005-04-27  Ben Elliston  <bje@au.ibm.com>
2505
2506         * link.cmd: Remove.
2507
2508 2005-04-26  H.J. Lu  <hongjiu.lu@intel.com>
2509
2510         * config/obj-multi.h (FAKE_LABEL_NAME): Defined.
2511
2512         * read.c (pseudo_set): Disallow symbol set to common symbol.
2513
2514         PR 857
2515         * write.c (write_object_file): Report common symbol name when
2516         disallowing local symbol set to common symbol.
2517         (adjust_reloc_syms): Disallow local symbol set to undefined
2518         symbol.
2519
2520 2005-04-25  Jan Beulich  <jbeulich@novell.com>
2521
2522         * macro.c (macro_expand_body): Replace locals indicator parameters
2523         with actual macro_entry. New local variables macro_line and err.
2524         Don't return when encountering an error, just record the fact.
2525         Detect local symbol name colliding with parameter. Track line number
2526         inside of macro expansion.
2527         (do_formals): Move local variable name to wider scope. Check
2528         parameter of the same name doesn't already exist. In MRI mode, also
2529         check it doesn't collide with the argument count pseudo-parameter).
2530         (define_macro): Add file and line number parameters. Remove local
2531         variable namestr. New local variable error. Initialize macro_entry
2532         members file, line, and name. Don't return when encountering an
2533         error, just record the fact. Use %s in some diagnostics for read.c
2534         to insert the macro name. Free macro_entry on error.
2535         (macro_expand): Pass macro_entry to macro_epand_body. Don't return
2536         when encountering an error, just record the fact.
2537         (expand_irp): Don't return when encountering an error, just record
2538         the fact.
2539         * macro.h (macro_struct): New members name, file, and line.
2540         (define_macro): Add file and line number parameters.
2541         * read.c (s_macro): Pass file and line to define_macro. Tag warning
2542         regarding pseudo-op redefinition with the file/line that macro
2543         definition started at.
2544
2545 2005-04-22  Bob Wilson  <bob.wilson@acm.org>
2546
2547         * config/tc-xtensa.c (LOOKAHEAD_ALIGNER): Delete macro.
2548         (future_alignment_required): Remove ifdefs that use it.
2549
2550 2005-04-22  Bob Wilson  <bob.wilson@acm.org>
2551
2552         * config/tc-xtensa.c (xg_get_build_instr_size): Remove.
2553         (xg_is_narrow_insn, xg_expand_narrow): Remove.  Merge into...
2554         (xg_is_single_relaxable_insn): ...here.  Add "targ" and "narrow_only"
2555         parameters.
2556         (xg_assembly_relax, xg_find_narrowest_format, relaxation_requirements,
2557         convert_frag_narrow): Use new version of xg_is_single_relaxable_insn.
2558
2559 2005-04-21  Christian Groessler  <chris@groessler.org>
2560
2561         * config/tc-z8k.c (md_assemble): Fix buffer overrun in operand[]
2562         array.
2563
2564 2005-04-20  H.J. Lu  <hongjiu.lu@intel.com>
2565
2566         * config/obj-aout.h (S_IS_EXTERN): Removed.
2567         * config/obj-bout.h (S_IS_EXTERN): Likewise.
2568         * config/obj-coff.h (S_IS_EXTERN): Likewise.
2569         * symbols.c (S_IS_EXTERN): Likewise.
2570         * symbols.h (S_IS_EXTERN): Likewise.
2571
2572         * config/tc-alpha.c (tc_gen_reloc): Replace S_IS_EXTERN with
2573         S_IS_EXTERNAL.
2574         * config/tc-d10v.c (md_apply_fix3): Likewise.
2575         * config/tc-ia64.c (ia64_fix_adjustable): Likewise.
2576         * config/tc-iq2000.c (iq2000_fix_adjustable): Likewise.
2577         * config/tc-m32r.c (m32r_fix_adjustable): Likewise.
2578         * config/tc-mmix.c (mmix_adjust_symtab): Likewise.
2579         * config/tc-sh64.c (shmedia_frob_file_before_adjust): Likewise.
2580         (shmedia_md_convert_frag): Likewise.
2581         * symbols.c (print_symbol_value_1): Likewise.
2582         * write.c (write_object_file): Likewise.
2583
2584 2005-04-20  Nick Clifton  <nickc@redhat.com>
2585
2586         * config/tc-xtensa.c (get_aligned_diff): Change type of
2587         branch_align to offsetT so that its signedness matches that of
2588         target_size.
2589
2590         * config/tc-mips.c (macro): Use sprintf_vma to convert a > 32 bit
2591         number into a readable string.
2592         (load_register): Likewise.
2593
2594 2005-04-20  Andreas Schwab  <schwab@suse.de>
2595
2596         * config/tc-ia64.c (specify_resource): Initialize all of tmpl.
2597
2598 2005-04-19  David S. Miller  <davem@davemloft.net>
2599
2600         * config/tc-sparc.c (md_assemble): If sparc_ip gives us a
2601         NULL insn, exit early.  Remove now spurious NULL checks.
2602         (sparc_ip): Use as_bad for unknown opcode errors, set *pinsn
2603         to NULL and exit.
2604
2605 2005-04-19  Jan Beulich  <jbeulich@novell.com>
2606
2607         * symbols.h (symbol_find_base): Remove prototype.
2608         * symbols.c (save_symbol_name): Remove code section conditional upon
2609         STRIP_UNDERSCORE.
2610         (symbol_find): Remove.
2611         (symbol_find_base): Rename to symbol_find.
2612         * subsegs.c (section_symbol): Replace use of symbol_find_base with
2613         symbol_find.
2614         * config/obj-coff.c (tag_insert): Remove code section conditional
2615         upon STRIP_UNDERSCORE.
2616         (obj_coff_def): Likewise.
2617         (obj_coff_endef): Replace use of symbol_find_base with symbol_find.
2618         (coff_frob_symbol): Likewise.
2619         (yank_symbols): Likewise.
2620         (c_section_symbol): Likewise.
2621         * config/obj-coff.h (DO_NOT_STRIP): Remove.
2622         * config/tc-arm.c (symbol_locate): Remove code section conditional
2623         upon STRIP_UNDERSCORE.
2624         * config/tc-h8300.h (DO_NOT_STRIP): Remove.
2625         * config/tc-h8500.h (DO_NOT_STRIP): Remove.
2626         * config/tc-sh.h (DO_NOT_STRIP): Remove.
2627         * config/tc-w65.h (DO_NOT_STRIP): Remove.
2628         * config/tc-z8k.h (DO_NOT_STRIP): Remove.
2629
2630 2005-04-19  Andreas Schwab  <schwab@suse.de>
2631
2632         * config/tc-ia64.c (md_assemble): Fix error message for wrong
2633         access to application registers.
2634
2635 2005-04-19  Jan Beulich  <jbeulich@novell.com>
2636
2637         * config/te-sysv32.h: Remove.
2638         * Makefile.am (TARG_ENV_HFILES): Remove reference to
2639         config/te-sysv32.h.
2640         * Makefile.in (TARG_ENV_HFILES): Likewise.
2641
2642 2005-04-19  Jan Beulich  <jbeulich@novell.com>
2643
2644         PR/847
2645         * config/tc-ia64.c (ia64_canonicalize_symbol_name): Re-allow zero-
2646         length symbols.
2647
2648 2005-04-18  Mark Kettenis  <kettenis@gnu.org>
2649
2650         * config/tc-i386.c (md_begin): Allow hyphens in mnemonics.
2651
2652 2005-04-18  Maciej W. Rozycki  <macro@linux-mips.org>
2653
2654         * config/tc-mips.c (normalize_constant_expr): Don't check for
2655         HAVE_32BIT_GPRS.
2656         (check_absolute_expr): Only call normalize_constant_expr() if
2657         HAVE_32BIT_GPRS.
2658         (mips_ip): Likewise.
2659
2660         * config/tc-mips.c (check_absolute_expr): Fix formatting.
2661
2662 2005-04-18  Jan Beulich  <jbeulich@novell.com>
2663
2664         * macro.c (free_token): New, freeing all the memory associated with a
2665         macro.
2666         (do_formals): Move initializers to ...
2667         (define_macro): ... here.
2668         (delete_macro): Convert passed in name to lower case. Warn when
2669         purging macro that doesn't exist. Use hash_jam instead of hash_delete.
2670
2671 2005-04-15  Maciej W. Rozycki  <macro@linux-mips.org>
2672
2673         * config/tc-mips.c (normalize_constant_expr): Fix formatting.
2674
2675 2005-04-15  Jan Beulich  <jbeulich@novell.com>
2676
2677         * config/obj-elf.c (obj_elf_struct): New.
2678         (elf_pseudo_table). Use it for .offset and .struct.
2679
2680 2005-04-14  Bob Wilson  <bob.wilson@acm.org>
2681             Sterling Augustine  <sterling@tensilica.com>
2682
2683         * config/tc-xtensa.c (get_aligned_diff): Handle target_size larger
2684         than the section alignment.
2685
2686 2005-04-14  Bob Wilson  <bob.wilson@acm.org>
2687             H.J. Lu  <hongjiu.lu@intel.com>
2688
2689         * config/tc-xtensa.h (struct xtensa_frag_type): Add lit_frchain field.
2690         * config/tc-xtensa.c (xg_translate_sysreg_op,
2691         xtensa_translate_old_userregs_ops,
2692         xtensa_find_unaligned_branch_targets,
2693         xtensa_find_unaligned_loops, xtensa_fix_close_loop_end_frags,
2694         relax_frag_add_nop): Support 64-bit host.
2695         (xtensa_mark_literal_pool_location, xtensa_move_literals): Use
2696         tc_frag_data lit_frchain and lit_seg fields instead of fr_var.
2697
2698 2005-04-14  Mark Kettenis  <kettenis@gnu.org>
2699
2700         * configure.tgt: Add support for OpenBSD/sparc ELF.
2701
2702         * configure.tgt: Set emulation for mips-*-openbsd*.
2703         Remove broken mips-dec-openbsd* config.
2704         * configure.in: Set default ABI for mips64-*-openbsd*.
2705         * configure: Regenerate.
2706
2707 2005-04-14  Maciej W. Rozycki  <macro@linux-mips.org>
2708
2709         * config/tc-mips.c (macro) [ldd_std]: Don't attempt the GP
2710         optimization for constant addresses.
2711
2712 2005-04-14  Nick Clifton  <nickc@redhat.com>
2713
2714         * as.c (main): Move parse_args before symbol_begin and frag_init
2715         so that the hash table size can be set before it is used.
2716         * hash.c: Use an unsigned long type for the size of the hash
2717         tables.
2718         * hash.h (set_gas_hash_table_size): Update the prototype.
2719
2720 2005-04-14  Alan Modra  <amodra@bigpond.net.au>
2721
2722         * Makefile.am (NO_WERROR): Define.  Use instead of -Wno-error.
2723         * acinclude.m4: Include ../bfd/warning.m4.
2724         * configure.in: Invoke AM_BINUTILS_WARNINGS.
2725         * Makefile.in: Regenerate.
2726         * configure: Regenerate.
2727         * doc/Makefile.in: Regenerate.
2728
2729 2005-04-13  Maciej W. Rozycki  <macro@linux-mips.org>
2730
2731         * config/tc-mips.c (IS_ZEXT_32BIT_NUM): New macro.
2732         (normalize_address_expr): New function to sign-extend address
2733         offsets that fit into 32 bits in 32-bit mode.
2734         (macro_build_ldst_constoffset): Use normalize_address_expr()
2735         instead of a handcoded sequence.
2736         (load_register): Likewise.  Report oversized numbers in a useful
2737         way.
2738         (macro) [ld_st, ldd_std]: Reject all oversized offsets, not only
2739         for constant addresses.  Report oversized numbers in a useful way.
2740         (mips_ip): Use normalize_address_expr() for addresses.
2741
2742 2005-04-12  Mark Kettenis  <kettenis@gnu.org>
2743
2744         * config/tc-i386.c (output_insn): Handle VIA PadLock instructions
2745         similar to other instructions now that they're marked as ImmExt.
2746
2747 2005-04-12  Nick Clifton  <nickc@redhat.com>
2748
2749         * hash.c (DEFAULT_SIZE): Delete.  Replace with:
2750         (gas_hash_table_size): New static variable.
2751         (set_gas_hash_table_size): New function:  Records a requested size
2752         for the hash tables.
2753         (get_gas_hash_table_size): New function: Return a prime number
2754         near the requested size of the hash table.
2755         (hash_new): Use get_gas_hash_table_size.
2756         * hash.h: Add a prototype for set_gas_hash_table_size.
2757         * as.c (show_usage): Add description of new switches: --hash-size
2758         and --reduce-memory-overheads.
2759         (option_values): Add OPTION_HASH_TABLE_SIZE and
2760         OPTION_REDUCE_MEMORY_OVERHEADS.
2761         (std_longpopts): Add entries for the new options.
2762         (parse_args): Handle the new options.
2763         * Makefile.am: Add a dependency of as.c on hash.h.
2764         * Makefile.in: Regenerate.
2765         * doc/as.texinfo: Document the new switches.
2766         * NEWS: Mention the new switches.
2767
2768 2005-04-12  Nick Clifton  <nickc@redhat.com>
2769
2770         PR gas/818
2771         * config/tc-hppa.c (pre_defined_registers): Fix %farg[0-3]
2772         synonyms.
2773
2774 2005-04-12  Alan Modra  <amodra@bigpond.net.au>
2775
2776         * Makefile.am: Run "make dep-am".
2777         * Makefile.in: Regenerate.
2778
2779 2005-04-11  Sterling Augustine  <sterling@tensilica.com>
2780             Bob Wilson  <bob.wilson@acm.org>
2781
2782         * config/tc-xtensa.c (check_t1_t2_reads_and_writes): Fix typo.
2783
2784 2005-04-11  Mark Kettenis  <kettenis@gnu.org>
2785
2786         * configure.tgt (generic_target): Add support for OpenBSD/i386 ELF.
2787
2788 2005-04-11  Jan Beulich  <jbeulich@novell.com>
2789
2790         * NEWS: Mention these changes and their effects.
2791         * macro.c (get_token): Use is_name_beginner/is_part_of_name/
2792         is_name_ender.
2793         (check_macro): Likewise.
2794         (buffer_and_nest): Likewise. Permit multiple labels. Don't discard
2795         labels together with the closing pseudo-op.
2796         (macro_expand_body): Adjust comment. Range-check input before use.
2797         Adjust mis-spelled diagnostic. Use is_name_beginner.
2798         * read.c (try_macro): New.
2799         (read_a_source_file): New static variable last_eol. Don't list
2800         macro expansion lines more than once. Call try_macro.
2801         (s_macro): Set section of line_label to absolute instead of undefined.
2802         * doc/as.texinfo: Add information on the caveats of these changes.
2803
2804 2005-04-11  Alan Modra  <amodra@bigpond.net.au>
2805
2806         * symbols.c (symbol_X_add_number): Change return type to "offsetT *".
2807         * symbols.h (symbol_X_add_number): Update prototype.
2808
2809 2005-04-10  Eric Christopher  <echristo@redhat.com>
2810
2811         * symbols.c (symbol_X_add_number): Fix warning.
2812
2813 2005-04-10  H.J. Lu  <hongjiu.lu@intel.com>
2814
2815         * config/tc-m68k.c (md_begin): Support 64bit host.
2816         (get_num): Support 64bit BFD on 32bit host.
2817
2818 2005-04-10  H.J. Lu  <hongjiu.lu@intel.com>
2819
2820         * config/tc-mips.c (md_apply_fix3): Fix typos in BFD_RELOC_64.
2821
2822 2005-04-09  Alan Modra  <amodra@bigpond.net.au>
2823
2824         * read.c (assign_symbol): Remove const from parm.  Fix xcalloc
2825         call.  Don't do the COFF hacks for multi-emulation gas.  Move
2826         demand_empty_rest_of_line back to caller.
2827         (s_set, equals): demand_empty_rest_of_line here.
2828
2829         PR gas/827
2830         * as.h (rs_dummy): Define.
2831         * symbols.c (symbol_X_add_number): New function.
2832         * symbols.h (symbol_X_add_number): Declare.
2833         * stabs.c (aout_process_stab): Tidy symbol frag setting.
2834         * read.c (assign_symbol): New function, split out from s_set.
2835         Use symbol_find_or_make.  Leave fr_type of dummy frag as rs_dummy.
2836         Fix COFF hacks for multi-emulation gas.
2837         (s_set): Call assign_symbol.  Remove "register" keyword.
2838         (set_zero_frag): New function.
2839         (pseudo_set): Always check for assignment to section syms.
2840         Always set segment and frag of symbol, and likewise extern for
2841         aout/bout.  Handle assignment of sym=sym+/-const specially.  Don't
2842         special case exp.X_add_number non-zero for O_symbol expressions.
2843         (equals): Use assign_symbol.
2844
2845 2005-04-08  Bob Wilson  <bob.wilson@acm.org>
2846
2847         * config/tc-xtensa.c (xtensa_create_xproperty_segments): Skip
2848         SEC_MERGE sections.
2849
2850 2005-04-06  H.J. Lu  <hongjiu.lu@intel.com>
2851
2852         * config/tc-i386.c (tc_gen_reloc): Don't turn
2853         BFD_RELOC_X86_64_32S into BFD_RELOC_32.
2854
2855 2005-04-06  Nick Clifton  <nickc@redhat.com>
2856
2857         * po/rw.po: New translation: Kinyarwanda
2858         * configure.in (ALL_LINGUAS): Add rw
2859         * configure: Regenerate.
2860
2861 2005-04-05  Sterling Augustine  <sterling@tensilica.com>
2862             Bob Wilson  <bob.wilson@acm.org>
2863
2864         * config/tc-xtensa.c (branch_align_power): New.
2865         (xtensa_find_unaligned_branch_targets, get_aligned_diff,
2866         future_alignment_required): Use branch_align_power to check section
2867         alignment as well as xtensa_fetch_width when aligning branch targets.
2868
2869 2005-04-05  Bob Wilson  <bob.wilson@acm.org>
2870
2871         * config/tc-xtensa.c: Warning fixes throughout.
2872         (xtensa_fetch_width): Change to unsigned.
2873         (assemble_nop, xtensa_find_unaligned_branch_targets,
2874         xtensa_find_unaligned_loops, xg_assemble_vliw_tokens,
2875         is_narrow_branch_guaranteed_in_range, xtensa_fix_close_loop_end_frags,
2876         min_bytes_to_other_loop_end, unrelaxed_frag_min_size,
2877         unrelaxed_frag_max_size, xtensa_fix_short_loop_frags,
2878         count_insns_to_loop_end, unrelaxed_frag_min_insn_count,
2879         get_text_align_max_fill_size, get_text_align_nop_count,
2880         get_text_align_nth_nop_size, get_noop_aligned_address,
2881         get_aligned_diff, convert_frag_align_next_opcode,
2882         convert_frag_immed_finish_loop, xtensa_create_property_segments,
2883         xtensa_create_xproperty_segments, xt_block_aligned_size): Clean up
2884         types, avoiding size_t and using offsetT and addressT appropriately.
2885         (get_text_align_power): Clean up types.  Avoid incorrect bound.
2886         (get_text_align_fill_size): Clean up types.  Restructure for clarity.
2887
2888 2005-04-04  H.J. Lu  <hongjiu.lu@intel.com>
2889
2890         * config/tc-ia64.c (start_unwind_section): Undo the change
2891         of 2004-08-18.
2892         (generate_unwind_image, dot_endp): Likewise.
2893
2894 2005-04-01 David Mosberger  <davidm@hpl.hp.com>
2895
2896         * config/tc-ia64.c (ia64_handle_align): Move le_nop and
2897         le_nop_stop arrays and initializers to file scope.
2898         (md_begin): When generating code for anything other than
2899         Itanium 1, use MMI instead of MFI NOP bundles as a filler.
2900
2901 2005-04-01  Jan Beulich  <jbeulich@novell.com>
2902
2903         * config/tc-i386.c (output_imm): Also set sign flag for 64-bit push
2904         immediates.
2905
2906 2005-04-01  Jan-Benedict Glaw  <jbglaw@lug-owl.de>
2907
2908         * NEWS: Mention [fdgh]_floating.
2909         * config/atof-vax.c: Fix some whitespace.
2910         * config/tc-vax.c (md_pseudo_table): Add "[fdgh]_floating".
2911
2912 2005-04-01  Nick Clifton  <nickc@redhat.com>
2913
2914         * configure.in: Add a check for <unistd.h> providing a prototype
2915         for getopt() which is compatible with the one in
2916         include/getopt.h.  If so then define HAVE_DECL_GETOPT.
2917         * configure: Regenerate.
2918         * config.in (HAVE_DECL_GETOPT): Add.
2919
2920 2005-04-01  Jan Beulich  <jbeulich@novell.com>
2921
2922         * config/tc-i386.c (s_bss): Call obj_elf_section_change_hook.
2923
2924 2005-04-01  Jan Beulich  <jbeulich@novell.com>
2925
2926         * config/tc-i386.c (md_apply_fix3): Also handle BFD_RELOC_X86_64_32S.
2927         (tc_gen_reloc): Handle BFD_RELOC_X86_64_32S in the default case.
2928
2929 2005-03-30  Julian Brown  <julian@codesourcery.com>
2930
2931         * config/tc-arm.c (arm_adjust_symtab): Rename
2932         bfd_elf32_is_arm_mapping_symbol_name to bfd_is_arm_mapping_symbol_name.
2933
2934 2005-03-30  Julian Brown  <julian@codesourcery.com>
2935
2936         * config/tc-arm.c (mapping_state): Change documentation in function
2937         comment to cross-reference spec instead. Change type of mapping symbols
2938         to BSF_NO_TYPE.
2939         (arm_adjust_symtab): Don't change type of mapping symbols here.
2940
2941 2005-03-30  Aaron W. LaFramboise  <aaron98wiridge9@aaronwl.com>
2942
2943         * as.h [NEED_DECLARATION_FFS] (ffs): Prototype and alphabetize.
2944         * config.in: Regenerate.
2945         * configure: Regenerate.
2946         * configure.in: Check for ffs decl and alphabetize.
2947
2948 2005-03-29  Daniel Jacobowitz  <dan@codesourcery.com>
2949             Phil Blundell  <philb@gnu.org>
2950
2951         * config/tc-arm.c (arm_parse_reloc): Add TLS relocations.
2952         (md_apply_fix3): Mark TLS symbols.
2953         (tc_gen_reloc): Handle TLS relocations.
2954         (arm_fix_adjustable): Ignore TLS relocations.
2955         (s_arm_elf_cons): Support expressions after decorated symbols.
2956
2957 2005-03-29  Julian Brown  <julian@codesourcery.com>
2958
2959         * config/tc-arm.c (marked_pr_dependency): New bitmap, bit N indicates
2960         whether personality routine index N has been output for this section.
2961         (mapping_state): tc_segment_info_data now struct not enum.
2962         (arm_elf_change_section): Likewise, and marked_pr_dependency is now
2963         handled on section change.
2964         (create_unwind_entry): Previous code to output dependency removed.
2965         (s_arm_unwind_fnend): Output dependency if it hasn't been done already
2966         for this section.
2967         * config/tc-arm.h (TC_SEGMENT_INFO_TYPE): Redefined as struct
2968         arm_segment_info_type.
2969         (arm_segment_info_type): New struct.
2970
2971 2005-03-28  Sterling Augustine  <sterling@tensilica.com>
2972             Bob Wilson  <bob.wilson@acm.org>
2973
2974         * config/tc-xtensa.c (do_align_targets): Update comment.
2975         (xtensa_frob_label): Compute "freq" before possibly switching frags.
2976         Insert a LOOP_END frag before every loop target, and do not overload
2977         DESIRE_ALIGN_IF_TARGET frags with loop end information.
2978         (xg_assemble_vliw_tokens): Use do_align_targets.
2979         (xtensa_fix_target_frags): Remove code to convert a
2980         DESIRE_ALIGN_IF_TARGET frag to a LOOP_END frag when there is a
2981         negatable branch at the end of a loop.
2982         (frag_can_negate_branch): Delete.
2983
2984 2005-03-28  David Mosberger  <davidm@hpl.hp.com>
2985             H.J. Lu  <hongjiu.lu@intel.com>
2986
2987         PR 803
2988         NEWS: Mention "-mtune=[itanium1|itanium2]".
2989
2990         * config/tc-ia64.c (md): Add tune.
2991         (md_parse_option): Accepted "-mtune=[itanium1|itanium2]".
2992         (md_show_usage): Add "-mtune=[itanium1|itanium2]".
2993         (extra_goodness): Prefer M- and I-unit NOPs for itanium2. F and
2994         B unit NOPs are discouraged for McKinley-derived cores.
2995         (md_begin): Don't hardcode the "extra_goodness()" function in
2996         the comment...
2997         (ia64_init): Set md.tune to itanium2.
2998
2999         * doc/as.texinfo: Add -mtune=[itanium1|itanium2]".
3000         * doc/c-ia64.texi: Likewise.
3001
3002 2005-03-27  Ian Lance Taylor  <ian@airs.com>
3003
3004         * config/obj-coff.c (coff_frob_symbol): When crashing because of a
3005         bad C_EFCN symbol, print its name.
3006
3007 2005-03-25  Bob Wilson  <bob.wilson@acm.org>
3008
3009         * config/tc-xtensa.c (use_longcalls): Delete.
3010         (xg_symbolic_immeds_fit): Check for direct calls and return TRUE if
3011         the use_longcalls flag is set.  Do this before checking the segment.
3012         (xg_expand_assembly_insn): Rearrange to use new do_expand flag.  Never
3013         expand direct calls at this point.
3014         (xtensa_set_frag_assembly_state): Set use_longcalls flag.
3015         (xtensa_find_unmarked_state_frags): Likewise.
3016         (md_assemble): Do not disable longcalls by setting is_specific_opcode.
3017         (xg_assemble_vliw_tokens): Switch frags when use_longcalls changes.
3018         (convert_frag_immed): Remove unnecessary check of is_specific_opcode.
3019         * config/tc-xtensa.h (xtensa_frag_type): Add use_longcalls flag.
3020
3021 2005-03-25  Hans-Peter Nilsson  <hp@bitrange.com>
3022
3023         * config/tc-mmix.c, config/tc-mmix.h: Convert to ISO C90.
3024
3025 2005-03-25  Hans-Peter Nilsson  <hp@axis.com>
3026
3027         * config/tc-cris.h: Convert to ISO C90.
3028         * config/tc-cris.c: Ditto.
3029         (md_estimate_size_before_relax): Remove obsolete comment for
3030         parameter "segment_type".
3031         (md_begin): Document reason for cast of hash_insert argument.
3032         (md_atof): Correct type of parameter "type".
3033
3034 2005-03-24  Nick Clifton  <nickc@redhat.com>
3035
3036         * write.h (bit_fix_new): Remove redundant prototype.
3037         * config/atof-ieee.c: Convert to ISO-C90 and fix formatting.
3038         * config/obj-aout.c: Convert to ISO-C90 and fix formatting.
3039         * config/obj-aout.h: Convert to ISO-C90 and fix formatting.
3040         * config/obj-bout.c: Convert to ISO-C90 and fix formatting.
3041         * config/obj-bout.h: Convert to ISO-C90 and fix formatting.
3042         * config/obj-ecoff.c: Convert to ISO-C90 and fix formatting.
3043         * config/obj-ecoff.h: Convert to ISO-C90 and fix formatting.
3044         * config/obj-som.c: Convert to ISO-C90 and fix formatting.
3045         * config/obj-som.h: Convert to ISO-C90 and fix formatting.
3046         * config/tc-a29k.c: Convert to ISO-C90 and fix formatting.
3047         * config/tc-a29k.h: Convert to ISO-C90 and fix formatting.
3048         * config/tc-alpha.c: Convert to ISO-C90 and fix formatting.
3049         * config/tc-alpha.h: Convert to ISO-C90 and fix formatting.
3050         * config/tc-arc.c: Convert to ISO-C90 and fix formatting.
3051         * config/tc-arc.h: Convert to ISO-C90 and fix formatting.
3052         * config/tc-d10v.c: Convert to ISO-C90 and fix formatting.
3053         * config/tc-d10v.h: Convert to ISO-C90 and fix formatting.
3054         * config/tc-d30v.c: Convert to ISO-C90 and fix formatting.
3055         * config/tc-d30v.h: Convert to ISO-C90 and fix formatting.
3056         * config/tc-dlx.c: Convert to ISO-C90 and fix formatting.
3057         * config/tc-dlx.h: Convert to ISO-C90 and fix formatting.
3058         * config/tc-fr30.c: Convert to ISO-C90 and fix formatting.
3059         * config/tc-fr30.h: Convert to ISO-C90 and fix formatting.
3060         * config/tc-h8500.c: Convert to ISO-C90 and fix formatting.
3061         * config/tc-h8500.h: Convert to ISO-C90 and fix formatting.
3062         * config/tc-i370.c: Convert to ISO-C90 and fix formatting.
3063         * config/tc-i370.h: Convert to ISO-C90 and fix formatting.
3064         * config/tc-i960.c: Convert to ISO-C90 and fix formatting.
3065         * config/tc-ip2k.c: Convert to ISO-C90 and fix formatting.
3066         * config/tc-ip2k.h: Convert to ISO-C90 and fix formatting.
3067         * config/tc-m32r.c: Convert to ISO-C90 and fix formatting.
3068         * config/tc-m32r.h: Convert to ISO-C90 and fix formatting.
3069         * config/tc-m88k.c: Convert to ISO-C90 and fix formatting.
3070         * config/tc-m88k.h: Convert to ISO-C90 and fix formatting.
3071         * config/tc-mcore.c: Convert to ISO-C90 and fix formatting.
3072         * config/tc-mcore.h: Convert to ISO-C90 and fix formatting.
3073         * config/tc-mn10200.c: Convert to ISO-C90 and fix formatting.
3074         * config/tc-ns32k.c: Convert to ISO-C90 and fix formatting.
3075         * config/tc-ns32k.h: Convert to ISO-C90 and fix formatting.
3076         * config/tc-openrisc.c: Convert to ISO-C90 and fix formatting.
3077         * config/tc-openrisc.h: Convert to ISO-C90 and fix formatting.
3078         * config/tc-or32.c: Convert to ISO-C90 and fix formatting.
3079         * config/tc-or32.h: Convert to ISO-C90 and fix formatting.
3080         * config/tc-pdp11.h: Convert to ISO-C90 and fix formatting.
3081         * config/tc-pj.c: Convert to ISO-C90 and fix formatting.
3082         * config/tc-pj.h: Convert to ISO-C90 and fix formatting.
3083         * config/tc-tahoe.c: Convert to ISO-C90 and fix formatting.
3084         * config/tc-tic80.c: Convert to ISO-C90 and fix formatting.
3085         * config/tc-tic80.h: Convert to ISO-C90 and fix formatting.
3086         * config/tc-v850.c: Convert to ISO-C90 and fix formatting.
3087         * config/tc-v850.h: Convert to ISO-C90 and fix formatting.
3088         * config/tc-w65.c: Convert to ISO-C90 and fix formatting.
3089         * config/tc-w65.h: Convert to ISO-C90 and fix formatting.
3090         * config/tc-xstormy16.c: Convert to ISO-C90 and fix formatting.
3091         * config/tc-xstormy16.h: Convert to ISO-C90 and fix formatting.
3092
3093 2005-03-23  Jim Blandy  <jimb@redhat.com>
3094
3095         * config/tc-arm.c (arm_adjust_symtab): Fetch elf_sym's binding
3096         attributes properly.
3097
3098 2005-03-23  Mike Frysinger  <vapier@gentoo.org>
3099             Nick Clifton  <nickc@redhat.com>
3100
3101         * configure.tgt: Accept any C library to accompany a GNU Linux
3102         implementation, not just the GNU C library.
3103         * configure.in: Likewise.
3104         * configure: Regenerate.
3105
3106 2005-03-23  Nick Clifton  <nickc@redhat.com>
3107
3108         * config/tc-tic30.c: Convert to ISO C90 formatting.
3109         * config/tc-tic30.h: Convert to ISO C90 formatting.
3110         * config/tc-pdp11.c: Convert to ISO C90 formatting.
3111         * config/atof-vax.c: Convert to ISO C90 formatting.
3112
3113 2005-03-21  Maciej W. Rozycki  <macro@mips.com>
3114
3115         * config/tc-mips.c (mips_frob_file): Sort BFD_RELOC_MIPS16_LO16
3116         relocations correctly as well.
3117         (mips_fix_adjustable): Don't make BFD_RELOC_MIPS16_LO16
3118         relocations in mergeable sections section-relative either.
3119
3120 2005-03-21  Bob Wilson  <bob.wilson@acm.org>
3121
3122         * config/tc-xtensa.c (md_apply_fix3): Recognize XTENSA_PLT relocations.
3123
3124 2005-03-21  Nick Clifton  <nickc@redhat.com>
3125
3126         * config/tc-sh.c (sh_elf_final_processing): Fix compile time
3127         warning by providing a prototype for sh_symbian_find_elf_flags.
3128
3129         * cgen.c (gas_cgen_parse_operand): Fix typo introduced by
3130         previous delta.
3131
3132 2005-03-21  Alan Modra  <amodra@bigpond.net.au>
3133
3134         * configure.tgt: Handle setting of bfd_gas for fmt=multi targets
3135         along with other formats that set bfd_gas.  Remove unnecessary
3136         setting of bfd_gas.  Delete strongarm cases in generic_target
3137         switch.
3138
3139 2005-03-21  Alan Modra  <amodra@bigpond.net.au>
3140
3141         PR gas/780
3142         * config/tc-m68k.c (TRUNC, SEXT): Define.
3143         (issbyte, isubyte, issword, isuword, isbyte, isword): Use the above.
3144         (m68k_ip): Truncate or sign extend expressions as appropriate.
3145         (get_num): Likewise.
3146         (md_apply_fix3): Use SEXT.
3147
3148 2005-03-21  Alan Modra  <amodra@bigpond.net.au>
3149
3150         * Makefile.am (OBJ_FORMAT_CFILES): Prune config/obj-vms.c.
3151         (OBJ_FORMAT_HFILES): Prune config/obj-vms.h.
3152         (obj-vms.o): Delete rule.
3153         Run "make dep-am".
3154         * Makefile.in: Regenerate.
3155         * aclocal.m4: Regenerate.
3156         * doc/Makefile.in: Regenerate.
3157         * po/POTFILES.in: Regenerate.
3158
3159 2005-03-18  C Jaiprakash  <cjaiprakash@noida.hcltech.com>
3160
3161         * config/tc-m68k.c (m68k_elf_final_processing): Set file specific
3162         flag for coldfire v4e.
3163
3164 2005-03-17  Bob Wilson  <bob.wilson@acm.org>
3165
3166         * config/tc-xtensa.c (xg_apply_tentative_value): Rename to
3167         xg_apply_fix_value and return a value to indicate success.
3168         (md_pcrel_from): Skip check of fx_done.  Return 0 if not PC-relative.
3169         (xtensa_force_relocation): Remove checks for VTABLE relocs.
3170         (xtensa_validate_fix_sub): New.
3171         (xtensa_fix_adjustable): Remove check for external or weak symbols.
3172         (tc_gen_reloc): Move code to handle difference of symbols and code to
3173         apply tentative fix values to ...
3174         (md_apply_fix3): ...here.  Enable standard overflow checks for simple
3175         8, 16, and 32 bit relocations.  Apply fixes for slot-specific
3176         relocations when linkrelax flag is not set.
3177         * config/tc-xtensa.h (xtensa_validate_fix_sub): Add prototype.
3178         (TC_FORCE_RELOCATION_SUB_SAME, TC_VALIDATE_FIX_SUB): Define.
3179
3180 2005-03-17  Jan Beulich  <jbeulich@novell.com>
3181
3182         * config/tc-i386.c (i386_scale): Beautify error message.
3183         (Intel syntax comments): Update.
3184         (struct intel_parser_s): Add fields in_offset, in_bracket, and
3185         next_operand.
3186         (intel_e04_1, intel_e05_1, intel_e05_1, intel_e09_1, intel_e10_1):
3187         Remove declarations.
3188         (intel_bracket_expr): Declare.
3189         (i386_intel_operand): Initialize new intel_parser fields. Wrap most
3190         of the function body in a loop allowing to split an operand into two.
3191         Replace calls to malloc and checks of it returning non-NULL with
3192         calls to xmalloc/xstrdup.
3193         (intel_expr): SHORT no longer handled here. Add comment indicating
3194         comparison ops need implementation.
3195         (intel_e04, intel_e04_1): Combine, replace recursion with loop.
3196         Check right operand of - does not specify a register when parsing
3197         the address of a memory reference.
3198         (intel_e05, intel_e05_1): Combine, replace recursion with loop.
3199         Check operands do not specify a register when parsing the address of
3200         a memory reference.
3201         (intel_e06, intel_e06_1): Likewise.
3202         (intel_e09, intel_e09_1): Combine, replace recursion with loop. Also
3203         handle SHORT as well as unary + and -. Don't accept : except for
3204         segment overrides or in direct far jump/call insns.
3205         (intel_brack_expr): New.
3206         (intel_e10, intel_e10_1): Combine, replace recursion with loop. Use
3207         intel_brack_expr.
3208         (intel_e11): Replace chain of if/else-if by switch, alloing fall-
3209         through in certain cases. Use intel_brack_expr. Add new diagnostics.
3210         Allow symbolic constants as register scale value.
3211         (intel_get_token): Replace call to malloc and check of return value
3212         with call to xmalloc. Change handling for FLAT to match MASM's.
3213         (intel_putback_token): Don't try to back up/free current token if
3214         that is T_NIL.
3215
3216 2005-03-16  Daniel Jacobowitz  <dan@codesourcery.com>
3217
3218         * configure.tgt: Set emulation for arm-*-eabi*.
3219         * config/tc-arm.c (meabi_flags): Check EABI_DEFAULT.
3220         * config/te-armeabi.h: New file.
3221         * config/te-armlinuxeabi.h (EABI_DEFAULT): Define.
3222         * config/te-symbian.h: Include "te-armeabi.h".
3223
3224 2005-03-16  Nick Clifton  <nickc@redhat.com>
3225
3226         * cgen.c (gas_cgen_parse_operand): Copy opinfo parameter into a
3227         local variable in case it is clobbered by the setjmp.
3228
3229 2005-03-16  Nick Clifton  <nickc@redhat.com>
3230             Ben Elliston  <bje@au.ibm.com>
3231
3232         * configure.in (werror): New switch: Add -Werror to the
3233         compiler command line.  Enabled by default.  Disable via
3234         --disable-werror.
3235         * configure: Regenerate.
3236
3237 2005-03-16  Nick Clifton  <nickc@redhat.com>
3238
3239         * config/obj-coff.h: Convert to ISO C90 formatting.
3240         * config/obj-coff.c: Convert to ISO C90 formatting.
3241
3242 2005-03-15  Zack Weinberg  <zack@codesourcery.com>
3243
3244         * config/tc-arm.c (do_mla): Rename to do_mlas, take second
3245         is_mls parameter; do not diagnose Rm==Rd when is_mls.
3246         (do_mla, do_mls, five_bit_unsigned_immediate, bfci_lsb_and_width)
3247         (do_bfc, do_bfi, do_bfx, do_rbit, do_mov16, do_ldsttv4): New functions.
3248         (insns): Add ARMv6T2 instructions:
3249         bfc bfi mls movw movt rbit sbfx ubfx ldrht ldrsht ldrsbt strht.
3250         (arm_archs): Add V6T2 variants.
3251
3252 2005-03-15  Nick Clifton  <nickc@redhat.com>
3253
3254         * NEWS: Add cutoff for changes in 2.16 release.
3255
3256 2005-03-15  Jan Beulich  <jbeulich@novell.com>
3257
3258         * expr.c (operand): Merge handling of unary + into that for unary
3259         -, !, and ~.
3260
3261 2005-03-14  Eric Christopher  <echristo@redhat.com>
3262
3263         * config/tc-mips.c: Include dw2gencfi.h.
3264         (mips_cfi_frame_initial_instructions): New.
3265         * config/tc-mips.h (TARGET_USE_CFIPOP): Define.
3266         (tc_cfi_frame_initial_instructions): Ditto.
3267         (DWARF2_DEFAULT_RETURN_COLUMN): Ditto.
3268         (DWARF2_CIE_DATA_ALIGNMENT): Ditto.
3269         * Makefile.am: Update dependencies.
3270         * Makefile.in: Regenerate.
3271
3272 2005-03-15  Alan Modra  <amodra@bigpond.net.au>
3273
3274         * po/es.po: Commit new Spanish translation.
3275
3276 2005-03-14  Alan Modra  <amodra@bigpond.net.au>
3277
3278         * po/tr.po: Commit new Turkish translation.
3279
3280 2005-03-12  Zack Weinberg  <zack@codesourcery.com>
3281
3282         * config/tc-arm.c (tinsns): Add ARMv6K instructions sev, wfe,
3283         wfi, yield.
3284
3285 2005-03-11  Daniel Jacobowitz  <dan@codesourcery.com>
3286
3287         * config-gas.com: Mark vax-vms as obsolete.
3288         * configure.in: Remove fmt=vms support.
3289         * config.in: Regenerate.
3290         * configure: Regenerate.
3291         * config/obj-vms.h, config/obj-vms.c, config/vms-conf.h: Remove.
3292
3293 2005-03-10  Sterling Augustine  <sterling@tensilica.com>
3294             Bob Wilson  <bob.wilson@acm.org>
3295
3296         * config/tc-xtensa.c (finish_vinsn): Include the last instruction slot
3297         when checking if xg_resolve_literals needs to be called.
3298         * config/tc-xtensa.h: Fix spelling typo in a comment.
3299
3300 2005-03-10  Jan Beulich  <jbeulich@novell.com>
3301
3302         * config/tc-tic54x.h (tic54x_macro_info): Change parameter type.
3303         * config/tc-tic54x.c (tic54x_macro_info): Likewise. Replace hand-
3304         crafted structure declarations with the types from macro.h.
3305
3306 2005-03-09  Richard Sandiford  <rsandifo@redhat.com>
3307
3308         * config/tc-mips.c (s_cpsetup): Use '__gnu_local_gp' instead of '_gp'
3309         for -mno-shared optimization.
3310
3311 2005-03-09  Richard Sandiford  <rsandifo@redhat.com>
3312
3313         * config/tc-mips.c (MAX_VR4130_NOPS, MAX_DELAY_NOPS): New macros.
3314         (MAX_NOPS): Bump to 4.
3315         (mips_fix_vr4130): New variable.
3316         (nops_for_vr4130): New function.
3317         (nops_for_insn): Use MAX_DELAY_NOPS rather than MAX_NOPS.  Use
3318         nops_for_vr4130 if working around VR4130 errata.
3319         (OPTION_FIX_VR4130, OPTION_NO_FIX_VR4130): New macros.
3320         (md_longopts): Add -mfix-vr4130 and -mno-fix-vr4130.
3321         (md_parse_option): Handle them.
3322         (md_show_usage): Print them.
3323         * doc/c-mips.texi: Document -mfix-vr4130 and -mno-fix-vr4130.
3324
3325 2005-03-09  Richard Sandiford  <rsandifo@redhat.com>
3326
3327         * config/tc-mips.c (append_insn): Remove cop_interlocks test from
3328         branch delay code.
3329
3330 2005-03-09  Richard Sandiford  <rsandifo@redhat.com>
3331
3332         * config/tc-mips.h (mips_flush_pending_output): Delete.
3333         (mips_emit_delays): Declare.
3334         (md_flush_pending_output): Use mips_emit_delays.
3335         * config/tc-mips.c (mips_no_prev_insn): Remove parameter; always forget
3336         the previous instructions.
3337         (md_begin, append_insn, md_parse_option): Update callers.
3338         (mips_emit_delay): Remove parameter.  Move INSNS != 0 code to
3339         start_noreorder.
3340         (mips_align, s_change_sec, s_cons, s_float_cons, s_gpword)
3341         (s_gpdword): Update callers.
3342         (start_noreorder, end_noreorder): New functions.
3343         (macro, macro2, mips16_macro, s_mipsset): Use them instead of
3344         manipulating mips_opts or prev_nop_frag directly.
3345         (mips_flush_pending_output): Delete.
3346
3347 2005-03-09  Richard Sandiford  <rsandifo@redhat.com>
3348
3349         * config/tc-mips.c (mips_move_labels): New function, taken from...
3350         (append_insn, mips_emit_delays): ...here.
3351
3352 2005-03-09  Richard Sandiford  <rsandifo@redhat.com>
3353
3354         * config/tc-mips.c (MAX_NOPS): New macro.
3355         (history): Resize to 1 + MAX_NOPS.
3356         (fix_vr4120_class): New enumeration.
3357         (vr4120_conflicts): New variable.
3358         (init_vr4120_conflicts): New function.
3359         (md_begin): Call it.
3360         (insn_uses_reg): Constify first argument.
3361         (classify_vr4120_insn, insns_between, nops_for_insn, nops_for_sequence)
3362         (nops_for_insn_or_target): New functions.
3363         (append_insn): Use the new nops_for_* functions instead of inline
3364         delay checks.  Generalize prev_nop_frag handling to handle an
3365         arbitrary history length.  Insert nops into the history buffer
3366         once the number of nops in prev_nop_frag is fixed.
3367         (emit_delays): Use nops_for_insn instead of inline delay checks.
3368
3369 2005-03-09  Richard Sandiford  <rsandifo@redhat.com>
3370
3371         * config/tc-mips.c (append_insn): Remove now-redundant nops != 0
3372         check from branch delay code.  Remove unnecessary check for branches.
3373
3374 2005-03-09  Richard Sandiford  <rsandifo@redhat.com>
3375
3376         * config/tc-mips.c (dummy_opcode): Delete.
3377         (nop_insn, mips16_nop_insn): New variables.
3378         (NOP_INSN): New macro.
3379         (insn_length, create_insn, install_insn, move_insn, add_fixed_insn)
3380         (add_relaxed_insn, insert_into_history, emit_nop): New functions.
3381         (md_begin): Initialize nop_insn and mips16_nop_insn.
3382         (append_insn): Use the new emit_nop function to add nops, recording
3383         them in the history buffer.  Use add_fixed_insn or add_relaxed_insn
3384         to reserve room for the instruction and install_insn to install the
3385         final form.  Use insert_into_history to record the instruction in
3386         the history buffer.  Use move_insn to do delay slot filling.
3387         (mips_emit_delays): Use add_fixed_insn instead of the emit_nop macro.
3388         (macro_build, mips16_macro_build, macro_build_lui, mips_ip)
3389         (mips16_ip): Use create_insn to initialize mips_cl_insns.
3390
3391 2005-03-09  Richard Sandiford  <rsandifo@redhat.com>
3392
3393         * config/tc-mips.c (INSERT_BITS, EXTRACT_BITS, INSERT_OPERAND)
3394         (EXTRACT_OPERAND, MIPS16_INSERT_OPERAND, MIPS16_EXTRACT_OPERAND): New.
3395         (insn_uses_reg, reg_needs_delay, append_insn, macro_build)
3396         (mips16_macro_build, macro_build_lui, mips16_macro, mips_ip)
3397         (mips16_ip): Use the new macros instead of explicit masks and shifts.
3398
3399 2005-03-09  Richard Sandiford  <rsandifo@redhat.com>
3400
3401         * config/tc-mips.c (mips_cl_insn): Replace the valid_p, delay_slot_p
3402         and extended_p fields with a single fixed_p field.
3403         (append_insn, mips_no_prev_insn): Adjust accordingly.
3404
3405 2005-03-09  Richard Sandiford  <rsandifo@redhat.com>
3406
3407         * config/tc-mips.c (mips_cl_insn): Replace reloc_type array with
3408         a single mips16_absolute_jump_p bit.
3409         (append_insn): Adjust accordingly.
3410
3411 2005-03-09  Richard Sandiford  <rsandifo@redhat.com>
3412
3413         * config/tc-mips.h (mips_cl_insn): Move definition to...
3414         * config/tc-mips.c (mips_cl_insn): ...here.  Add new fields:
3415         frag, where, fixp, reloc_type, valid_p, noreorder_p, delay_slot_p
3416         and extended_p.
3417         (history): New variable.
3418         (prev_insn, prev_prev_insn, prev_insn_valid, prev_insn_frag)
3419         (prev_insn_where, prev_insn_reloc_type, prev_insn_fixp)
3420         (prev_insn_is_delay_slot, prev_insn_unreordered, prev_insn_extended)
3421         (prev_prev_insn_unreordered): Delete.
3422         (reg_needs_delay, append_insn, mips_no_prev_insn, mips_emit_delays)
3423         (macro_start): Replace uses of prev_insn* with the equivalent history[]
3424         field.
3425
3426 2005-03-08  Daniel Jacobowitz  <dan@codesourcery.com>
3427
3428         * doc/Makefile.am: Update as.info dependencies.
3429         * aclocal.m4, Makefile.in, doc/Makefile.in: Regenerated.
3430
3431 2005-03-08  Jan Beulich  <jbeulich@novell.com>
3432
3433         * doc/as.texinfo: Add sentence to indicate redefining a macro is an
3434         error, and point to .purgem documentation if someone really needs
3435         re-definitions.
3436         * NEWS: Mention macro redefinition is now an error.
3437
3438 2005-03-08  Jan Beulich  <jbeulich@novell.com>
3439
3440         * config/tc-ia64.c (emit_one_bundle): Track last slot user insn was
3441         emitted to. Add more precise diagnostics for non-fitting insns based
3442         on that. Eliminate now superfluous special casing of MLX. Clear out
3443         slot information when dropping an insn.
3444
3445 2005-03-08  Jan Beulich  <jbeulich@novell.com>
3446
3447         * config/tc-ia64.c (parse_section_name): Rename to...
3448         (cross_section): In addition to separating the name from the rest of
3449         the arguments, also carry out the operation.
3450         (dot_xdata): Use cross_section.
3451         (dot_float_cons): Likewise.
3452         (dot_xstringer): Likewise.
3453         (dot_xdata_ua): Likewise.
3454         (dot_float_cons_ua): Likewise. Pass float_cons, not stmt_float_cons.
3455
3456 2005-03-05  Alan Modra  <amodra@bigpond.net.au>
3457
3458         * po/gas.pot: Regenerate.
3459
3460 2005-03-04  David Daney  <ddaney@avtrex.com>
3461
3462         * config/tc-mips.c (macro_build_lui): Use '__gnu_local_gp'
3463         instead of '_gp' for -mno-shared optimization.
3464         (s_cpload): Ditto.
3465         (s_abicalls): Document it in the comment.
3466         (md_show_usage): Document the -mno-shared option.
3467
3468 2005-03-04  Richard Sandiford  <rsandifo@redhat.com>
3469
3470         * config/tc-mips.c (mips_set_options): Add sym32 field.
3471         (mips_opts): Initialize it.
3472         (HAVE_32BIT_ADDRESSES): Set to true if pointers are 32 bits wide.
3473         (HAVE_64BIT_ADDRESSES): Redefine as !HAVE_32BIT_ADDRESSES.
3474         (HAVE_32BIT_SYMBOLS, HAVE_64BIT_SYMBOLS): New macros.
3475         (load_address): Use HAVE_64BIT_SYMBOLS instead of HAVE_64BIT_ADDRESSES
3476         when deciding whether to use a symbolic %highest/%higher expansion.
3477         (macro): Likewise.  Remove o64/n32 linux hack.  Always use
3478         ADDRESS_ADD*_INSN for address addition in the expansion of "dla"
3479         and "la".  Handle constants separately from symbolic expressions in
3480         the "ld_st:" case, using 64-bit arithmetic if HAVE_64BIT_ADDRESSES
3481         and using load_register to load the high part of the address.
3482         (OPTION_MSYM32, OPTION_NO_MSYM32): New macros.
3483         (OPTION_ELF_BASE): Bump by 2.
3484         (md_longopts): Add entries for -msym32 and -mno-sym32.
3485         (md_parse_option): Handle them.
3486         (usage): Document them.
3487         (s_mipsset): Handle ".set sym32" and ".set nosym32".
3488         (s_cpload, s_cpsetup): Use HAVE_64BIT_SYMBOLS instead of
3489         HAVE_64BIT_ADDRESSES to detect 64-bit values of "_gp".
3490         * doc/c-mips.texi: Document ".set sym32", ".set nosym32",
3491         -msym32 and -mno-sym32.
3492
3493 2005-03-03  Thiemo Seufer  <seufer@csv.ica.uni-stuttgart.de>
3494
3495         * config/tc-mips.c (load_address): Implement GP optimization
3496         for 64bit address space non-PIC. Fix formatting.
3497         (macro): Likewise. Simplify code.
3498         (md_parse_option): Don't bail out if -G 0 is set for PIC code.
3499         (mips_after_parse_args): Simplify code.
3500
3501 2005-03-03  Nick Clifton  <nickc@redhat.com>
3502
3503         * expr.c (operand): Remove redundant code enclosed by #ifdef
3504         RELAX_PAREN_GROUPING....#endif.
3505
3506         * config/tc-mn10200.c (tc_gen_reloc): Handle the case where the
3507         reloc is the difference of two symbols defined in the same
3508         section.
3509
3510         * config/tc-iq2000.c (line_comment_chars): Include the # character
3511         as otherwise this breaks #APP/#NO_APP processing.
3512
3513 2005-03-03  Ramana Radhakrishnan  <ramana.radhakrishnan@codito.com>
3514
3515         * config/tc-arc.c(md_assemble): Remove dead code for handling
3516         immediate indexing of ld and st .
3517
3518 2005-03-02  Daniel Jacobowitz  <dan@codesourcery.com>
3519             Joseph Myers  <joseph@codesourcery.com>
3520
3521         * config/tc-mips.c (percent_op): Add %tlsgd, %tlsldm, %dtprel_hi,
3522         %dtprel_lo, %tprel_hi, %tprel_lo, and %gottprel.
3523         (parse_relocation): Check for a word break after a relocation
3524         operator.
3525         (md_apply_fix3): Handle TLS relocations, and mark thread-local
3526         symbols.
3527
3528 2005-03-02  Alan Modra  <amodra@bigpond.net.au>
3529
3530         * config/tc-ppc.c (ppc_fix_adjustable <ELF>): Remove bogus checks.
3531
3532 2005-03-02  Jan Beulich  <jbeulich@novell.com>
3533
3534         * as.c (main): Use unlink_if_ordinary instead of unlink.
3535         * messages.c (as_fatal): Likewise.
3536
3537 2005-03-02  Jan Beulich  <jbeulich@novell.com>
3538
3539         * config/tc-i386.c (build_modrm_byte): Add lock prefix for cr8...15
3540         accesses.
3541         (parse_register): Allow cr8...15 in all modes.
3542
3543 2005-03-02  Jan Beulich  <jbeulich@novell.com>
3544
3545         * config/tc-i386.c (intel_e11): If not followed by T_PTR, treat T_BYTE
3546         etc. like normal symbol references (T_ID).
3547
3548 2005-03-02  Alan Modra  <amodra@bigpond.net.au>
3549
3550         * symbols.c (fb_label_name): Fix silly thinko in last change.
3551
3552 2005-03-02  Alan Modra  <amodra@bigpond.net.au>
3553
3554         * expr.c (integer_constant): Remove TARGET_WORD_SIZE hack.
3555         * config/tc-m68k.h (TARGET_WORD_SIZE): Delete.
3556
3557         * symbols.c (fb_label_name): Allow an augend of 2 for mmix.
3558
3559 2005-03-01  Ramana Radhakrishnan  <ramana.radhakrishnan@codito.com>
3560
3561         PR gas/708
3562         * config/tc-arc.c (md_assemble): Initialize suffix for extension
3563         suffixes also.
3564
3565 2005-03-01  Alan Modra  <amodra@bigpond.net.au>
3566
3567         * config/obj-coff.c (fixup_segment): Delete sy_mri_common assertion.
3568
3569         * as.h (assert): Warning fix.
3570         * expr.c (expr): Correct assertion.
3571         * read.c (s_comm_internal): Remove assertion.
3572         * write.c (relax_segment): Enable vma assertion only for BFD_ASSEMBLER.
3573         (fixup_segment): Remove assertion.
3574         * config/tc-dlx.c (machine_ip): Remove untrue assertions.
3575         (md_apply_fix3): Likewise.
3576         * config/tc-i370.c (md_begin): Correct assertion.
3577         (i370_macro): Warning fix for assertion.
3578
3579 2005-03-01  Alan Modra  <amodra@bigpond.net.au>
3580
3581         * configure.in (AC_C_BIGENDIAN): Invoke.
3582         * configure: Regenerate.
3583         * write.c (write_object_file <!BFD_ASSEMBLER>): Don't use sizeof
3584         host variable to set string header size.
3585         * config/obj-aout.c (obj_header_append): Don't use host structs.
3586         (obj_symbol_to_chars): Likewise.
3587         (obj_emit_strings): Likewise.  Use the passed in output pointer.
3588         * config/obj-aout.h (H_GET_FILE_SIZE): Include H_GET_LINENO_SIZE.
3589         * config/obj-bout.c (obj_emit_relocations): Use md_reloc_size,
3590         not sizeof host struct.
3591         (obj_header_append, obj_symbol_to_chars): Don't use host structs.
3592         (obj_emit_strings): Likewise.
3593         * config/obj-bout.h (EXEC_BYTES_SIZE): Define.
3594         (N_TXTOFF, H_GET_FILE_SIZE, H_GET_HEADER_SIZE): Use instead of
3595         sizeof host struct.
3596         (H_SET_SYMBOL_TABLE_SIZE): Hard code sym size rather than using
3597         sizeof host struct.
3598         (host_number_to_chars): Define.
3599         * config/obj-hp300.c (hp300_header_append): Don't use sizeof
3600         host internal struct to set header sizes.
3601         * config/tc-i960.c (md_number_to_field): Warning fix.
3602         (md_ri_to_chars): Use host byte order.
3603         (get_cdisp, md_apply_fix3): Warning fix.
3604         * config/tc-m68k.c (md_assemble): Don't use sizeof host short.
3605
3606 2005-02-28  Ramana Radhakrishnan  <ramana.radhakrishnan@codito.com>
3607
3608         * doc/c-arc.texi: Update documentation about ARC's extension
3609         instructions.
3610
3611 2005-02-27  Svein E. Seldal  <svein@dev.seldal.com>
3612
3613         * config/tc-tic4x.c (tic4x_gen_to_words): Changed mail
3614         address for myself.
3615
3616 2005-02-23  Alan Modra  <amodra@bigpond.net.au>
3617
3618         * cgen.c: Warning fixes.
3619         * config/tc-arc.c: Likewise.
3620         * config/tc-arm.c: Likewise.
3621         * config/tc-avr.c: Likewise.
3622         * config/tc-d10v.c: Likewise.
3623         * config/tc-d30v.c: Likewise.
3624         * config/tc-frv.c: Likewise.
3625         * config/tc-frv.h: Likewise.
3626         * config/tc-h8300.c: Likewise.
3627         * config/tc-h8500.c: Likewise.
3628         * config/tc-i370.c: Likewise.
3629         * config/tc-i960.c: Likewise.
3630         * config/tc-ia64.c: Likewise.
3631         * config/tc-ip2k.c: Likewise.
3632         * config/tc-m68hc11.c: Likewise.
3633         * config/tc-maxq.c: Likewise.
3634         * config/tc-mcore.c: Likewise.
3635         * config/tc-mips.c: Likewise.
3636         * config/tc-msp430.c: Likewise.
3637         * config/tc-pj.c: Likewise.
3638         * config/tc-ppc.c: Likewise.
3639         * config/tc-ppc.h: Likewise.
3640         * config/tc-s390.c: Likewise.
3641         * config/tc-sh.c: Likewise.
3642         * config/tc-sh64.c: Likewise.
3643         * config/tc-tic4x.c: Likewise.
3644         * config/tc-tic80.c: Likewise.
3645         * config/tc-v850.c: Likewise.
3646         * config/tc-vax.c: Likewise.
3647         * config/tc-w65.c: Likewise.
3648         * config/tc-xstormy16.c: Likewise.
3649         * config/tc-z8k.c: Likewise.
3650
3651 2005-02-22  Catherine Moore  <clm@cm00re.com>
3652
3653         * read.c (read_a_source_file): Reinstate TC_EQUAL_IN_INSN test.
3654         * doc/internals.texi (TC_EQUAL_IN_INSN): Reinstate.
3655
3656 2005-02-22  Eric Christopher  <echristo@redhat.com>
3657
3658         * config/tc-mips.c (struct proc): Change isym to
3659         func_sym. New member func_end_sym.
3660         (s_mips_ent): Update.
3661         (s_mips_end): Ditto. Add code to compute function size.
3662
3663 2005-02-22  Alan Modra  <amodra@bigpond.net.au>
3664
3665         * read.c: Warning fixes.
3666         * config/obj-elf.c: Likewise.
3667
3668 2005-02-22  Maciej W. Rozycki  <macro@mips.com>
3669
3670         * config/tc-mips.c (append_insn): Call dwarf2_emit_insn() before
3671         emitting insn.
3672
3673 2005-02-21  H.J. Lu  <hongjiu.lu@intel.com>
3674
3675         * config/obj-coff.c (obj_coff_section): Replace SEC_SHARED with
3676         SEC_COFF_SHARED.
3677
3678         * config/tc-tic54x.c (tic54x_bss): Replace SEC_BLOCK with
3679         SEC_TIC54X_BLOCK.
3680         (demand_empty_rest_of_line): Likewise.
3681         (tic54x_sblock): Likewise.
3682         (tic54x_clink): Replace with SEC_CLINK with SEC_TIC54X_CLINK.
3683
3684 2005-02-21  Alan Modra  <amodra@bigpond.net.au>
3685
3686         * read.c (address_bytes): New function.
3687         (TC_ADDRESS_BYTES): Default for BSD_ASSEMBLER to address_bytes.
3688         (potable): Add "dc.a".
3689         (cons_worker): Handle "dc.a".
3690         * doc/internals.texi (TC_ADDRESS_BYTES): Document.
3691
3692 2005-02-21  Alan Modra  <amodra@bigpond.net.au>
3693
3694         * input-file.c (input_file_open): Rearrange to avoid warning.
3695
3696 2005-02-19  Alan Modra  <amodra@bigpond.net.au>
3697
3698         * config/tc-hppa.h (TC_EQUAL_IN_INSN): Delete.
3699         * read.c (read_a_source_file): Remove TC_EQUAL_IN_INSN test.
3700         * doc/internals.texi (TC_EQUAL_IN_INSN): Delete.
3701
3702 2005-02-18  Thiemo Seufer  <seufer@csv.ica.uni-stuttgart.de>
3703
3704         * config/tc-mips.c (macro_build_ldst_constoffset): Fail on $at
3705         uses after .set noat.
3706         (load_address): Likewise.
3707         (macro): Likewise. Don't try to avoid $at use by sacrificing
3708         the target register before it is stored, it won't work.
3709
3710 2005-02-17  James E Wilson  <wilson@specifixinc.com>
3711
3712         * config/tc-ia64.c (emit_one_bundle): Stop filling a bundle if we
3713         see an instruction that specifies a template.
3714
3715 2005-02-18  Alan Modra  <amodra@bigpond.net.au>
3716
3717         * config/tc-openrisc.c (openrisc_relax_frag): Delete unused function.
3718         * config/tc-sparc.c (sparc_ip): Make op_exp static to silence warnings.
3719         * config/tc-tic80.c (build_insn): Init insn[1] to silence warning.
3720
3721 2005-02-17  H.J. Lu  <hongjiu.lu@intel.com>
3722
3723         * NEWS: Mention "-mhint.b=[ok|warning|error]".
3724
3725         * config/tc-ia64.c (md): Add hint_b.
3726         (emit_one_bundle): Handle md.hint_b for "hint".
3727         (md_parse_option): Accepted "-mhint.b=[ok|warning|error]".
3728         (md_show_usage): Add "-mhint.b=[ok|warning|error]".
3729         (ia64_init): Set md.hint_b to error.
3730         (md_assemble): Handle md.hint_b for "hint.b".
3731
3732         * doc/as.texinfo: Add "-mhint.b=[ok|warning|error]".
3733         * doc/c-ia64.texi: Likewise.
3734
3735 2005-02-17  Alan Modra  <amodra@bigpond.net.au>
3736
3737         * tc.h (struct relax_type, relax_typeS): Move from here..
3738         * as.h: ..to here.  Make rlx_forward and rlx_backward an offsetT.
3739         * ecoff.c (ecoff_new_file): Add appfile param.
3740         * ecoff.h (ecoff_new_file): Likewise.
3741         * itbl-lex.h: New file.
3742         * itbl-lex.l: Include itbl-lex.h.
3743         * itbl-parse.y: Likewise.
3744         (insntbl_line, yyparse, yylex): Move to itbl-lex.h.
3745         * read.c (s_app_file_string): Mark appfile possibly unused.
3746         * subsegs.c (seg_not_empty_p): Make sec possibly unused.
3747         * subsegs.h (struct seg_info_trash): Delete.
3748         (seg_info): Use segment_info_type instead.
3749         * config/obj-coff.c (struct filename_list): Make filename const char *.
3750         * config/obj-ecoff.h (obj_app_file): Pass app to ecoff_new_file.
3751         * config/obj-elf.c (elf_file_symbol): Similarly.
3752         * config/tc-a29k.c (md_apply_fix3): Make val a valueT.  Don't use
3753         signed right shift.
3754         * config/tc-arc.c (md_operand): Warning fix.
3755         * config/tc-arm.c (arm_parse_reloc): Only define when OBJ_ELF.
3756         (md_begin): Rearrange #if defined OBJ_COFF || defined OBJ_ELF.
3757         * config/tc-cris.h (TC_IMPLICIT_LCOMM_ALIGNMENT): Use do while.
3758         * config/tc-frv.c (frv_force_relocation): Warning fix.
3759         * config/tc-m68k.c (md_parse_option): Delete unused var.
3760         * config/tc-mcore.c (mylog2): Rename from log2 throughout.
3761         * config/tc-sparc.c: Likewise.
3762         (s_common): Warning fix.
3763         * config/tc-mips.c (append_insn): Use unsigned long long expressions.
3764         * config/tc-mmix.c (PUSHJSTUB_MAX, PUSHJSTUB_MIN): Define from
3765         addressT.
3766         * config/tc-s390.c (s390_insn): Delete test of unsigned >= 0.
3767         * config/tc-sh.c (sh_cfi_frame_initial_instructions,
3768         sh_regname_to_dw2regnum): Only define for OBJ_ELF.
3769         * config/tc-tic4x.c (tic4x_insert_reg): Use ISLOWER.
3770         (tic4x_do_align): Use TIC_NOP_OPCODE.
3771         * config/tc-tic4x.h (TIC_NOP_OPCODE): Rename from NOP_OPCODE.
3772         * config/tc-vax.c: Include netinet/in.h.
3773         (tc_headers_hook): Formatting.
3774         * config/tc-xstormy16.c (md_pcrel_from_section): Correct parens.
3775
3776 2005-02-17  Jan Beulich  <jbeulich@novell.com>
3777
3778         * config/tc-ia64.c (ia64_parse_name): Don't advance 'name' when
3779         parsing inN, locN, outN. Set 'idx' to offset register number starts
3780         at. Don't handle numbers with leading zeroes or beyond 95. Remove
3781         pointless cast.
3782
3783 2005-02-16  Thiemo Seufer  <seufer@csv.ica.uni-stuttgart.de>
3784
3785         * config/tc-mips.c (load_address): Fix formatting.
3786         (macro): Don't use AT if .set noat is in effect. Fix formatting.
3787         Catch macros which are unexpandable without AT. Remove duplicate
3788         zeroing of used_at.
3789         (macro2): Remove duplicate zeroing of used_at.
3790
3791 2005-02-16  Alan Modra  <amodra@bigpond.net.au>
3792
3793         * dw2gencfi.c (output_cie, output_fde): Use DW_CFA_nop rather
3794         than zero.
3795
3796 2005-02-15  Nigel Stephens  <nigel@mips.com>
3797             Maciej W. Rozycki  <macro@mips.com>
3798
3799         * config/tc-mips.c (reloc_needs_lo_p): Handle
3800         BFD_RELOC_MIPS16_HI16_S.
3801         (fixup_has_matching_lo_p): Handle BFD_RELOC_MIPS16_LO16.
3802         (append_insn): Add BFD_RELOC_MIPS16_GPREL, BFD_RELOC_MIPS16_HI16_S
3803         and BFD_RELOC_MIPS16_LO16 to relocs to suppress overflow
3804         complaints on.
3805         (mips16_ip): Resolve BFD_RELOC_MIPS16_HI16_S,
3806         BFD_RELOC_MIPS16_HI16 and BFD_RELOC_MIPS16_LO16 for constants.
3807         Call my_getSmallExpression() to parse percent operators.
3808         (percent_op_match, mips_percent_op): Separate definitions.
3809         (mips16_percent_op): Define percent operators for the MIPS16 mode.
3810         (parse_relocation): Handle the MIPS16 mode using
3811         mips16_percent_op.
3812         (md_apply_fix3): Handle BFD_RELOC_MIPS16_HI16,
3813         BFD_RELOC_MIPS16_HI16_S and BFD_RELOC_MIPS16_LO16.
3814
3815 2005-02-15  Jan Beulich  <jbeulich@novell.com>
3816
3817         * config/tc-ia64.c (md_apply_fix3): Call ia64_gen_real_reloc_type
3818         instead of explicitly dealing with the translation; exclude
3819         relocations that are already pcrel, however.
3820
3821 2005-02-15  Jan Beulich  <jbeulich@novell.com>
3822
3823         * config/tc-ia64.c: Include limits.h (if available).
3824         (gr_values[0]): Set path to INT_MAX.
3825         (dot_reg_val): Don't allow changing value of r0. Limit range of
3826         general registers at r127.
3827         (specify_resource): Default resource index is -1. Don't set resource
3828         index (in case IA64_RS_RSE) without setting the specific flag.
3829         (note_register_values): Check operand is O_constant before tracking
3830         input value of moves. Add tracking for dep.z with constant inputs.
3831         (print_dependency): Resource index of specific resource may be zero.
3832         (check_dependencies): Likewise.
3833
3834 2005-02-15  Jan Beulich  <jbeulich@novell.com>
3835
3836         * config/tc-ia64.c (parse_operands): New local variables reg1, reg2,
3837         reg_class. Check operands and emit diagnostics for illegal use of
3838         registers.
3839
3840 2005-02-15  Jan Beulich  <jbeulich@novell.com>
3841
3842         * config/tc-ia64.c (ia64_gen_real_reloc_type): Define and initialize
3843         new variables type, suffix, and width. Handle
3844         BFD_RELOC_IA64_DIR(32|64)[LM]SB in FUNC_LT_FPTR_RELATIVE case.
3845         Handle BFD_RELOC_IA64_DIR64[LM]SB in FUNC_TP_RELATIVE case. Add
3846         FUNC_DTP_MODULE case. Handle BFD_RELOC_IA64_DIR32[LM]SB in
3847         FUNC_DTP_RELATIVE case. Return incoming relocation type if
3848         BFD_RELOC_IA64_IPLT[LM]SB in FUNC_IPLT_RELOC case. Generate warning
3849         if unable to translate relocation type, using the new variables.
3850
3851 2005-02-15  Jan Beulich  <jbeulich@novell.com>
3852
3853         * config/tc-ia64.h (ia64_symbol_chars): Declare.
3854         (ty_symbol_chars): Define.
3855         * config/tc-ia64.c (ia64_symbol_chars): Define.
3856
3857 2005-02-15  Jan Beulich  <jbeulich@novell.com>
3858
3859         * config/tc-ia64.c (ia64_parse_name): Only update next character if
3860         input_line_pointer was advanced.
3861
3862 2005-02-14  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
3863
3864         * config/tc-sh.c (md_apply_fix3): Add parentheses around &
3865         within |.
3866
3867 2005-02-13  Jan Beulich  <jbeulich@novell.com>
3868
3869         * config/tc-ia64.c (md_parse_option): Handle -xnone and -xdebugn.
3870         (md_show_usage): Add -xnone, -xdebugn, and -xdebugx. Relocate default
3871         indicator.
3872         (ia64_init): Set md.detect_dv.
3873         (ia64_start_line): New static variable warned. Warn only once when
3874         encountering explicit stops in automatic mode.
3875         * doc/c-ia64.texi: Describe -xnone, -xdebugn, and -xdebugx.
3876         * NEWS: Mention new default mode.
3877
3878 2005-02-13  Jan Beulich  <jbeulich@novell.com>
3879
3880         * config/tc-ia64.c (dot_rot): Add comment that name strings should
3881         be freed when wiping out previous state. Canonicalize names before
3882         use. Free name string when detecting redefinition.
3883         (dot_pred_rel): Call generic expression parser to process arguments.
3884         Handle O_register case for individual predicates and O_subtract for
3885         ranges.
3886         (ia64_parse_name): Canonicalize name before looking it up in dynamic
3887         register hash.
3888         (ia64_canonicalize_symbol_name): Strip off all trailing # characters.
3889         Warn if multiple found, issue error if resulting symbol name has zero
3890         length.
3891         (dot_alias): Canonicalize name before use.
3892
3893 2005-02-11  H.J. Lu  <hongjiu.lu@intel.com>
3894
3895         * config/tc-ia64.c (unwind_diagnostic): Return -1 for warning
3896         and 0 for error.
3897         (in_procedure): Return -1 for warning.
3898         (in_prologue): Likewise.
3899         (in_body): Likewise.
3900
3901 2005-02-11  H.J. Lu  <hongjiu.lu@intel.com>
3902
3903         * config/tc-ia64.c (dot_xdata): Undo the last change.
3904         (dot_float_cons): Likewise.
3905         (dot_xstringer): Likewise.
3906         (dot_xdata_ua): Likewise.
3907         (dot_float_cons_ua): Likewise.
3908
3909 2005-02-11  H.J. Lu  <hongjiu.lu@intel.com>
3910
3911         * NEWS: Mention "-munwind-check=[warning|error]".
3912
3913         * config/tc-ia64.c (md): Add unwind_check.
3914         (unwind_diagnostic): New.
3915         (in_procedure): Call unwind_diagnostic when a directive isn't
3916         in procedure.
3917         (in_prologue): Call unwind_diagnostic when a directive isn't in
3918         prologue.
3919         (in_body): Call unwind_diagnostic when a directive isn't in
3920         body region.
3921         (dot_endp): Set md.unwind_check to error before calling
3922         in_procedure and restore it after. When the name is missing or
3923         couldn't be found, use the one from the last .proc if
3924         md.unwind_check isn't error. Warn if md.unwind_check is
3925         warning.
3926         (md_parse_option): Handle "-munwind-check=[warning|error]".
3927         (md_show_usage): Add "-munwind-check=[warning|error]".
3928         (ia64_init): Set md.unwind_check to warning.
3929
3930         * doc/as.texinfo: Add "-munwind-check=[none|warning|error]".
3931         * doc/c-ia64.texi: Likewise.
3932
3933 2005-02-11  Jan Beulich  <jbeulich@novell.com>
3934
3935         * config/tc-ia64.h (LEX_AT): Include LEX_BEGIN_NAME.
3936         (LEX_QM): Likewise.
3937         (ia64_parse_name): New third parameter.
3938         (md_parse_name): Pass third argument.
3939         * config/tc-ia64.c (pseudo_func): Placeholders use NULL as name.
3940         (md_operand): Handling of '@'-prefixed symbols moved from here...
3941         (ia64_parse_name): ...to here.
3942
3943 2005-02-11  Jan Beulich  <jbeulich@novell.com>
3944
3945         * config/tc-ia64.c (md): Remove last_groups and group_idx.
3946         (errata_nop_necessary_p): Remove declaraction and definition.
3947         (emit_one_bundle): Don't call errata_nop_necessary_p. Don't
3948         update md.group_idx. Don't reset md.last_groups.
3949
3950 2005-02-11  Jan Beulich  <jbeulich@novell.com>
3951
3952         * config/tc-ia64.c (parse_section_name): Handle non-quoted first
3953         argument.
3954         (dot_xdata): Free section name after use.
3955         (dot_float_cons): Likewise.
3956         (dot_xstringer): Likewise.
3957         (dot_xdata_ua): Likewise.
3958         (dot_float_cons_ua): Likewise.
3959         (md_pseudo_table): Add xdata16 and xdata16.ua.
3960
3961 2005-02-10  H.J. Lu  <hongjiu.lu@intel.com>
3962
3963         * doc/all.texi: Add IA64.
3964         * doc/as.texinfo: Likewise.
3965
3966         * doc/c-ia64.texi: Fix typos.
3967
3968 2005-02-10  Julian Brown  <julian@codesourcery.com>
3969
3970         * config/tc-arm.c (do_t_ldmstm): Change BFD_RELOC_NONE to
3971         BFD_RELOC_UNUSED.
3972         (do_t_push_pop): Likewise.
3973         (md_assemble): Likewise.
3974         (md_apply_fix3): Handle BFD_RELOC_NONE correctly, make
3975         BFD_RELOC_UNUSED same as previous meaning of BFD_RELOC_NONE.
3976         (create_unwind_entry): Output dependency on the required personality
3977         routines.
3978
3979 2005-02-07  Nathan Sidwell  <nathan@codesourcery.com>
3980
3981         * as.h (seg_not_empty_p): Return int, not bfd_boolean.
3982         * subsegs.c (seg_not_empty_p): Likewise.
3983
3984 2005-02-07  Inderpreet Singh <inderpreetb@noida.hcltech.com>
3985
3986         * config/tc-maxq.c (md_estimate_size_before_relax): Correct the
3987         relative jump calculation.
3988         <md_convert_frag) : Likewise.
3989         <output_disp): Likewise.
3990
3991 2005-02-07  Hans-Peter Nilsson  <hp@axis.com>
3992
3993         * write.c (write_object_file): Recognize warning-symbol construct
3994         and skip object- and target- handling for the second symbol.
3995
3996 2005-02-02  Jan Beulich  <jbeulich@novell.com>
3997
3998         * config/tc-ia64.c (dot_pred_rel): Update comment. Handle @-prefixed
3999         designators along with quoted ones. Free copy of quoted designator
4000         when done.
4001
4002 2005-02-01  Ben Elliston  <bje@au.ibm.com>
4003
4004         * config/atof-ieee.c, config/obj-coff.c, config/obj-elf.c,
4005         config/obj-ieee.c, config/obj-som.c, config/obj-vms.c,
4006         config/tc-a29k.c, config/tc-alpha.c, config/tc-arc.c,
4007         config/tc-arm.c, config/tc-d30v.c, config/tc-dlx.c,
4008         config/tc-fr30.c, config/tc-h8300.c, config/tc-h8500.c,
4009         config/tc-i370.c, config/tc-i386.c, config/tc-i960.c,
4010         config/tc-ia64.c, config/tc-m32r.c, config/tc-m32r.h,
4011         config/tc-m68hc11.c, config/tc-m68hc11.h, config/tc-mips.c,
4012         config/tc-mn10200.c, config/tc-msp430.c, config/tc-ns32k.c,
4013         config/tc-openrisc.c, config/tc-or32.c, config/tc-pdp11.c,
4014         config/tc-pj.c, config/tc-sparc.h, config/tc-tic54x.c,
4015         config/tc-tic80.c, config/tc-v850.c, config/tc-w65.c,
4016         config/tc-xtensa.c, config/tc-z8k.c, config/xtensa-relax.c: Remove
4017         #if 0'd code throughout.
4018
4019 2005-01-31  Nick Clifton  <nickc@redhat.com>
4020
4021         * as.c (parse_args): Bump copyright date reported by --version to
4022         2005.
4023
4024 2005-01-31  Nick Clifton  <nickc@redhat.com>
4025
4026         * configure.tgt: Remove obsolete targets m68k-lynxos, sparc-lynxos
4027         and vax-vms.
4028
4029 2005-01-31  Jan Beulich  <jbeulich@novell.com>
4030
4031         * macro.c (buffer_and_nest): Allow 'from' being NULL; handle anything
4032         that can end with .endr in that case. Make requiring/permitting
4033         pseudo-ops without leading dot closer to the logic in read.c serving
4034         the same purpose.
4035         (expand_irp): Don't pass a mnemonic to buffer_and_nest as it will be
4036         ignored.
4037
4038 2005-01-31  Jan Beulich  <jbeulich@novell.com>
4039
4040         * macro.c (do_formals): Adjust to no longer accept empty parameter
4041         names.
4042         (define_macro): Adjust to no longer accept empty macro name, garbage
4043         following the parameters, or macros that were previously defined.
4044         * read.c (s_bad_end): Declare.
4045         (potable): Add endm. Handler for endr and endm is s_bad_end.
4046         (s_bad_end): Rename from s_bad_endr. Adjust to handle both .endm
4047         and .endr.
4048         * read.h (s_bad_endr): Remove.
4049
4050 2005-01-31  Jan Beulich  <jbeulich@novell.com>
4051
4052         * config/tc-ia64.c (parse_operands): Parse all specified operands,
4053         immediately discarding (but counting) those exceeding the maximum
4054         possible amount. Track whether output and input operand counts ever
4055         matched, and use this to better indicate which of the operands/
4056         operand types was wrong; specifically don't default to pointing to
4057         the first operand.
4058
4059 2005-01-31  Jan Beulich  <jbeulich@novell.com>
4060
4061         * config/tc-ia64.c (unwind): Remove proc_end (now an automatic
4062         variable in dot_endp). Add body and insn. Make prologue,
4063         prologue_mask, body, and insn bitfields.
4064         (fixup_unw_records): Remove spurious new-lines from end of diagnostic
4065         messages.
4066         (in_procedure, in_prologue, in_body): New.
4067         (dot_fframe, dot_vframe, dot_vframesp, dot_vframepsp, dot_save,
4068         dot_restore, dot_restorereg, dot_restorereg_p, dot_handlerdata,
4069         dot_unwentry, dot_altrp, dot_savemem, dot_saveg, dot_savef, dot_saveb,
4070         dot_savegf, dot_spill, dot_spillreg, dot_spillmem, dot_spillreg_p,
4071         dot_spillmem_p, dot_label_state, dot_copy_state, dot_unwabi,
4072         dot_personality): Use the appropriate one of the above.
4073         (dot_proc): Clear unwind.proc_start; set to current location only if
4074         none of the entry points were valid. Check for non-zero-length entry
4075         point names. Check that entry points aren't defined, yet. Clear
4076         unwind.prologue, unwind.body, and unwind.insn.
4077         (dot_body): Call in_procedure. Check that first directive in procedure
4078         had no insns emitted before. Set unwind.body.
4079         (dot_prologue): Call in_procedure. Check that not already in prologue.
4080         Check that first directive in procedure had no insns emitted before.
4081         Clear unwind.body.
4082         (dot_endp): Call in_procedure. Declare proc_end. Check for non-zero-
4083         length entry point names. Check that entry points became defined.
4084         (md_assemble): Set unwind.insn once unwind.proc_start is defined.
4085
4086 2005-01-31  Jan Beulich  <jbeulich@novell.com>
4087
4088         * config/tc-ia64.c (emit_one_bundle): Snapshot manual bundling state
4089         before actually using it. Don't generate an error in manual bundling
4090         mode when looking at an insn requiring slot 2 but not yet at slot 2.
4091         Don't generate an error in manual bundling mode when looking at an
4092         insn required to be last in its group but the required slot hasn't
4093         been reached, yet. Allow conversion from MII to MI;I for bundle
4094         consisting of only 2 insns with the stop between them. Suppress
4095         various meaningless errors resulting from detecting earlier ones.
4096
4097 2005-01-31  Jan Beulich  <jbeulich@novell.com>
4098
4099         * config/tc-ia64.c (parse_operands): Also handle alloc without first
4100         input being ar.pfs.
4101
4102 2005-01-28  Christian Groessler  <chris@groessler.org>
4103
4104         * config/tc-z8k.c (md_assemble): Improve error detection.
4105
4106 2005-01-28  Jan Beulich  <jbeulich@novell.com>
4107
4108         * config/tc-ia64.c (ia64_estimate_size_before_relax): Allocate space
4109         for personality routine pointer only if there is one.
4110         (ia64_convert_frag): Likewise.
4111         (generate_unwind_image): Likewise.
4112
4113 2005-01-27  Christian Groessler  <chris@groessler.org>
4114
4115         * config/tc-z8k.c (INSERT): Remove, not used anywhere.
4116         (md_apply_fix3): Make relative branches out of range an error
4117         instead of a warning.  Display correct line number for out of
4118         range branches/calls/memory accesses.
4119
4120 2005-01-27  Nathan Sidwell  <nathan@codesourcery.com>
4121
4122         * dwarf2dbg.c (dwarf2_finish): Correct logic for determining when
4123         to emit .debug_line and other debug sections.
4124         * as.h (seg_not_empty_p): Declare.
4125         * subsegs.c (seg_not_empty_p): New predicate.
4126
4127 2005-01-27  Andrew Cagney  <cagney@gnu.org>
4128
4129         * configure: Regenerate to track ../gettext.m4 change.
4130
4131 2005-01-27  Jan Beulich  <jbeulich@novell.com>
4132
4133         * config/tc-ia64.c (emit_one_bundle): Change "?imbf??" to "?ibmfxx".
4134
4135 2005-01-27  Jan Beulich  <jbeulich@novell.com>
4136
4137         * config/tc-ia64.c (emit_one_bundle): Add late resolution of move
4138         to/from application registers dynamic insns.
4139         (md_assemble): Defer resolution of move to/from application registers
4140         dynamic insns when they can be issued on either the I- or M-units.
4141
4142 2005-01-25  Alexandre Oliva  <aoliva@redhat.com>
4143
4144         * config/tc-frv.c (md_apply_fix3): Mark TLS symbols as such.
4145         2004-12-10  Alexandre Oliva  <aoliva@redhat.com>
4146         * config/tc-frv.c (frv_pic_ptr): Add tlsmoff support.
4147         2004-11-10  Alexandre Oliva  <aoliva@redhat.com>
4148         * cgen.c (gas_cgen_parse_operand): Handle
4149         CGEN_PARSE_OPERAND_SYMBOLIC.
4150         * config/tc-frv.c (md_cgen_lookup_reloc): Handle TLS relocations.
4151         (frv_force_relocation): Likewise.  Fix handling of PIC
4152         relocations.
4153         (md_apply_fix3): Likewise.
4154
4155 2005-01-21  Ben Elliston  <bje@au.ibm.com>
4156
4157         * as.h: Remove #if 0'd code.
4158         * atof-generic.c (atof_generic): Likewise.
4159         * ecoff.c (ecoff_directive_frame): Likewise.
4160         * frags.h (FRAG_APPEND_1_CHAR): Likewise.
4161         * itbl-ops.c (itbl_add_reg): Likewise.
4162         * listing.c (calc_hex): Likewise.
4163         * read.c (MASK_CHAR): Likewise.
4164         * subsegs.c (subsegs_print_statistics): Likewise.
4165         * symbols.c (indent): Likewise.
4166         * write.c (write_relocs): Likewise.
4167         (write_object_file): Likewise.
4168         (relax_frag): Likewise.
4169
4170 2005-01-20  Nick Clifton  <nickc@redhat.com>
4171
4172         * as.c (std_longopts): Add an entry for "--a" in order to prevent
4173         getopt_long_only() from considering -a as an abbreviation for
4174         --alternate.
4175         (parse_args): Fix the parsing of -a=<file>.
4176
4177 2005-01-20  Alan Modra  <amodra@bigpond.net.au>
4178
4179         PR gas/684
4180         * read.c (s_incbin): Adjust default count for skip.  Check validity
4181         of count and skip rigorously.
4182
4183 2005-01-19  Fred Fish  <fnf@specifixinc.com>
4184
4185         * config/tc-mips.c (dummy_opcode): Add init for new struct member.
4186
4187 2005-01-19  Richard Sandiford  <rsandifo@redhat.com>
4188
4189         * read.c (convert_to_bignum): New function, split out from...
4190         (emit_expr): ...here.  Handle the case where X_add_number is
4191         positive and the input value is negative.
4192         (output_big_sleb128): Fix setting of continuation bit.  Check whether
4193         the final byte needs to be sign-extended.  Fix size-shrinking loop.
4194         (emit_leb128_expr): When generating a signed leb128, see whether the
4195         sign of an O_constant's X_add_number matches the sign of the input
4196         value.  Use a bignum if not.
4197
4198 2005-01-17  Andrew Stubbs  <andrew.stubbs@st.com>
4199
4200         * tc-sh.c (md_begin,md_parse_option): Change arch_sh1_up to
4201         arch_sh_up in order to match the external name and make the
4202         testsuite's job easier.
4203
4204 2005-01-14  H.J. Lu  <hongjiu.lu@intel.com>
4205
4206         PR 659
4207         * config/tc-i386.c (i386_scale): Disallow 0 scale.
4208
4209 2005-01-12  Nick Clifton  <nickc@redhat.com>
4210
4211         * config/tc-iq2000.c (s_iq2000_set): Fix thinko parsing
4212         ignored_arguments array.
4213
4214 2005-01-10  H.J. Lu  <hongjiu.lu@intel.com>
4215
4216         * write.c (write_object_file): Disallow a symbol equated to
4217         common symbol.
4218
4219 2005-01-10  Inderpreet Singh <inderpreetb@noida.hcltech.com>
4220
4221         * tc-maxq.c: Replace constants 10 and 20 with bfd_mach_maxq10 and
4222         bfd_mach_maxq20.
4223         (md_pseudo_table): Add new pseudo ops for maxq10 and maxq20.
4224         (maxq_target): New function: Set the machine type.
4225
4226 2005-01-06  Paul Brook  <paul@codesourcery.com>
4227
4228         * config/tc-arm.c (FPU_DEFAULT): Define for TE_VXWORKS.
4229         (md_begin): Handle TE_VXWORKS for FP defaults.
4230         (md_apply_fix3): Correct rela offsets.
4231         (elf32_arm_target_format): Add VxWorks targets.
4232
4233 2005-01-06  Paul Brook  <paul@codesourcery.com>
4234
4235         * configure.tgt: Set em=vxworks for *-*-vxworks.
4236         * config/te-vxworks.h: New File.
4237
4238 2005-01-06  Paul Brook  <paul@codesourcery.com>
4239
4240         * config/tc-arm.c (arm_cpus): Correct arch field for arm1026ej-s.
4241
4242 2005-01-04  Dmitry Diky  <diwil@spec.ru>
4243
4244         * config/tc-msp430.c (md_apply_fix3): Fix offset calculation for
4245         global label.
4246
4247 2005-01-03  David Mosberger  <davidm@hpl.hp.com>
4248
4249         * config/tc-ia64.c (md): Add member "loc_directive_seen".
4250         (dot_loc): New function.
4251         (md_pseudo_table): Add entry to map .loc to dot_loc().
4252         (emit_one_bundle): Only call dwarf2_gen_line_info() if we have
4253         seen a .loc directive or we're generating DWARF2 debug info for
4254         assembly source.
4255
4256 For older changes see ChangeLog-2004
4257 \f
4258 Local Variables:
4259 mode: change-log
4260 left-margin: 8
4261 fill-column: 74
4262 version-control: never
4263 End: