bfd:
[external/binutils.git] / gas / ChangeLog
1 2002-02-02  Jason Thorpe  <thorpej@wasabisystems.com>
2
3         * configure.in (hppa-*-netbsd*): New target.
4         * configure: Regenerate.
5         * config/tc-hppa.h: Also define WARN_COMMENTS if TE_NetBSD.
6
7 2002-02-02  Alan Modra  <amodra@bigpond.net.au>
8
9         * config/tc-v850.c: Add missing prototypes amd use old-style
10         function definitions.
11         (AREA_ZDA, AREA_SDA, AREA_TDA): Delete.
12         (sdata_section tdata_section, zdata_section, sbss_section,
13         tbss_section, zbss_section, rosdata_section, rozdata_section,
14         scommon_section, tcommon_section, zcommon_section,
15         call_table_data_section, call_table_text_section): Delete.
16         (v850_sdata, v850_tdata, v850_zdata, v850_sbss, v850_tbss,
17         v850_zbss, v850_bss, v850_rosdata, v850_rozdata,
18         v850_call_table_data, v850_call_table_text): Delete.
19         (struct v850_seg_entry): New.
20         (v850_seg_table): New.
21         (SDATA_SECTION TDATA_SECTION, ZDATA_SECTION, SBSS_SECTION,
22         TBSS_SECTION, ZBSS_SECTION, BSS_SECTION, ROSDATA_SECTION,
23         ROZDATA_SECTION, SCOMMON_SECTION, TCOMMON_SECTION, ZCOMMON_SECTION,
24         CALL_TABLE_DATA_SECTION, CALL_TABLE_TEXT_SECTION): Define.
25         (do_v850_seg): New.
26         (v850_seg): New.
27         (v850_comm): Use do_v850_seg and v850_seg_table.  Simplify
28         recording of alignment.
29         (md_pseudo_table): Use v850_seg.
30         (md_begin): Don't init .call_table_data and .call_table_text here.
31         Set v850_seg_table bss entry.
32
33 2002-02-01  Hans-Peter Nilsson  <hp@bitrange.com>
34
35         Support on-demand global register allocation by passing on
36         base-plus-offset relocs to the linker.
37         * config/tc-mmix.c: Tweak and fix typos in comments.
38         (allocate_undefined_gregs_in_linker): New variable.
39         (OPTION_LINKER_ALLOCATED_GREGS): New option macro.
40         (md_longopts): Add --linker-allocated-gregs.
41         (md_parse_option) <case 'x'>: Imply --linker-allocated-gregs.
42         <case OPTION_LINKER_ALLOCATED_GREGS>: New.
43         (md_show_usage): Update text for -x.  Add text for
44         --linker-allocated-gregs.
45         (tc_gen_reloc): Derive default value for addend from val and
46         baddsy.  Use addsec and bfd_is_abs_section in more places.  Don't
47         emit error for BFD_RELOC_MMIX_BASE_PLUS_OFFSET without suitable
48         GREG if allocate_undefined_gregs_in_linker.
49         * doc/as.texinfo (Overview) <Target MMIX options>: Add
50         --linker-allocated-gregs.
51         * doc/c-mmix.texi (MMIX-Opts): Add blurb about
52         --linker-allocated-gregs.  Mention that it's implied by -x.
53         (MMIX-Pseudos) <GREG>: Mention when and how a GREG can be omitted.
54         (MMIX-mmixal): Clarify dated comparison and location of MMIXware.
55
56         * config/tc-mmix.h (md_parse_name): Use ISUPPER, not isupper.
57
58 2002-02-01  Alan Modra  <amodra@bigpond.net.au>
59
60         * Makefile.am: Run "make dep-am"
61         * Makefile.in: Regenerate.
62
63 2002-01-31  Ivan Guzvinec  <ivang@opencores.org>
64
65         * config/tc-or32.c: New file.
66         * config/tc-or32.h: New file.
67         * configure.in: Add support for or32 targets.
68         * configure: Regenerate.
69         * config/obj-coff.c: Add support for or32 targets.
70         * config/obj-coff.h: Add support for or32 targets.
71         * Makefile.am: Add support for or32 targets.
72         * Makefile.in: Regenerate.
73         * NEWS: Mention support for OpenRISC.
74         * doc/Makefile.in: Regenerate.
75         * po/POTFILES.in: Regenerate.
76         * po/gas.pot: Regenerate.
77
78 2002-01-30  Richard Sandiford  <rsandifo@redhat.com>
79
80         * config/tc-sh.c (parse_reg): Fix end-of-word check for is, ix, iy
81         and mod.
82
83 2002-01-29  Chris Demetriou  <cgd@broadcom.com>
84
85         * config/tc-mips.c (tc_gen_reloc): Arrange for
86         BFD_RELOC_PCREL_HI16_S relocations to be output relative to
87         their LO16 parts, even for ELF.
88
89 2002-01-29  Daniel Jacobowitz  <drow@mvista.com>
90
91         * config/tc-i386.c: Protect definitions of true and false
92         from redefinition.
93
94 2002-01-28  Jakub Jelinek  <jakub@redhat.com>
95
96         * config/obj-elf.c (elf_frob_file_before_adjust): Remove symbols
97         made because of .weak, if they are neither defined nor used in any
98         way.
99
100 2002-01-27  Daniel Jacobowitz  <drow@mvista.com>
101
102         * configure: Regenerated.
103
104 2002-01-26  Hans-Peter Nilsson  <hp@bitrange.com>
105
106         * doc/Makefile.am (install): Depend on install-info.
107         * doc/Makefile.in: Regenerate.
108
109 2002-01-26  Nick Clifton <nick@redhat.com>
110
111         * po/fr.po: Updated version
112
113 2002-01-24  Kazu Hirata  <kazu@hxi.com>
114
115         * config/tc-h8300.c (check_operand): Don't print a warning
116         when a valid 24-bit address is given to a 16-bit address
117         operand.
118
119 2002-01-24  Alexandre Oliva  <aoliva@redhat.com>
120
121         * config/tc-sh.c (sh_elf_suffix): Removed.
122         (sh_PIC_related_p, sh_check_fixup, sh_cons_fix_new,
123         sh_end_of_match, sh_parse_name): New functions.
124         (sh_elf_cons): Simplify.
125         (parse_exp): Reject misplaced PIC operands.
126         (md_undefined_symbol): Simplify.
127         (sh_fix_adjustable): Let @GOTOFF be adjusted.
128         (md_apply_fix3): Write @PLT and @GOTOFF addends in place.
129         (tc_gen_reloc): Move fixp subsy absolute value into addnumber.
130         Complain if subsy remains at the end.
131         * config/tc-sh.h (sh_parse_name, sh_cons_fix_new): Declare.
132         (md_parse_name, TC_CONS_FIX_NEW, O_PIC_reloc): Define.
133
134 2002-01-22  Alexandre Oliva  <aoliva@redhat.com>
135
136         * config/tc-mn10300.c (xr_registers): Move `pc'...
137         (other_registers): ... here.
138
139 2002-01-22  Alan Modra  <amodra@bigpond.net.au>
140
141         * Makefile.am: Run "make dep-am".
142         * Makefile.in: Regenerate.
143         * gas/po/POTFILES.in: Regenerate.
144
145 2002-01-21  DJ Delorie  <dj@redhat.com>
146
147         * config/obj-coff.c (obj_coff_init_stab_section): Make the
148         stabstr_name allocation permanent, as it will be referenced from
149         the section hash.
150
151 2002-01-21  Jason Thorpe  <thorpej@wasabisystems.com>
152
153         * configure.in (ia64-*-netbsd*): New target.
154         * configure: Regenerate. 
155
156 2002-01-21  Hans-Peter Nilsson  <hp@bitrange.com>
157
158         * doc/as.texinfo (Overview) <Target ARM options>: Add missing {}
159         to @dots call.
160         <Detailed description, ARM options>: Ditto.
161         * doc/c-arm.texi (ARM Options): Ditto.
162
163 2002-01-18  Richard Earnshaw  <rearnsha@arm.com>
164
165         * tc-arm.c (do_xsc_mia, do_xsc_mar, do_xsc_mra): Renamed from
166         do_mia, do_mar and do_mra respectively.
167         (do_mav_*): Renamed from do_c_*.
168         (mav_reg_required_here, mav_parse_offset): Renamed from
169         cirrus_reg_required_here and cirrus_parse_offset respectively.
170         (MAV_MODE?): Renamed from CIRRUS_MODE?.
171
172 2002-01-18  Richard Earnshaw  <rearnsha@arm.com>
173             Keith Walker  <keith.walker@arm.com>
174
175         * tc-arm.c (ARM_EXT_V5J, ARM_ARCH_V5TEJ): Define.
176         (insns): Add pattern for bxj instruction.
177         (do_bxj): New function.
178         (arm_cpus): Add arm926ej.
179         (arm_archs): Add armv5tej.
180
181 2002-01-18  Richard Earnshaw  <rearnsha@arm.com>
182
183         * doc/c-arm.texi: Add new fpe options to list of supported flags.
184
185 2002-01-19  Keith Walker  <keith.walker@arm.com>
186
187         * tc-arm.c (arm_fpus): Add fpe2 and fpe3.
188
189 2002-01-18  Richard Earnshaw  <rearnsha@arm.com>
190
191         * NEWS: Mention new ARM command-line options and VFP support.
192
193         * config/tc-arm.c (ARM_CEXT_XSCALE): Replaces ARM_EXT_XSCALE.  All 
194         uses changed.
195         (ARM_CEXT_MAVERICK): Similarly.
196         (ARM_ANY): Now means any core instruction.
197         (CPU_DEFAULT): Default to ARM_ANY.
198         (uses_apcs_26, atcps, support_interwork, uses_apcs_float)
199         (pic_code): Declare for all object types.  Make type int.
200         (legacy_cpu, legacy_fpu, mcpu_cpu_opt, mcpu_fpu_opt, march_cpu_opt)
201         (march_fpu_opt, mfpu_opt): Declare.
202         (md_longopts): Tidy up conditional definitions.
203         (arm_opts, arm_cpus, arm_archs, arm_fpus, arm_extensions)
204         (arm_long_opts): New tables.
205         (arm_parse_cpu, arm_parse_arch, arm_parse_fpu): New functions.
206         (arm_parse_extension): New function.
207         (md_parse_option): Rewrite using new table-driven system.
208         (md_show_usage): Use new table-driven system.
209         (md_begin): Calculate cpu_variant from command line option data.
210         * doc/as.texinfo (ARM ISA options): Docuement new ARM-specific
211         command-line options.
212         * doc/c-arm.texi: Likewise.
213
214 2002-01-18  Andreas Jaeger  <aj@suse.de>
215
216         * as.c (parse_args): Update year.
217
218 2002-01-17  Timothy Wall  <twall@alum.mit.edu>
219
220         * config/tc-tic54x.c (encode_address): Add a more informative
221         warning about incorrect syntax.
222
223 2002-01-17  Nick Clifton  <nickc@cambridge.redhat.com>
224
225         * po/gas.pot: Regenerate.
226
227 2002-01-17  Nick Clifton  <nickc@cambridge.redhat.com>
228
229         * macro.c (get_any_string): Add no-c-format comment to prevent
230         confusion when translating string.
231         * gasp.c (get_any_string): Add no-c-format comment to prevent
232         confusion when translating string.
233
234 2002-01-16  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
235             Johannes Stezenbach <js@convergence.de>
236         * config/tc-mips.c (percent_op): Ensure longer percent_op's are
237         matched before the shorter ones.
238         (my_getSmallParser): Fix handling of nested parentheses in
239         percent_op's. Code cleanup.
240         (my_getPercentOp): New function, code from my_getSmallParser.
241         (my_getSmallExpression): Fix handling of closing parentheses.
242         Code cleanup. Better comments.
243
244 2002-01-16  Nick Clifton <nickc@redhat.com>
245
246         po/tr.po: New file: Turkish translation.
247         configure.in (LINGUAS): Add "tr".
248         configure: Regenerate.
249
250 2002-01-15  Richard Earnshaw  <rearnsha@arm.com>
251
252         Support for VFP instructions
253         * tc-arm.c (CP_WB_OK, CP_NO_WB): New defines.
254         (cp_address_required_here): New argument wb_ok.  When false, do not
255         accept write-back forms of addressing.  Change all callers.
256         (FPU_VFP_EXT_NONE, FPU_VFP_EXT_V1xD, FPU_VFP_VFP_V1)
257         (FPU_VFP_EXT_V2): Define.
258         (FPU_ARCH_VFP, FPU_ARCH_VFP_V1xD, FPU_ARCH_VFP_V1, FPU_ARCH_VFP_V2):
259         Define in terms of above.
260         (vfp_dp_reg_pos, vfp_sp_reg_pos, vfp_ldstm_type): New enums.
261         (vfp_reg): New struct.
262         (vfp_regs): New array of registers.
263         (insns): Add VFP instructions.
264         (sn_table): New array of VFP single-precision register names.
265         (dn_table): New array of VFP double-precision register names.
266         (all_reg_maps): Add the new register tables.
267         (arm_reg_type): Add new values for above.  Increase RET_TYPE_MAX.
268         (vfp_sp_reg_required_here, vfp_dp_reg_required_here, do_vfp_sp_monadic)
269         (do_vfp_dp_monadic, do_vfp_sp_dyadic, do_vfp_dp_dyadic)
270         (do_vfp_reg_from_sp, do_vfp_sp_reg2, do_vfp_sp_from_reg)
271         (do_vfp_reg_from_dp, do_vfp_reg2_from_dp, do_vfp_dp_from_reg)
272         (do_vfp_dp_from_reg2, vfp_psr_parse, vfp_psr_required_here)
273         (do_vfp_reg_from_ctrl, do_vfp_ctrl_from_reg, do_vfp_sp_ldst)
274         (do_vfp_dp_ldst, vfp_sp_reg_list, vfp_dp_reg_list, vfp_sp_ldstm)
275         (vfp_dp_ldstm, do_vfp_sp_ldstmia, do_vfp_sp_ldstmdb, do_vfp_ldstmia)
276         (do_vfp_dp_ldstmdb, do_vfp_xp_ldstmia, do_vfp_xp_ldstmdb)
277         (do_vfp_sp_compare_z, do_vfp_dp_compare_z, do_vfp_dp_sp_cvt)
278         (do_vfp_sp_dp_cvt): New functions.
279         (md_begin): Set soft-float flag for appropriate VFP work.
280         (md_atof): Handle VFP-format doubles.
281         (md_parse_option): Handle VFP command-line options.
282         (md_show_usage): Display VFP command-line options.
283
284 2002-01-15  Richard Earnshaw  <rearnsha@arm.com>
285
286         * tc-arm.c (md_parse_option): Tidy up setting of cpu_variant for
287         various command line options.
288
289 2002-01-15  Nick Clifton  <nickc@cambridge.redhat.com>
290
291         * config/tc-xstormy16.c: (xstormy16_fix_adjustable): Do not fix
292         vtinherit relocs.
293         (xstormy16_md_apply_fix3): Do not return a value.
294
295 2002-01-14  Richard Earnshaw  <rearnsha@arm.com>
296
297         * tc-arm.c (md_longopts): On targets that aren't bi-endian, support
298         the -EL/-EB option that matches the target's endianness.
299         (md_parse_option): Likewise.
300
301 2002-01-14  Richard Earnshaw  <rearnsha@arm.com>
302
303         * tc-arm.c (md_longopts): Fix misplaced #endif -- the -oabi option
304         is not dependent on ARM_BI_ENDIAN.
305
306 2002-01-14  Richard Earnshaw  <rearnsha@arm.com>
307
308         * tc-arm.c (all error messages): Normalize capitalization of messages.
309
310         * tc-arm.h (md_operand): Delete define.
311         * tc-arm.c (in_my_get_expression): New static variable.
312         (my_get_expression): Set and clear it.
313         (md_operand): New function.  If called from my_get_expression
314         put the error in inst.error.
315         (output_inst): Now takes argument of instruction being assembled.
316         Print it out with any error message.
317         (do_ldst, do_ldstv4, thumb_load_store): Fault attempt to use a store
318         with '=' syntax.
319         (end_of_line): Don't update inst.error if it is already set.
320
321 2002-01-11  Richard Earnshaw  <rearnsha@arm.com>
322
323         * tc-arm.c ((do_ldst): Fix handling an immediate expression pseudo
324         op that can be translated into a mvn instruction.
325
326 2002-01-11  Steve Ellcey  <sje@cup.hp.com>
327
328         * gas/config/tc-ia64.h (MD_FLAGS_DEFAULT): New Macro for
329         setting default md.flags.
330         (SHT_INIT_ARRAY): New elf special section used by HP-UX.
331         (SHT_FINI_ARRAY): New elf special section used by HP-UX.
332         * gas/config/tc-ia64.c (setup_unwind_header): Add support
333         for 32 bit unwind info blocks.
334         (generate_unwind_image): Add support for different types
335         of unwind images (32 bits and/or big-endian).
336         (ia64_init): Use MD_FLAGS_DEFAULT to set md.flags.
337         (ia64_target_format): Add support for hpux target formats.
338         (ia64_gen_real_reloc_type): Add support for FUNC_IPLT_RELOC.
339         (ia64_elf_section_type): Add support for SHT_INIT_ARRAY and
340         SHT_FINI_ARRAY elf section types.
341
342 2002-01-10  Richard Earnshaw  <rearnsha@arm.com>
343
344         * tc-arm.c (struct reg_entry): Move before prototypes.
345         (int_register, cp_register, fp_register): Delete.
346         (reg_table): Delete.  Replaced with ...
347         (rn_table, cp_table, cn_table, fn_table, mav_mvf_table)
348         (mav_mvd_table, mav_mvfx_table, mav_mvdx_table, mav_mvax_table)
349         (mav_dspsc_table): ... one table per register set.
350         (arm_reg_hsh): Delete.
351         (struct reg_map): New structure.
352         (all_reg_maps): New array.
353         (enum arm_reg_type): New enums.
354         (build_reg_hsh): New function.
355         (insert_reg_alias): Use hash table passed by caller.  Adjust all
356         callers.
357         (create_register_alias): New function, split out from ...
358         (md_assemble): ... here.
359         (md_begin): Build new register hash tables.
360         (arm_reg_parse): New argument for the hash table to search.  Adjust all
361         callers.
362         (arm_reg_parse_any): New function.
363         (co_proc_number): Look up the processor number in the processor hash
364         table.
365         (cirrus_regtype): Delete.
366         (cirrus_register, cirrus_mvf_register, cirrus_mvd_register)
367         (cirrus_mvfx_register, cirrus_mvdx_register, cirrus_mvax_register)
368         (ARM_EXT_MAVERICKsc_register): Delete.
369         (do_c_binops_1, do_c_binops_2, do_c_binops_3): Delete.
370         (do_c_binops_1[a-o], do_c_binops_2[a-c], do_c_binops_3[a-d]): New
371         functions.
372         (do_c_triple_4, do_c_triple_5): Delete.
373         (do_c_triple_4[ab], do_c_triple_5[a-h]): New functions.
374         (do_c_quad_6): Delete.
375         (do_c_quad_6[ab]): New functions.
376         (do_c_binops, do_c_triple, do_c_quad, do_c_shift, do_c_ldst): Rework
377         arguments to use new register parsing methods.
378         (cirrus_reg_required_here): Likewise.
379         (insns): Reclassify cirrus maverick worker functions.
380         (cirrus_valid_reg): Delete.
381
382 2002-01-07  Jason Thorpe  <thorpej@wasabisystems.com>
383
384         * configure.in (sh*le): Set cpu_type=sh and endian=little.
385         (sh*-*-netbsdelf*): New target.
386         * configure: Regenerate.
387         * tc-sh.h: Update copyright years.
388         (TARGET_FORMAT): Add version for TE_NetBSD.
389
390 2002-01-07  Nick Clifton  <nickc@cambridge.redhat.com>
391
392         * read.c (emit_expr): Do not allow 'size' or 'nbytes' to go
393         negative.
394
395 2002-01-06  Alan Modra  <amodra@bigpond.net.au>
396
397         * config/tc-m68k.h (md_prepare_relax_scan): Rewrite.
398         * config/tc-m68k.c (md_relax_table): Add md_prepare_relax_scan comment.
399
400 2002-01-05  Daniel Jacobowitz  <drow@mvista.com>
401
402         * tc-mips.c (mips_cprestore_valid): New flag.
403         (mips_frame_reg_valid): New flag.
404         (macro) [M_JAL_2]: Check both flags.
405         [M_JAL_A]: Likewise.
406         (s_cprestore): Set mips_cprestore_valid.
407         (tc_get_register): If setting mips_frame_reg, set
408         mips_frame_reg_valid and clear mips_cprestore_valid.
409         (s_mips_ent): Clear both flags.
410         (s_mips_end): Clear both flags.
411
412 2002-01-05  Alan Modra  <amodra@bigpond.net.au>
413
414         * write.c (write_object_file): Make use of bfd_section_list_remove.
415         * config/obj-ecoff.c (ecoff_frob_file): Likewise.
416         * config/tc-mmix.c (mmix_frob_file): Likewise.
417
418 2002-01-04  Jason Thorpe  <thorpej@wasabisystems.com>
419
420         * configure.in (i386-*-netbsdelf*): Collapse target into...
421         (i386-*-netbsd*): ...this.  Add support for x86-64.
422         * configure: Regenerated.
423
424 2002-01-03  matthew green  <mrg@redhat.com>
425
426         * config/tc-ppc.c (md_parse_option): BookE is not Motorola specific.
427
428 2002-01-02  Nick Clifton  <nickc@cambridge.redhat.com>
429
430         * config/tc-m68k.c (md_estimate_size_before_relax): Test for a
431         NULL frag link.
432
433 For older changes see ChangeLog-0001
434 \f
435 Local Variables:
436 mode: change-log
437 left-margin: 8
438 fill-column: 74
439 version-control: never
440 End: