bfd/
[binutils.git] / gas / ChangeLog
blobb12c4400f5feaa16bfaa9835a70140e0004caf87
1 2006-03-25  Richard Sandiford  <richard@codesourcery.com>
3         * config/tc-m68k.c (m68k_cpus): Change cpu_cf5208 entries to use
4         mcfemac instead of mcfmac.
6 2006-03-22  Richard Sandiford  <richard@codesourcery.com>
7             Daniel Jacobowitz  <dan@codesourcery.com>
8             Phil Edwards  <phil@codesourcery.com>
9             Zack Weinberg  <zack@codesourcery.com>
10             Mark Mitchell  <mark@codesourcery.com>
11             Nathan Sidwell  <nathan@codesourcery.com>
13         * config/tc-mips.c (mips_target_format): Handle vxworks targets.
14         (md_begin): Complain about -G being used for PIC.  Don't change
15         the text, data and bss alignments on VxWorks.
16         (reloc_needs_lo_p): Don't return true for R_MIPS_GOT16 when
17         generating VxWorks PIC.
18         (load_address): Extend SVR4_PIC handling to VXWORKS_PIC.
19         (macro): Likewise, but do not treat la $25 specially for
20         VxWorks PIC, and do not handle jal.
21         (OPTION_MVXWORKS_PIC): New macro.
22         (md_longopts): Add -mvxworks-pic.
23         (md_parse_option): Don't complain about using PIC and -G together here.
24         Handle OPTION_MVXWORKS_PIC.
25         (md_estimate_size_before_relax): Always use the first relaxation
26         sequence on VxWorks.
27         * config/tc-mips.h (VXWORKS_PIC): New.
29 2006-03-21  Paul Brook  <paul@codesourcery.com>
31         * config/tc-arm.c (md_apply_fix): Fix typo in offset mask.
33 2006-03-21  Sterling Augustine  <sterling@tensilica.com>
35         * config/tc-xtensa.c (enforce_three_byte_loop_align): New flag.
36         (xtensa_setup_hw_workarounds): Set this new flag for older hardware.
37         (get_loop_align_size): New.
38         (xtensa_end): Skip xtensa_mark_narrow_branches when not aligning.
39         (xtensa_mark_zcl_first_insns): Prevent widening of first loop frag.
40         (get_text_align_power): Rewrite to handle inputs in the range 2-8.
41         (get_noop_aligned_address): Use get_loop_align_size.
42         (get_aligned_diff): Likewise.
44 2006-03-21  Paul Brook  <paul@codesourcery.com>
46         * config/tc-arm.c (insns): Correct opcodes for ldrbt and strbt.
48 2006-03-20  Paul Brook  <paul@codesourcery.com>
50         * config/tc-arm.c (BAD_BRANCH, BAD_NOT_IT): Define.
51         (do_t_branch): Encode branches inside IT blocks as unconditional.
52         (do_t_cps): New function.
53         (do_t_blx, do_t_bkpt, do_t_branch23, do_t_bx, do_t_bxj, do_t_cpsi,
54         do_t_czb, do_t_it, do_t_setend, do_t_tb): Add IT constaints.
55         (opcode_lookup): Allow conditional suffixes on all instructions in
56         Thumb mode.
57         (md_assemble): Advance condexec state before checking for errors.
58         (insns): Use do_t_cps.
60 2006-03-20  Paul Brook  <paul@codesourcery.com>
62         * config/tc-arm.c (output_relax_insn): Call dwarf2_emit_insn before
63         outputting the insn.
65 2006-03-18  Jan-Benedict Glaw  <jbglaw@lug-owl.de>
67         * config/tc-vax.c: Update copyright year.
68         * config/tc-vax.h: Likewise.
70 2006-03-18  Jan-Benedict Glaw  <jbglaw@lug-owl.de>
72         * config/tc-vax.c (md_chars_to_number): Used only locally, so
73         make it static.
74         * config/tc-vax.h (md_chars_to_number): Remove obsolete declaration.
76 2006-03-17  Paul Brook  <paul@codesourcery.com>
78         * config/tc-arm.c (insns): Add ldm and stm.
80 2006-03-17  Ben Elliston  <bje@au.ibm.com>
82         PR gas/2446
83         * doc/as.texinfo (Ident): Document this directive more thoroughly.
85 2006-03-16  Paul Brook  <paul@codesourcery.com>
87         * config/tc-arm.c (insns): Add "svc".
89 2006-03-13  Bob Wilson  <bob.wilson@acm.org>
91         * config/tc-xtensa.c (xg_translate_sysreg_op): Remove has_underbar
92         flag and avoid double underscore prefixes.
94 2006-03-10  Paul Brook  <paul@codesourcery.com>
96         * config/tc-arm.c (md_begin): Handle EABIv5.
97         (arm_eabis): Add EF_ARM_EABI_VER5.
98         * doc/c-arm.texi: Document -meabi=5.
100 2006-03-10  Ben Elliston  <bje@au.ibm.com>
102         * app.c (do_scrub_chars): Simplify string handling.
104 2006-03-07  Richard Sandiford  <richard@codesourcery.com>
105             Daniel Jacobowitz  <dan@codesourcery.com>
106             Zack Weinberg  <zack@codesourcery.com>
107             Nathan Sidwell  <nathan@codesourcery.com>
108             Paul Brook  <paul@codesourcery.com>
109             Ricardo Anguiano  <anguiano@codesourcery.com>
110             Phil Edwards  <phil@codesourcery.com>
112         * config/tc-arm.c (md_apply_fix): Install a value of zero into a
113         BFD_RELOC_ARM_OFFSET_IMM field if we're going to generate a RELA
114         R_ARM_ABS12 reloc.
115         (tc_gen_reloc): Keep the original fx_offset for RELA pc-relative
116         relocs, but adjust by md_pcrel_from_section.  Create R_ARM_ABS12
117         relocations for BFD_RELOC_ARM_OFFSET_IMM on RELA targets.
119 2006-03-06  Bob Wilson  <bob.wilson@acm.org>
121         * config/tc-xtensa.c (xtensa_post_relax_hook): Generate literal tables
122         even when using the text-section-literals option.
124 2006-03-06  Nathan Sidwell  <nathan@codesourcery.com>
126         * config/tc-m68k.c (m68k_extensions): Allow 'float' on both m68k
127         and cf.
128         (m68k_ip): <case 'J'> Check we have some control regs.
129         (md_parse_option): Allow raw arch switch.
130         (m68k_init_arch): Better detection of arch/cpu mismatch.  Detect
131         whether 68881 or cfloat was meant by -mfloat.
132         (md_show_usage): Adjust extension display.
133         (m68k_elf_final_processing): Adjust.
135 2006-03-03  Bjoern Haase  <bjoern.m.haase@web.de>
137         * config/tc-avr.c (avr_mod_hash_value): New function.
138         (md_apply_fix, exp_mod): Use BFD_RELOC_HH8_LDI and
139         BFD_RELOC_MS8_LDI for hlo8() and hhi8() 
140         (md_begin): Set linkrelax variable to 1, use avr_mod_hash_value
141         instead of int avr_ldi_expression: use avr_mod_hash_value instead
142         of (int).
143         (tc_gen_reloc): Handle substractions of symbols, if possible do
144         fixups, abort otherwise.        
145         * config/tc-avr.h (TC_LINKRELAX_FIXUP, TC_VALIDATE_FIX,
146         tc_fix_adjustable): Define.
147         
148 2006-03-02  James E Wilson  <wilson@specifix.com>
150         * config/tc-ia64.c (emit_one_bundle): For IA64_OPCODE_LAST, if we
151         change the template, then clear md.slot[curr].end_of_insn_group.
153 2006-02-28  Jan Beulich  <jbeulich@novell.com>
155         * macro.c (get_any_string): Don't insert quotes for <>-quoted input.
157 2006-02-28  Jan Beulich  <jbeulich@novell.com>
159         PR/1070
160         * macro.c (getstring): Don't treat parentheses special anymore.
161         (get_any_string): Don't consider '(' and ')' as quoting anymore.
162         Special-case '(', ')', '[', and ']' when dealing with non-quoting
163         characters.
165 2006-02-28  Mat <mat@csail.mit.edu>
167         * dwarf2dbg.c (get_filenum): Don't inadvertently decrease files_in_use.
169 2006-02-27  Jakub Jelinek  <jakub@redhat.com>
171         * dw2gencfi.c (struct fde_entry, struct cie_entry): Add signal_frame
172         field.
173         (CFI_signal_frame): Define.
174         (cfi_pseudo_table): Add .cfi_signal_frame.
175         (dot_cfi): Handle CFI_signal_frame.
176         (output_cie): Handle cie->signal_frame.
177         (select_cie_for_fde): Don't share CIE if signal_frame flag is
178         different.  Copy signal_frame from FDE to newly created CIE.
179         * doc/as.texinfo: Document .cfi_signal_frame.
181 2006-02-27  Carlos O'Donell  <carlos@codesourcery.com>
183         * doc/Makefile.am: Add html target.
184         * doc/Makefile.in: Regenerate.
185         * po/Make-in: Add html target.
187 2006-02-27  H.J. Lu <hongjiu.lu@intel.com>
189         * config/tc-i386.c (output_insn): Support Intel Merom New
190         Instructions.
192         * config/tc-i386.h (CpuMNI): New.
193         (CpuUnknownFlags): Add CpuMNI.
195 2006-02-24  David S. Miller  <davem@sunset.davemloft.net>
197         * config/tc-sparc.c (priv_reg_table): Add entry for "gl".
198         (hpriv_reg_table): New table for hyperprivileged registers.
199         (sparc_ip): New cases '$' and '%' for wrhpr/rdhpr hyperprivileged
200         register encoding.
202 2006-02-24  DJ Delorie  <dj@redhat.com>
204         * config/tc-m32c.h (md_apply_fix): Define to m32c_apply_fix.
205         (tc_gen_reloc): Don't define.
206         * config/tc-m32c.c (rl_for, relaxable): New convenience macros.
207         (OPTION_LINKRELAX): New.
208         (md_longopts): Add it.
209         (m32c_relax): New.
210         (md_parse_options): Set it.
211         (md_assemble): Emit relaxation relocs as needed.
212         (md_convert_frag): Emit relaxation relocs as needed.
213         (md_cgen_lookup_reloc): Add LAB_8_8 and LAB_8_16.
214         (m32c_apply_fix): New.
215         (tc_gen_reloc): New.
216         (m32c_force_relocation): Force out jump relocs when relaxing.
217         (m32c_fix_adjustable): Return false if relaxing.
219 2006-02-24  Paul Brook  <paul@codesourcery.com>
221         * config/arm/tc-arm.c (arm_ext_v6_notm, arm_ext_div, arm_ext_v7,
222         arm_ext_v7a, arm_ext_v7r, arm_ext_v7m): New variables.
223         (struct asm_barrier_opt): Define.
224         (arm_v7m_psr_hsh, arm_barrier_opt_hsh): New variables.
225         (parse_psr): Accept V7M psr names.
226         (parse_barrier): New function.
227         (enum operand_parse_code): Add OP_oBARRIER.
228         (parse_operands): Implement OP_oBARRIER.
229         (do_barrier): New function.
230         (do_dbg, do_pli, do_t_barrier, do_t_dbg, do_t_div): New functions.
231         (do_t_cpsi): Add V7M restrictions.
232         (do_t_mrs, do_t_msr): Validate V7M variants.
233         (md_assemble): Check for NULL variants.
234         (v7m_psrs, barrier_opt_names): New tables.
235         (insns): Add V7 instructions.  Mark V6 instructions absent from V7M.
236         (md_begin): Initialize arm_v7m_psr_hsh and arm_barrier_opt_hsh.
237         (arm_cpu_option_table): Add Cortex-M3, R4 and A8.
238         (arm_arch_option_table): Add armv7, armv7a, armv7r and armv7m.
239         (struct cpu_arch_ver_table): Define.
240         (cpu_arch_ver): New.
241         (aeabi_set_public_attributes): Use cpu_arch_ver.  Set
242         Tag_CPU_arch_profile.
243         * doc/c-arm.texi: Document new cpu and arch options.
245 2006-02-23  H.J. Lu  <hongjiu.lu@intel.com>
247         * config/tc-ia64.c (operand_match): Handle IA64_OPND_IMMU5b.
249 2006-02-23  H.J. Lu  <hongjiu.lu@intel.com>
251         * config/tc-ia64.c: Update copyright years.
253 2006-02-22  H.J. Lu  <hongjiu.lu@intel.com>
255         * config/tc-ia64.c (specify_resource): Add the rule 17 from
256         SDM 2.2.
258 2005-02-22  Paul Brook  <paul@codesourcery.com>
260         * config/tc-arm.c (do_pld): Remove incorrect write to
261         inst.instruction.
262         (encode_thumb32_addr_mode): Use correct operand.
264 2006-02-21  Paul Brook  <paul@codesourcery.com>
266         * config/tc-arm.c (md_apply_fix): Fix off-by-one errors.
268 2006-02-17  Shrirang Khisti  <shrirangk@kpitcummins.com>
269             Anil Paranjape   <anilp1@kpitcummins.com>
270             Shilin Shakti    <shilins@kpitcummins.com>
272         * Makefile.am: Add xc16x related entry.
273         * Makefile.in: Regenerate.
274         * configure.in: Added xc16x related entry.
275         * configure: Regenerate.
276         * config/tc-xc16x.h: New file
277         * config/tc-xc16x.c: New file
278         * doc/c-xc16x.texi: New file for xc16x
279         * doc/all.texi: Entry for xc16x
280         * doc/Makefile.texi: Added c-xc16x.texi 
281         * NEWS: Announce the support for the new target.
283 2006-02-16  Nick Hudson  <nick.hudson@dsl.pipex.com>
285         * configure.tgt: set emulation for mips-*-netbsd*
287 2006-02-14  Jakub Jelinek  <jakub@redhat.com>
289         * config.in: Rebuilt.
291 2006-02-13  Bob Wilson  <bob.wilson@acm.org>
293         * config/tc-xtensa.c (xg_add_opcode_fix): Number operands starting
294         from 1, not 0, in error messages.
295         (md_assemble): Simplify special-case check for ENTRY instructions.
296         (tinsn_has_invalid_symbolic_operands): Do not include opcode and
297         operand in error message.
299 2006-02-13  Joseph S. Myers  <joseph@codesourcery.com>
301         * configure.tgt (arm-*-linux-gnueabi*): Change to
302         arm-*-linux-*eabi*.
304 2006-02-10  Nick Clifton  <nickc@redhat.com>
306         * config/tc-crx.c (check_range): Ensure that the sign bit of a
307         32-bit value is propagated into the upper bits of a 64-bit long.
309         * config/tc-arc.c (init_opcode_tables): Fix cast.
310         (arc_extoper, md_operand): Likewise.
312 2006-02-09  David Heine  <dlheine@tensilica.com>
314         * config/tc-xtensa.c (xg_assembly_relax): Increment steps_taken for
315         each relaxation step.
317 2006-02-09  Eric Botcazou  <ebotcazou@libertysurf.fr>
318         
319         * configure.in (CHECK_DECLS): Add vsnprintf.
320         * configure: Regenerate.
321         * messages.c (errno.h, stdarg.h, varargs.h, va_list): Do not
322         include/declare here, but...
323         * as.h: Move code detecting VARARGS idiom to the top.
324         (errno.h, stdarg.h, varargs.h, va_list): ...here.
325         (vsnprintf): Declare if not already declared.
327 2006-02-08  H.J. Lu  <hongjiu.lu@intel.com>
329         * as.c (close_output_file): New.
330         (main): Register close_output_file with xatexit before
331         dump_statistics. Don't call output_file_close.
333 2006-02-07  Nathan Sidwell  <nathan@codesourcery.com>
335         * config/tc-m68k.c (mcf5208_control_regs, mcf5213_control_regs,
336         mcf5329_control_regs): New.
337         (not_current_architecture, selected_arch, selected_cpu): New.
338         (m68k_archs, m68k_extensions): New.
339         (archs): Renamed to ...
340         (m68k_cpus): ... here.  Adjust.
341         (n_arches): Remove.
342         (md_pseudo_table): Add arch and cpu directives.
343         (find_cf_chip, m68k_ip): Adjust table scanning.
344         (no_68851, no_68881): Remove.
345         (md_assemble): Lazily initialize.
346         (select_control_regs): Adjust cpu names. Add 5208, 5213, 5329.
347         (md_init_after_args): Move functionality to m68k_init_arch.
348         (mri_chip): Adjust table scanning.
349         (md_parse_option): Reimplement 'm' processing to add -march & -mcpu
350         options with saner parsing.
351         (m68k_lookup_cpu, m68k_set_arch, m68k_set_cpu, m68k_set_extension,
352         m68k_init_arch): New.
353         (s_m68k_cpu, s_m68k_arch): New.
354         (md_show_usage): Adjust.
355         (m68k_elf_final_processing): Set CF EF flags.
356         * config/tc-m68k.h (m68k_init_after_args): Remove.
357         (tc_init_after_args): Remove.
358         * doc/c-m68k.texi (M68K-Opts): Document -march, -mcpu options.
359         (M68k-Directives): Document .arch and .cpu directives.
361 2006-02-05  Arnold Metselaar  <arnold.metselaar@planet.nl>
363         * config/tc-z80.c (z80_start_line_hook): allow .equ and .defl as 
364         synonyms for equ and defl. 
365         (z80_cons_fix_new): New function.
366         (emit_byte): Disallow relative jumps to absolute locations.
367         (emit_data): Only handle defb, prototype changed, because defb is 
368         now handled as pseudo-op rather than an instruction.
369         (instab): Entries for defb,defw,db,dw moved from here...
370         (md_pseudo_table): ... to here, use generic cons() for defw,dw. 
371         Add entries for def24,def32,d24,d32.
372         (md_assemble): Improved error handling.
373         (md_apply_fix): New case BFD_RELOC_24, set fixP->fx_no_overflow to one.
374         * config/tc-z80.h (TC_CONS_FIX_NEW): Define.
375         (z80_cons_fix_new): Declare.
376         * doc/c-z80.texi (defb, db): Mention warning on overflow. 
377         (def24,d24,def32,d32): New pseudo-ops.
378         
379 2006-02-02  Paul Brook  <paul@codesourcery.com>
381         * config/tc-arm.c (do_shift): Remove Thumb-1 constraint.
383 2005-02-02  Paul Brook  <paul@codesourcery.com>
385         * config/tc-arm.c (T2_OPCODE_MASK, T2_DATA_OP_SHIFT, T2_OPCODE_AND,
386         T2_OPCODE_BIC, T2_OPCODE_ORR, T2_OPCODE_ORN, T2_OPCODE_EOR,
387         T2_OPCODE_ADD, T2_OPCODE_ADC, T2_OPCODE_SBC, T2_OPCODE_SUB,
388         T2_OPCODE_RSB): Define.
389         (thumb32_negate_data_op): New function.
390         (md_apply_fix): Use it.
392 2006-01-31  Bob Wilson  <bob.wilson@acm.org>
394         * config/xtensa-istack.h (TInsn): Remove record_fix and sub_symbol
395         fields.
396         * config/tc-xtensa.h (xtensa_frag_type): Remove slot_sub_symbols field.
397         * config/tc-xtensa.c (md_apply_fix): Check for unexpected uses of
398         subtracted symbols.
399         (relaxation_requirements): Add pfinish_frag argument and use it to
400         replace setting tinsn->record_fix fields.
401         (xg_assemble_vliw_tokens): Adjust calls to relaxation_requirements
402         and vinsn_to_insnbuf.  Remove references to record_fix and
403         slot_sub_symbols fields.
404         (xtensa_mark_narrow_branches): Delete unused code.
405         (is_narrow_branch_guaranteed_in_range): Handle expr that is not just
406         a symbol.
407         (convert_frag_immed): Adjust vinsn_to_insnbuf call and do not set
408         record_fix fields.
409         (tinsn_immed_from_frag): Remove code for handling slot_sub_symbols.
410         (vinsn_to_insnbuf): Change use of record_fixup argument, replacing use
411         of the record_fix field.  Simplify error messages for unexpected
412         symbolic operands.
413         (set_expr_symbol_offset_diff): Delete.
415 2006-01-31  Paul Brook  <paul@codesourcery.com>
417         * config/tc-arm.c (arm_reg_parse): Check if reg is non-NULL.
419 2006-01-31  Paul Brook  <paul@codesourcery.com>
420         Richard Earnshaw <rearnsha@arm.com>
422         * config/tc-arm.c: Use arm_feature_set.
423         (arm_ext_*, arm_arch_full, arm_arch_t2, arm_arch_none,
424         arm_cext_iwmmxt, arm_cext_xscale, arm_cext_maverick, fpu_fpa_ext_v1,
425         fpu_fpa_ext_v2, fpu_vfp_ext_v1xd, fpu_vfp_ext_v1, fpu_vfp_ext_v2):
426         New variables.
427         (insns): Use them.
428         (md_atof, opcode_select, opcode_select, md_assemble, md_assemble,
429         md_begin, arm_parse_extension, arm_parse_cpu, arm_parse_arch,
430         arm_parse_fpu, arm_parse_float_abi, aeabi_set_public_attributes,
431         s_arm_cpu, s_arm_arch, s_arm_fpu): Use macros for accessing CPU
432         feature flags.
433         (arm_legacy_option_table, arm_option_cpu_value_table): New types.
434         (arm_opts): Move old cpu/arch options from here...
435         (arm_legacy_opts): ... to here.
436         (md_parse_option): Search arm_legacy_opts.
437         (arm_cpus, arm_archs, arm_extensions, arm_fpus)
438         (arm_float_abis, arm_eabis): Make const.
440 2006-01-25  Bob Wilson  <bob.wilson@acm.org>
442         * config/tc-xtensa.c (md_apply_fix): Set value to zero for PLT relocs.
444 2006-01-21  Jie Zhang  <jie.zhang@analog.com>
446         * config/bfin-parse.y (asm_1): Check value range for 16 bit immediate
447         in load immediate intruction.
449 2006-01-21  Jie Zhang  <jie.zhang@analog.com>
451         * config/bfin-parse.y (value_match): Use correct conversion
452         specifications in template string for __FILE__ and __LINE__.
453         (binary): Ditto.
454         (unary): Ditto.
456 2006-01-18  Alexandre Oliva  <aoliva@redhat.com>
458         Introduce TLS descriptors for i386 and x86_64.
459         * config/tc-i386.c (tc_i386_fix_adjustable): Handle
460         BFD_RELOC_386_TLS_GOTDESC, BFD_RELOC_386_TLS_DESC_CALL,
461         BFD_RELOC_X86_64_GOTPC32_TLSDESC, BFD_RELOC_X86_64_TLSDESC_CALL.
462         (optimize_disp): Emit fix up for BFD_RELOC_386_TLS_DESC_CALL and
463         BFD_RELOC_X86_64_TLSDESC_CALL immediately, and clear the
464         displacement bits.
465         (build_modrm_byte): Set up zero modrm for TLS desc calls.
466         (lex_got): Handle @tlsdesc and @tlscall.
467         (md_apply_fix, tc_gen_reloc): Handle the new relocations.
469 2006-01-11  Nick Clifton  <nickc@redhat.com>
471         Fixes for building on 64-bit hosts:
472         * config/tc-avr.c (mod_index): New union to allow conversion
473         between pointers and integers.
474         (md_begin, avr_ldi_expression): Use it.
475         * config/tc-i370.c (md_assemble): Add cast for argument to print
476         statement.
477         * config/tc-tic54x.c (subsym_substitute): Likewise.
478         * config/tc-mn10200.c (md_assemble): Use a union to convert the
479         opindex field of fr_cgen structure into a pointer so that it can
480         be stored in a frag.
481         * config/tc-mn10300.c (md_assemble): Likewise.
482         * config/tc-frv.c (frv_debug_tomcat): Use %p to print pointer
483         types.
484         * config/tc-v850.c: Replace uses of (int) casts with correct
485         types.
487 2006-01-09  H.J. Lu  <hongjiu.lu@intel.com>
489         PR gas/2117
490         * symbols.c (snapshot_symbol): Don't change a defined symbol.
492 2006-01-03  Hans-Peter Nilsson  <hp@bitrange.com>
494         PR gas/2101
495         * config/tc-mmix.c (mmix_handle_mmixal): Don't treat #[0-9][FB] as
496         a local-label reference.
498 For older changes see ChangeLog-2005
500 Local Variables:
501 mode: change-log
502 left-margin: 8
503 fill-column: 74
504 version-control: never
505 End: