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