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