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