2002-09-16 Bruno Haible <bruno@clisp.org>
[platform/upstream/binutils.git] / gas / ChangeLog
1 2002-09-16  Bruno Haible  <bruno@clisp.org>
2
3         * config/tc-i386.h (ELF_TARGET_FORMAT): New macro.
4         (TARGET_FORMAT): Use ELF_TARGET_FORMAT instead of "elf32-i386".
5         * config/tc-i386.c (i386_target_format): Likewise.
6         * config/tc-alpha.h (ELF_TARGET_FORMAT): New macro.
7         (TARGET_FORMAT): Use ELF_TARGET_FORMAT instead of "elf64-alpha".
8
9 2002-09-13  Nick Clifton  <nickc@redhat.com>
10
11         * config/tc-ppc.c (md_assemble): Do not count FAKE operands
12         when deciding if any operands have been skipped.
13
14 2002-09-11  Nick Clifton  <nickc@redhat.com>
15
16         * NEWS: New TI port supports both C4x and C3x series of DSPs.
17
18         * po/tr.po: Updated Turkish translation.
19
20 2002-09-11  Jakub Jelinek  <jakub@redhat.com>
21
22         * config/tc-i386.c (md_apply_fix3): Allow addend for
23         BFD_RELOC_386_TLS_LDO_32, BFD_RELOC_386_TLS_LE and
24         BFD_RELOC_386_TLS_LE_32.
25
26 2002-09-05  Jeff Law  <law@redhat.com>
27
28         * config/tc-hppa.c (md_apply_fix3): Don't set fx_done for
29         marker relocations such as ENTRY/EXIT.
30         * config/tc-hppa.h (MD_APPLY_SYM_VALUE): Definition applies
31         to both OBJ_ELF and OBJ_SOM.
32
33 2002-09-05  Alan Modra  <amodra@bigpond.net.au>
34
35         * doc/internals.texi (md_apply_fix3): Expand.
36         (TC_VALIDATE_FIX, TC_FORCE_RELOCATION, TC_FORCE_RELOCATION_ABS,
37         TC_FORCE_RELOCATION_LOCAL, TC_FORCE_RELOCATION_SUB_SAME,
38         TC_FORCE_RELOCATION_SUB_ABS, TC_FORCE_RELOCATION_SUB_LOCAL,
39         TC_VALIDATE_FIX_SUB, MD_APPLY_SYM_VALUE, S_FORCE_RELOC,
40         EXTERN_FORCE_RELOC): Document.
41         (TC_HANDLES_FX_DONE, obj_fix_adjustable): Remove.
42         * as.h: Don't include struc-symbol.h for arc.
43         (IS_ELF): Define.
44         * cgen.c (gas_cgen_md_apply_fix3): Remove *valP fudges and code to
45         subtract absolute symbol.
46         * obj.h (struct format_ops): Add frob_file_before_fix.
47         * subsegs.c (section_symbol): Set BSF_SECTION_SYM flag.
48         * symbols.c (S_FORCE_RELOC): New function.
49         * symbols.h (S_FORCE_RELOC): Declare.
50         * write.c (TC_FORCE_RELOCATION): Change default.
51         (TC_FORCE_RELOCATION_ABS): Define.
52         (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
53         (TC_FORCE_RELOCATION_LOCAL): Define this instead.
54         (TC_FORCE_RELOCATION_SECTION): Don't define.
55         (TC_FORCE_RELOCATION_SUB_SAME): Define this instead.
56         (TC_FORCE_RELOCATION_SUB_ABS): Define.
57         (TC_FORCE_RELOCATION_SUB_LOCAL): Define.
58         (TC_VALIDATE_FIX_SUB): Define.
59         (TC_FIX_ADJUSTABLE): Don't define.
60         (MD_APPLY_SYM_VALUE): Define this instead.
61         (abs_section_sym): New variable.
62         (adjust_reloc_syms): Use S_FORCE_RELOC.  Remove obj_fix_adjustable
63         call.  Don't symbol_mark_used_in_reloc here.  Simplify link_once tests.
64         Don't put the absolute section sym on fixups here.
65         (fix_segment): New function.
66         (write_relocs): Don't call fixup_segment from here.
67         (write_object_file): Instead call tc_frob_file_before_fix,
68         obj_frob_file_before_fix, and fix_segment prior to symbol table code.
69         Don't output the absolute section symbol.
70         (fixup_segment): Rewrite.
71         * write.h (abs_section_sym): Declare.
72         * config/obj-aout.c (obj_aout_frob_file_before_fix): Rename from
73         obj_aout_frob_file.
74         (aout_format_ops): Adjust to suit.
75         * config/obj-aout.h (obj_frob_file): Don't define.
76         (obj_frob_file_before_fix): Define.
77         (obj_aout_frob_file_before_fix): Rename from obj_aout_frob_file.
78         (S_FORCE_RELOC): Define.
79         * config/obj-bout.h (S_FORCE_RELOC): Define.
80         * config/obj-coff.c (coff_format_ops): Init new field.
81         * config/obj-coff.h: Formatting fixes.
82         (obj_sec_sym_ok_for_reloc): Define.
83         (S_FORCE_RELOC): Define.
84         * config/obj-ecoff.c (ecoff_frob_file_before_fix): Split out ..
85         (ecoff_frob_file): .. from here.
86         (ecoff_format_ops): Add new function.
87         * config/obj-ecoff.h (ecoff_frob_file_before_fix): Declare.
88         (obj_frob_file_before_fix): Define.
89         * config/obj-elf.c (elf_format_ops): Init new field.
90         * config/obj-elf.h (obj_sec_sym_ok_for_reloc): Expand comment.
91         * config/obj-ieee.h: Formatting fixes.
92         (S_FORCE_RELOC): Define.
93         * config/obj-multi.h (obj_frob_file_before_fix): Define.
94         * config/obj-vms.h (S_FORCE_RELOC): Define.
95         * config/tc-alpha.c (md_apply_fix3): Correct GPDISP comment.
96         (alpha_force_relocation): Use S_FORCE_RELOC, and don't return 0
97         for BFD_RELOC_32 and BFD_RELOC_64.
98         (alpha_fix_adjustable): Remove extern and weak tests.
99         (alpha_before_fix): Rename from alpha_adjust_symtab.
100         (alpha_adjust_relocs): Rename from alpha_adjust_symtab_relocs.
101         * config/tc-alpha.h (struct fix, struct alpha_reloc_tag): Declare.
102         (TC_VALIDATE_FIX): Tweak param name.
103         (TC_FORCE_RELOCATION, tc_fix_adjustable): Likewise.
104         (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
105         (TC_FORCE_RELOCATION_LOCAL): Define this instead.
106         (MD_APPLY_SYM_VALUE): Define.
107         (tc_adjust_symtab): Don't define.
108         (alpha_adjust_symtab): Don't declare.
109         (tc_frob_file_before_fix): Define.
110         (alpha_before_fix): Declare.
111         (TC_INIT_FIX_DATA): Tweak param names.
112         * config/tc-arc.c: Include "struc-symbol.h".
113         (md_pcrel_from): Remove undefined sym fudge.
114         (md_apply_fix3): Remove *valP fudges and code to subtract abs sym.
115         Don't set fx_addnumber.
116         (tc_gen_reloc): Remove spurious fx_addnumber comment.
117         * config/tc-arc.h (MD_APPLY_SYM_VALUE): Define.
118         (EXTERN_FORCE_RELOC): Define.
119         * config/tc-arm.c (md_apply_fix3 <case BFD_RELOC_ARM_GOTPC>): Remove.
120         (tc_gen_reloc): Fudge ARM_GOTPC addend.
121         (arm_validate_fix): Return void.
122         (arm_fix_adjustable <elf version>): Remove extern and weak tests.
123         Add plt and got reloc tests.
124         (arm_force_relocation): Call S_FORCE_RELOC.
125         * config/tc-arm.h (struct fix): Forward declare.
126         (TC_VALIDATE_FIX): No longer set add_symbolP.
127         (arm_validate_fix): Adjust declaration.
128         (TC_FORCE_RELOCATION <pe version): Call S_FORCE_RELOC.
129         (TC_FORCE_RELOCATION): Tweak param name.
130         (TC_INIT_FIX_DATA): Likewise.
131         (obj_fix_adjustable): Don't define.
132         (tc_fix_adjustable): Call arm_fix_adjustable.
133         (TC_FIX_ADJUSTABLE): Don't define.
134         (MD_APPLY_SYM_VALUE): Define.
135         (EXTERN_FORCE_RELOC): Define.
136         (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
137         (TC_FORCE_RELOCATION_LOCAL): Define this instead.
138         * config/tc-avr.c (md_apply_fix3): Don't cast valP pointer type.
139         Remove *valP fudges and code to subtract abs sym.  Don't set
140         fx_addnumber.
141         * config/tc-avr.h: Formatting.
142         (EXTERN_FORCE_RELOC): Define.
143         (MD_APPLY_SYM_VALUE): Define.
144         * config/tc-cris.c (tc_gen_reloc): Don't use fx_addnumber.
145         (md_apply_fix3): Remove code to subtract abs sym.
146         (md_cris_force_relocation): Update comment.  Call S_FORCE_RELOC.
147         * config/tc-cris.h (TC_FORCE_RELOCATION): Tweak param name.
148         (IS_CRIS_PIC_RELOC, tc_fix_adjustable): Likewise.
149         (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
150         (TC_FORCE_RELOCATION_LOCAL): Define this instead.
151         (tc_fix_adjustable): Remove extern, weak tests.
152         * config/tc-d10v.c (tc_gen_reloc): Don't fiddle address of
153         BFD_RELOC_VTABLE_INHERIT relocs.  Don't use fx_addnumber.
154         (md_apply_fix3): Don't cast valP pointer type.  Remove *valP fudges
155         and code to subtract abs sym.
156         (d10v_fix_adjustable): Remove extern, weak, SEC_MERGE tests.
157         (d10v_force_relocation): Call S_FORCE_RELOC.
158         * config/tc-d10v.h: Don't include write.h.
159         (struct fix): Instead, forward declare.
160         (MD_PCREL_FROM_SECTION): Tweak param names.
161         (md_pcrel_from_section): Use "struct fix" instead of "fixS".
162         (d10v_fix_adjustable): Likewise.
163         (obj_fix_adjustable): Don't define.
164         (tc_fix_adjustable): Define.
165         (TC_FORCE_RELOCATION): Tweak param name.
166         (MD_APPLY_SYM_VALUE): Define.
167         (EXTERN_FORCE_RELOC): Define.
168         * config/tc-d30v.c (tc_gen_reloc): Don't use fx_addnumber.
169         (md_apply_fix3): Don't cast valP pointer type.  Remove *valP fudges
170         and code to subtract abs sym.
171         * config/tc-d30v.h: Don't include write.h.
172         (struct fix): Instead, forward declare.
173         (MD_PCREL_FROM_SECTION): Tweak param names.
174         (md_pcrel_from_section): Use "struct fix" instead of "fixS".
175         (MD_APPLY_SYM_VALUE): Define.
176         (EXTERN_FORCE_RELOC): Define.
177         * config/tc-dlx.c (md_dlx_force_relocation): Call S_FORCE_RELOC.
178         (md_dlx_fix_adjustable): Don't test for NULL fx_addsy.
179         (md_apply_fix3): No need to test fx_pcrel before setting fx_done.
180         (tc_gen_reloc): Don't fiddle with BFD_RELOC_VTABLE_INHERIT relocs.
181         Adjust the address for BFD_RELOC_VTABLE_ENTRY, not the addend.
182         Don't use fx_addnumber.
183         * config/tc-dlx.h: Don't include write.h.
184         (md_convert_frag): We're not alpha twice over.
185         (EXTERN_FORCE_RELOC): Define.
186         (obj_fix_adjustable): Don't define.
187         (tc_fix_adjustable): Define.
188         (TC_FIX_ADJUSTABLE): Don't define.
189         (MD_APPLY_SYM_VALUE): Define.
190         (LOCAL_LABELS_DOLLAR): Undef always.
191         * config/tc-fr30.c (fr30_force_relocation): Call S_FORCE_RELOC.
192         (fr30_fix_adjustable): Remove extern, weak tests.
193         * config/tc-fr30.h (MD_APPLY_SYM_VALUE): Define.
194         (obj_fix_adjustable): Don't define.
195         (tc_fix_adjustable): Define.
196         (struct fix): Forward declare.
197         (MD_PCREL_FROM_SECTION): Tweak param name.  Remove duplicate.
198         * config/tc-frv.c (frv_force_relocation): Call S_FORCE_RELOC.
199         (frv_fix_adjustable): Don't do extern, weak tests.
200         * config/tc-frv.h (MD_APPLY_SYM_VALUE): Define.
201         (TC_FIX_ADJUSTABLE): Don't define.
202         (obj_fix_adjustable): Don't define.
203         (tc_fix_adjustable): Define.
204         (struct fix): Forward declare.
205         (MD_PCREL_FROM_SECTION): Tweak param name.  Remove duplicate.\
206         * config/tc-h8300.c (md_apply_fix3): Don't cast valP pointer type.
207         * config/tc-h8300.h (struct fix): Forward declare.
208         (EXTERN_FORCE_RELOC): Define.
209         * config/tc-hppa.c (md_apply_fix3): Remove subtraction of sym value.
210         (hppa_fix_adjustable): Don't test extern or weak.  Don't
211         symbol_mark_used_in_reloc.
212         (hppa_force_relocation): Use S_FORCE_RELOC instead of S_IS_EXTERNAL
213         and S_IS_WEAK.
214         * config/tc-hppa.h (EXTERN_FORCE_RELOC): Define
215         (TC_FORCE_RELOCATION, TC_INIT_FIX_DATA): Tweak param name.
216         (TC_FORCE_RELOCATION_SECTION): Don't define.
217         (MD_APPLY_SYM_VALUE): Define.
218         * config/tc-i370.c (md_apply_fix3): Remove *valP fudges and code
219         to subtract abs sym.
220         * config/tc-i370.h: Remove ifdef OBJ_ELF tests.
221         (MD_APPLY_SYM_VALUE): Define.
222         (MD_PCREL_FROM_SECTION): Tweak param name.
223         * config/tc-i386.c (tc_i386_fix_adjustable): Remove weak, extern tests.
224         (md_apply_fix3): Test fx_addsy, not fx_pcrel.
225         (i386_force_relocation): New function.
226         * config/tc-i386.h (TC_COFF_FIX2RTYPE): Tweak param name.
227         (TC_VALIDATE_FIX): Likewise.
228         (TC_FIX_ADJUSTABLE): Don't define.
229         (MD_APPLY_SYM_VALUE): Define.
230         (TC_FORCE_RELOCATION <elf version>): Call i386_force_relocation.
231         (i386_force_relocation): Declare.
232         (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
233         (TC_FORCE_RELOCATION_LOCAL): Define this instead.
234         (TC_FORCE_RELOCATION <coff version>): Call S_FORCE_RELOC.
235         * config/tc-i860.c (md_apply_fix3): Don't cast valP pointer type.
236         * config/tc-i860.h (MD_APPLY_SYM_VALUE): Define.
237         (EXTERN_FORCE_RELOC): Define.
238         * config/tc-i960.c (reloc_callj): Remove declaration.  Return false.
239         (md_apply_fix3): Don't cast valP pointer type.  Move code here from
240         old fixup_segment.  No need to test fx_pcrel before setting fx_done.
241         (i960_validate_fix): Remove add_symbolPP arg and add_symbolP macro.
242         Use fx_addsy instead of add_symbolP, as_bad_where instead of as_bad.
243         Remove #if 0 code.  Invert return boolean.
244         * config/tc-i960.h (TC_COUNT_RELOC): Tweak param name.
245         (TC_COFF_FIX2RTYPE, TC_ADJUST_RELOC_COUNT, TC_VALIDATE_FIX): Likewise.
246         (tc_headers_hook, tc_coff_fix2rtype): Remove declaration.
247         (tc_coff_sizemachdep): Prototype.
248         (i960_handle_align): Likewise.
249         (i960_validate_fix): Adjust declaration.
250         (reloc_callj): Likewise.
251         (EXTERN_FORCE_RELOC): Define.
252         (TC_FORCE_RELOCATION_SUB_SAME): Define.
253         (TC_FORCE_RELOCATION_ABS): Define.
254         (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
255         (TC_FORCE_RELOCATION_LOCAL): Define this instead.
256         (TC_FIX_ADJUSTABLE): Don't define.
257         (MD_APPLY_SYM_VALUE): Define.
258         * config/tc-ia64.c (ia64_force_relocation): Call S_FORCE_RELOC.
259         * config/tc-ia64.h (MD_APPLY_SYM_VALUE): Define.
260         (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
261         (TC_FORCE_RELOCATION_LOCAL): Define this instead.
262         * config/tc-ip2k.c (ip2k_force_relocation): Call S_FORCE_RELOC.
263         * config/tc-ip2k.h (MD_APPLY_FIX3): Don't define.
264         (MD_APPLY_SYM_VALUE): Define.
265         (EXTERN_FORCE_RELOC): Define.
266         (TC_FORCE_RELOCATION): Tweak param name.
267         * config/tc-m32r.c (m32r_force_relocation): Call S_FORCE_RELOC.
268         (m32r_fix_adjustable): Don't test extern, weak.
269         * config/tc-m32r.h (MD_PCREL_FROM_SECTION): Tweak param name.
270         (MD_APPLY_SYM_VALUE): Define.
271         (obj_fix_adjustable): Don't define.
272         (tc_fix_adjustable): Define.
273         (tc_frob_file): Don't define.
274         (tc_frob_file_before_fix): Define.
275         (EXTERN_FORCE_RELOC): Define.
276         * config/tc-m68hc11.c (tc_gen_reloc): Set addend to zero.  Adjust
277         BFD_RELOC_VTABLE_ENTRY address.
278         (tc_m68hc11_force_relocation): Call S_FORCE_RELOC.
279         (tc_m68hc11_fix_adjustable): Don't test relaxable_symbol.
280         (md_apply_fix3): Remove *valP fudges and code to subtract abs sym.
281         Remove duplicated fx_done code.
282         * config/tc-m68hc11.h (MD_APPLY_SYM_VALUE): Define.
283         (EXTERN_FORCE_RELOC): Define.
284         * config/tc-m68k.c (tc_m68k_fix_adjustable): Don't test
285         relaxable_symbol.
286         * config/tc-m68k.h (TC_COFF_FIX2RTYPE): Tweak param name.
287         (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
288         (TC_FIX_ADJUSTABLE): Don't define.
289         (EXTERN_FORCE_RELOC): Define.
290         (MD_APPLY_SYM_VALUE): Define.
291         (TC_FORCE_RELOCATION): Call S_FORCE_RELOC.
292         * config/tc-mcore.c (md_apply_fix3): Don't cast valP pointer type.
293         Remove fx_addsy tests.
294         (mcore_force_relocation): Call S_FORCE_RELOC.
295         (mcore_fix_adjustable): Don't test fx_addsy.
296         * config/tc-mcore.h (MD_PCREL_FROM_SECTION): Tweak param name.
297         (EXTERN_FORCE_RELOC): Define.
298         (obj_fix_adjustable): Don't define.
299         (tc_fix_adjustable): Define.
300         (MD_APPLY_SYM_VALUE): Define.
301         * config/tc-mips.c (enum mips_pic_level): Move to tc-mips.h.
302         (mips_pic): No longer static.
303         (mips_force_relocation): Call S_FORCE_RELOC.
304         (mips_fix_adjustable): Remove extern, weak tests.
305         * config/tc-mips.h (enum mips_pic_level): Declare.
306         (mips_pic): Declare.
307         (tc_frob_file): Don't define.
308         (tc_frob_file_before_fix): Define this instead.
309         (EXTERN_FORCE_RELOC): Define.
310         * config/tc-mmix.c (md_apply_fix3): Replace real_reg_section tests
311         with reg_section tests.  Set fx_done instead of calling
312         symbol_clear_used_in_reloc on bad relocs.
313         (tc_gen_reloc): Zero fx_addsy on bad relocs.
314         (mmix_force_relocation): Remove weak sym test.  Call S_FORCE_RELOC.
315         (mmix_adjust_symtab): Simplify list handling.  Abort on any
316         nonsense.
317         * config/tc-mmix.h (tc_fix_adjustable): Remove weak tests.  Check
318         BFD_RELOC_MMIX_LOCAL.
319         (tc_frob_symbol): Keep user defined syms in reg_section.  Don't punt.
320         (EXTERN_FORCE_RELOC): Define.
321         (MD_PCREL_FROM_SECTION): Tweak param name.
322         (tc_frob_file): Don't define.
323         (tc_frob_file_before_fix): Define this instead.
324         * config/tc-mn10300.c (mn10300_force_relocation): Call S_FORCE_RELOC.
325         Remove SEC_CODE checks.
326         (mn10300_fix_adjustable): Remove extern and weak tests.
327         * config/tc-mn10300.h (EXTERN_FORCE_RELOC): Define.
328         (TC_FORCE_RELOCATION): Tweak param name.
329         (obj_fix_adjustable): Don't define.
330         (TC_FORCE_RELOCATION_SUB_SAME): Define to handle SEC_CODE.
331         * config/tc-ns32k.h (TC_FIX_DATA_PRINT): Tweak param name.
332         * config/tc-openrisc.c (openrisc_force_relocation): Call S_FORCE_RELOC.
333         (openrisc_fix_adjustable): Don't test fx_addsy.
334         * config/tc-openrisc.h (MD_APPLY_SYM_VALUE): Define.
335         (obj_fix_adjustable): Don't define.
336         (tc_fix_adjustable): Define this instead.
337         (MD_PCREL_FROM_SECTION): Remove duplicate. Tweak param name.
338         * config/tc-or32.c (md_apply_fix3): Don't cast valP pointer type.
339         (tc_gen_reloc): Don't fiddle with BFD_RELOC_VTABLE_INHERIT relocs.
340         Adjust the address for BFD_RELOC_VTABLE_ENTRY, not the addend.
341         * config/tc-or32.h (EXTERN_FORCE_RELOC): Define.
342         (MD_APPLY_SYM_VALUE): Define.
343         * config/tc-pj.c (md_apply_fix3): Don't cast valP pointer type.
344         Don't subtract symbol value.
345         * config/tc-pj.h (md_pcrel_from): Tweak param name.
346         (EXTERN_FORCE_RELOC): Define.
347         (TC_FORCE_RELOCATION): Call S_FORCE_RELOC.
348         (MD_APPLY_SYM_VALUE): Define.
349         (obj_fix_adjustable): Don't define.
350         (tc_fix_adjustable): Define this instead.
351         * config/tc-ppc.c (ppc_frob_symbol <coff version>): Ignore absolute
352         section sym.
353         (ppc_force_relocation <coff version>): Call S_FORCE_RELOC.
354         (ppc_force_relocation <elf version>): New.
355         (ppc_fix_adjustable <elf version>): Remove extern and weak tests.
356         (md_apply_fix3): Don't subtract symbol values for ELF.  Update
357         comments.  Don't subtract fx_subsy as that is already done.
358         * config/tc-ppc.h (tc_fix_adjustable): Tweak param name.
359         (MD_PCREL_FROM_SECTION): Likewise.
360         (TC_FORCE_RELOCATION): Define for both ELF and XCOFF as calling
361         ppc_force_relocation.
362         (TC_FORCE_RELOCATION_SECTION): Delete.
363         (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
364         (TC_FORCE_RELOCATION_LOCAL): Define this instead.
365         (MD_APPLY_SYM_VALUE): Define.
366         * config/tc-s390.c: #include "dwarf2dbg.h".
367         (s390_insn): Remove excess parens.
368         (tc_s390_fix_adjustable): Remove extern, weak, SEC_MERGE tests.
369         (tc_s390_force_relocation): Call S_FORCE_RELOC.
370         (md_apply_fix3): Add ATTRIBUTE_UNUSED on "seg".  Abort when fx_subsy
371         non-NULL.  Don't subtract off fx_addsy value.
372         * config/tc-s390.h (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
373         (TC_FORCE_RELOCATION, MD_PCREL_FROM_SECTION): Tweak param name.
374         (TC_FIX_ADJUSTABLE): Don't define.
375         (MD_APPLY_SYM_VALUE): Define.
376         * config/tc-sh.c (SWITCH_TABLE_CONS): Move to tc-sh.h.
377         (SWITCH_TABLE): Likewise.
378         (sh_force_relocation): Call S_FORCE_RELOC.
379         (sh_fix_adjustable): Remove "return 1" cases handled by the default.
380         Replace TC_RELOC_RTSYM_LOC_FIXUP with reloc type tests.
381         (md_apply_fix3 <case BFD_RELOC_32_PLT_PCREL>): Simplify,
382         fx_addnumber is zero on entry.  Save val in fx_addnumber.
383         (tc_gen_reloc): Don't subtract fx_subsy.
384         * config/tc-sh.h (struct fix): Move.
385         (obj_fix_adjustable): Don't define.
386         (tc_fix_adjustable): Define this instead.
387         (TC_FIX_ADJUSTABLE): Don't define.
388         (MD_APPLY_SYM_VALUE): Define.
389         (SWITCH_TABLE_CONS): Define.
390         (SWITCH_TABLE): Define.
391         (TC_FORCE_RELOCATION_SUB_SAME): Define.
392         (TC_VALIDATE_FIX_SUB): Define.
393         (MD_PCREL_FROM_SECTION): Tweak param name.
394         (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
395         (TC_FORCE_RELOCATION_LOCAL): Define this instead.
396         (TC_FORCE_RELOCATION_SUB_ABS): Define.
397         * config/tc-sh64.h (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
398         (TC_FORCE_RELOCATION_LOCAL): Define this instead.
399         (TC_FORCE_RELOCATION_SUB_SAME): Define.
400         (TC_VALIDATE_FIX_SUB): Define.
401         (MD_PCREL_FROM_SECTION): Tweak param name.
402         * config/tc-sparc.c (md_apply_fix3): Don't subtract off symbol value.
403         (tc_gen_reloc): Use S_FORCE_RELOC.
404         (elf32_sparc_force_relocation): Call S_FORCE_RELOC.
405         * config/tc-sparc.h (TC_FORCE_RELOCATION <coff version>): Remove.
406         (TC_FORCE_RELOCATION_ABS): Define this instead.
407         (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
408         (TC_FORCE_RELOCATION_LOCAL): Define this instead.
409         (tc_fix_adjustable): Remove extern and weak tests.  Use S_FORCE_RELOC.
410         (MD_APPLY_SYM_VALUE): Define.
411         (TC_FIX_DATA_PRINT): Tweak param name.
412         * config/tc-tic30.c (USE_STDOUT): Don't define.
413         (md_parse_option): Remove stupid debug code.
414         (tc_gen_reloc): Don't use fx_addnumber.
415         * config/tc-v850.c (v850_fix_adjustable): Remove extern and weak tests.
416         (v850_force_relocation): Remove weak test.  Call S_FORCE_RELOC.
417         * config/tc-v850.h (obj_fix_adjustable): Don't define.
418         (tc_fix_adjustable): Define this instead.
419         (TC_FIX_ADJUSTABLE): Don't define.
420         (MD_APPLY_SYM_VALUE): Define this instead.
421         (TC_FORCE_RELOCATION, MD_PCREL_FROM_SECTION): Tweak param name.
422         * config/tc-vax.h (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
423         (TC_FIX_ADJUSTABLE): Don't define.
424         (MD_APPLY_SYM_VALUE): Define this instead.
425         (tc_fix_adjustable): Remove extern and weak tests.
426         * config/tc-w65.h (struct fix): Forward declare.
427         * config/tc-xstormy16.c (xstormy16_force_relocation): Call
428         S_FORCE_RELOC.
429         (xstormy16_fix_adjustable): Remove extern and weak tests.  Don't
430         call xstormy16_force_relocation;  Instead test for FPTR16 reloc.
431         (xstormy16_md_apply_fix3): Remove *valP fudges and code to subtract
432         absolute symbol.
433         * config/tc-xstormy16.h (MD_APPLY_FIX3): Don't define.
434         (MD_APPLY_SYM_VALUE): Define.
435         (obj_fix_adjustable): Don't define.
436         (tc_fix_adjustable): Define this instead.
437         (MD_PCREL_FROM_SECTION): Remove duplicate.  Tweak param name.
438
439 2002-09-04  Alan Modra  <amodra@bigpond.net.au>
440
441         * config/tc-ppc.c (ppc_frob_symbol): Formatting, warning fix.
442         (ppc_fix_adjustable <coff version>): Cleanup.
443
444         * config/tc-ppc.c (PPC_HIGHER, PPC_HIGHEST): Fix warning.
445         (md_parse_option): No -a64 without BFD64.
446         (ppc_set_cpu): Select appropriate cpu when ppc_obj64.
447         (ppc_arch): Use bfd_mach_rs6k for bfd_arch_rs6000.
448
449 2002-09-04  Nick Clifton  <nickc@redhat.com>
450
451         * config/tc-ppc.c (md_begin): Do not insert non-BookE32
452         instructions into the hash table if the target cpu is the BookE32.
453
454 2002-08-31  Hans-Peter Nilsson  <hp@bitrange.com>
455
456         * read.c (do_align): Use ATTRIBUTE_UNUSED_LABEL for label, not
457         ATTRIBUTE_UNUSED.
458
459 2000-08-28  Catherine Moore  <clm@redhat.com>
460
461         * tc-v850.c (v850_relax): Declare.
462         (v850_longcode): New routine.
463         (v850_handle_align): New routine.
464         (md_pseudo_table):  Add longcall and longjump.
465         (md_parse_option): Check for relax option.
466         (tc_gen_reloc):  Handle BFD_RELOC_V850_LONGCALL,
467         BFD_RELOC_V850_LONGJUMP, and BFD_RELOC_V850_ALIGN.
468         (md_apply_fix3): Likewise.
469         (v850_force_relocation): Likewise.
470         (v850_comm): Change the current section.
471         (md_assemble):  Ensure that the correct value is put in the
472         fixup.
473         (v850_sdata, v850_tdata, v850_zdata, v850_sbss, v850_tbss,
474         v850_zbss, v850_rosdata, v850_rozdata): Fix section book keeping.
475         Remove redundant v850ea support.
476         * tc-v850.h (HANDLE_ALIGN): Define.
477         (v850_handle_align): Declare.
478         * doc/c-v850.c: Document -mrelax, .longcall and .longjump.
479
480 2002-08-28  Svein E. Seldal  <Svein.Seldal@solidas.com>
481
482         * configure.in: Add tic4x-coff* and c4x-coff*-coff-coff targets.
483         * configure: Regenerate.
484         * NEWS: Mention new port.
485
486 2002-08-28  Michael Hayes <m.hayes@elec.canterbury.ac.nz>
487
488         * config/obj-coff.c: Add sdef definition.
489         * config/obj-coff.h: Add tic4x include file and set
490         target format.
491         * config/tc-tic4x.c: New file.
492         * config/tc-tic4x.h: New file.
493
494 2002-08-28  Alan Modra  <amodra@bigpond.net.au>
495
496         * write.c (BFD_FAST_SECTION_FILL): Remove unused macro.
497         (TC_ADJUST_RELOC_COUNT): Tweak param name.
498         (TC_FORCE_RELOCATION, TC_FORCE_RELOCATION_SECTION): Likewise.
499         (TC_FIX_ADJUSTABLE, MD_PCREL_FROM_SECTION): Likewise.
500         (RELOC_ENUM): Define.
501         (fix_new_internal): Use RELOC_ENUM.
502         (fix_new, fix_new_exp): Likewise.
503         (adjust_reloc_syms): Comment.  Remove unnecessary tests on sym != NULL.
504         Replace gotos with continue.
505         (write_relocs): Formatting.  Avoid symbol loops in
506         RELOC_EXPANSION_POSSIBLE case too.  Report bfd_reloc_outofrange
507         errors, and error number in other cases.
508         (fixup_segment): Remove param names from prototype.  Rename
509         "this_segment_type" to "this_segment".  Update linkrelax comment.
510         Remove "size, "place" and "where" local vars.  Formatting.  Update
511         "no symbol" comment.  Remove #if 0 and #if 1.
512
513         * app.c (do_scrub_chars): Don't test IGNORE_NONSTANDARD_ESCAPES.  Tidy.
514
515 2002-08-27  Alan Modra  <amodra@bigpond.net.au>
516
517         * dwarf2dbg.c: Always include dwarf2dbg.h.
518         (dwarf2_directive_file): Adjust dummy version args.
519         * ecoff.c (ecoff_directive_weakext): Add ATTRIBUTE_UNUSED.
520         * expr.c (clean_up_expression <O_subtract>): Allow subtraction
521         when symbol values differ.
522         * read.c (do_align): Add ATTRIBUTE_UNUSED to label.
523         (pseudo_set <O_subtract>): Remove unnecessary segment test.
524         * config/obj-bout.c (obj_pseudo_table): Warning fix.
525
526 2002-08-26  Alan Modra  <amodra@bigpond.net.au>
527
528         * config/tc-w65.c (md_section_align): Fix typo.
529         (md_parse_option): Return 0, not 1.
530
531 2002-08-22  Nick Clifton  <nickc@redhat.com>
532
533         * doc/as.texinfo (Section): Note that if '@' is a comment
534         character then another symbol is used to prefix the section's
535         type.
536
537 2002-08-22  Christian Groessler <chris@groessler.org>
538
539         * config/tc-z8k.c (get_operands): Adjust ptr variable also in
540         "case 0" case.
541
542 2002-08-12  Graeme Peterson  <gp@qnx.com>
543
544         * configure.in: Add support for sh-**-nto* target.
545         * configure: Regenerate.
546
547 2002-08-21  Nitin  Gupta  <niting@noida.hcltech.com>
548
549         * config/tc-h8300.h (TC_LINKRELAX_FIXUP): Define.
550
551 2002-08-21  Elena Zannoni  <ezannoni@redhat.com>
552
553         * config/tc-ppc.c (ppc_cleanup): Do something only if format
554         is ELF.
555         (ppc_apuinfo_section_add): Define only if format is ELF.
556         (md_assemble): Emit APUinfo section only if format is ELF.
557         Fix formatting.
558
559 2002-08-21  Alan Modra  <amodra@bigpond.net.au>
560
561         * config/tc-arc.c (md_pseudo_table <dwarf2_directive_file>): Cast.
562         * config/tc-frv.c: Likewise.
563         * config/tc-hppa.c: Likewise.
564         * config/tc-ia64.c: Likewise.
565         * config/tc-ip2k.c: Likewise.
566         * config/tc-m68hc11.c: Likewise.
567         * config/tc-m68k.c: Likewise.
568         * config/tc-mmix.c: Likewise.
569         * config/tc-mn10300.c: Likewise.
570         * config/tc-sh.c: Likewise.
571         * config/tc-sparc.c: Likewise.
572         * config/tc-v850.c: Likewise.
573
574 2002-08-20  Richard Sandiford  <rsandifo@redhat.com>
575
576         * config/tc-mips.c (macro2): Implement rotates by zero using shifts
577         by zero.
578
579 2002-08-19  Elena Zannoni  <ezannoni@redhat.com>
580
581         From matthew green  <mrg@redhat.com>
582
583         * config/tc-ppc.c (PPC_OPCODE_CLASSIC): Enable this everywhere
584         PPC_OPCODE_PPC is, except for BookE architectures.
585         (md_parse_option): Add support for -mspe.
586         (md_show_usage): Add -mspe.
587         (md_parse_option): Add support for -me500 and
588         -me500x2 to generate code for Motorola e500 core complex.
589         (md_show_usage): Add -me500 and -me500x2.
590
591         (PPC_APUINFO_ISEL, PPC_APUINFO_PMR, PPC_APUINFO_RFMCI,
592         PPC_APUINFO_CACHELCK, PPC_APUINFO_SPE, PPC_APUINFO_EFS,
593         PPC_APUINFO_BRLOCK): New macros.
594
595         (ppc_cleanup): New function.
596         (ppc_apuinfo_section_add): New function.
597         (APUID): New macro.
598         (md_assemble): Collect info and write the APUinfo section.
599
600         * config/tc-ppc.h (md_cleanup): Define.
601         (ppc_cleanup): Export.
602         (ELF_TC_SPECIAL_SECTIONS): Add .PPC.EMB.apuinfo section.
603
604 2002-08-17  Stan Cox  <scox@redhat.com>
605
606         * config/obj-elf.c (obj_elf_change_section): Make non-static.
607         config/tc-mips.c (s_change_section): New function to support
608         IRIX .section pseudo-op.
609
610 2002-08-16  Nick Clifton  <nickc@redhat.com>
611
612         * config/tc-v850.c (md_assemble): Fix assembling of "callt 0x3f".
613
614 2002-08-15  Alexandre Oliva  <aoliva@redhat.com>
615
616         * config/tc-mips.c (macro_build_jalr): Make sure we generate
617         the fix-up against on the right frag.
618         (s_cpsetup): Likewise.  Parse third argument as expression, to
619         handle global symbols and forward/backward labels correctly.
620
621 2002-08-14  Nick Clifton  <nickc@redhat.com>
622
623         * read.c (stringer): Catch attempts to create strings in the abs
624         section.
625
626         * config/tc-alpha.c: Fix compiling for COFF targets.
627         Some minor formatting tidyups.
628
629 2002-08-13  Stephane Carrez  <stcarrez@nerim.fr>
630
631         * config/tc-m68hc11.h (MD_PCREL_FROM_SECTION): Remove.
632         (TC_HANDLES_FX_DONE): Define to let md_apply_fix3 set fx_done flag
633         according to the reloc.
634         (tc_fix_adjustable, tc_m68hc11_fix_adjustable): Define.
635         (TC_FORCE_RELOCATION): Define.
636         (tc_m68hc11_force_relocation): Declare.
637
638         * config/tc-m68hc11.c (md_pseudo_table): Add relax command.
639         (s_m68hc11_relax): New function for relax group.
640         (build_insn, build_jump_insn): Emit a M68HC11_RL_JUMP reloc at
641         beginning of jump instruction.
642         (md_pcrel_from): Rename from md_pcrel_from_section and fix
643         address computation.
644         (tc-gen_reloc): Update.
645         (md_estimate_size_before_relax): Create the BFD_RELOC_16_PCREL as
646         PC-relative fixup.
647         (tc_m68hc11_force_relocation): New function, handle new relocs.
648         (tc_m68hc11_fix_adjustable): New to make sure there are enough
649         reloc for the linker relax pass.
650         (md_apply_fix3): Handle M68HC11_RL_JUMP, M68HC11_RL_GROUP
651         and VTABLE relocs.
652
653 2002-08-13  Stephane Carrez  <stcarrez@nerim.fr>
654
655         * config/tc-m68hc11.c (m68hc11_elf_final_processing): New function.
656         (md_pseudo_table): Add .mode, .far and .interrupt pseudo op.
657         (s_m68hc11_mode): New function for .mode pseudo op.
658         (s_m68hc11_mark_symbol): New function for .far and .interrupt
659         pseudo op.
660         * config/tc-m68hc11.h (elf_tc_final_processing): Define.
661         (m68hc11_elf_final_processing): Declare.
662
663 2002-08-13  Stephane Carrez  <stcarrez@nerim.fr>
664
665         * config/tc-m68hc11.c (md_begin): Take into account additional
666         page operand for call instruction.
667         (print_opcode_format): Likewise.
668         (check_range): Likewise for page range checking.
669         (get_operand): Don't skip a possible comma in operands.
670         (fixup8): Generate BFD_RELOC_M68HC11_PAGE reloc.
671         (fixup16): Likwise with BFD_RELOC_M68HC11_LO16.
672         (fixup24): New to handle call reloc.
673         (build_insn): Handle missing page operand for call instruction.
674         (find): Likewise.
675         (md_apply_fix3): Take into account new relocs.
676         (get_operand): Fix the mode for indexed indirect addressing.
677         (build_indexed_byte): Fix post index byte for indexed indirect mode.
678
679 2002-08-12  Richard Sandiford  <rsandifo@redhat.com>
680
681         * config/tc-mips.c (mips_ip): Don't work out the value of
682         constant %hi()s here.
683
684 2002-08-10  Alan Modra  <amodra@bigpond.net.au>
685
686         * config/tc-i386.c (tc_i386_fix_adjustable): Test OUTPUT_FLAVOR
687         for ELF, and don't bother checking ELF relocs when non-ELF.
688         (i386_immediate): Allow absolute_section expressions for aout.
689         (i386_displacement): Likewise.  Also test bfd_is_com_section.
690         (md_estimate_size_before_relax): Test OUTPUT_FLAVOR for ELF.
691         (md_apply_fix3): Hack for bfd_install_relocation when fx_pcrel,
692         not when fx_addsy.  Remove dead code.
693
694 2002-08-09  Graeme Peterson  <gp@qnx.com>
695
696         * configure.in: Add support for ppc-*-nto* target.
697         * configure: Regenerate.
698
699 2002-08-09  Alan Modra  <amodra@bigpond.net.au>
700
701         * config/tc-i386.h: Reorganize.
702
703 2002-08-09  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>
704
705         * config/tc-mips.c (macro): Handle a register plus a 16-bit
706         immediate offset in "dla" and "la" expansions.
707
708 2002-08-09  Alan Modra  <amodra@bigpond.net.au>
709
710         * configure.in: bfd_gas=yes for all i386 targets.  Formatting.
711         Remove "bfd_gas=yes" from target table when covered later.
712         Consolidate some entries.
713         * configure: Regenerate
714
715 2002-08-09  Jakub Jelinek  <jakub@redhat.com>
716
717         * config/tc-i386.c (output_insn): Save frag_now and frag_now_fix ()
718         at start of insn, pass it to output_disp and output_imm.
719         (output_disp): Added arguments.  If _GLOBAL_OFFSET_TABLE_ is seen
720         in displacement for R_386_32 reloc, use R_386_GOTPC and compute
721         properly addend.
722         (output_imm): Added arguments.  Compute properly addend for
723         R_386_GOTPC.
724         (md_apply_fix3): Remove R_386_GOTPC handling.
725         * testsuite/gas/i386/gotpc.s: New.
726         * testsuite/gas/i386/gotpc.d: New.
727         * testsuite/gas/i386/i386.exp: Add gotpc test.
728
729 2002-08-06  George France <france@handhelds.org>
730
731         * config/tc-alpha.c (cpu_types): Enabled ev67, ev68,  -m21264a
732         and m21264b processor names and cpu types.
733         * doc/c-alpha.texi: Documented new types.
734
735 2002-08-06  Alan Modra  <amodra@bigpond.net.au>
736
737         * config/tc-ppc.c (md_apply_fix3): Adjust 16 bit XCOFF reloc offset.
738
739 2002-08-01  Richard Sandiford  <rsandifo@redhat.com>
740
741         * config/tc-mips.c (tc_gen_reloc): Extend GP-relative addend
742         handling to BFD_RELOC_MIPS16_GPREL.
743
744 2002-08-01  Nick Clifton  <nickc@redhat.com>
745
746         * config/tc-arm.c (add_to_lit_pool): Ensure that offset to literal
747         pool is computed using signed arithmetic so that proper sign
748         extension is performed if X_add_number is a 64-bit integer.
749
750 2002-08-01  H.J. Lu  <hjl@gnu.org>
751             Daniel Jacobowitz  <drow@mvista.com>
752
753         * dwarf2dbg.c (dwarf2_finish): Don't emit unreferenced
754         .debug_line section unless it has line information.
755
756 2002-07-31  Ian Dall  <ian@sibyl.beware.dropbear.id.au>
757
758         * config/tc-ns32k.h (md_pcrel_adjust): Supply prototype.
759         * config/tc-ns32k.c (convert_iif, md_parse_option, md_show_usage):
760         Allow default displacement size to be an option "--disp-size-default".
761         (md_number_to_disp): Make error messages include value. Use %d to
762         print integers, not %s.
763         (fix_new_ns32k): Conditionally set fx_no_overflow so we don't
764         get duplicate messages sometimes.
765         (convert_iif): Grow frag to max possible instruction size. Avoid
766         creating unnecessary fixes.
767         (md_number_to_field) Add prototype.
768         (encode_operand, parse, convert_iif, md_fix_pcrel_adjust): Add
769         prototypes and make static.
770         (struct addr_mode): Make mode and scaled_mode explicitly signed.
771         (evaluate_expr): Use resultP argument instead of exprP global.
772         (get_addr_mode): Quiten compiler warnings.
773         (encode_operand): eliminate unused variables. Quiten compiler
774         warnings. Eliminate nul character in format strings.
775         (parse): argc is unsigned.
776         (reloc): Type cast index to quieten compiler.
777         (md_pcrel_adjust, md_apply_fix3): Remove unused variable.
778         (md_convert_frag): Note unused parameters. Remove unused
779         variables.
780         (md_create_long_jump, md_create_short_jump,
781         md_undefined_symbol_name, md_section_align, tc_gen_reloc): Note
782         unused parameters.
783
784 2002-07-31  Nick Clifton  <nickc@redhat.com>
785
786         * NEWS: Retroactively add entry for Lars Brinkhoff's contribution
787         of the PDP-11 and 2.11BSD a.out support.
788
789 2002-07-31  Momchil Velikov  <velco@fadata.bg>
790
791         * config/tc-v850.c (md_assemble): Fix range check for immediate
792         operand.
793
794 2002-07-30  Chris Demetriou  <cgd@broadcom.com>
795
796         * config/tc-mips.c (mips_cpu_info_table): Clean up entries related
797         to Broadcom SB-1 core support.
798
799 2002-07-31  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
800
801         * config/tc-mips.c (mips_target_format): Fix formatting.
802         Add recognition of n32 ABI formats.
803
804 2002-07-30  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>
805
806         * tc-mips.c (load_address): Don't clobber $at when loading a
807         64-bit address in non-PIC code if noat is in effect.
808         (macro): Likewise.
809
810 2002-07-30  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>
811
812         * config/tc-mips.c (macro): Use codes 6 and 7 in trap instructions
813         used in division/multiply macro expansions similarly to how they
814         are used in the variants with break instructions.
815         (macro2): Likewise.
816
817 2002-07-30  Graeme Peterson  <gp@qnx.com>
818
819         * configure.in: Add support for arm-*-nto target.
820         * configure: Regenerate.
821
822 2002-07-30  Nick Clifton  <nickc@redhat.com>
823
824         * config/tc-arm.c (struct literal_pool): Add fields to allow
825         multiple literal pools to be maintained.
826         (find_literal_pool): New function.
827         (find_or_make_literal_pool): New function.
828         (add_to_literal_pool): Use find_or_make_literal_pool.
829         (arm_s_text, arm_s_data, arm_s_section): Remove - no longer
830         needed.
831         (s_ltorg): Use find_literal_pool.
832         (arm_cleanup): Dump all literal pools.
833         * doc/c-arm.texi: Document new behaviour of only dumping literal
834         pools upon request.
835
836 2002-07-26  Alan Modra  <amodra@bigpond.net.au>
837
838         * config/tc-ppc.c (ppc_set_cpu): Use PPC_OPCODE_64 as the default
839         rather than PPC_OPCODE_32 for powerpc64*.
840
841 2002-07-25  Nick Clifton  <nickc@redhat.com>
842
843         * po/es.po: Updated Spanish translation.
844         * po/fr.po: Updated French translation.
845
846 2002-07-25  Richard Sandiford  <rsandifo@redhat.com>
847
848         * doc/c-mips.texi: Remove -mcpu.  Document -mabi.
849         * configure.in (MIPS_CPU_STRING_DEFAULT): New configuration macro.
850         (USE_E_MIPS_ABI_O32, MIPS_DEFAULT_64BIT): New configuration macros.
851         * configure, config.in: Regenerate.
852         * config/tc-mips.c (file_mips_abi): Rename to mips_abi.
853         (mips_set_options): Remove "abi" field.
854         (mips_opts): Update accordingly.  Replace all uses of mips_opts.abi
855         with mips_abi.
856         (mips_cpu): Remove.
857         (mips_arch_string, mips_arch_info): New vars.
858         (mips_tune_string, mips_tune_info): New vars.
859         (ABI_NEEDS_32BIT_REGS, ABI_NEEDS_64BIT_REGS): New macros.
860         (HAVE_32BIT_GPRS, HAVE_32BIT_FPRS): Don't check the ABI.
861         (mips_isa_to_str, mips_cpu_to_str): Remove.
862         (mips_ip): If the selected architecture is a generic ISA rather
863         than a processor, only mention the ISA level in error messages.
864         (OPTION_MCPU): Remove.
865         (OPTION_FP64): New.
866         (md_longopts): Add -mfp64, remove -mcpu.
867         (mips_set_option_string): New fn.
868         (md_parse_option): Make -mipsN update file_mips_isa rather than
869         mips_opts.isa.  Use mips_set_option_string to set -march or -mtune.
870         Don't let -mgp32 and -mfp32 change the ABI.
871         (show): Move to end of file.  Constify string argument.
872         (md_show_usage): Move to the end of the file.  Read available
873         architectures from mips_cpu_info_table.
874         (mips_set_architecture): New fn.
875         (mips_after_parse_args): Rework.  Remove -mcpu handling.  -mipsN
876         is an alias for -march=mipsN.  Don't change the ABI based on other
877         flags.  Infer the register size from the ABI as well as the
878         architecture.  Complain about more conflicting arguments.
879         Unify logic with GCC.
880         (s_mipsset): Don't change the ABI.
881         (mips_elf_final_processing): Check USE_E_MIPS_ABI_O32.
882         (mips_cpu_info_table): Remove Generic-MIPS* entries, keeping just
883         "mipsN"-type entries.  Remove entries that vary only in the
884         manufacturer's prefix, or that have "000" replaced by "k".
885         Remove TARGET_CPU entries.  Make r2000 entry use CPU_R3000.
886         (mips_strict_matching_cpu_name_p, mips_matching_cpu_name_p): New fns.
887         (mips_parse_cpu): New fn.
888         (mips_cpu_info_from_name, mips_cpu_info_from_cpu): Remove.
889         (mips_cpu_info_from_isa): Minor formatting tweak.
890
891 2002-07-24  Nick Clifton  <nickc@redhat.com>
892
893         * po/sv.po: Updated Swedish translation.
894         * po/es.po: Updated Spanish translation.
895
896 2002-07-23  Alan Modra  <amodra@bigpond.net.au>
897
898         * Makefile.am: Run "make dep-am".
899         * Makefile.in: Regenerate.
900         * doc/Makefile.in: Regenerate.
901         * config.in: Regenerate.
902         * po/POTFILES.in: Regenerate.
903
904 2002-07-23  Nick Clifton  <nickc@redhat.com>
905
906         * po/fr.po: Updated French translation.
907
908 2002-07-23  Nick Clifton  <nickc@redhat.com>
909
910         * CONTRIBUTORS: Ken Raeburn is no longer the maintainer for
911         GAS.
912
913 2002-07-19  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
914
915         * config/tc-mips.c (mips_need_elf_addend_fixup): Use S_IS_EXTERNAL
916         instead of S_IS_EXTERN.
917         (md_estimate_size_before_relax): Likewise.
918         (mips_fix_adjustable): Likewise.
919
920 2002-07-19  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
921
922         * config/tc-mips.c (mips_pic_level): Remove IRIX4_PIC.
923
924 2002-07-19  Miroslav Tichy <tichm9am@ss1000.ms.mff.cuni.cz>
925             Nick Clifton  <nickc@redhat.com>
926
927         * cond.c (s_ifdef): Treat a referenced but not yet defined
928         symbol as if it were undefined, in exactly the same way as
929         .equiv.
930
931         * doc/as.texinfo: Document that .ifdef, .ifndef and .equiv
932         consider referenced bug not yet defined symbols to be
933         undefined.
934
935 2002-07-18  Denis Chertykov  <denisc@overta.ru>
936             Frank Ch. Eigler  <fche@redhat.com>
937             Alan Lehotsky  <alehotsky@cygnus.com>
938             John Healy  <jhealy@redhat.com>
939             Jeff Johnston  <jjohnstn@redhat.com>
940
941         * configure.in: Add ip2k configuraton.
942         * configure: Regenerate.
943         * Makefile.am: Add ip2k configuraton.
944         * Makefile.in: Regenerate.
945         * configure: Regenerate.
946         * Makefile.in: Regenerate.
947         * config/tc-ip2k.c: New file.
948         * config/tc-ip2k.h: New files.
949         * NEWS: Mention new support.
950         * doc/Makefile.am (CPU_DOCS): Add c-ip2k.texi.
951         * doc/Makefile.in: Regenerate.
952         * doc/all.texi: Set IP2K
953         * doc/as.texinfo: Add IP2K description.
954         * doc/c-ip2k.texi: New file.
955
956 2002-07-19  Nick Clifton  <nickc@cambridge.redhat.com>
957
958         * NEWS: Reformat to match style of other NEWS files.
959
960 2002-07-17  Jan Hubicka  <jh@suse.cz>
961
962         * tc-i386.c (i386_align_code): Implement x86_64 neutral code fillers.
963
964 2002-07-16  Moritz Jodeit  <moritz@jodeit.org>
965
966         * config/tc-z8k.c (build_bytes): Correct order of memset args.
967
968 2002-07-16  Nick Clifton  <nickc@cambridge.redhat.com>
969
970         * NEWS: Add 'Changes in 2.13'.
971
972 2002-07-15  Matt Fredette  <fredette@netbsd.org>
973
974         * config/tc-hppa.h (LABELS_WITHOUT_COLONS): Define if TE_NetBSD.
975
976 2002-07-12  Alan Modra  <amodra@bigpond.net.au>
977
978         * config/tc-i386.c (process_suffix): Merge CODE_64BIT JumpByte
979         case with non CODE_64BIT case.  Don't warn on "qword ptr" if
980         not CODE_64BIT.
981
982 2002-07-11  Alan Modra  <amodra@bigpond.net.au>
983
984         * config/tc-ppc.c (ppc_elf_frob_symbol): Delete.
985         (ppc_frob_file_before_adjust): New function.
986         * config/tc-ppc.h (tc_frob_symbol): Don't define.
987         (ppc_elf_frob_symbol): Don't declare.
988         (tc_frob_file_before_adjust): Define.
989         (ppc_frob_file_before_adjust): Declare.
990
991         * config/tc-ppc.c (md_pseudo_table): Warning fix.
992         (ppc_cpu): Make it unsigned long to agree with struct powerpc_opcode
993         flags.
994         (ppc_size): Delete.
995         (ppc_xcoff64): Rename to ppc_obj64.
996         (md_parse_option <m>): Encode old ppc_size value in ppc_cpu.
997         (ppc_set_cpu): Set PPC_OPCODE_32 too.
998         (ppc_arch): Use ppc_obj64 instead of ppc_size to select bfd_mach_ppc64
999         or bfd_mach_ppc.
1000         (ppc_target_format): Use ppc_obj64 to select format.
1001         (md_begin): Adjust for PPC_OPCODE_32/64 in ppc_cpu.
1002         (ppc_insert_operand): Use ppc_obj64 instead of ppc_size.
1003         (ppc_elf_suffix): Likewise.  Don't depend on BFD_DEFAULT_TARGET_SIZE.
1004         (tc_frob_symbol): Likewise.
1005         (md_assemble): Use ppc_obj64 instead of ppc_size.  Don't depend on
1006         BFD_DEFAULT_TARGET_SIZE.
1007         (ppc_tc): Likewise.
1008         (ppc_is_toc_sym): Likewise.
1009         (md_apply_fix3): Likewise.
1010         * config/tc-ppc.h (TC_FORCE_RELOCATION): Don't depend on
1011         BFD_DEFAULT_TARGET_SIZE.
1012         (ELF_TC_SPECIAL_SECTIONS): Likewise.
1013         (tc_frob_symbol): Likewise.
1014
1015 2002-07-09  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1016
1017         * config/tc-mips.c (macro_build): Handle MIPS16 insns.
1018         (mips_ip): Likewise.
1019
1020 2002-07-09  Alan Modra  <amodra@bigpond.net.au>
1021
1022         * config/tc-i386.c (md_pseudo_table <file>): Warning fix.
1023         (BFD_RELOC_8, BFD_RELOC_8_PCREL): Define for non-BFD.
1024         (md_apply_fix3): Formatting.  Remove redundant test.
1025         (tc_gen_reloc): Remove redundant code.
1026         (tc_i386_force_relocation): Delete.  Movy body of function to..
1027         * config/tc-i386.h (TC_FORCE_RELOCATION): .. here.
1028
1029 2002-07-09  Federico G. Schwindt <fgsch@olimpo.com.br>
1030
1031         * configure.in: Add hppa-*-openbsd* target, change
1032         alpha*-*-openbsd* format to elf, and use elf for sparc-*-openbsd*
1033         with sparc64 cpu.
1034         * configure: Regenerate.
1035
1036 2002-07-08  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>
1037
1038         * config/tc-mips.c (macro): Shift the 32-bit address range
1039         accessible with a lone "lui" down by 32768.
1040
1041 2002-07-08  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>
1042
1043         * config/tc-mips.c (load_address): Use non-trapping "daddu"
1044         instead of "dadd" in address calculations.
1045         (macro): Likewise.
1046
1047 2002-07-08  Alan Modra  <amodra@bigpond.net.au>
1048
1049         * config/tc-i386.c (process_suffix): Remove intel mode movsx and
1050         movzx fudges.
1051         (md_assemble): Instead, zap the suffix here.
1052
1053 2002-07-03  Nick Clifton  <nickc@cambridge.redhat.com>
1054
1055         * NEWS: Remove next release number until the release is actually
1056         upon us.
1057
1058 2002-07-03  Alan Modra  <amodra@bigpond.net.au>
1059
1060         * Makefile.am (check-DEJAGNU): Revert 2002-06-25 change.
1061         Run "make dep-am".
1062         * Makefile.in: Regenerate.
1063
1064 2002-07-02  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1065
1066         * config/tc-s390.c (tc_s390_fix_adjustable): Prevent any adjustment
1067         to symbols in merge sections, even non pc-relative ones.
1068
1069 2002-06-29  Stephane Carrez  <stcarrez@nerim.fr>
1070
1071         * config/tc-m68hc11.h (m68hc11_listing_header): Fix warning.
1072
1073 2002-06-29  Stephane Carrez  <stcarrez@nerim.fr>
1074
1075         * config/tc-m68hc11.h (ELF_TC_SPECIAL_SECTIONS): New sections
1076         .softregs and .eeprom.
1077
1078 2002-06-28  David O'Brien  <obrien@FreeBSD.org>
1079
1080         * NEWS: Note the next release is 2.13.
1081
1082 2002-06-26  Nick Clifton  <nickc@cambridge.redhat.com>
1083
1084         * po/tr.po: New translation imported.
1085
1086 2002-06-26  Elias Athanasopoulos  <eathan@otenet.gr>
1087
1088         * ecoff.c: (get_tag): Replace strcpy with xstrdup.
1089         (ecoff_directive_def): Likewise.
1090         (ecoff_directive_tag): Likewise.
1091         * listing.c (file_info): Likewise.
1092         * hash.c (what): Likewise.
1093
1094 2002-06-25  H.J. Lu <hjl@gnu.org>
1095
1096         * Makefile.am (check-DEJAGNU): Set LC_ALL=C and export it.
1097         * Makefile.in: Regenerated.
1098
1099 2002-06-19  Dhananjay R. Deshpande <dhananjayd@kpit.com>
1100
1101         * config/tc-sh.c (get_specific): Revert 2002-05-01 change.
1102         (assemble_ppi): Generate warning if the same register is used
1103         twice as destination in the same padd / pmuls instruction.
1104
1105 2002-06-18  Dave Brolley  <brolley@redhat.com>
1106
1107         From Catherine Moore, Michael Meissner, Richard Sandiford, Dave Brolley
1108         * po/POTFILES.in: Add tc-frv.c, tc-frv.h.
1109         * configure.in: Support frv-*-*.
1110         * Makefile.am (CPU_TYPES): Add frv.
1111         (TARGET_CPU_CFILES): Add tc-frv.c.
1112         (TARGET_CPU_HFILES): Add tc-frv.h.
1113         (DEPTC_frv_coff): New variable.
1114         (DEPTC_frv_elf): New variable.
1115         (DEPOBJ_frv_coff): New variable.
1116         (DEPOBJ_frv_elf): New variable.
1117         (DEP_frv_coff): New variable.
1118         (DEP_frv_elf): New variable.
1119         * tc-frv.c: New file.
1120         * tc-frv.h: New file.
1121
1122 2002-06-17  Catherine Moore <clm@redhat.com>
1123
1124         * config/obj-elf.h (TARGET_SYMBOL_FIELDS): Conditionally define.
1125
1126 2002-06-17  J"orn Rennecke <joern.rennecke@superh.com>
1127
1128         * config/tc-sh.c (assemble_ppi): Initialize reg_n.
1129
1130 2002-06-17  Tom Rix <trix@redhat.com>
1131
1132         * config/tc-i370.h (tc_comment_chars): Define for i370-elf.
1133
1134 2002-06-14  H.J. Lu  <hjl@gnu.org>
1135             Daniel Jacobowitz  <drow@mvista.com>
1136
1137         * dwarf2dbg.h (dwarf2_directive_file): Return char *.
1138         * dwarf2dbg.c (dwarf2_directive_file): Return filename.
1139         * config/tc-mips.c (s_mips_file): Call s_app_file_string
1140         and new_logical_line for the first .file directive.
1141         * read.c (s_app_file_string): New function.
1142         (s_app_file): Call it.
1143         * read.h (s_app_file_string): Add declaration.
1144
1145 2002-06-14  Daniel Jacobowitz  <drow@mvista.com>
1146
1147         * configure.in: Remove MIPS_STABS_ELF.
1148         * configure: Regenerated.
1149         * config.in: Regenerated.
1150         * config/obj-elf.h (ECOFF_DEBUGGING): Define to mips_flag_mdebug
1151         for MIPS targets.
1152         * config/tc-mips.c (mips_pseudo_table): Remove #ifdef around
1153         ".extern".
1154         (pdr_seg): Declare unconditionally.
1155         (md_begin): Always generate .pdr unless ECOFF_DEBUGGING or not ELF.
1156         (s_mips_end): Likewise.  Generate stabs function markers.
1157         (s_mips_ent): Generate stabs function markers.
1158         (s_mips_frame): Always generate .pdr unless ECOFF_DEBUGGING or not
1159         ELF.
1160         (s_mips_mask): Likewise.
1161         (mips_flag_mdebug): New.
1162         (md_longopts): Add "mdebug" and "no-mdebug".
1163         (md_parse_options): Add OPTION_MDEBUG and OPTION_NO_MDEBUG.
1164         (mips_after_parse_args): Set mips_flag_mdebug.
1165         * doc/as.texinfo: Add "-mdebug" and "-no-mdebug" for MIPS.
1166
1167 2002-06-13  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>
1168
1169         * config/tc-mips.c (md_apply_fix3): Don't subtract the symbol's
1170         value twice for RELA relocations.
1171
1172 2002-06-12  Ben Elliston  <bje@redhat.com>
1173
1174         * symbols.c (resolve_symbol_value): Initialise final_val.
1175
1176         * subsegs.c (subsegs_print_statistics): Cast frchp to void *.
1177
1178 2002-06-11  Tom Rix  <trix@redhat.com>
1179
1180         * config/tc-ppc.c (ppc_subseg_align): Delete.
1181         (ppc_change_csect): Default csect align is 2.
1182         * config/tc-ppc.h (SUB_SEGMENT_ALIGN): Delete
1183
1184 2002-06-09  Marek Michalkiewicz  <marekm@amelek.gda.pl>
1185
1186         * config/tc-avr.c (mcu_types): Update.
1187
1188 2002-06-08  Matt Thomas  <matt@3am-software.com>
1189
1190         * configure.in (vax-*-netbsdelf*, vax-*-netbsdaout*)
1191         (vax-*-netbsd*): New targets.
1192         * configure: Regenerate.
1193         * config/aout_gnu.h (enum machine_type): Add M_VAX4K_NETBSD.
1194         * config/tc-vax.c: Add support for ELF and PIC.
1195         (flag_want_pic): New flag.
1196         (float_cons): Fix prototype.
1197         (md_apply_fix3): Adjust for BFD_ASSEMBLER.
1198         (md_assemble): Introduce a new is_absolute local, and use it
1199         rather than repeating the test.  Make fatal errors actually
1200         fatal by using as_fatal as appropriate.  Adjust for BFD_ASSEMBLER.
1201         Add support for ELF.  Add support for PIC.
1202         (md_convert_frag): Adjust for BFD_ASSEMBLER.
1203         (tc_aout_fix_to_chars): Only include if OBJ_AOUT and not
1204         BFD_ASSEMBLER.
1205         (vax_reg_parse): Make the % register prefix mandatory for ELF,
1206         optional for a.out, and not allowed for VMS.  Adjust all callers.
1207         (md_create_short_jump): Add ATTRIBUTE_UNUSED to unused arguments.
1208         (md_create_long_jump): Likewise.
1209         (md_undefined_symbol): Likewise.
1210         (md_section_align): Likewise.
1211         (md_shortopts): Allow -k and -K for ELF.
1212         (md_parse_option): Set flag_want_pic if -k or -K.
1213         (tc_headers_hook): New function if OBJ_AOUT and not BFD_ASSEMBLER.
1214         (tc_gen_reloc): New function if BFD_ASSEMBLER.
1215         * config/tc-vax.h (tc_headers_hook): Remove.
1216         (TARGET_FORMAT): Set according to object format and target
1217         environment.
1218         (BFD_ARCH, TARGET_ARCH): Define.
1219         (NO_RELOC): Adjust for BFD_ASSEMBLER.
1220         (TC_RELOC_RTSYM_LOC_FIXUP, TC_FIX_ADJUSTABLE)
1221         (tc_fix_adjustable): Define if BFD_ASSEMBLER.
1222         * config/vax-inst.h (VAX_JSB, VAX_CALLS, VAX_CALLG): Define.
1223
1224 2002-06-08  Alan Modra  <amodra@bigpond.net.au>
1225
1226         * Makefile.am: Run "make dep-am".
1227         * Makefile.in: Regenerate.
1228
1229         * as.c: Replace CONST with const.
1230         * write.c: Likewise.
1231         * config/obj-coff.c: Likewise.
1232         * config/tc-a29k.c: Likewise.
1233         * config/tc-arm.c: Likewise.
1234         * config/tc-dlx.c: Likewise.
1235         * config/tc-h8300.c: Likewise.
1236         * config/tc-h8500.c: Likewise.
1237         * config/tc-i370.c: Likewise.
1238         * config/tc-i860.c: Likewise.
1239         * config/tc-i960.c: Likewise.
1240         * config/tc-m68hc11.c: Likewise.
1241         * config/tc-m68k.c: Likewise.
1242         * config/tc-m88k.c: Likewise.
1243         * config/tc-mcore.c: Likewise.
1244         * config/tc-mips.c: Likewise.
1245         * config/tc-ns32k.c: Likewise.
1246         * config/tc-pdp11.c: Likewise.
1247         * config/tc-pj.c: Likewise.
1248         * config/tc-s390.c: Likewise.
1249         * config/tc-sh.c: Likewise.
1250         * config/tc-sparc.c: Likewise.
1251         * config/tc-tahoe.c: Likewise.
1252         * config/tc-tic80.c: Likewise.
1253         * config/tc-v850.c: Likewise.
1254         * config/tc-vax.c: Likewise.
1255         * config/tc-w65.c: Likewise.
1256         * config/tc-z8k.c: Likewise.
1257
1258 2002-06-08  Daniel Jacobowitz  <drow@mvista.com>
1259
1260         Based on patch from Matt Green:
1261         * config/obj-elf.h (ECOFF_DEBUGGING): Make configurable.
1262         * config/tc-mips.c (s_mips_file): Renamed from s_file.
1263         (s_mips_loc): New function.
1264         (mips_nonecoff_pseudo_table): Call them.
1265         (append_insn): Call dwarf2_emit_insn.
1266
1267 2002-06-08  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1268
1269         * config/tc-mips.c (mips_opts): Fix comment, all ASE fields are set
1270         to -1.
1271         (file_ase_mips16): New veriable.
1272         (mips_eabi64): Remove.
1273         (CPU_HAS_MIPS16): New define.
1274         (CPU_HAS_MDMX): Fix data type.
1275         (md_begin): Code cleanup. Use file_ase_mips16.
1276         (mips_elf_final_processing): Handle mips16 header flag.
1277         Handle EABI flag without intermediate variable.
1278
1279 2002-06-08  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1280
1281         * doc/as.texinfo: Update MIPS documentation.
1282
1283 2002-06-08  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1284
1285         * config/tc-mips.c: Add define for $zero register.
1286         (md_begin): Add $zero as alias name for $0.
1287         (insn_uses_reg): Use ZERO define.
1288         (mips_ip): Add $zero as alias name for $0.
1289         (mips16_ip): Likewise.
1290         (s_cplocal): Demand empty rest of input line.
1291         (tc_get_register): Likewise. Add support for $kt0, kt1 register
1292         names. Use ZERO define. Fix input_line_pointer progress.
1293
1294 2002-06-07  Alan Modra  <amodra@bigpond.net.au>
1295
1296         * symbols.c: Replace CONST by const throughout.
1297         (symbol_find_exact): Split out from..
1298         (symbol_find_base): ..here.
1299         * symbols.h: Replace CONST by const throughout.
1300         (symbol_find_exact): Declare.
1301         * config/obj-elf.c: #include "struc-symbol.h".
1302         (elf_frob_file): If group name matches an exported symbol, use that
1303         symbol for the signature and ".group" as the section name.
1304
1305 2002-06-06  J"orn Rennecke <joern.rennecke@superh.com>
1306
1307         * config/tc-sh.c (parse_at): @(symbol,pc) is A_DISP_PC again,
1308         but warn about it.
1309         * testsuite/gas/sh/pcrel.s: Also test @(symbol,pc).
1310         * testsuite/gas/sh/pcrel.d: Update.
1311         * testsuite/gas/sh/pcrel.l: New file.
1312
1313 2002-06-06  Daniel Jacobowitz  <drow@mvista.com>
1314
1315         * tc-mips.c (mips_after_parse_args): Always set mips_opts.ase_mips3d
1316         and mips_opts.ase_mdmx if they are uninitialized.
1317
1318 2002-06-06  John David Anglin  <dave@hiauly1.hia.nrc.ca>
1319
1320         * gas/config/tc-hppa.c (pa_ip): Replace "L$0\001" with FAKE_LABEL_NAME.
1321         (hppa_force_relocation): Check if a stub just before the start symbol
1322         of the last call_info is reachable before forcing relocation.  Fix
1323         typo.
1324
1325 2002-06-04  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>
1326
1327         * config/tc-mips.c (mips_after_parse_args): New function.
1328         (md_begin): Move processing of defaults to mips_after_parse_args.
1329         config/tc-mips.h (md_after_parse_args): Define.
1330
1331 2002-06-04  Jason Thorpe  <thorpej@wasabisystems.com>
1332
1333         * configure.in (sh5*): Set cpu_type to sh64 and endian to big.
1334         (sh5le*, sh64le*): Set cpu_type to sh64 and endian to little.
1335         (sh5*-*-netbsd*, sh64*-*-netbsd*): New targets.
1336         * configure: Regenerate.
1337         * config/tc-sh64.c (sh64_target_format): Add support for NetBSD
1338         environment.
1339
1340 2002-06-04  Jason Thorpe  <thorpej@wasabisystems.com>
1341
1342         * config/tc-sh64.h (MD_PCREL_FROM_SECTION): Undef before redefining.
1343
1344 2002-06-04  Alan Modra  <amodra@bigpond.net.au>
1345
1346         * config/obj-elf.c (obj_elf_change_section): Set and check elf
1347         linkonce flag.  Print all warnings.
1348         (obj_elf_section): Parse ",comdat" for groups.
1349         (elf_frob_file): Set SEC_LINK_ONCE on COMDAT groups.  Check
1350         consistency of comdat flag.
1351
1352 2002-06-02  Richard Henderson  <rth@redhat.com>
1353
1354         * config/tc-alpha.c (alpha_adjust_symtab_relocs): Fix thinko
1355         with LITERALs without sequence numbers.
1356
1357 2002-06-01  Richard Henderson  <rth@redhat.com>
1358
1359         * config/tc-alpha.c: Move LITUSE constants to "elf/alpha.h".
1360         Rename them LITUSE_ALPHA_*.
1361
1362 2002-05-31  Shrinivas Atre <ShrinivasA@kpit.com>
1363
1364         * config/tc-h8300.c (get_operand): Allow stm.l and ldm.l insns to
1365         accept parentheses enclosed register lists.
1366
1367 2002-05-31  Alan Modra  <amodra@bigpond.net.au>
1368
1369         * Makefile.am: Run "make dep-am".
1370         * Makefile.in: Regenerate.
1371         * po/POTFILES.in: Regenerate.
1372
1373 2002-05-31  Graeme Peterson  <gp@qnx.com>
1374
1375         * configure.in: Add i386-*-nto-qnx*.
1376         * configure: Regenerate.
1377
1378 2002-05-31  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1379
1380         * config/tc-mips.c (mips_ip): Use unsigned long values for
1381         warning output.
1382
1383 2002-05-31  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1384
1385         * config/tc-mips.c (s_cpsetup): Fix initialization of
1386         mips_cpreturn_register and mips_cpreturn_offset.
1387
1388 2002-05-31  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1389
1390         * config/tc-mips.c (s_cpsetup): Fix comment.
1391
1392 2002-05-31  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1393
1394         * config/tc-mips.c (md_begin): Add $ra as alias name for $31.
1395         (mips_ip): Likewise.
1396         (mips16_ip): Likewise.
1397         (tc_get_register): Likewise.
1398
1399 2002-05-30  Chris G. Demetriou  <cgd@broadcom.com>
1400             Ed Satterthwaite  <ehs@broadcom.com>
1401
1402         * config/tc-mips.c (mips_set_options): New "ase_mdmx" member.
1403         (mips_opts): Initialize "ase_mdmx" member.
1404         (file_ase_mdmx): New variable.
1405         (CPU_HAS_MDMX): New macro.
1406         (md_begin): Initialize mips_opts.ase_mdmx and file_ase_mdmx
1407         based on command line options and configuration defaults.
1408         (macro_build): Note in comment that use of MDMX in macros is
1409         not currently allowed.
1410         (validate_mips_insn): Add support for the "O", "Q", "X", "Y", and
1411         "Z" MDMX operand types.
1412         (mips_ip): Accept MDMX instructions if mips_opts.ase_mdmx is set,
1413         and add support for the "O", "Q", "X", "Y", and "Z" MDMX operand
1414         types.
1415         (OPTION_MDMX, OPTION_NO_MDMX, md_longopts, md_parse_option):
1416         Add support for "-mdmx" and "-no-mdmx" options.
1417         (OPTION_ELF_BASE): Move to accomodate new options.
1418         (s_mipsset): Support ".set mdmx" and ".set nomdmx".
1419         (mips_elf_final_processing): Set MDMX ASE ELF header flag if
1420         file_ase_mdmx was set.
1421         * doc/as.texinfo: Document -mdmx and -no-mdmx options.
1422         * doc/c-mips.texi: Likewise, and document ".set mdmx" and ".set
1423         nomdmx" directives.
1424
1425 2002-05-31  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1426
1427         * config/tc-mips.c (OPTION_NO_M7000_HILO_FIX): Rename to
1428         OPTION_MNO_7000_HILO_FIX. Add alternate "mno-fix7000"
1429         command line switch conforming to gcc conventions.
1430         * doc/c-mips.texi: Document -mno-fix7000 instead of no-mfix-7000.
1431
1432 2002-05-31  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1433
1434         * config/tc-mips.c (macro_build_jalr): New Function.
1435         (md_begin): NewABI uses big GOTs.
1436         (macro_build): Recognize BFD_RELOC_MIPS_GOT_DISP,
1437         BFD_RELOC_MIPS_GOT_PAGE, BFD_RELOC_MIPS_GOT_OFST as valid.
1438         (load_address): Add some NewABI PIC support.
1439         (macro): Likewise.
1440         (md_apply_fix): Special handling for BFD_RELOC_MIPS_JALR.
1441         (tc_gen_reloc): Don't encode NewABI vtables in REL relocations.
1442
1443 2002-05-31  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1444
1445         * config/tc-mips.c (load_address): Use mips_gp_register instead
1446         of hardcoded value. Remove dbl parameter, use HAVE_32BIT_ADDRESSES
1447         instead.
1448         (macro): Use mips_gp_register instead of hardcoded value.
1449
1450 2002-05-30  Richard Henderson  <rth@redhat.com>
1451
1452         * expr.h (operatorT): Add O_md17..O_md32.
1453         * config/tc-alpha.c (O_lituse_tlsgd, O_lituse_tlsldm, O_tlsgd,
1454         O_tlsldm, O_gotdtprel, O_dtprelhi, O_dtprello, O_dtprel, O_gottprel,
1455         O_tprelhi, O_tprello, O_tprel): New.
1456         (USER_RELOC_P, alpha_reloc_op_tag, debug_exp): Include them.
1457         (DUMMY_RELOC_LITUSE_TLSGD, DUMMY_RELOC_LITUSE_TLSLDM): New.
1458         (LITUSE_TLSGD, LITUSE_TLSLDM): New.
1459         (struct alpha_reloc_tag): Add master, saw_tlsgd, saw_tlsld,
1460         saw_lu_tlsgd, saw_lu_tlsldm.  Make multi_section_p a bit field.
1461         (md_apply_fix3): Handle TLS relocations.
1462         (alpha_force_relocation, alpha_fix_adjustable): Likewise.
1463         (alpha_adjust_symtab_relocs): Sort LITERAL relocs after the
1464         associated TLS reloc.  Check lituse_tls relocs match up.
1465         (emit_insn): Handle TLS relocations.
1466         (ldX_op): Remove.
1467
1468         * doc/c-alpha.texi: Add docs for tls relocations.
1469
1470 2002-05-30  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1471
1472         * config/tc-mips.c (mips_gprel_offset): New variable.
1473         (s_gpvalue): Use it.
1474
1475 2002-05-30  Diego Novillo  <dnovillo@redhat.com>
1476
1477         * gas/config/tc-d10v.c (check_resource_conflict): Only check
1478         write-write conflicts.
1479         (md_assemble): Reformat introductory comment.
1480         (parallel_ok): Prevent packing only if the first
1481         instruction cannot be packed.
1482
1483 2002-05-30  Jason Eckhardt <jle@redhat.com>
1484             Tom Rix <trix@redhat.com>
1485
1486         * config/tc-d10v.c (build_insn): Check for immediates.
1487
1488 2002-05-28  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1489
1490         * config/tc-mips.c: Replace GP in comments by $gp.
1491         (mips_big_got): Initialize.
1492         (mips_trap): Initialize.
1493         (load_address): Use mips_gp_register instead of hardcoded value.
1494         Remove dbl parameter, use HAVE_32BIT_ADDRESSES instead.
1495         (macro): Use mips_gp_register instead of hardcoded value.
1496         (macro2): Change load_address calls.
1497         (md_pcrel_from): Comment formatting.
1498         (s_cpload): Use mips_gp_register instead of hardcoded value.
1499         (s_cprestore): Likewise. Comment formatting.
1500         (s_gpword): Fix data type.
1501         (s_cpadd): Use mips_gp_register instead of hardcoded value.
1502         (nopic_need_relax): Replace GP in comments by $gp.
1503         (mips_elf_final_processing): Better comment.
1504
1505 2002-05-28  Kuang Hwa Lin <kuang@sbcglobal.net>
1506
1507         * configure.in: Add DLX configuraton
1508         * Makefile.am: Add DLX configuraton
1509         * configure: Regenerate.
1510         * Makefile.in: Regenerate.
1511         * config/tc-dlx.c: New file.
1512         * config/tc-dlx.h: New files.
1513         * NEWS: Mention new support.
1514
1515 2002-05-27  Nick Clifton  <nickc@cambridge.redhat.com>
1516
1517         * config/obj-coff.c (write_object_file): Add missing semicolon.
1518
1519 2002-05-26  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1520
1521         * config/tc-mips.c (mips_emit_delays): Replace magic constant for RA
1522         by the define. Remove superfluous check of mips_opts.mips16.
1523         (append_insn): Likewise. Canonicalize variable increments.
1524         (macro_build): Canonicalize variable increments.
1525         (macro_build_lui): Likewise.
1526         (load_register): Likewise.
1527         (load_address): Move pointer initialization.
1528         (macro): Move pointer to a more local scope. Canonicalize variable
1529         increments. Better comments. Replace magic constant for RA by the
1530         define.
1531         (macro2): Replace magic constant for RA by the define. Canonicalize
1532         variable increments.
1533         (mips_ip): Canonicalize variable increments.
1534         (mips16_ip): Replace magic constant for RA by the define.
1535         (my_getSmallParser): Canonicalize variable increments/decrements.
1536         (my_getPercentOp): Likewise.
1537         (my_getSmallExpression): Likewise.
1538         (s_align): Likewise.
1539         (s_mipsset): Likewise.
1540         (s_cpsetup): Likewise.
1541         (s_insn): Remove superfluous check of mips_opts.mips16.
1542         (s_mips_stab): Likewise.
1543         (mips_handle_align): Canonicalize variable increments.
1544         (s_mips_ent): Likewise.
1545         (s_mips_end): Add comment.
1546
1547 2002-05-26  Jason Thorpe  <thorpej@wasabisystems.com>
1548
1549         * configure.in: Use ns32k-*-netbsd* instead of ns32k-pc532-netbsd*.
1550         * configure: Regenerate.
1551
1552 2002-05-25  Alan Modra  <amodra@bigpond.net.au>
1553
1554         * Makefile.am (OBJS): Depend on ansidecl.h and fopen-same.h.
1555         * Makefile.in: Regenerate.
1556         * dep-in.sed: Reorder to match OBJS in Makefile.am.
1557         * configure.in (ALL_OBJ_DEPS): Add symcat.h when need_bfd.
1558         * configure: Regenerate.
1559         * as.h: Use #include "" instead of <> for local header files.
1560         * flonum-konst.c: Likewise.
1561         * flonum-mult.c: Likewise.
1562         * gasp.c: Likewise.
1563         * listing.c: Likewise.
1564         * config/tc-ia64.h: Likewise.
1565         * config/tc-v850.h: Likewise.
1566
1567 2002-05-24  TAMURA Kent <kent@netbsd.org>
1568
1569         * configure.in: Add a target for i386-netbsdpe.
1570         * configure: Regenerate.
1571
1572 2002-05-23  Jakub Jelinek  <jakub@redhat.com>
1573
1574         * config/obj-elf.c (elf_common): Renamed from obj_elf_common.
1575         (obj_elf_common): Call elf_common.
1576         (obj_elf_tls_common): New function.
1577         (elf_pseudo_tab): Support .tls_common.
1578         (special_sections): Add .tdata and .tbss.
1579         (obj_elf_change_section): Set SEC_THREAD_LOCAL for SHF_TLS
1580         sections.
1581         (obj_elf_parse_section_letters): Support T in section flags (SHF_TLS).
1582         (obj_elf_parse_section_letters): Include T in error message.
1583         * config/tc-ppc.c (ppc_section_letter): Likewise.
1584         * config/tc-alpha.c (alpha_elf_section_letter): Likewise.
1585         (tc_gen_reloc): Handle SEC_THREAD_LOCAL the same way as
1586         SEC_MERGE.
1587         * config/tc-sparc.c (md_apply_fix3): Likewise.
1588         * config/tc-i386.c (tc_i386_fix_adjustable): Add TLS relocs.
1589         Define them if not BFD_ASSEMBLER.
1590         (lex_got): Support @TLSGD, @TLSLDM, @GOTTPOFF, @TPOFF, @DTPOFF
1591         and @NTPOFF.
1592         (md_apply_fix3): Add TLS relocs.
1593         * config/tc-ia64.c (enum reloc_func): Add FUNC_DTP_MODULE,
1594         FUNC_DTP_RELATIVE, FUNC_TP_RELATIVE, FUNC_LT_DTP_MODULE,
1595         FUNC_LT_DTP_RELATIVE, FUNC_LT_TP_RELATIVE.
1596         (pseudo_func): Support @dtpmod(), @dtprel() and @tprel().
1597         (ia64_elf_section_letter): Include T in error message.
1598         (md_begin): Support TLS operators.
1599         (md_operand): Likewise.
1600         (ia64_gen_real_reloc_type): Support TLS relocs.
1601         * testsuite/gas/i386/tlspic.s: New file.
1602         * testsuite/gas/i386/tlsd.s: New file.
1603         * testsuite/gas/i386/tlsnopic.s: New file.
1604         * testsuite/gas/i386/tlsd.d: New file.
1605         * testsuite/gas/i386/tlsnopic.d: New file.
1606         * testsuite/gas/i386/tlspic.d: New file.
1607         * testsuite/gas/i386/i386.exp: Add tlsd, tlsnopic and tlspic tests.
1608         * testsuite/gas/ia64/tls.s: New file.
1609         * testsuite/gas/ia64/tls.d: New file.
1610         * testsuite/gas/ia64/ia64.exp: Add tls test.
1611         * write.c (adjust_reloc_syms): Don't change symbols in
1612         SEC_THREAD_LOCAL sections to STT_SECTION + addend.
1613
1614 2002-05-23  Nick Clifton  <nickc@cambridge.redhat.com>
1615
1616         * config/tc-arm.c (md_apply_fix3): For the Thumb BLX reloc
1617         round the relocation up rather than down.
1618
1619 2002-05-23  Nick Clifton  <nickc@cambridge.redhat.com>
1620
1621         * config/obj-coff.c (obj_coff_section): Silently ignore an 'a'
1622         flag.
1623         * doc/as.texinfo: Document that the COFF version of .section
1624         ignores the 'a' flag.
1625
1626 2002-05-23  Alan Modra  <amodra@bigpond.net.au>
1627
1628         * config/tc-alpha.c (assemble_tokens): Protect use of
1629         ALPHA_RELOC_TABLE with #ifdef RELOC_OP_P.
1630
1631         * write.c (size_seg): Check adjustment to last frag.
1632         (SUB_SEGMENT_ALIGN): If HANDLE_ALIGN defined, pad out last frag to
1633         section alignment.
1634         * config/obj-coff.c (SUB_SEGMENT_ALIGN): Likewise.
1635         * config/obj-ieee.c (SUB_SEGMENT_ALIGN): Likewise.
1636         (write_object_file): Invoke md_do_align if available, and use
1637         frag_align_code on text sections.
1638         * config/obj-vms.h (SUB_SEGMENT_ALIGN): Now two args.
1639         * config/tc-m88k.h (SUB_SEGMENT_ALIGN): Likewise.
1640         * config/tc-ppc.h (SUB_SEGMENT_ALIGN): Likewise.
1641         * config/tc-sh.h (SUB_SEGMENT_ALIGN): Likewise.
1642         * config/tc-i386.h (SUB_SEGMENT_ALIGN): Likewise.  Define for
1643         BFD_ASSEMBLER too.
1644
1645 2002-05-22  H.J. Lu <hjl@gnu.org>
1646
1647         * dwarf2dbg.c (dwarf2_directive_loc): Call listing_source_file
1648         for source file.
1649
1650 2002-05-22  Nick Clifton  <nickc@cambridge.redhat.com>
1651
1652         * config/tc-arm.c (arm_s_section): Enable for COFF builds as well
1653         as ELF builds.
1654
1655 2002-05-22  H.J. Lu <hjl@gnu.org>
1656
1657         * dwarf2dbg.c (dwarf2_emit_insn): Emit only one line symbol
1658         for one .loc for compiler.
1659
1660 2002-05-22  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1661
1662         * config/tc-mips.c (macro): Relax warning, it's toot strict for
1663         embedded-PIC.
1664
1665 2002-05-22  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1666
1667         * config/tc-mips.c (macro2): Add 64 bit drol, dror macros.
1668         Optimize the rotate by zero case.
1669
1670 2002-05-21  Nick Clifton  <nickc@cambridge.redhat.com>
1671
1672         * configure.in: Remove accidental enabling of bfd_gas=yes for
1673         sh-coff targets.
1674         * configure: Regenerate.
1675
1676 2002-05-18  Kazu Hirata  <kazu@cs.umass.edu>
1677
1678         * app.c: Fix formatting.
1679         * as.c: Likewise.
1680         * ehopt.c: Likewise.
1681         * expr.c: Likewise.
1682         * input-file.c: Likewise.
1683         * listing.c: Likewise.
1684         * macro.h: Likewise.
1685         * stabs.c: Likewise.
1686         * symbols.c: Likewise.
1687
1688 2002-05-17  Alan Modra  <amodra@bigpond.net.au>
1689
1690         * config/obj-generic.c: Delete file.
1691         * config/obj-generic.h: Likewise.
1692
1693 2002-05-16  Marek Michalkiewicz  <marekm@amelek.gda.pl>
1694
1695         * config/tc-avr.c (mcu_types): Update for new devices.
1696
1697 2002-05-15  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1698
1699         * config/tc-mips.c (macro): Warn about wrong la/dla use.
1700
1701 2002-05-15  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1702
1703         * config/tc_mips.c (s_cpsetup): Fix completely bogus code which had
1704         worked sometimes by accident. Fix copy&paste comment.
1705
1706 2002-05-15  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1707
1708         * config/tc-mips.c (md_begin): Fix .reginfo and .MIPS.option section
1709         alignment for NewABI. Let n32 use .reginfo. Remove useless casts.
1710         (mips_elf_final_processing): Let n32 use .reginfo.
1711
1712 2002-05-15  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1713
1714         * config/tc-mips.c (append_insn): Fix too small range of variable.
1715
1716 2002-05-14  Nick Clifton  <nickc@cambridge.redhat.com>
1717
1718         * config/tc-arm.c (arm_cleanup): Remove redundant call to
1719         listing_prev_line().
1720
1721 2002-05-13  Nick Clifton  <nickc@cambridge.redhat.com>
1722
1723         * config/tc-arm.c (md_assemble): Remove redundant call to
1724         listing_prev().
1725
1726         * dwarf2dbg.c (dwarf2_emit_insn): Do not reset
1727         loc_directive_seen.
1728
1729         * stabs.c (s_stab_generic): Fix grammatical error in warning
1730         message.
1731
1732 2002-05-13  Alan Modra  <amodra@bigpond.net.au>
1733
1734         * write.c (subsegs_finish): Don't specially align last subseg.
1735
1736 2002-05-11  Nick Clifton  <nickc@cambridge.redhat.com>
1737
1738         * stabs.c (s_stab_generic): Warn about a description field that is
1739         too big.
1740
1741         * config/obj-coff.c: Fix compile time warnings when compiling
1742         without BFD_ASSEMBLER defined.
1743         Fix formatting.
1744
1745         * config/tc-sh.c (md_pcrel_from): Define for use with sh-hms
1746         target.
1747         (md_pcrel_from_section): Use md_pcrel_from().
1748
1749 2002-05-11  Bruno Haible  <bruno@clisp.org>
1750
1751         * dwarf2dbg.c (dwarf2_emit_insn): Use the 'current' struct filled
1752         by dwarf2_directive_loc, instead of calling dwarf2_where.
1753
1754 2002-05-11  Kazu Hirata  <kazu@cs.umass.edu>
1755
1756         * config/obj-coff.h: Fix formatting.
1757         * config/tc-mcore.c: Likewise.
1758         * config/tc-mn10300.c: Likewise.
1759         * config/tc-openrisc.c: Likewise.
1760         * config/tc-or32.c: Likewise.
1761         * config/tc-pdp11.c: Likewise.
1762         * config/tc-ppc.c: Likewise.
1763         * config/tc-ppc.h: Likewise.
1764         * config/tc-sh64.c: Likewise.
1765         * config/tc-sh.c: Likewise.
1766         * config/tc-tic54x.c: Likewise.
1767         * config/tc-xstormy16.c: Likewise.
1768         * config/tc-xstormy16.h: Likewise.
1769
1770 2002-05-09  Kazu Hirata  <kazu@cs.umass.edu>
1771
1772         * config/obj-coff.c: Fix formatting.
1773         * config/obj-elf.c: Likewise.
1774         * config/tc-alpha.c: Likewise.
1775         * config/tc-arm.c: Likewise.
1776         * config/tc-d10v.c: Likewise.
1777         * config/tc-d30v.c: Likewise.
1778         * config/tc-h8300.c: Likewise.
1779         * config/tc-hppa.c: Likewise.
1780
1781 2002-05-09  Alan Modra  <amodra@bigpond.net.au>
1782
1783         * config/tc-i386.c (md_estimate_size_before_relax) Don't lose
1784         reloc when no_cond_jump_promotion.
1785
1786 2002-05-08  Jim Wilson  <wilson@redhat.com>
1787
1788         * config/tc-i960.c (md_estimate_size_before_relax): Return size of
1789         current variable part of frag.
1790
1791 2002-05-08  Kazu Hirata  <kazu@cs.umass.edu>
1792
1793         * config/tc-mmix.c: Fix formatting.
1794         * config/tc-mmix.h: Likewise.
1795
1796 2002-05-08  Alan Modra  <amodra@bigpond.net.au>
1797
1798         * configure: Regenerate.
1799
1800 2002-05-07  Kazu Hirata  <kazu@cs.umass.edu>
1801
1802         * config/tc-m68k.c: Fix formatting.
1803
1804 2002-05-07  Federico G. Schwindt <fgsch@olimpo.com.br>
1805
1806         * Makefile.am: Honour DESTDIR.
1807         * Makefile.in: Regenerate.
1808
1809 2002-05-06  Kazu Hirata  <kazu@cs.umass.edu>
1810
1811         * config/tc-ia64.c: Fix formatting.
1812         * config/tc-ia64.h: Likewise.
1813
1814 2002-05-04  Kazu Hirata  <kazu@cs.umass.edu>
1815
1816         * config/tc-mips.c: Fix formatting.
1817         * config/tc-s390.c: Likewise.
1818         * config/tc-s390.h: Likewise.
1819
1820 2002-05-03  Alexandre Oliva  <aoliva@redhat.com>
1821
1822         * config/tc-s390.c (md_gather_operands): Emit dwarf2 line-number
1823         information for instructions.
1824
1825 2002-05-02  Kazu Hirata  <kazu@cs.umass.edu>
1826
1827         * as.h: Fix formatting.
1828         * cgen.c: Likewise.
1829         * cgen.h: Likewise.
1830         * dwarf2dbg.c: Likewise.
1831         * frags.h: Likewise.
1832         * gasp.c: Likewise.
1833         * macro.c: Likewise.
1834         * read.c: Likewise.
1835         * stabs.c: Likewise.
1836         * symbols.c: Likewise.
1837
1838 2002-05-02  Alan Modra  <amodra@bigpond.net.au>
1839
1840         * app.c (mri_pseudo): Only declare for TC_M68K.
1841
1842         * config/tc-ppc.c (mapping): Map sectoff to BFD_RELOC_16_BASEREL.
1843         (ppc_elf_validate_fix): Replace BFD_RELOC_32_BASEREL with
1844         BFD_RELOC_16_BASEREL.
1845         (md_assemble): Likewise.
1846         (md_apply_fix3): Likewise.
1847
1848 2002-05-02  Nick Clifton  <nickc@cambridge.redhat.com>
1849
1850         * config/tc-arm.c (thumb_add_sub): Do not convert a subtract of
1851         zero into an add of zero - it is not the same.
1852
1853 2002-05-01  Arati Dikey <aratid@kpit.com>
1854
1855         * tc-sh.c (get_specific): Generate warning if the same
1856         destination register is used in parallel instructions.
1857
1858 2002-05-01  Andrew Macleod  <amacleod@cygnus.com>
1859
1860         * config/tc-i386.c (extra_symbol_chars): Add '[' to the list.
1861
1862 2002-05-01  Alan Modra  <amodra@bigpond.net.au>
1863
1864         * write.c (cvt_frag_to_fill): Set fr_offset to zero on .org
1865         backwards to prevent cascading errors.
1866
1867 2002-04-30  Mark Mitchell  <mark@codesourcery.com>
1868
1869         * configure.in: Add support for powerpc-*-windiss.
1870         * configure: Regenerated.
1871
1872 2002-04-28  Alan Modra  <amodra@bigpond.net.au>
1873
1874         * config/tc-s390.c (md_parse_option): Formatting.
1875
1876         * config/tc-i386.c: Formatting fixes, add missing space in error
1877         message.
1878
1879 2002-04-24  Christian Groessler <chris@groessler.org>
1880
1881         * config/tc-z8k.c (build_bytes): Add support for new cases:
1882         CLASS_IGNORE and ARG_NIM4.
1883         (md_assemble): Prevent destruction of input_line_pointer if
1884         get_operands returns failure.
1885
1886 2002-04-24  Chris G. Demetriou  <cgd@broadcom.com>
1887
1888         * config/tc-mips.c (macro_build): Do _not_ allow MIPS-3D
1889         instructions to be generated by macros.
1890
1891 2002-04-24  Andreas Schwab  <schwab@suse.de>
1892
1893         * config/tc-i386.c (output_jump, output_disp)
1894         (md_estimate_size_before_relax): Don't set fx_pcrel_adjust any
1895         more.
1896         (md_apply_fix3): Remember addend value for rela relocations.
1897         (tc_gen_reloc): Correctly compute pc-relative relocation addend.
1898
1899 2002-04-22  Chris Demetriou  <cgd@broadcom.com>
1900
1901         * config/tc-mips.c (macro_build): Add close-parenthesis missing
1902         from previous change.
1903
1904 2002-04-22  Eric Christopher  <echristo@redhat.com>
1905
1906         * config/tc-mips.c (macro_build): Add warning if macro instructions
1907         are expanded into a branch delay slot.
1908
1909 2002-04-17  Geoffrey Keating  <geoffk@redhat.com>
1910
1911         * dwarf2dbg.c (dwarf2_gen_line_info): Do emit duplicate line
1912         numbers, gdb relies on them to detect the start of the prologue.
1913
1914 2002-04-17  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1915
1916         * config/tc-s390.c (tc_s390_fix_adjustable): Prevent adjustments to
1917         symbols in merge sections.
1918
1919 2002-04-16  Alan Modra  <amodra@bigpond.net.au>
1920
1921         * as.c (main): Don't reference _bfd_chunksize.
1922
1923 2002-04-15  Tom Rix  <trix@redhat.com>
1924
1925         * config/tc-d10v.c (d10v_fix_adjustable): Prevent adjustments to
1926         symbols in merge sections.
1927
1928 2002-04-11  Richard Sandiford  <rsandifo@redhat.com>
1929
1930         * doc/invoke.texi (TC_LARGEST_EXPONENT_IS_NORMAL): Document.
1931         * config/atof-ieee.c (TC_LARGEST_EXPONENT_IS_NORMAL): Add an
1932         argument for the precision.
1933         (gen_to_words): Update accordingly.
1934
1935 2002-04-10  Alan Modra  <amodra@bigpond.net.au>
1936
1937         * as.c (parse_args <OPTION_VERSION>): Use VERSION is
1938         BFD_VERSION_STRING unavailable.
1939         * config/tc-i386.c (INLINE): Define (for non-BFD assembler).
1940
1941 2002-04-09  J"orn Rennecke <joern.rennecke@superh.com>
1942
1943         * config/tc-sh.h (TC_FIX_ADJUSTABLE): Disable adjusting if
1944         symbol_used_in_reloc_p is true.
1945
1946         * config/tc-sh.c (md_apply_fix3): Don't zero relocations on big
1947         endian hosts.
1948
1949 2002-04-04  Alan Modra  <amodra@bigpond.net.au>
1950
1951         * dep-in.sed: Cope with absolute paths.
1952         * Makefile.am (dep.sed): Subst TOPDIR.
1953         Run "make dep-am".
1954         * Makefile.in: Regenerate.
1955
1956 2002-04-04  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1957
1958         * config/tc-mips.c (mips16_macro_build): Cast type mismatch.
1959         (mips_ip): Remove unused variable.
1960         (md_apply_fix3): Cast signed/unsignes mismatches. Replace
1961         unsigned char with bfd_byte.
1962         (s_file): Remove unused variable.
1963         (s_mips_ent): Likewise.
1964
1965 2002-04-03  Tom Rix  <trix@redhat.com>
1966
1967         * config/tc-d10v.c (d10v_insert_operand): Fix warning in as_bad_where.
1968         (build_insn): Same.
1969         (find_opcode): Fix warning in as_warn.
1970         * config/tc-d10v.h: Update Copyright.
1971
1972 2002-04-03  Alan Matsuoka <alanm@redhat.com>
1973             Tom Rix  <trix@redhat.com>
1974
1975         From Jeff Knaggs <jknaggs@redhat.com>
1976         * config/tc-d10v.c (check_resource_conflict): New function to
1977         check for resource conflicts.
1978
1979         From Jason Eckhardt  <jle@redhat.com>
1980         * config/tc-d10v.c (build_insn): Check for unresolved imm4 or
1981         imm3 fields.
1982         * config/tc-d10v.c (find_opcode): Emit a warning if one of the
1983         reserved control registers is used.
1984         * config/tc-d10v.c (build_insn): Check for unresolved imm4 or
1985         imm3 fields.
1986
1987         From 2001-03-28  Diego Novillo  <dnovillo@redhat.com>
1988         * tc-d10v.c (parallel_ok): Prevent packing only if the first
1989         instruction cannot be packed.
1990
1991         From 2001-03-30  Diego Novillo  <dnovillo@redhat.com>
1992         * gas/config/tc-d10v.c (check_resource_conflict): Only check
1993         write-write conflicts.
1994         (md_assemble): Reformat introductory comment.
1995         * opcodes/d10v-opc.c (d10v_opcodes): `btsti' does not modify its
1996         arguments.
1997
1998 2002-04-03  Alan Modra  <amodra@bigpond.net.au>
1999
2000         * symbols.c (resolve_symbol_value <O_uminus, O_bit_not,
2001         O_logical_not>): Derive final_seg from add_symbol.
2002         <O_multiply..O_logical_or>: More final_seg twiddles.
2003
2004 2002-04-01  Jessica Han  <jessica@cup.hp.com>
2005
2006         * config/tc-ia64.c (ia64_cons_fix_new): Handle 8 byte iplt reloc
2007         in 32-bit mode.
2008
2009 2002-03-27  Andreas Schwab  <schwab@suse.de>
2010
2011         * config/tc-i386.c (output_jump): Set fx_pcrel_adjust to size of
2012         field for pc-relative fixups.
2013         (output_disp): Likewise.
2014         (md_estimate_size_before_relax): Likewise.
2015         (tc_gen_reloc): Subtract fx_pcrel_adjust instead of fx_size for
2016         pc-relative fixups in 64bit mode.
2017
2018 2002-03-22  Alan Modra  <amodra@bigpond.net.au>
2019
2020         * config/te-aix5.h: Typo fix.
2021
2022 2002-03-21  Alan Modra  <amodra@bigpond.net.au>
2023
2024         * Makefile.am: Run "make dep-am".
2025         * Makefile.in: Regenerate.
2026         * doc/Makefile.in: Regenerate.
2027
2028 2002-03-20  Albert Chin-A-Young  <china@thewrittenword.com>
2029
2030         * config/tc-arm.c (vfp_dp_reg_required_here): Fix typo
2031         (vfp_sp_reg_pos -> vfp_dp_reg_pos).
2032
2033 2002-03-18  Alexandre Oliva  <aoliva@redhat.com>
2034
2035         * config/tc-mips.c (md_estimate_size_before_relax): Do not modify
2036         the EXTENDED bit here; report the estimate according to the
2037         current size.
2038
2039 2002-03-18  Tom Rix  <trix@redhat.com>
2040
2041         * configure.in: Add AIX 5 support.
2042         * config/tc-ppc.c (ppc_target_format): Add AIX 5 64 bit target.
2043         * config/te-aix5.h: New file. AIX 5 support.
2044         * configure: Regenerate.
2045
2046 2002-03-18  Nick Clifton  <nickc@cambridge.redhat.com>
2047
2048         * po/fr.po: Updated version.
2049
2050 2002-03-16  Andreas Jaeger  <aj@suse.de>
2051
2052         * doc/c-mips.texi (Machine Dependencies): Add new node.
2053
2054 2002-03-15  Chris G. Demetriou  <cgd@broadcom.com>
2055
2056         * config/tc-mips.c (mips_set_options): New "ase_mips3d" member.
2057         (mips_opts): Initialize "ase_mips3d" member.
2058         (file_ase_mips3d): New variable.
2059         (CPU_HAS_MIPS3D): New macro.
2060         (md_begin): Initialize mips_opts.ase_mips3d and file_ase_mips3d
2061         based on command line options and configuration defaults.
2062         (macro_build, mips_ip): Accept MIPS-3D instructions if
2063         mips_opts.ase_mips3d is set.
2064         (OPTION_MIPS3D, OPTION_NO_MIPS3D, md_longopts, md_parse_option):
2065         Add support for "-mips3d" and "-no-mips3d" options.
2066         (OPTION_ELF_BASE): Move to accomodate new options.
2067         (s_mipsset): Support ".set mips3d" and ".set nomips3d".
2068         (mips_elf_final_processing): Add a comment indicating that a
2069         MIPS-3D ASE ELF header flag should be set, when one exists.
2070         * doc/as.texinfo: Document -mips3d and -no-mips3d options.
2071         * doc/c-mips.texi: Likewise, and document ".set mips3d" and ".set
2072         nomips3d" directives.
2073
2074 2002-03-14  Hans-Peter Nilsson  <hp@bitrange.com>
2075
2076         * config/tc-mmix.c (md_estimate_size_before_relax): Don't consider
2077         a weak symbol in same section to be within reach.
2078
2079 2002-03-13  Nick Clifton  <nickc@cambridge.redhat.com>
2080
2081         * po/fr.po: Updated version.
2082
2083 2002-03-12  Andreas Schwab  <schwab@suse.de>
2084
2085         * config/tc-ia64.c (fixup_unw_records): Clear region when seeing a
2086         body record so that an error is given for misplaced .save
2087         pseudo-ops.
2088
2089 2002-03-09  Alan Modra  <amodra@bigpond.net.au>
2090
2091         * config/tc-i386.h (REX_OPCODE): Define.
2092         (REX_MODE64, REX_EXTX, REX_EXTY, REX_EXTZ): Define.
2093         (rex_byte): typedef to int.
2094         * config/tc-i386.c: Group prototypes and vars together.
2095         Formatting fixes.  Remove occurrences of "register" keyword.
2096         (true): Delete.
2097         (false): Delete.
2098         (mode_from_disp_size): Add INLINE keyword to prototype.
2099         (fits_in_signed_byte): Likewise.
2100         (fits_in_unsigned_byte): Likewise.
2101         (fits_in_unsigned_word): Likewise.
2102         (fits_in_signed_word): Likewise.
2103         (fits_in_unsigned_long): Likewise.
2104         (fits_in_signed_long): Likewise.
2105         (type_names): Constify.
2106         (intel_float_operand): Constify param.
2107         (add_prefix): Use REX_OPCODE.
2108         (md_assemble): Likewise.  Modify for changed rex_byte.
2109         (parse_insn): Split out of md_assemble.
2110         (parse_operands): Likewise.
2111         (swap_operands): Likewise.
2112         (optimize_imm): Likewise.
2113         (optimize_disp): Likewise.
2114         (match_template): Likewise.
2115         (check_string): Likewise.
2116         (process_suffix): Likewise.
2117         (check_byte_reg): Likewise.
2118         (check_long_reg): Likewise.
2119         (check_qword_reg): Likewise.
2120         (check_word_reg): Likewise.
2121         (finalize_imm): Likewise.
2122         (process_operands): Likewise.
2123         (build_modrm_byte): Likewise.
2124         (output_insn): Likewise.
2125         (output_branch): Likewise.
2126         (output_jump): Likewise.
2127         (output_interseg_jump): Likewise.
2128         (output_disp): Likewise.
2129         (output_imm): Likewise.
2130
2131 2002-03-07  Daniel Jacobowitz  <drow@mvista.com>
2132
2133         * doc/as.texinfo: Wrap @menu in @ifnottex, not @ifinfo.
2134
2135 2002-03-06  Alan Modra  <amodra@bigpond.net.au>
2136
2137         * config/tc-i386.c (tc_gen_reloc): Don't attempt to handle 8 byte
2138         relocs except when BFD64.
2139
2140         * write.c (number_to_chars_bigendian): Don't abort when N is
2141         larger than sizeof (VAL).
2142         (number_to_chars_littleendian): Likewise.
2143
2144 2002-03-05  John David Anglin  <dave@hiauly1.hia.nrc.ca>
2145
2146         * config/tc-hppa.c (md_apply_fix3): Add cast.
2147         (hppa_fix_adjustable): Adjust list of selectors using e_lrsel and
2148         e_rrsel.
2149
2150 2002-03-05  Paul Koning  <pkoning@equallogic.com>
2151
2152         * tc-pdp11.c: Use VAX float format support for PDP-11 target.
2153         (parse_ac5): New function for parsing float regs in float operand.
2154         (parse_expression): Remove attempt to make literals be octal.
2155         (parse_op_no_deferred): Support float literals.
2156         (parse_op): Reject attempts to refer to float regs.
2157         (parse_fop): New function, like parse_op but for float operand.
2158         (md_assemble): Add cases to parse float operands.  Also fix
2159         IMM3, IMM6, IMM8 cases to pick up the operand from the right spot.
2160
2161 2002-03-04  H.J. Lu <hjl@gnu.org>
2162
2163         * config/obj-elf.c (special_section): Add .init_array,
2164         .fini_array and .preinit_array.
2165
2166         * config/tc-ia64.h (ELF_TC_SPECIAL_SECTIONS): Remove
2167         .init_array and .fini_array.
2168
2169 2002-03-01  Jakub Jelinek  <jakub@redhat.com>
2170
2171         * config/obj-elf.c (elf_copy_symbol_attributes): Don't copy
2172         visibility.
2173         (obj_frob_symbol): Copy visibility.
2174
2175 2002-02-28  Jakub Jelinek  <jakub@redhat.com>
2176
2177         * config/tc-alpha.c (s_alpha_text): Use obj_elf_text for OBJ_ELF, not
2178         s_text.
2179         (s_alpha_data): Use obj_elf_data for OBJ_ELF, not s_data.
2180
2181 2002-02-27  Nick Clifton  <nickc@cambridge.redhat.com>
2182
2183         * po/es.po: Updated.
2184
2185 2002-02-26  Chris Demetriou  <cgd@broadcom.com>
2186
2187         * config/tc-mips.c (mips_need_elf_addend_fixup): For embedded-PIC
2188         only, undo the changes made on 2001-06-08, with the
2189         effect being that common or extern symbols are
2190         adjusted for embedded-PIC, but weak symbols are not.
2191         (md_estimate_size_before_relax: Likewise, with the effect
2192         that extern symbols are treated the same as weak symbols
2193         only if not embedded-PIC.
2194         (mips_fix_adjustable) Likewise, with the effect that
2195         weak or extern symbols are not adjusted for embedded-PIC.
2196         (md_apply_fix3): Tweak so that the case where value is zero
2197         is handled more correctly for embedded-PIC code.
2198
2199 2002-02-26  Nick Clifton  <nickc@cambridge.redhat.com>
2200
2201         * doc/as.texinfo (Overview): Add missing @ifset IA64
2202
2203         * configure.in (LINGUAS): Add es.po.
2204         * configure: Regenerate.
2205         * po/es.po: New file.
2206
2207 2002-02-25  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
2208
2209         * config/tc-mips.c (set_at): Fix handling of 64bit register loads.
2210         (macro): Likewise. Fix la/dla address expansions for EMBEDDED_PIC
2211         and NO_PIC cases. Code cleanup.
2212         (macro2): Fix handling of 64bit register loads.
2213
2214 2002-02-25  David Mosberger  <davidm@hpl.hp.com>
2215
2216         * doc/as.texinfo: Add entry for IA64.
2217         * doc/c-ia64.texi: New file.
2218
2219 2002-02-25  Alan Modra  <amodra@bigpond.net.au>
2220
2221         * config/tc-hppa.c: Update copyright date.
2222
2223         * doc/c-ppc.texi (PowerPC-Opts): Add -mpower4, -maltivec and -m7400
2224         Remove references to chip manufacturers.
2225         * config/tc-ppc.c (md_parse_option): Handle -mpower4 option.
2226         Correct comments.
2227         (md_show_usage): Remove references to chip manufacturers.  Mention
2228         -mpower4.
2229         (md_begin): Test power4 opcode flag bits.
2230
2231 2002-02-22  David Mosberger  <davidm@hpl.hp.com>
2232
2233         * config/tc-ia64.c (dot_restore): Issue error message of epilogue
2234         count exceeds prologue count.
2235         (md_show_usage): Describe -mconstant-gp and -mauto-pic.
2236         (unwind.label_prologue_count): New member.
2237
2238         Based on a patch by Hans Boehm <hboehm@hpl.hp.com>:
2239
2240         (get_saved_prologue_count): New function.
2241         (save_prologue_count): New function.
2242         (free_saved_prologue_count): New function.
2243         (dot_label_state): Record state label by calling save_prologue_count().
2244         (dot_copy_state): Restore prologue count by calling
2245         get_saved_prologue_count().
2246         (generate_unwind_image): Free up list of saved prologue
2247         counts by calling free_saved_prologue_counts().
2248
2249 2002-02-22  Nick Clifton  <nickc@cambridge.redhat.com>
2250
2251         * config/tc-tic54x.c: Add missing prototypes and remove ANSI style
2252         function declarations.
2253
2254 2002-02-21  Nick Clifton  <nickc@cambridge.redhat.com>
2255
2256         * NEWS: Note that GASP is now deprecated.
2257         * Makefile.am: Do not build gasp-new by default.
2258         * Makefile.in: Regenerate.
2259         * doc/Makefile.am: Do not install gasp.info.
2260         * doc/Makefile.in: Regenerate.
2261         * gas/gasp.texi: Note that gasp is now deprecated.
2262
2263 2002-02-20  Nick Clifton  <nickc@cambridge.redhat.com>
2264
2265         * NEWS: Mark 2.12 branch.
2266
2267 2002-02-19  Tom Tromey  <tromey@redhat.com>
2268
2269         * config/tc-xstormy16.h (DWARF2_LINE_MIN_INSN_LENGTH): Define.
2270
2271 2002-02-19  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
2272
2273         * config/tc-mips.c (md_parse_option): Complain about invalid -mabi
2274         option input.
2275
2276 2002-02-19  Martin Schwidefsky  <schwidefsky@de.ibm.com>
2277
2278         * config/tc-s390.c (md_parse_option): Add switches -m31 and -m64.
2279         Make bit size independent of architecture switch.
2280         (md_begin): Add warning for -m64 with -Aesa.
2281         (s390_md_end): Use renamed architecture defines.
2282
2283 2002-02-18  Daniel Jacobowitz  <drow@mvista.com>
2284
2285         * config/obj-coff.h: Check !target_big_endian, not shl, for coff-sh.
2286
2287 2002-02-16  Nick Clifton  <nickc@cambridge.redhat.com>
2288
2289         * doc/as.texinfo (Machine Dependencies): Fix typo: MMIX used
2290         instead of CRIS.
2291
2292 2002-02-15  Chris Demetriou  <cgd@broadcom.com>
2293
2294         * config/tc-mips.c (md_estimate_size_before_relax): Really
2295         make sure we treat weak like extern only for ELF.  (Fixes
2296         patch from 2001-07-25.)
2297
2298 2002-02-15  Ben Elliston  <bje@redhat.com>
2299
2300         * doc/as.texinfo: Add duplicate directory entry so that "info gas"
2301         works as expected.
2302
2303 2002-02-15  Hans-Peter Nilsson  <hp@bitrange.com>
2304
2305         * NEWS: Mention support for MMIX.
2306
2307 2002-02-13  Chris Demetriou  <cgd@broadcom.com>
2308
2309         * config/tc-mips.c (mips_need_elf_addend_fixup): Restructure into
2310         a sequence of indpendent 'if' statements for easier debugging
2311         and future modification.
2312
2313 2002-02-13  Matt Fredette  <fredette@netbsd.org>
2314
2315         * config/tc-m68k.c (md_show_usage): No longer display a
2316         hard-coded "68020" for the default CPU, instead display the
2317         canonical name of the true, configured default CPU.
2318         (m68k_elf_final_processing): Mark objects for sub-68020
2319         CPUs with the new EF_M68000 flag.
2320
2321 2002-02-13  Andreas Schwab  <schwab@suse.de>
2322
2323         * config/tc-i386.c (tc_i386_fix_adjustable): Don't adjust
2324         pc-relative relocations to merge sections in 64-bit mode.
2325
2326 2002-02-13  Ben Elliston  <bje@redhat.com>
2327
2328         * NEWS: Document floating point number handling in gasp.
2329         * gasp.c: Include <assert.h> and "xregex.h".
2330         (is_flonum): New function.
2331         (chew_flownum): Likewise.
2332         (change_base): Consume flonums from the input, where possible.
2333         * doc/gasp.texi (Constants): Document floating point numbers.
2334
2335 2002-02-12  John David Anglin  <dave@hiauly1.hia.nrc.ca>
2336
2337         * config/tc-hppa.c (hppa_fix_adjustable): Don't adjust final types
2338         that implicitly use LR and RR selectors.
2339
2340 2002-02-12  Alexandre Oliva  <aoliva@redhat.com>
2341
2342         * config/tc-mn10300.c (other_registers): Added `epsw'.  Mark `pc'
2343         and `epsw' as available on AM33 and above only.
2344         (other_register_name): Add logic to handle machine type encoded in
2345         reg_number.
2346
2347 2002-02-11  Tom Rix  <trix@redhat.com>
2348
2349         * config/tc-ppc.c (md_apply_fix3): Check for insert fop invalid for
2350         xcoff64.
2351
2352 2002-06-11  Alexandre Oliva  <aoliva@redhat.com>
2353
2354         * config/tc-sparc.c (U0x80000000, U0xffffffff): New constants.
2355         Use all over.
2356
2357 2002-02-11  Jan Hubicka  <jh@suse.cz>
2358
2359         * i386.c (md_assemble): Support 32bit address prefix.
2360         (i386_displacement): Likewise.
2361         (i386_index_check): Accept 32bit addressing in 64bit mode.
2362
2363 2002-02-11  Alexandre Oliva  <aoliva@redhat.com>
2364
2365         * config/tc-sh.c (dot): Removed unused function.
2366
2367 2002-02-11  Alan Modra  <amodra@bigpond.net.au>
2368
2369         * Makefile.am: "make dep-am".
2370         * Makefile.in: Regenerate.
2371         * aclocal.m4: Regenerate.
2372         * config.in: Regenerate.
2373         * configure: Regenerate.
2374         * doc/Makefile.in: Regenerate.
2375
2376 2002-02-10  Richard Henderson  <rth@redhat.com>
2377
2378         * doc/c-alpha.texi: New file.
2379         * doc/Makefile.am (CPU_DOCS): Add it.
2380         * doc/all.texi, doc/as.texinfo: Add hooks for Alpha.
2381
2382 2002-02-09  Richard Henderson  <rth@redhat.com>
2383
2384         * config/tc-alpha.c (O_samegp): New.
2385         (USER_RELOC_P): Include it.
2386         (alpha_reloc_op_tag, debug_exp, find_macro_match): Add it.
2387         (md_apply_fix3): Handle BFD_RELOC_ALPHA_BRSGP.
2388         (alpha_force_relocation, alpha_fix_adjustable): Likewise.
2389         (alpha_validate_fix): New.
2390         * config/tc-alpha.h (TC_VALIDATE_FIX): New.
2391
2392 2002-02-09  Hans-Peter Nilsson  <hp@axis.com>
2393
2394         * doc/c-cris.texi: New.
2395         * doc/all.texi: @set CRIS.
2396         * doc/as.texinfo: Ditto.  Add CRIS gas manpage option overview.
2397         Include c-cris.texi.
2398         * doc/Makefile.am (CPU_DOCS): Add c-cris.texi
2399         * doc/Makefile.in: Regenerate.
2400
2401 2002-02-08  Chris Demetriou  <cgd@broadcom.com>
2402
2403         * config/tc-mips.c (IS_SEXT_32BIT_NUM): New macro to
2404         determine if a number is a sign-extended 32-bit number.
2405         (load_register): Use IS_SEXT_32BIT_NUM.
2406         (macro): Check if load/store macro handling is using a
2407         constant 32-bit address on 64-bit address systems, and if
2408         so optimize the generation of that address.
2409
2410 2002-02-08  Richard Henderson  <rth@redhat.com>
2411
2412         * config/tc-alpha.c (alpha_force_relocation): Don't assert that
2413         we've eliminated all foreign relocation types yet.
2414         (alpha_fix_adjustable): Likewise.
2415
2416 2002-02-08  Alexandre Oliva  <aoliva@redhat.com>
2417
2418         Contribute sh64-elf.
2419         2002-02-08  Alexandre Oliva  <aoliva@redhat.com>
2420                     Stephen Clarke <Stephen.Clarke@st.com>
2421         * doc/c-sh64.texi: Fix citation of SH64 architecture manual.
2422         2002-01-31  Alexandre Oliva  <aoliva@redhat.com>
2423         * config/tc-sh.c (md_relax_table): Added default sizes for
2424         non-PC-relative UNDEF_MOVI, and relaxation sequences for
2425         MOVI_16, MOVI_32 and MOVI_48.
2426         * config/tc-sh64.c (shmedia_md_apply_fix3): Fix warning.
2427         (shmedia_md_convert_frag): Handle non-PC-relative UNDEF_MOVI
2428         and MOVI_16.
2429         (shmedia_md_estimate_size_before_relax): Remove redundant
2430         blocks.  Set fragP->fr_var even if relaxation type unchanged.
2431         Retain UNDEF_MOVI until expression decays to number.
2432         2002-01-24  Alexandre Oliva  <aoliva@redhat.com>
2433         * config/tc-sh64.c (shmedia_init_reloc): Handle new SHmedia PIC
2434         relocation types.  Take fixP->fx_addnumber into account too.
2435         (shmedia_md_apply_fix): Likewise.
2436         (shmedia_md_convert_frag): Likewise.
2437         (shmedia_build_Mytes): Likewise.
2438         (sh64_consume_datalabel): Complain about nested datalabel.
2439         Support PIC relocs.  Call sh_parse_name.
2440         * config/tc-sh64.h (TC_RELOC_RTSYM_LOC_FIXUP): Extend definition
2441         in tc-sh.h to SHmedia reloc types.
2442         * config/tc-sh.c (SH64PCRELPLT, MOVI_PLT, MOVI_GOTOFF,
2443         MOVI_GOTPC): New relaxation constants.
2444         (md_relax_table): Introduce relaxation directives for PIC-related
2445         constants.
2446         (sh_PIC_related_p): Handle datalabel.
2447         (sh_check_fixup): Choose SH5 PIC relocations.
2448         (sh_cons_fix_new): Added BDF_RELOC_64.
2449         (md_apply_fix3, sh_parse_name): Handle GOTPLT.
2450         2002-01-18  Alexandre Oliva  <aoliva@redhat.com>
2451         * config/tc-sh64.c (sh64_max_mem_for_rs_align_code): If the
2452         current ISA is SHmedia, get 7 bytes.
2453         2001-11-28  Nick Clifton  <nickc@cambridge.redhat.com>
2454         * config/tc-sh.c (md_apply_fix3): Treat shmedia_md_apply_fix3 as a
2455         void function.
2456         * config/tc-sh64.c (shmedia_apply_fix): Rename to
2457         shmedia_apply_fix3 and make void.
2458         2001-05-17  Alexandre Oliva  <aoliva@redhat.com>
2459         * config/tc-sh64.c (s_sh64_abi): Remove unused arguments passed to
2460         as_bad.
2461         2001-04-12  Alexandre Oliva  <aoliva@redhat.com>
2462         * config/tc-sh64.h (md_parse_name): Take &c as argument.
2463         2001-03-14  DJ Delorie  <dj@redhat.com>
2464         * doc/Makefile.am (CPU_DOCS): Added c-sh64.texi
2465         * doc/Makefile.in(CPU_DOCS): Ditto.
2466         * doc/c-sh64.texi: New file.
2467         * doc/as.texinfo: Add SH64 support.
2468         2001-03-13  DJ Delorie  <dj@redhat.com>
2469         * config/tc-sh64.c (shmedia_get_operands): Rename A_RESV_Fx to
2470         A_REUSE_PREV so that its purpose is more obvious.
2471         (shmedia_build_Mytes): Ditto.
2472         2001-03-07  DJ Delorie  <dj@redhat.com>
2473         * config/tc-sh64.c (sh64_vtable_entry): New, strip datalabels
2474         before processing.
2475         (sh64_vtable_inherit): Ditto.
2476         (strip_datalabels): New, strip "datalabel" from given line.
2477         * config/tc-sh.c (md_pseudo_table): Add sh64-specific vtable
2478         pseudos.
2479         2001-03-06  Hans-Peter Nilsson  <hpn@cygnus.com>
2480         * config/tc-sh64.c (shmedia_md_assemble): Move dwarf2_emit_insn
2481         call ...
2482         (shmedia_build_Mytes): ... to here.
2483         2001-03-06  DJ Delorie  <dj@redhat.com>
2484         * config/tc-sh.c: Remove sh64-specific uaquad now that there
2485         is a generic one.
2486         2001-01-21  Hans-Peter Nilsson  <hpn@cygnus.com>
2487         * config/tc-sh64.h (DWARF2_LINE_MIN_INSN_LENGTH): Override.
2488         * config/tc-sh64.c (shmedia_md_assemble): Offset recorded insn
2489         address by one in call to dwarf2_emit_insn.
2490         2001-01-13  Hans-Peter Nilsson  <hpn@cygnus.com>
2491         Implement ".abi" pseudo and correct .cranges descriptors.  Correct
2492         alignment handling broken by imported changes.
2493         * config/tc-sh64.h (HANDLE_ALIGN): Override definition in tc-sh.h.
2494         (sh64_handle_align): Declare.
2495         (MAX_MEM_FOR_RS_ALIGN_CODE): Override definition in tc-sh.h.
2496         (sh64_max_mem_for_rs_align_code): Declare.
2497         (enum sh64_isa_values): Moved here from tc-sh64.c.
2498         (md_do_align): Define.
2499         (sh64_do_align): Declare.
2500         (struct sh64_tc_frag_data): New.
2501         (TC_FRAG_TYPE): Change to struct sh64_tc_frag_data.  Users
2502         changed.
2503         (TC_FRAG_INIT): Change to set new datatype.
2504         (struct sh64_segment_info_type): Rename member
2505         last_flushed_location to last_contents_mark.  All users changed.
2506         (md_elf_section_change_hook, TC_CONS_FIX_NEW): Do not define.
2507         (shmedia_elf_new_section, sh64_tc_cons_fix_new): Do not prototype.
2508         * config/tc-sh.c (md_pseudo_table): Add ".abi".
2509         (sh_elf_cons) [HAVE_SH64]: Call sh64_update_contents_mark instead
2510         of unsetting seen_insn.
2511         (md_assemble) [HAVE_SH64] <before new SHcompact sequence>: Also
2512         call sh64_update_contents_mark.
2513         (sh_handle_align): Remove HAVE_SH64-conditioned code.
2514         * config/tc-sh64.c (sh64_isa_mode): Correct type from boolean to
2515         enum sh64_isa_values.
2516         (sh64_set_contents_type): Drop segT parameter.  All callers changed.
2517         (emitting_crange): Boolean guard moved to file scope from function
2518         scope in sh64_set_contents_type.
2519         (s_sh64_abi): New.
2520         (sh64_update_contents_mark): New; most split out from
2521         sh64_flush_pending_output.
2522         (shmedia_md_end): Call sh64_update_contents_mark.  Set
2523         sh64_isa_mode to sh64_isa_sh5_guard unless sh64_isa_unspecified.
2524         (sh64_do_align): New function.
2525         (sh64_max_mem_for_rs_align_code): New function.
2526         (sh64_handle_align): Rename from shmedia_do_align.  Make
2527         non-static.  Add head comment.  Emit zero bytes for n bytes modulo
2528         four.  Change return-type to void.
2529         (shmedia_elf_new_section): Remove.
2530         (shmedia_md_assemble): Call sh64_update_contents_mark.
2531         (s_sh64_mode): Ditto.  Do not call md_flush_pending_output.  Make
2532         new frag.  Call sh64_update_contents_mark after making the new
2533         frag.
2534         (sh64_flush_pending_output): Just call sh64_update_contents_mark
2535         and sh_flush_pending_output.
2536         (sh64_flag_output): Also call md_flush_pending_output, but add
2537         condition on not emitting_crange.
2538         (sh64_tc_cons_fix_new): Remove.
2539         2001-01-12  Nick Clifton  <nickc@redhat.com>
2540         * config/tc-sh64.c (shmedia_do_align): Fix to work with new
2541         alignment handling scheme imported from sourceware.
2542         2001-01-12  Hans-Peter Nilsson  <hpn@cygnus.com>
2543         * config/tc-sh64.h (TARGET_FORMAT): Define.
2544         (sh64_target_format): Prototype.
2545         * config/tc-sh64.c (sh64_target_mach): New function.
2546         2001-01-07  Hans-Peter Nilsson  <hpn@cygnus.com>
2547         * config/tc-sh64.c (shmedia_md_end): When equating a symbol, use
2548         zero_address_frag instead of copying the frag of the symbol.
2549         (shmedia_frob_file_before_adjust): Ditto.
2550         (shmedia_md_apply_fix) <case BFD_RELOC_SH_IMM_MEDLOW16>: Cast mask
2551         to valueT to remove signedness.
2552         (shmedia_md_convert_frag): Add parameter final.  Rename parameter
2553         headers to output_bfd.  Do not evaluate symbols if final is false;
2554         do emit fixups.
2555         (shmedia_md_estimate_size_before_relax) <case C (MOVI_IMM_32,
2556         UNDEF_MOVI) et al>: If symbol cannot be modified to be PC-relative
2557         to the current frag, call shmedia_md_convert_frag to emit fixups
2558         and make frag_wane neutralize the frag.  Update comments.
2559         * config/tc-sh.c (md_convert_frag): Change caller of
2560         shmedia_md_convert_frag.
2561         2001-01-06  Hans-Peter Nilsson  <hpn@cygnus.com>
2562         * config/tc-sh64.h: Tweak comments and correct formatting.
2563         * config/tc-sh64.c: Ditto.
2564         (shmedia_md_convert_frag) <PT/PTA/PTB 32, 48 and 64 bit
2565         expansion, MOVI pcrel expansion>: Fix thinko calculating offset
2566         for the no-relocation case.
2567         (shmedia_check_limits): Fix range check being off-by-one for PTA.
2568         * config/tc-sh.c: Ditto.  Add proper comments to #ifdef/#ifndef
2569         wrappers.
2570         (SH64PCREL16_F): Increment for proper max-PTA handling.  Update
2571         comment.
2572         (SH64PCREL16_M, MOVI_16_M): Correct range thinko.
2573         (SH64PCREL48_M, MOVI_48_M): Similar; don't count in length of
2574         expansion.
2575         (SH64PCREL32_M, MOVI_32_M): Ditto; handle overflowing expression.
2576         Correct comment.
2577         2001-01-05  Hans-Peter Nilsson  <hpn@cygnus.com>
2578         * config/tc-sh64.c (shmedia_md_apply_fix) <second switch, case
2579         BFD_RELOC_SH_PT_16>: Set lowest bit in field to be relocated to 1.
2580         (shmedia_md_convert_frag) <case C (SH64PCREL16_32, SH64PCREL16) et
2581         al>: Set lowest bit of field to relocate to 1 and rest to empty,
2582         if reloc is emitted.
2583         2000-12-31  Hans-Peter Nilsson  <hpn@cygnus.com>
2584         New options plus bugfixes.
2585         * config/tc-sh.c (md_longopts): New options "-no-expand" and
2586         "-expand-pt32".
2587         (md_parse_option): Handle new options.
2588         (md_show_usage): Add blurb for new options.
2589         * config/tc-sh64.c (SHMEDIA_BFD_RELOC_PT): New macro.
2590         (sh64_expand, sh64_pt32): New variables.
2591         (shmedia_init_reloc): Handle BFD_RELOC_SH_PT_16.
2592         (shmedia_md_apply_fix): Hold original fixP->fx_r_type in
2593         orig_fx_r_type.  Change SHMEDIA_BFD_RELOC_PT into
2594         BFD_RELOC_SH_PT_16.  Handle BFD_RELOC_SH_PT_16 as pc-relative.
2595         <resolved previously-pc-relative relocs>: Handle
2596         SHMEDIA_BFD_RELOC_PT and BFD_RELOC_SH_PT_16.
2597         (shmedia_md_convert_frag) <case C (SH64PCREL16PT_64, SH64PCREL16),
2598         case C (SH64PCREL16PT_32, SH64PCREL16)>: Modify to PTB if operand
2599         points to SHcompact code.
2600         <case C (SH64PCREL16_32, SH64PCREL16), case C (SH64PCREL16_64,
2601         SH64PCREL16)>: Check that ISA of what operand points at and
2602         PTA/PTB matches, or emit error.
2603         (shmedia_check_limits): Handle BFD_RELOC_SH_PT_16 and
2604         SHMEDIA_BFD_RELOC_PT.
2605         (shmedia_immediate_op): If pcrel, emit fixup also for constant
2606         operand.
2607         (shmedia_build_Mytes) <case A_IMMS16>: Also check sh64_expand in
2608         condition for MOVI expansion.
2609         <case A_PCIMMS16BY4>: Handle expansion to 32 bits only, if
2610         sh64_pt32.  Emit only a BFD_RELOC_SH_PT_16 fixup if not
2611         sh64_expand.
2612         <case A_PCIMMS16BY4_PT>: Likewise, but emit a SHMEDIA_BFD_RELOC_PT
2613         fixup.
2614         (sh64_target_format): Error-check setting of sh64_pt32 and
2615         sh64_expand.  Fix typo in check for sh64_shcompact_const_crange.
2616         (shmedia_md_pcrel_from_section): Handle BFD_RELOC_SH_PT_16 and
2617         SHMEDIA_BFD_RELOC_PT as coming from SHmedia code.
2618         2000-12-31  Hans-Peter Nilsson  <hpn@cygnus.com>
2619         * config/tc-sh64.c: Improve comments.
2620         (shmedia_md_convert_frag): Remove inactive is_pt_variant code.  Do
2621         not say the linker will check correctness of PTA/PTB expansion.
2622         (shmedia_md_end): Make non-static.
2623         * config/tc-sh64.h (md_end): Define to shmedia_md_end.  Add
2624         prototype.
2625         * config/tc-sh.c (sh_finalize): Remove.
2626         * config/tc-sh.h (md_end): Do not define.
2627         Remove prototype for sh_finalize.
2628         2000-12-30  Hans-Peter Nilsson  <hpn@cygnus.com>
2629         * config/tc-sh64.c (shmedia_frob_section_type): Use a struct
2630         sh64_section_data container when storing section type in tdata
2631         field in elf_section_data.
2632         * config/tc-sh.c (sh_elf_final_processing): Change from EF_SH64 to
2633         EF_SH5.
2634         * Makefile.am: Update dependencies.
2635         * Makefile.in: Regenerate.
2636         2000-12-22  Hans-Peter Nilsson  <hpn@cygnus.com>
2637         * config/tc-sh64.c (shmedia_md_assemble): Don't protect
2638         dwarf2_emit_insn call with test on debug_type.
2639         2000-12-19  Hans-Peter Nilsson  <hpn@cygnus.com>
2640         * config/tc-sh64.c (sh64_set_contents_type): Make contents-type
2641         CRT_SH5_ISA32 sticky for 64-bit.
2642         2000-12-18  Hans-Peter Nilsson  <hpn@cygnus.com>
2643         Generate .crange sections when switching ISA mode or emitting
2644         constants in same section as code.
2645         * config/tc-sh64.c: Reformat structure definitions.
2646         (sh64_end_of_assembly, sh64_mix, sh64_shcompact_const_crange): New
2647         variables.
2648         (sh64_set_contents_type): Rename from sh64_init_section.  Rewrite
2649         to emit a .cranges descriptor when contents type changes.  Only
2650         emit error if changing contents type and -no-mix is in effect.
2651         (sh64_emit_crange, sh64_flush_last_crange, sh64_flag_output,
2652         sh64_flush_pending_output, sh64_tc_cons_fix_new): New functions.
2653         (shmedia_md_end): Set sh64_end_of_assembly.  Pass
2654         sh64_flush_last_crange over sections.
2655         When checking main symbol of datalabel symbol, check for
2656         STO_SH5_ISA32, not ISA type of section in definition.
2657         (shmedia_frob_file_before_adjust): Check main symbol for
2658         STO_SH5_ISA32; don't check ISA type of section in definition.
2659         (shmedia_frob_section_type): Adjust for .cranges; set section flag
2660         to SHF_SH5_ISA32_MIXED or SHF_SH5_ISA32 according to whether
2661         .cranges entries have been output.
2662         (shmedia_elf_new_section): Just call md_flush_pending_output.
2663         (shmedia_md_assemble): Do not emit a BFD_RELOC_SH_SHMEDIA_CODE
2664         fix.  Do not set tc_segment_info_data.in_code for section.  Call
2665         sh64_set_contents_type for SHmedia code.
2666         (s_sh64_mode): Do not call sh64_init_section or set seen_insn to
2667         false.  Call md_flush_pending_output.
2668         (sh64_target_format): Check that -no-mix and
2669         -shcompact-const-crange are used in sane combination with other
2670         options.
2671         (shmedia_md_pcrel_from_section): Check type of fix for how to
2672         adjust pc-relative.
2673         (sh64_consume_datalabel): Check symbol for having STO_SH5_ISA32,
2674         not ISA type of section in definition.
2675         * config/tc-sh64.h (struct sh64_segment_info_type): Rewrite to
2676         hold contents-type state.
2677         (md_flush_pending_output): Redefine to sh64_flush_pending_output.
2678         (sh64_flush_pending_output): Declare.
2679         (TC_CONS_FIX_NEW): Define to sh64_tc_cons_fix_new.
2680         (sh64_tc_cons_fix_new): Declare.
2681         * config/tc-sh.c (sh_elf_cons) [HAVE_SH64]: Unset seen_insn and
2682         call sh64_flag_output.
2683         (md_assemble) [HAVE_SH64]: Do not emit BFD_RELOC_SH_CODE.  Just
2684         call sh64_set_contents_type to mark SHcompact code and set
2685         seen_insn.
2686         (md_longopts): New options "-no-mix" and
2687         "-shcompact-const-crange".
2688         (md_parse_option): Handle new options.
2689         (md_show_usage): Add blurb for new options.
2690         (md_number_to_chars) [HAVE_SH64]: Call sh64_flag_output.
2691         2000-12-15  Hans-Peter Nilsson  <hpn@cygnus.com>
2692         * config/tc-sh64.c: Delete investigated and obsolete fixme:s.
2693         (sh64_last_insn_frag): New.
2694         (shmedia_md_convert_frag): Use tc_frag_data field of incoming frag
2695         to get frag for insn opcode for generating fixups; do not assume it
2696         is the same frag.
2697         (shmedia_build_Mytes): Set sh64_last_insn_frag after growing frag
2698         for new insn.
2699         * config/tc-sh64.h (ELF_TC_SPECIAL_SECTIONS): Define for .cranges
2700         section.
2701         (TC_FRAG_TYPE): Define as fragS *.
2702         (TC_FRAG_INIT): Define to set tc_frag_data to sh64_last_insn_frag.
2703         (sh64_last_insn_frag): Declare.
2704         (sh64_consume_datalabel): Fix typo; check for seginfo != NULL,
2705         not == NULL before dereferencing.
2706         2000-12-12  Hans-Peter Nilsson  <hpn@cygnus.com>
2707         Get rid of BFD section flag and EF_SH64_ABI64.
2708         * config/tc-sh64.c (shmedia_frob_section_type): Use
2709         elf_section_data (sec)->tdata, not a specific BFD section flag, to
2710         communicate the section as containing SHmedia code.  Describe why.
2711         * config/tc-sh.c (sh_elf_final_processing): Tweak comment.  Set
2712         EF_SH64 regardless of ABI.
2713         * config/tc-sh64.c (shmedia_md_apply_fix): Decapitalize "invalid"
2714         in error message.  Handle resolved expressions for
2715         BFD_RELOC_SH_IMMS10, BFD_RELOC_SH_IMMS10BY2,
2716         BFD_RELOC_SH_IMMS10BY4 and BFD_RELOC_64.
2717         (shmedia_check_limits): Handle BFD_RELOC_64.
2718         (sh64_adjust_symtab): Do not decrement the GAS symbol value for
2719         a STO_SH5_ISA32 symbol, only the BFD value.
2720         2000-12-11  Ben Elliston  <bje@redhat.com>
2721         * config/tc-sh64.c: Call dwarf2_emit_insn, not the defunct
2722         dwarf2_generate_asm_lineno.
2723         2000-12-11  Hans-Peter Nilsson  <hpn@cygnus.com>
2724         Handle PC-relative MOVI expansions with assembler relaxation.
2725         Generate PC-relative relocs from 16-bit PC-relative expressions.
2726         * config/tc-sh64.c (SHMEDIA_MD_PCREL_FROM_FIX): Break out from...
2727         (shmedia_md_pcrel_from_section): ...here.
2728         (shmedia_md_apply_fix): Handle fixups for 16-bit operands that has
2729         turned completely resolved.  Adjust relocation type for 16-bit
2730         immediate operands that has turned PC-relative.  Adjust back for
2731         MD_PCREL_FROM_SECTION being applied twice.
2732         (shmedia_md_convert_frag): Always emit reloc for expression with
2733         global or weak symbol.  Handle relaxation result for PC-relative
2734         expressions.
2735         (shmedia_md_estimate_size_before_relax): An expression with a weak
2736         or global symbol can not be relaxed.  Break out tests for
2737         relaxable symbol into variable sym_relaxable.
2738         <cases C (MOVI_IMM_64, UNDEF_MOVI) and C (MOVI_IMM_32,
2739         UNDEF_MOVI)>: Break out any PC-relative expression and change
2740         relaxation type.
2741         (shmedia_build_Mytes): CSE &operands->operands[j] into variable
2742         opjp.
2743         <case A_IMMS16>: Fix typo for initial minor relaxation type of
2744         MOVI expansion.  If X_op_symbol of the immediate expression is
2745         set, make an expression symbol for the argument to frag_var.
2746         * config/tc-sh.c (MOVI_IMM_32_PCREL, MOVI_IMM_64_PCREL): New
2747         relaxations.
2748         (END): Adjust for new relaxations.
2749         (md_relax_table): Add entries for new relaxations.
2750         2000-12-07  Ben Elliston  <bje@redhat.com>
2751         * config/tc-sh64.c (shmedia_parse_reg): Initialize variable len.
2752         2000-12-07  Hans-Peter Nilsson  <hpn@cygnus.com>
2753         * config/tc-sh64.c (shmedia_md_convert_frag): Correct all MOVI and
2754         SHORI operand offsets in PT/PTA/PTB expansions.
2755         2000-12-05  Hans-Peter Nilsson  <hpn@cygnus.com>
2756         Implement DataLabel semantics.
2757         * config/tc-sh.c (sh_frob_file) [HAVE_SH64]: Call
2758         shmedia_frob_file_before_adjust.
2759         * config/tc-sh64.c [! OBJ_ELF]: Emit #error.
2760         (DATALABEL_SUFFIX): Define.
2761         (shmedia_md_end) <before adjusting STO_SH5_ISA32 symbols>: Walk
2762         symbol list to update "datalabel" symbols to their main symbol
2763         counterparts.
2764         (shmedia_frob_file_before_adjust): New.
2765         (sh64_adjust_symtab): For remaining datalabel symbols, set to
2766         undefined and set STT_DATALABEL.
2767         (sh64_frob_label): Initialize TC symbol field.
2768         (sh64_consume_datalabel): Actually implement semantics.  New
2769         parameter operandf, call it instead of expression.
2770         (sh64_exclude_symbol): New.
2771         * config/tc-sh64.h (md_parse_name): Pass on the function operand
2772         to sh64_consume_datalabel.
2773         (tc_symbol_new_hook): Define to tc_frob_symbol.
2774         (TC_SYMFIELD_TYPE): Define to symbolS *.
2775         (tc_frob_symbol): Define to call sh64_exclude_symbol.
2776         2000-12-01  Hans-Peter Nilsson  <hpn@cygnus.com>
2777         * config/tc-sh64.c (shmedia_init_reloc): Tweak comment for default
2778         case.
2779         (shmedia_md_assemble): Call dwarf2_generate_asm_lineno if
2780         generating dwarf2 debug information.
2781         2000-11-30  Hans-Peter Nilsson  <hpn@cygnus.com>
2782         * config/tc-sh64.c (sh64_target_format): Use elf64-sh64l and
2783         elf64-sh64 for the 64-bit ABI.
2784         * config/tc-sh.c (md_show_usage): Tweak usage output for -abi=*
2785         option.
2786         2000-11-29  Hans-Peter Nilsson  <hpn@cygnus.com>
2787         * config/tc-sh.c: Remove conditionalizing on HAVE_SH64 for
2788         case-insensitivity.
2789         2000-11-27  Hans-Peter Nilsson  <hpn@cygnus.com>
2790         * config/tc-sh64.c: Tweak comments, formatting and error messages.
2791         (enum sh64_abi_values): New type.
2792         (enum sh64_isa_values): New type.
2793         (sh64_isa_mode): Replace shmedia_mode.  All referers changed.
2794         (seen_shcompact_mode, seen_shmedia_mode): Delete.
2795         (sh64_abi): Replace shmedia_64.
2796         (shmedia_md_convert_frag) <C (MOVI_IMM_64, MOVI_64),
2797         C (MOVI_IMM_32, MOVI_32)>: Correct register number handling.
2798         (s_sh64_mode): Check validity for this target.
2799         (sh64_target_format): Initialize defaults for ISA and ABI.
2800         Fallback to old object format if no SH64 ISA or ABI has been
2801         specified.
2802         * config/tc-sh.c (md_parse_option): Check combinations for errors.
2803         (sh_elf_final_processing): Change to have EF_SH64_ABI64 for 64-bit
2804         ABI and EF_SH64 for 32-bit ABI, if SH64 options are specified.
2805         * config/tc-sh64.h: Fix typo in comment.
2806         2000-11-25  Hans-Peter Nilsson  <hpn@cygnus.com>
2807         * config/tc-sh64.c (shmedia_md_estimate_size_before_relax)
2808         <PT fixups for absolute values>: Size will be longest, not
2809         shortest.
2810         (shmedia_md_convert_frag): Disable PTB-warning machinery.  Correct
2811         all MOVI and SHORI operand offsets in PT/PTA/PTB expansions.
2812         * config/tc-sh.c (parse_reg) [HAVE_SH64]: Add local variables l0
2813         and l1 to hold lowercase of two first characters.  Change all
2814         remaining TO_LOWER to tolower.
2815         * config/tc-sh64.c (TO_LOWER): Delete.
2816         (shmedia_find_cooked_opcode): Use tolower, not TO_LOWER.
2817         (md_parse_name): Define.
2818         (sh64_consume_datalabel): Declare.
2819         (DOLLAR_DOT): Define.
2820         * config/tc-sh64.c (shmedia_parse_exp): New.
2821         (sh64_consume_datalabel): New; just ignoring datalabel semantics.
2822         (shmedia_parse_reg): Remove const from src
2823         parameter.
2824         (shmedia_get_operands): Ditto for args parameter and ptr variable.
2825         (shmedia_md_assemble): Ditto for op_end variable.
2826         (shmedia_get_operand): Ditto for ptr parameter and src variable.
2827         Use shmedia_parse_exp, not parse_exp.
2828         * config/tc-sh64.c (shmedia_parse_reg): Add shmedia_arg_type
2829         parameter.  All callers changed.
2830         (shmedia_get_operand): Add shmedia_arg_type parameter.  All
2831         callers changed.
2832         (shmedia_parse_reg): Put first two character in local variables.
2833         Use tolower, not TO_LOWER.  If no register is found and argtype
2834         indicates a control register, scan shmedia_creg_table
2835         case-insensitive.
2836         2000-11-24  Hans-Peter Nilsson  <hpn@cygnus.com>
2837         * Makefile.am (CPU_TYPES): Add sh64.
2838         (TARGET_CPU_CFILES): Add config/tc-sh64.c.
2839         (TARGET_CPU_HFILES): Add config/tc-sh64.h.
2840         Regenerate dependencies.
2841         * Makefile.in: Regenerate.
2842         * configure.in: Add support for sh64-*-elf*.
2843         * configure: Regenerate.
2844         * config/tc-sh64.h: New.
2845         * config/tc-sh64.c: New.
2846         * config/tc-sh.c (md_pseudo_table) [HAVE_SH64]: New pseudos
2847         .mode, .isa and .uaquad.
2848         [HAVE_SH64] (SH64PCREL16_32, SH64PCREL16_64, SH64PCREL16PT_32,
2849         SH64PCREL16PT_64, MOVI_IMM_32, MOVI_IMM_64): Define.
2850         [HAVE_SH64] (END): Define as 10.
2851         [HAVE_SH64] (UNDEF_SH64PCREL, SH64PCREL16, SH64PCREL32,
2852         SH64PCREL48, SH64PCREL64, UNDEF_MOVI, MOVI_16, MOVI_32, MOVI_48,
2853         MOVI_64): Define.
2854         [HAVE_SH64] (SH64PCREL16_F, SH64PCREL16_M, SH64PCREL16_LENGTH,
2855         SH64PCREL32_F, SH64PCREL32_M, SH64PCREL32_LENGTH, SH64PCREL48_F,
2856         SH64PCREL48_M, SH64PCREL48_LENGTH, SH64PCREL64_LENGTH,
2857         MOVI_16_LENGTH, MOVI_32_LENGTH, MOVI_48_LENGTH, MOVI_64_LENGTH):
2858         Define.
2859         (md_relax_table) [HAVE_SH64]: Provide relaxations for SHmedia.
2860         (md_begin) [HAVE_SH64]: Call shmedia_md_begin.
2861         (parse_reg) [HAVE_SH64]: Parse register names case-insensitive.
2862         (md_assemble) [HAVE_SH64]: Call shmedia_md_assemble if assembling
2863         SHmedia instructions.  Handle state-change after switching to
2864         SHcompact.
2865         (md_longopts) [HAVE_SH64]: New options --isa=* and --abi=*.
2866         (md_parse_option) [HAVE_SH64]: Parse new options.
2867         (md_show_usage) [HAVE_SH64]: Show usage of new options.
2868         (md_convert_frag) [HAVE_SH64] <default>: Call
2869         shmedia_md_convert_frag instead of abort.
2870         (sh_force_relocation) [HAVE_SH64]: Also force relocation for
2871         BFD_RELOC_SH_SHMEDIA_CODE.
2872         (sh_elf_final_processing) [HAVE_SH64]: Set flags identifying
2873         SHcompact or SHmedia code.
2874         (md_apply_fix) [HAVE_SH64] <default>: Return result from calling
2875         shmedia_md_apply_fix instead of abort.
2876         (md_estimate_size_before_relax) [HAVE_SH64] <default>: Return
2877         result from calling shmedia_md_estimate_size_before_relax instead
2878         of calling abort.
2879         (sh_do_align) [HAVE_SH64]: If shmedia_mode, let shmedia_do_align
2880         do the work.
2881         (tc_gen_reloc) [HAVE_SH64]: For unrecognized relocs, call
2882         shmedia_init_reloc and do nothing more if it returns non-zero.
2883         (sh_finalize) [HAVE_SH64]: Call shmedia_md_end.
2884         * po/POTFILES.in: Regenerate.
2885         * po/gas.pot: Regenerate.
2886
2887 2002-02-06  Alexandre Oliva  <aoliva@redhat.com>
2888
2889         * config/tc-sh.c (parse_at): Install the correct version of
2890         2002-02-04's patch.
2891
2892         * config/tc-sh.c (md_apply_fix3) <BFD_RELOC_32_PLT_PCREL>: Don't
2893         assume fixP->fx_subsy is non-NULL.
2894
2895 2002-02-04  Alexandre Oliva  <aoliva@redhat.com>
2896
2897         * config/tc-sh.c (parse_at): Set arg type of @(expr,pc) to
2898         A_DISP_PC_ABS, and adjust it by -4.
2899         (get_specific): Accept A_DISP_PC_ABS where A_DISP_PC is
2900         expected.
2901         (build_Mytes): Mark PCRELIMM fix-ups as pc-relative only if
2902         the operand type is not A_DISP_PC_ABS.
2903
2904 2002-02-04  Hans-Peter Nilsson  <hp@bitrange.com>
2905
2906         * config/tc-mmix.c (tc_gen_reloc): Don't try and take the value of
2907         common and weak symbols.  Handle common and weak symbols as
2908         undefined symbols with regards to GREG handling and merging.
2909         (mmix_frob_file): Ditto.
2910
2911 2002-02-02  Jason Thorpe  <thorpej@wasabisystems.com>
2912
2913         * configure.in (hppa-*-netbsd*): New target.
2914         * configure: Regenerate.
2915         * config/tc-hppa.h: Also define WARN_COMMENTS if TE_NetBSD.
2916
2917 2002-02-02  Alan Modra  <amodra@bigpond.net.au>
2918
2919         * config/tc-v850.c: Add missing prototypes amd use old-style
2920         function definitions.
2921         (AREA_ZDA, AREA_SDA, AREA_TDA): Delete.
2922         (sdata_section tdata_section, zdata_section, sbss_section,
2923         tbss_section, zbss_section, rosdata_section, rozdata_section,
2924         scommon_section, tcommon_section, zcommon_section,
2925         call_table_data_section, call_table_text_section): Delete.
2926         (v850_sdata, v850_tdata, v850_zdata, v850_sbss, v850_tbss,
2927         v850_zbss, v850_bss, v850_rosdata, v850_rozdata,
2928         v850_call_table_data, v850_call_table_text): Delete.
2929         (struct v850_seg_entry): New.
2930         (v850_seg_table): New.
2931         (SDATA_SECTION TDATA_SECTION, ZDATA_SECTION, SBSS_SECTION,
2932         TBSS_SECTION, ZBSS_SECTION, BSS_SECTION, ROSDATA_SECTION,
2933         ROZDATA_SECTION, SCOMMON_SECTION, TCOMMON_SECTION, ZCOMMON_SECTION,
2934         CALL_TABLE_DATA_SECTION, CALL_TABLE_TEXT_SECTION): Define.
2935         (do_v850_seg): New.
2936         (v850_seg): New.
2937         (v850_comm): Use do_v850_seg and v850_seg_table.  Simplify
2938         recording of alignment.
2939         (md_pseudo_table): Use v850_seg.
2940         (md_begin): Don't init .call_table_data and .call_table_text here.
2941         Set v850_seg_table bss entry.
2942
2943 2002-02-01  Hans-Peter Nilsson  <hp@bitrange.com>
2944
2945         Support on-demand global register allocation by passing on
2946         base-plus-offset relocs to the linker.
2947         * config/tc-mmix.c: Tweak and fix typos in comments.
2948         (allocate_undefined_gregs_in_linker): New variable.
2949         (OPTION_LINKER_ALLOCATED_GREGS): New option macro.
2950         (md_longopts): Add --linker-allocated-gregs.
2951         (md_parse_option) <case 'x'>: Imply --linker-allocated-gregs.
2952         <case OPTION_LINKER_ALLOCATED_GREGS>: New.
2953         (md_show_usage): Update text for -x.  Add text for
2954         --linker-allocated-gregs.
2955         (tc_gen_reloc): Derive default value for addend from val and
2956         baddsy.  Use addsec and bfd_is_abs_section in more places.  Don't
2957         emit error for BFD_RELOC_MMIX_BASE_PLUS_OFFSET without suitable
2958         GREG if allocate_undefined_gregs_in_linker.
2959         * doc/as.texinfo (Overview) <Target MMIX options>: Add
2960         --linker-allocated-gregs.
2961         * doc/c-mmix.texi (MMIX-Opts): Add blurb about
2962         --linker-allocated-gregs.  Mention that it's implied by -x.
2963         (MMIX-Pseudos) <GREG>: Mention when and how a GREG can be omitted.
2964         (MMIX-mmixal): Clarify dated comparison and location of MMIXware.
2965
2966         * config/tc-mmix.h (md_parse_name): Use ISUPPER, not isupper.
2967
2968 2002-02-01  Alan Modra  <amodra@bigpond.net.au>
2969
2970         * Makefile.am: Run "make dep-am"
2971         * Makefile.in: Regenerate.
2972
2973 2002-01-31  Ivan Guzvinec  <ivang@opencores.org>
2974
2975         * config/tc-or32.c: New file.
2976         * config/tc-or32.h: New file.
2977         * configure.in: Add support for or32 targets.
2978         * configure: Regenerate.
2979         * config/obj-coff.c: Add support for or32 targets.
2980         * config/obj-coff.h: Add support for or32 targets.
2981         * Makefile.am: Add support for or32 targets.
2982         * Makefile.in: Regenerate.
2983         * NEWS: Mention support for OpenRISC.
2984         * doc/Makefile.in: Regenerate.
2985         * po/POTFILES.in: Regenerate.
2986         * po/gas.pot: Regenerate.
2987
2988 2002-01-30  Richard Sandiford  <rsandifo@redhat.com>
2989
2990         * config/tc-sh.c (parse_reg): Fix end-of-word check for is, ix, iy
2991         and mod.
2992
2993 2002-01-29  Chris Demetriou  <cgd@broadcom.com>
2994
2995         * config/tc-mips.c (tc_gen_reloc): Arrange for
2996         BFD_RELOC_PCREL_HI16_S relocations to be output relative to
2997         their LO16 parts, even for ELF.
2998
2999 2002-01-29  Daniel Jacobowitz  <drow@mvista.com>
3000
3001         * config/tc-i386.c: Protect definitions of true and false
3002         from redefinition.
3003
3004 2002-01-28  Jakub Jelinek  <jakub@redhat.com>
3005
3006         * config/obj-elf.c (elf_frob_file_before_adjust): Remove symbols
3007         made because of .weak, if they are neither defined nor used in any
3008         way.
3009
3010 2002-01-27  Daniel Jacobowitz  <drow@mvista.com>
3011
3012         * configure: Regenerated.
3013
3014 2002-01-26  Hans-Peter Nilsson  <hp@bitrange.com>
3015
3016         * doc/Makefile.am (install): Depend on install-info.
3017         * doc/Makefile.in: Regenerate.
3018
3019 2002-01-26  Nick Clifton <nick@redhat.com>
3020
3021         * po/fr.po: Updated version
3022
3023 2002-01-24  Kazu Hirata  <kazu@hxi.com>
3024
3025         * config/tc-h8300.c (check_operand): Don't print a warning
3026         when a valid 24-bit address is given to a 16-bit address
3027         operand.
3028
3029 2002-01-24  Alexandre Oliva  <aoliva@redhat.com>
3030
3031         * config/tc-sh.c (sh_elf_suffix): Removed.
3032         (sh_PIC_related_p, sh_check_fixup, sh_cons_fix_new,
3033         sh_end_of_match, sh_parse_name): New functions.
3034         (sh_elf_cons): Simplify.
3035         (parse_exp): Reject misplaced PIC operands.
3036         (md_undefined_symbol): Simplify.
3037         (sh_fix_adjustable): Let @GOTOFF be adjusted.
3038         (md_apply_fix3): Write @PLT and @GOTOFF addends in place.
3039         (tc_gen_reloc): Move fixp subsy absolute value into addnumber.
3040         Complain if subsy remains at the end.
3041         * config/tc-sh.h (sh_parse_name, sh_cons_fix_new): Declare.
3042         (md_parse_name, TC_CONS_FIX_NEW, O_PIC_reloc): Define.
3043
3044 2002-01-22  Alexandre Oliva  <aoliva@redhat.com>
3045
3046         * config/tc-mn10300.c (xr_registers): Move `pc'...
3047         (other_registers): ... here.
3048
3049 2002-01-22  Alan Modra  <amodra@bigpond.net.au>
3050
3051         * Makefile.am: Run "make dep-am".
3052         * Makefile.in: Regenerate.
3053         * gas/po/POTFILES.in: Regenerate.
3054
3055 2002-01-21  DJ Delorie  <dj@redhat.com>
3056
3057         * config/obj-coff.c (obj_coff_init_stab_section): Make the
3058         stabstr_name allocation permanent, as it will be referenced from
3059         the section hash.
3060
3061 2002-01-21  Jason Thorpe  <thorpej@wasabisystems.com>
3062
3063         * configure.in (ia64-*-netbsd*): New target.
3064         * configure: Regenerate.
3065
3066 2002-01-21  Hans-Peter Nilsson  <hp@bitrange.com>
3067
3068         * doc/as.texinfo (Overview) <Target ARM options>: Add missing {}
3069         to @dots call.
3070         <Detailed description, ARM options>: Ditto.
3071         * doc/c-arm.texi (ARM Options): Ditto.
3072
3073 2002-01-18  Richard Earnshaw  <rearnsha@arm.com>
3074
3075         * tc-arm.c (do_xsc_mia, do_xsc_mar, do_xsc_mra): Renamed from
3076         do_mia, do_mar and do_mra respectively.
3077         (do_mav_*): Renamed from do_c_*.
3078         (mav_reg_required_here, mav_parse_offset): Renamed from
3079         cirrus_reg_required_here and cirrus_parse_offset respectively.
3080         (MAV_MODE?): Renamed from CIRRUS_MODE?.
3081
3082 2002-01-18  Richard Earnshaw  <rearnsha@arm.com>
3083             Keith Walker  <keith.walker@arm.com>
3084
3085         * tc-arm.c (ARM_EXT_V5J, ARM_ARCH_V5TEJ): Define.
3086         (insns): Add pattern for bxj instruction.
3087         (do_bxj): New function.
3088         (arm_cpus): Add arm926ej.
3089         (arm_archs): Add armv5tej.
3090
3091 2002-01-18  Richard Earnshaw  <rearnsha@arm.com>
3092
3093         * doc/c-arm.texi: Add new fpe options to list of supported flags.
3094
3095 2002-01-19  Keith Walker  <keith.walker@arm.com>
3096
3097         * tc-arm.c (arm_fpus): Add fpe2 and fpe3.
3098
3099 2002-01-18  Richard Earnshaw  <rearnsha@arm.com>
3100
3101         * NEWS: Mention new ARM command-line options and VFP support.
3102
3103         * config/tc-arm.c (ARM_CEXT_XSCALE): Replaces ARM_EXT_XSCALE.  All
3104         uses changed.
3105         (ARM_CEXT_MAVERICK): Similarly.
3106         (ARM_ANY): Now means any core instruction.
3107         (CPU_DEFAULT): Default to ARM_ANY.
3108         (uses_apcs_26, atcps, support_interwork, uses_apcs_float)
3109         (pic_code): Declare for all object types.  Make type int.
3110         (legacy_cpu, legacy_fpu, mcpu_cpu_opt, mcpu_fpu_opt, march_cpu_opt)
3111         (march_fpu_opt, mfpu_opt): Declare.
3112         (md_longopts): Tidy up conditional definitions.
3113         (arm_opts, arm_cpus, arm_archs, arm_fpus, arm_extensions)
3114         (arm_long_opts): New tables.
3115         (arm_parse_cpu, arm_parse_arch, arm_parse_fpu): New functions.
3116         (arm_parse_extension): New function.
3117         (md_parse_option): Rewrite using new table-driven system.
3118         (md_show_usage): Use new table-driven system.
3119         (md_begin): Calculate cpu_variant from command line option data.
3120         * doc/as.texinfo (ARM ISA options): Docuement new ARM-specific
3121         command-line options.
3122         * doc/c-arm.texi: Likewise.
3123
3124 2002-01-18  Andreas Jaeger  <aj@suse.de>
3125
3126         * as.c (parse_args): Update year.
3127
3128 2002-01-17  Timothy Wall  <twall@alum.mit.edu>
3129
3130         * config/tc-tic54x.c (encode_address): Add a more informative
3131         warning about incorrect syntax.
3132
3133 2002-01-17  Nick Clifton  <nickc@cambridge.redhat.com>
3134
3135         * po/gas.pot: Regenerate.
3136
3137 2002-01-17  Nick Clifton  <nickc@cambridge.redhat.com>
3138
3139         * macro.c (get_any_string): Add no-c-format comment to prevent
3140         confusion when translating string.
3141         * gasp.c (get_any_string): Add no-c-format comment to prevent
3142         confusion when translating string.
3143
3144 2002-01-16  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
3145             Johannes Stezenbach <js@convergence.de>
3146         * config/tc-mips.c (percent_op): Ensure longer percent_op's are
3147         matched before the shorter ones.
3148         (my_getSmallParser): Fix handling of nested parentheses in
3149         percent_op's. Code cleanup.
3150         (my_getPercentOp): New function, code from my_getSmallParser.
3151         (my_getSmallExpression): Fix handling of closing parentheses.
3152         Code cleanup. Better comments.
3153
3154 2002-01-16  Nick Clifton <nickc@redhat.com>
3155
3156         po/tr.po: New file: Turkish translation.
3157         configure.in (LINGUAS): Add "tr".
3158         configure: Regenerate.
3159
3160 2002-01-15  Richard Earnshaw  <rearnsha@arm.com>
3161
3162         Support for VFP instructions
3163         * tc-arm.c (CP_WB_OK, CP_NO_WB): New defines.
3164         (cp_address_required_here): New argument wb_ok.  When false, do not
3165         accept write-back forms of addressing.  Change all callers.
3166         (FPU_VFP_EXT_NONE, FPU_VFP_EXT_V1xD, FPU_VFP_VFP_V1)
3167         (FPU_VFP_EXT_V2): Define.
3168         (FPU_ARCH_VFP, FPU_ARCH_VFP_V1xD, FPU_ARCH_VFP_V1, FPU_ARCH_VFP_V2):
3169         Define in terms of above.
3170         (vfp_dp_reg_pos, vfp_sp_reg_pos, vfp_ldstm_type): New enums.
3171         (vfp_reg): New struct.
3172         (vfp_regs): New array of registers.
3173         (insns): Add VFP instructions.
3174         (sn_table): New array of VFP single-precision register names.
3175         (dn_table): New array of VFP double-precision register names.
3176         (all_reg_maps): Add the new register tables.
3177         (arm_reg_type): Add new values for above.  Increase RET_TYPE_MAX.
3178         (vfp_sp_reg_required_here, vfp_dp_reg_required_here, do_vfp_sp_monadic)
3179         (do_vfp_dp_monadic, do_vfp_sp_dyadic, do_vfp_dp_dyadic)
3180         (do_vfp_reg_from_sp, do_vfp_sp_reg2, do_vfp_sp_from_reg)
3181         (do_vfp_reg_from_dp, do_vfp_reg2_from_dp, do_vfp_dp_from_reg)
3182         (do_vfp_dp_from_reg2, vfp_psr_parse, vfp_psr_required_here)
3183         (do_vfp_reg_from_ctrl, do_vfp_ctrl_from_reg, do_vfp_sp_ldst)
3184         (do_vfp_dp_ldst, vfp_sp_reg_list, vfp_dp_reg_list, vfp_sp_ldstm)
3185         (vfp_dp_ldstm, do_vfp_sp_ldstmia, do_vfp_sp_ldstmdb, do_vfp_ldstmia)
3186         (do_vfp_dp_ldstmdb, do_vfp_xp_ldstmia, do_vfp_xp_ldstmdb)
3187         (do_vfp_sp_compare_z, do_vfp_dp_compare_z, do_vfp_dp_sp_cvt)
3188         (do_vfp_sp_dp_cvt): New functions.
3189         (md_begin): Set soft-float flag for appropriate VFP work.
3190         (md_atof): Handle VFP-format doubles.
3191         (md_parse_option): Handle VFP command-line options.
3192         (md_show_usage): Display VFP command-line options.
3193
3194 2002-01-15  Richard Earnshaw  <rearnsha@arm.com>
3195
3196         * tc-arm.c (md_parse_option): Tidy up setting of cpu_variant for
3197         various command line options.
3198
3199 2002-01-15  Nick Clifton  <nickc@cambridge.redhat.com>
3200
3201         * config/tc-xstormy16.c: (xstormy16_fix_adjustable): Do not fix
3202         vtinherit relocs.
3203         (xstormy16_md_apply_fix3): Do not return a value.
3204
3205 2002-01-14  Richard Earnshaw  <rearnsha@arm.com>
3206
3207         * tc-arm.c (md_longopts): On targets that aren't bi-endian, support
3208         the -EL/-EB option that matches the target's endianness.
3209         (md_parse_option): Likewise.
3210
3211 2002-01-14  Richard Earnshaw  <rearnsha@arm.com>
3212
3213         * tc-arm.c (md_longopts): Fix misplaced #endif -- the -oabi option
3214         is not dependent on ARM_BI_ENDIAN.
3215
3216 2002-01-14  Richard Earnshaw  <rearnsha@arm.com>
3217
3218         * tc-arm.c (all error messages): Normalize capitalization of messages.
3219
3220         * tc-arm.h (md_operand): Delete define.
3221         * tc-arm.c (in_my_get_expression): New static variable.
3222         (my_get_expression): Set and clear it.
3223         (md_operand): New function.  If called from my_get_expression
3224         put the error in inst.error.
3225         (output_inst): Now takes argument of instruction being assembled.
3226         Print it out with any error message.
3227         (do_ldst, do_ldstv4, thumb_load_store): Fault attempt to use a store
3228         with '=' syntax.
3229         (end_of_line): Don't update inst.error if it is already set.
3230
3231 2002-01-11  Richard Earnshaw  <rearnsha@arm.com>
3232
3233         * tc-arm.c (do_ldst): Fix handling an immediate expression pseudo
3234         op that can be translated into a mvn instruction.
3235
3236 2002-01-11  Steve Ellcey  <sje@cup.hp.com>
3237
3238         * gas/config/tc-ia64.h (MD_FLAGS_DEFAULT): New Macro for
3239         setting default md.flags.
3240         (SHT_INIT_ARRAY): New elf special section used by HP-UX.
3241         (SHT_FINI_ARRAY): New elf special section used by HP-UX.
3242         * gas/config/tc-ia64.c (setup_unwind_header): Add support
3243         for 32 bit unwind info blocks.
3244         (generate_unwind_image): Add support for different types
3245         of unwind images (32 bits and/or big-endian).
3246         (ia64_init): Use MD_FLAGS_DEFAULT to set md.flags.
3247         (ia64_target_format): Add support for hpux target formats.
3248         (ia64_gen_real_reloc_type): Add support for FUNC_IPLT_RELOC.
3249         (ia64_elf_section_type): Add support for SHT_INIT_ARRAY and
3250         SHT_FINI_ARRAY elf section types.
3251
3252 2002-01-10  Richard Earnshaw  <rearnsha@arm.com>
3253
3254         * tc-arm.c (struct reg_entry): Move before prototypes.
3255         (int_register, cp_register, fp_register): Delete.
3256         (reg_table): Delete.  Replaced with ...
3257         (rn_table, cp_table, cn_table, fn_table, mav_mvf_table)
3258         (mav_mvd_table, mav_mvfx_table, mav_mvdx_table, mav_mvax_table)
3259         (mav_dspsc_table): ... one table per register set.
3260         (arm_reg_hsh): Delete.
3261         (struct reg_map): New structure.
3262         (all_reg_maps): New array.
3263         (enum arm_reg_type): New enums.
3264         (build_reg_hsh): New function.
3265         (insert_reg_alias): Use hash table passed by caller.  Adjust all
3266         callers.
3267         (create_register_alias): New function, split out from ...
3268         (md_assemble): ... here.
3269         (md_begin): Build new register hash tables.
3270         (arm_reg_parse): New argument for the hash table to search.  Adjust all
3271         callers.
3272         (arm_reg_parse_any): New function.
3273         (co_proc_number): Look up the processor number in the processor hash
3274         table.
3275         (cirrus_regtype): Delete.
3276         (cirrus_register, cirrus_mvf_register, cirrus_mvd_register)
3277         (cirrus_mvfx_register, cirrus_mvdx_register, cirrus_mvax_register)
3278         (ARM_EXT_MAVERICKsc_register): Delete.
3279         (do_c_binops_1, do_c_binops_2, do_c_binops_3): Delete.
3280         (do_c_binops_1[a-o], do_c_binops_2[a-c], do_c_binops_3[a-d]): New
3281         functions.
3282         (do_c_triple_4, do_c_triple_5): Delete.
3283         (do_c_triple_4[ab], do_c_triple_5[a-h]): New functions.
3284         (do_c_quad_6): Delete.
3285         (do_c_quad_6[ab]): New functions.
3286         (do_c_binops, do_c_triple, do_c_quad, do_c_shift, do_c_ldst): Rework
3287         arguments to use new register parsing methods.
3288         (cirrus_reg_required_here): Likewise.
3289         (insns): Reclassify cirrus maverick worker functions.
3290         (cirrus_valid_reg): Delete.
3291
3292 2002-01-07  Jason Thorpe  <thorpej@wasabisystems.com>
3293
3294         * configure.in (sh*le): Set cpu_type=sh and endian=little.
3295         (sh*-*-netbsdelf*): New target.
3296         * configure: Regenerate.
3297         * tc-sh.h: Update copyright years.
3298         (TARGET_FORMAT): Add version for TE_NetBSD.
3299
3300 2002-01-07  Nick Clifton  <nickc@cambridge.redhat.com>
3301
3302         * read.c (emit_expr): Do not allow 'size' or 'nbytes' to go
3303         negative.
3304
3305 2002-01-06  Alan Modra  <amodra@bigpond.net.au>
3306
3307         * config/tc-m68k.h (md_prepare_relax_scan): Rewrite.
3308         * config/tc-m68k.c (md_relax_table): Add md_prepare_relax_scan comment.
3309
3310 2002-01-05  Daniel Jacobowitz  <drow@mvista.com>
3311
3312         * tc-mips.c (mips_cprestore_valid): New flag.
3313         (mips_frame_reg_valid): New flag.
3314         (macro) [M_JAL_2]: Check both flags.
3315         [M_JAL_A]: Likewise.
3316         (s_cprestore): Set mips_cprestore_valid.
3317         (tc_get_register): If setting mips_frame_reg, set
3318         mips_frame_reg_valid and clear mips_cprestore_valid.
3319         (s_mips_ent): Clear both flags.
3320         (s_mips_end): Clear both flags.
3321
3322 2002-01-05  Alan Modra  <amodra@bigpond.net.au>
3323
3324         * write.c (write_object_file): Make use of bfd_section_list_remove.
3325         * config/obj-ecoff.c (ecoff_frob_file): Likewise.
3326         * config/tc-mmix.c (mmix_frob_file): Likewise.
3327
3328 2002-01-04  Jason Thorpe  <thorpej@wasabisystems.com>
3329
3330         * configure.in (i386-*-netbsdelf*): Collapse target into...
3331         (i386-*-netbsd*): ...this.  Add support for x86-64.
3332         * configure: Regenerated.
3333
3334 2002-01-03  matthew green  <mrg@redhat.com>
3335
3336         * config/tc-ppc.c (md_parse_option): BookE is not Motorola specific.
3337
3338 2002-01-02  Nick Clifton  <nickc@cambridge.redhat.com>
3339
3340         * config/tc-m68k.c (md_estimate_size_before_relax): Test for a
3341         NULL frag link.
3342
3343 For older changes see ChangeLog-0001
3344 \f
3345 Local Variables:
3346 mode: change-log
3347 left-margin: 8
3348 fill-column: 74
3349 version-control: never
3350 End: