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