binutils/
[external/binutils.git] / gas / ChangeLog
1 2012-04-06  Roland McGrath  <mcgrathr@google.com>
2
3         * configure.in (AC_CHECK_HEADERS): Add locale.h.
4         * config.in: Regenerate.
5         * configure: Regenerate.
6
7 2012-04-05  Nick Clifton  <nickc@redhat.com>
8
9         * configure.in (AC_CHECK_FUNCS): Add setlocale.
10         (AM_LC_MESSAGES): Add.
11         * aclocal.m4: Regenerate.
12         * config.in: Regenerate.
13         * configure: Regenerate.
14
15 2012-04-03  DJ Delorie  <dj@redhat.com>
16
17         * config/rx-parse.y: Make the .L optional for ADC and SBB.
18
19 2012-04-02  DJ Delorie  <dj@redhat.com>
20
21         * config/rx-parse.y: IMM->IMM_, take an extra parameter for the
22         transfer size.
23         (IMM): New, call IMM_ with the default 32.
24         (IMMW,IMMB): Likewise, for 16 and 8.
25         (NIMM, MBIMM): Add size parameter.
26         (immediate): Likewise.  Allow 32768..65535 for 16-bit transfers.
27         (MOV.W): Use IMMW instead of IMM.
28
29         * config/rx-parse.y (ADC,SBB): ADC and SBB only allow .L.
30         (op_dp20_rm_l): New.
31         (op_dp20_rim_l): New.
32
33         * config/rx-parse.y (op_dp20_rms): Rename to op_dp20_rr, don't allow mem.
34         (ABS, NEG, NOT): These only take REG or REG,REG (rr, not rms).
35
36 2012-03-29  Terry Guo  <terry.guo@arm.com>
37
38         * config/tc-arm.c (arm_cpus): Add cortex-m0plus.
39         * doc/c-arm.texi (ARM Options): Document -mcpu=cortex-m0plus.
40
41 2012-03-23  Maxim Kuvyrkov  <maxim@codesourcery.com>
42
43         * config/tc-mips.c (mips_cpu_info_table): Add entry for Broadcom XLP.
44         * doc/c-mips.texi: Mention XLP.
45
46 2012-03-21  Thomas Schwinge  <thomas@codesourcery.com>
47
48         [SH] Support the .uaquad and .8byte directives also for non-sh64
49         configurations.
50
51         * config/tc-sh.c (sh_cons_fix_new, md_apply_fix) [!HAVE_SH64]: Handle
52         BFD_RELOC_64.
53         * doc/c-sh64.texi (SH64 Machine Directives): Move .uaquad
54         description...
55         * doc/c-sh.texi (SH Machine Directives): ... here.
56
57 2012-03-20  Nick Clifton  <nickc@redhat.com>
58
59         * config/tc-arm.c (do_vmrs): Accept priviledged mode VFP system
60         registers.
61         (do_vmsr): Likewise.
62         (arm_opcode_insns): Do not default to using the FPSCR register in
63         the VMRS and VMSR registers.
64
65 2012-03-16  Roland McGrath  <mcgrathr@google.com>
66
67         * config/tc-i386.h [TE_NACL] (ELF_TARGET_FORMAT32, ELF_TARGET_FORMAT64):
68         Define for this case.
69         * configure.tgt (i386-*-nacl*): If ${cpu} is x86_64*, default to x32.
70
71 2012-03-16  Matthew Gretton-Dann  <matthew.gretton-dann@arm.com>
72
73         * config/tc-arm.c (aeabi_set_public_attributes): Correct
74         handling of Tag_DIV_use.
75
76 2012-03-15  Thomas Schwinge  <thomas@codesourcery.com>
77
78         * doc/as.texinfo (Bundle directives): Fix typo.
79
80 2012-03-14  Ryan Mansfield  <rmansfield@qnx.com>
81
82         * doc/as.texinfo (Bundle directives): Replace @defn with @dfn.
83
84 2012-03-13  Roland McGrath  <mcgrathr@google.com>
85
86         * config/tc-arm.c (arm_frag_max_var): New function.
87         * config/tc-arm.h: Declare it.
88         (md_frag_max_var): New macro.
89
90         * config/tc-i386.c (i386_frag_max_var): New function.
91         * config/tc-i386.h: Declare it.
92         (md_frag_max_var): New macro.
93
94         * doc/as.texinfo (Bundle directives): New node.
95         (Pseudo Ops): Add it to the menu.
96         * NEWS: Mention new feature.
97         * read.c [md_frag_max_var] (HANDLE_BUNDLE): New macro.
98         [HANDLE_BUNDLE] (bundle_align_p2): New variable.
99         [HANDLE_BUNDLE] (bundle_lock_frchain, bundle_lock_frag): New variables.
100         [HANDLE_BUNDLE] (start_bundle, pending_bundle_size, finish_bundle):
101         New functions.
102         (assemble_one): New function if [HANDLE_BUNDLE], #define directly
103         to md_assembly if not.
104         (read_a_source_file): Call assemble_one in place of md_assemble.
105         (read_a_source_file) [HANDLE_BUNDLE]: Check for unterminated
106         .bundle_lock at end of processing.
107         [HANDLE_BUNDLE] (s_bundle_align_mode, s_bundle_lock, s_bundle_unlock):
108         New functions.
109         [HANDLE_BUNDLE] (potable): Add their entries.
110         * read.h: Declare new functions.
111
112 2012-03-10  Edmar Wienskoski  <edmar@freescale.com>
113
114         * config/tc-ppc.c (md_show_usage): Document -me5500 and -me6500.
115         (ppc_handle_align): Add termination nop opcode for e500mc family.
116         * doc/as.texinfo: Document options -me5500 and -me6500.
117         * doc/c-ppc.texi: Likewise.
118
119 2012-03-07  Nick Clifton  <nickc@redhat.com>
120
121         * config/tc-mn10300.c (other_registers): Add SSP and USP.
122         (md_assemble): Add support for TLS relocs.
123         (mn10300_parse_name): Likewise.
124
125 2012-02-27  Alan Modra  <amodra@gmail.com>
126
127         * config/tc-crx.c (check_range): Correct uint32_t misconceptions.
128
129 2012-02-27  Alan Modra  <amodra@gmail.com>
130
131         * config/tc-tic4x.c (tic4x_do_align): Remove ATTRIBUTE_UNUSED on
132         params.  Properly generate NOP pattern.  Comment reason for
133         subseg_text_p failure.
134
135 2012-02-27  Alan Modra  <amodra@gmail.com>
136
137         * config/tc-h8300.c (constant_fits_width_p): Trim constant to 32 bits
138         and sign extend before range tests.
139         (constant_fits_size_p): Similarly.
140         (get_specific): Trim X_add_number to 32 bits.
141         (fix_operand_size): Likewise, and use unsigned test for signed
142         ranges.
143
144 2012-02-27  Alan Modra  <amodra@gmail.com>
145
146         * config/tc-crx.c: Include bfd_stdint.h.
147         (getconstant): Remove irrelevant comment.  Don't fail due to
148         sign-extension of int mask.
149         (check_range): Rewrite using unsigned arithmetic throughout.
150
151 2012-02-25  Walter Lee  <walt@tilera.com>
152
153         * tc-tilepro.c (emit_tilepro_instruction): Check if symbol is
154         non-local before checking sy_value.
155         * tc-tilegx.c (emit_tilegx_instruction): Ditto.
156
157 2012-02-25  Walter Lee  <walt@tilera.com>
158
159         * tc-tilepro.c (O_tls_le): Define operator.
160         (O_tls_le_lo16): Ditto.
161         (O_tls_le_hi16): Ditto.
162         (O_tls_le_ha16): Ditto.
163         (O_tls_gd_call): Ditto.
164         (O_tls_gd_add): Ditto.
165         (O_tls_ie_load): Ditto.
166         (md_begin): Delete old operators; handle new operators.
167         (emit_tilepro_instruction): Ditto.
168         (md_apply_fix): Ditto.
169         * tc-tilegx.c (O_hw1_got): Delete operator.
170         (O_hw2_got): Ditto.
171         (O_hw3_got): Ditto.
172         (O_hw2_last_got): Ditto.
173         (O_hw1_tls_gd): Ditto.
174         (O_hw2_tls_gd): Ditto.
175         (O_hw3_tls_gd): Ditto.
176         (O_hw2_last_tls_gd): Ditto.
177         (O_hw1_tls_ie): Ditto.
178         (O_hw2_tls_ie): Ditto.
179         (O_hw3_tls_ie): Ditto.
180         (O_hw2_last_tls_ie): Ditto.
181         (O_hw0_tls_le): Define operator.
182         (O_hw0_last_tls_le): Ditto.
183         (O_hw1_last_tls_le): Ditto.
184         (O_tls_gd_call): Ditto.
185         (O_tls_gd_add): Ditto.
186         (O_tls_ie_load): Ditto.
187         (O_tls_add): Ditto.
188         (md_begin): Delete old operators; handle new operators.
189         (emit_tilegx_instruction): Ditto.
190         (md_apply_fix): Ditto.
191         * doc/c-tilegx.texi: Delete old operators; document new operators.
192         * doc/c-tilepro.texi: Ditto.
193
194 2012-02-25  Walter Lee  <walt@tilera.com>
195
196         * tc-tilepro.c (apply_special_operator): delete cases for
197         got and tls operators.
198         (md_apply_fix): Ditto.
199         * tc-tilegx.c (md_begin): Set architecture and machine.
200         (tilegx_target_format): Handle big endian.
201         (OPTION_EB): Define.
202         (OPTION_EL): Define.
203         (md_longopts): Add entries for "EB" and "EL".
204         (md_parse_option): Handle OPTION_EB and OPTION_EL.
205         (md_show_usage): Add -EB and -EL.
206         (md_number_to_chars): New.
207         (apply_special_operator): delete cases for got and tls
208         operators.
209         (md_apply_fix): Ditto.
210         * tc-tilegx.h (TARGET_BYTES_BIG_ENDIAN): Guard definition with
211         ifndef.
212         (md_number_to_chars): Delete.
213         * configure.tgt (tilegx*be): Handle.
214         * doc/as.texinfo [TILE-Gx]: Document -EB and -EL.
215         * doc/c-tilegx.texi: Ditto.
216
217 2012-02-21  H.J. Lu  <hongjiu.lu@intel.com>
218
219         * config/tc-i386.c (check_hle): Use HLEPrefixNone, HLEPrefixLock,
220         HLEPrefixAny and HLEPrefixRelease.
221
222 2012-02-21  Matthew Gretton-Dann  <matthew.gretton-dann@arm.com>
223
224         * gas/config/tc-arm.h (DOUBLESLASH_LINE_COMMENTS): Define.
225
226 2012-02-21  Iain Sandoe  <idsandoe@googlemail.com>
227
228         * write.c (write_object_file): Add md_pre_output_hook.
229         * config/obj-macho.c (obj_mach_o_check_before_writing): New.
230         (obj_mach_o_pre_output_hook): New.
231         * config/obj-macho.h (md_pre_output_hook): Define.
232         (obj_mach_o_pre_output_hook): Declare.
233
234 2012-02-21  Tristan Gingold  <gingold@adacore.com>
235
236         * config/tc-i386.h (OBJ_MACH_O): New section.
237         (TC_FORCE_RELOCATION): Use obj_mach_o_force_reloc.
238         (TC_FORCE_RELOCATION_SUB_SAME): New
239         (TC_FORCE_RELOCATION_SUB_LOCAL): New.
240         (TC_VALIDATE_FIX_SUB): New.
241         * frags.h (struct frag): OBJ_FRAG_TYPE, new field.
242         * symbols.c (colon): obj_frob_colon: New hook.
243         * write.c (write_object_file): md_pre_relax_hook, new
244         hook.
245         * config/obj-macho.c (obj_mach_o_frob_colon): New.
246         (obj_mach_o_frob_label): Record sub-section labels.
247         (obj_mach_o_frob_symbol): Rename from obj_macho_frob_symbol.
248         (obj_mach_o_set_subsections): New.
249         (obj_mach_o_pre_relax_hook): New.
250         (obj_mach_o_in_different_subsection): New.
251         (obj_mach_o_force_reloc_sub_same): New.
252         (obj_mach_o_force_reloc_sub_local): New.
253         (obj_mach_o_force_reloc): New.
254         * config/obj-macho.h (OBJ_SYMFIELD_TYPE): New.
255         (obj_frob_colon): New Define.
256         (obj_mach_o_frob_label): Renamed.
257         (obj_mach_o_frob_symbol): Renamed.
258         (OBJ_FRAG_TYPE): New.
259         (obj_mach_o_in_different_subsection, obj_mach_o_force_reloc,
260          obj_mach_o_force_reloc_sub_same,
261          obj_mach_o_force_reloc_sub_local): New declarations.
262
263 2012-02-20  Iain Sandoe  <idsandoe@googlemail.com>
264
265         * config/obj-macho.c (obj_mach_o_is_frame_section): New.
266         (obj_mach_o_allow_local_subtract): New.
267         * config/obj-macho.h (md_allow_local_subtract): Define.
268         (obj_mach_o_allow_local_subtract): Declare.
269
270 2012-02-20  Iain Sandoe  <idsandoe@googlemail.com>
271
272         * config/obj-macho.c (obj_mach_o_make_or_get_sect): In the absence of
273         canonical information, try to determine CODE and DEBUG section flags
274         from the mach-o section data.
275
276 2012-02-20  Nick Clifton  <nickc@redhat.com>
277
278         * cgen.c (gas_cgen_parse_operand): Do not set BSF_RELC flag on
279         local symbols.
280
281 2012-02-12  Iain Sandoe  <idsandoe@googlemail.com>
282
283         * config/obj-macho.c (obj_mach_o_indirect_symbol): Force promotion of
284         any local symbol used as an indirect.
285
286 2012-02-10  Iain Sandoe  <idsandoe@googlemail.com>
287
288         * config/obj-macho.c (obj_mach_o_make_or_get_sect): Always fill in
289         stub size when provided.  (obj_mach_o_section): Flag that stub-size
290         has been provided.
291
292 2012-02-08  H.J. Lu  <hongjiu.lu@intel.com>
293
294         * config/tc-i386.c (HLE_PREFIX): New.
295         (check_hle): Likewise.
296         (_i386_insn): Add have_hle.
297         (cpu_arch): Add .hle and .rtm.
298         (md_assemble): Call check_hle if i.have_hle isn't zero.
299         (parse_insn): Set i.have_hle to 1 for HLE prefix.
300         (output_jump): Support up to 2 byte opcode.
301
302         * doc/c-i386.texi: Document hle/.hle and rtm/.rtm.
303
304 2012-02-02  Tristan Gingold  <gingold@adacore.com>
305
306         * config/obj-macho.c (obj_mach_o_zerofill): Silent
307         uninitialized variable warning.
308
309 2012-02-02  Nick Clifton  <nickc@redhat.com>
310
311         PR gas/13224
312         * config/obj-elf.c (obj_elf_parse_section_letters): Rename 'clone'
313         to 'is_clone' to avoid shadowing a gloabl.
314         (obj_elf_section): Likewise.
315
316 2012-01-31  Paul Brook  <paul@codesourcery.com>
317
318         * doc/c-tic6x.c: Fix typo.
319
320 2012-01-26  Alexey Makhalov  <makhaloff@gmail.com>
321
322         PR gas/13624
323         * app.c (app_push): Set 'add_newlines' to zero after saving.
324
325 2012-01-24  DJ Delorie  <dj@redhat.com>
326
327         * config/rl78-parse.y (NOT1): Add.
328
329 2012-01-23  Roland McGrath  <mcgrathr@google.com>
330
331         * configure.tgt (i386-*-nacl*): Match it.
332         * config/te-nacl.h: New file.
333         * config/tc-i386.h [TE_NACL] (ELF_TARGET_FORMAT): Define for this case.
334         * config/tc-i386.c [TE_NACL] (i386_comment_chars, PREFIX_SEPARATOR):
335         Use TE_GNU et al case for TE_NACL too.
336
337 2012-01-20  H.J. Lu  <hongjiu.lu@intel.com>
338
339         * config/tc-i386.c (_i386_insn): Replace disp32_encoding with
340         disp_encoding.
341         (md_assemble): Updated.
342         (output_branch): Likewise.
343         (parse_insn): Support .d8 suffix.
344         (build_modrm_byte): Fake zero displacement for .d8 and .d32
345         suffixes.
346
347         * doc/c-i386.texi: Document .d8 suffix.
348
349 2012-01-17  Andrew Burgess  <aburgess@broadcom.com>
350
351         * write.c (fix_new_internal): Don't mark used parameter as unused.
352
353 2012-01-17  Alan Modra  <amodra@gmail.com>
354
355         * as.c (parse_args): Update copyright message year.
356
357 2012-01-13  H.J. Lu  <hongjiu.lu@intel.com>
358
359         * config/tc-i386.c (cpu_arch): Add ".vmfunc".
360
361         * doc/c-i386.texi: Document vmfunc.
362
363 2012-01-13  Tristan Gingold  <gingold@adacore.com>
364
365         * config/obj-macho.c (obj_mach_o_reorder_section_relocs): New.
366         * config/obj-macho.h (SET_SECTION_RELOCS): Define.
367         (obj_mach_o_reorder_section_relocs): Declare.
368
369 2012-01-13  Iain Sandoe  <idsandoe@googlemail.com>
370
371         * config/obj-macho.c (obj_mach_o_set_indirect_symbols): Handle
372         absolute indirect symbols.
373
374 2012-01-13  Iain Sandoe  <idsandoe@googlemail.com>
375
376         * config/obj-macho.c (obj_mach_o_set_vma_data): New type.
377         (obj_mach_o_set_section_vma): New.
378         (obj_mach_o_post_relax_hook): New.
379         * config/obj-macho.h (md_post_relax_hook): Define.
380         (obj_mach_o_post_relax_hook): Declare.
381
382 2012-01-12  Iain Sandoe  <idsandoe@googlemail.com>
383
384         * config/obj-macho.c (obj_mach_o_set_symbol_qualifier): Switch off
385         lazy when the symbol is private_extern.
386         (obj_mach_o_indirect_sym): New type.
387         (obj_mach_o_indirect_symbol): New.
388         (mach_o_pseudo_table): Use obj_mach_o_indirect_symbol.
389         (obj_macho_frob_label): Adjust to avoid adding bsyms for locals.
390         (obj_macho_frob_label): Likewise.  Adjust external and comm
391         symbol tests.
392         (obj_mach_o_set_indirect_symbols): New.
393         (obj_mach_o_frob_file_after_relocs): New.
394         *config/obj-macho.h (obj_frob_file_after_relocs): Define.
395         (obj_mach_o_frob_file_after_relocs): Declare.
396
397 2012-01-12  Tristan Gingold  <gingold@adacore.com>
398
399         PR gas/13591
400         * config/obj-coff.h (sy_obj): Rename macro to avoid a name conflict.
401
402 2012-01-10  Tristan Gingold  <gingold@adacore.com>
403
404         * struc-symbol.h (struct symbol_flags): New struct, created from...
405         (struct symbol): ... this one.  Add sy_flags field, remove flag fields.
406         (struct local_symbol): Replace lsy_marker field by lsy_flags.
407         Adjust comment.
408         (local_symbol_resolved_p): Adjust.
409         (local_symbol_mark_resolved): Likewise.
410         * symbols.c (LOCAL_SYMBOL_CHECK): Adjust.
411         (local_symbol_make, local_symbol_convert, colon)
412         (symbol_clone_if_forward_ref, verify_symbol_chain)
413         (resolve_symbol_value, snapshot_symbol, S_GET_VALUE)
414         (S_IS_WEAKREFR, S_IS_WEAKREFD, S_IS_VOLATILE, S_IS_FORWARD_REF)
415         (S_SET_WEAKREFR, S_CLEAR_WEAKREFR, S_SET_WEAKREFD)
416         (S_CLEAR_WEAKREFD, S_SET_VOLATILE, S_CLEAR_VOLATILE)
417         (S_SET_FORWARD_REF, symbol_same_p, symbol_mark_used)
418         (symbol_clear_used, symbol_used_p, symbol_mark_used_in_reloc)
419         (symbol_clear_used_in_reloc, symbol_used_in_reloc_p)
420         (symbol_mark_mri_common, symbol_clear_mri_common)
421         (symbol_mri_common_p, symbol_mark_written, symbol_clear_written)
422         (symbol_written_p, symbol_mark_resolved, symbol_resolved_p)
423         (symbol_equated_reloc_p, dot_symbol_init)
424         (print_symbol_value_1): Adjust.
425
426 2012-01-09  Iain Sandoe  <idsandoe@googlemail.com>
427
428         * config/obj-macho.c (obj_mach_o_weak): Remove.
429         (obj_mach_o_common_parse): Set symbol qualifiers.
430         (LAZY, REFE): New macros.
431         (obj_mach_o_symbol_type): New enum.
432         (obj_mach_o_set_symbol_qualifier): New.
433         (obj_mach_o_sym_qual): New.
434         (mach_o_pseudo_table): Add symbol qualifiers, set indirect_symbol to
435         a dummy function.
436         (obj_mach_o_type_for_symbol): New.
437         (obj_macho_frob_label): New.
438         (obj_macho_frob_symbol): New.
439         * config/obj-macho.h (S_SET_ALIGN): Amend temorary var name.
440         (obj_frob_label, obj_macho_frob_label): Declare.
441         (obj_frob_symbol, obj_macho_frob_symbol): Declare.
442
443 2012-01-08  Richard Sandiford  <rdsandiford@googlemail.com>
444
445         * config/tc-mips.c (s_tls_rel_directive): Call mips_clear_insn_labels.
446
447 2012-01-08  Andrew Pinski  <andrew.pinski@caviumnetworks.com>
448             Richard Sandiford  <rdsandiford@googlemail.com>
449
450         * config/tc-mips.c (mips_move_labels): Take the list of labels and
451         textness as parameters.
452         (mips_move_text_labels): New function.
453         (append_insn): Use it instead of mips_move_labels.
454         (mips_emit_delays, start_noreorder): Likewise.
455         (mips_align): Take the labels rather than just one label.
456         Move all labels to after the .align.
457         (s_align): Change the last argument to mips_align.
458         (s_cons): Likewise.
459         (s_float_cons): Likewise.
460         (s_gpword): Likewise.
461         (s_gpdword): Likewise.
462
463 2012-01-06  Tristan Gingold  <gingold@adacore.com>
464
465         * config/tc-i386.c: Update copyright year.
466         (lex_got): Also defined for Mach-O.
467         Add a guard for non-ELF configuration.
468         (md_longopts): Also handle -64 for Mach-O.
469         (md_parse_option): Likewise.
470         (i386_target_format): Adjust for x86_64-darwin.
471
472 2012-01-04  Iain Sandoe  <idsandoe@googlemail.com>
473
474         * config/obj-macho.c (obj_mach_o_segT_from_bfd_name): Tidy definition.
475         (obj_mach_o_get_section_names): New (split from obj_mach_o_section).
476         (obj_mach_o_make_or_get_sect): Likewise.
477         (obj_mach_o_section): Split out the functionality shared with zerofill.
478         (obj_mach_o_zerofill): New.
479         (obj_mach_o_common_parse): Ensure whitespace is skipped.
480         (mach_o_pseudo_table): Add .zerofill.
481
482 2012-01-03  Iain Sandoe  <idsandoe@googlemail.com>
483
484         * config/obj-macho.c (obj_macho_process_stab): New.
485         * config/obj-macho.h (OBJ_PROCESS_STAB): Define.
486         (obj_macho_process_stab): Declare.
487
488 For older changes see ChangeLog-2011
489 \f
490 Local Variables:
491 mode: change-log
492 left-margin: 8
493 fill-column: 74
494 version-control: never
495 End: