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