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