Rewrote a loop that caused a seg fault on Windows systems.
[platform/upstream/binutils.git] / gas / ChangeLog
1 2012-05-15  James Murray <jsm@jsm-net.demon.co.uk>
2
3         * config/tc-m68hc11.c: Add S12X and XGATE co-processor support.
4         Add option to offset S12 addresses into XGATE memory space.
5         Tweak target flags to match other tools. (i.e. -m m68hc11).
6         * doc/as.texinfo: Mention new options.
7         * doc/c-m68hc11.texi: Document new options.
8         * NEWS: Mention new support.
9
10 2012-05-14  DJ Delorie  <dj@redhat.com>
11
12         * config/rx-parse.y (rx_range): declare.
13         (O1,O2,O3,O4): Add calls to rx_range.
14         (UO1,UO2,UO3): Likewise.
15         (IMM2,IMMB): Likewise.
16         (rx_range): New.
17
18         * config/tc-rx.c (rx_fetchalign): Declare.
19         (md_pseudo_table): Add .fetchalign.
20         (RX_NBASE_FETCHALIGN): New.
21         (fetchalign_bytes): New.
22         (rx_fetchalign): New.
23         (rx_frag_init): If a "magic" value is found, also init the
24         machine-specific data.
25         (md_assemble): Note following opcode size if called for.
26         (rx_next_opcode): New.
27         (rx_relax_frag): Support .fetchalign.
28         (md_convert_frag): Likewise.
29         * doc/c-rx.texi (RX-Directives): Add .fetchalign.
30
31 2012-05-14  James Lemke  <jwlemke@codesourcery.com>
32
33         * config/tc-ppc.c (insn_validate): New func of existing code to call..
34         (ppc_setup_opcodes): ..from 2 places here.
35         Revise for second (VLE) opcode table.
36         Add #ifdef'd code to print opcode tables.
37
38 2012-05-14  James Lemke  <jwlemke@codesourcery.com>
39
40         * config/tc-ppc.c (ppc_setup_opcodes): Allow out-of-order
41         for the VLE conditional branches.
42
43 2012-05-14  Catherine Moore  <clm@codesourcery.com>
44             Maciej W. Rozycki  <macro@codesourcery.com>
45             Rhonda Wittels  <rhonda@codesourcery.com>
46
47         * config/tc-ppc.c (PPC_VLE_SPLIT16A): New macro.
48         (PPC_VLE_SPLIT16D): New macro.
49         (PPC_VLE_LO16A): New macro.
50         (PPC_VLE_LO16D): New macro.
51         (PPC_VLE_HI16A): New macro.
52         (PPC_VLE_HI16D): New macro.
53         (PPC_VLE_HA16A): New macro.
54         (PPC_VLE_HA16D): New macro.
55         (PPC_APUINFO_VLE): New definition.
56         (md_chars_to_number): New function.
57         (md_parse_option): Check for combinations of little
58         endian and -mvle.
59         (md_show_usage): Document -mvle.
60         (ppc_arch): Recognize VLE.
61         (ppc_mach): Recognize bfd_mach_ppc_vle.
62         (ppc_setup_opcodes): Print the opcode table if
63         * config/tc-ppc.h (ppc_frag_check): Declare.
64         * doc/c-ppc.texi: Document -mvle.
65         * NEWS:  Mention PowerPC VLE port.
66
67 2012-05-14  Catherine Moore  <clm@codesourcery.com>
68
69         * config/tc-ppc.h (ppc_dw2_line_min_insn_length): Declare.
70         (DWARF2_LINE_MIN_INSN_LENGTH): Redefine.
71         * config/tc-ppc.c (ppc_dw2_line_min_insn_length): New.
72         * dwarf2dbg.c (scale_addr_delta): Handle values of 1
73         for DWARF2_LINE_MIN_INSN_LENGTH.
74
75 2012-05-12  H.J. Lu  <hongjiu.lu@intel.com>
76
77         * config/tc-i386.c (tc_gen_reloc): Remove x32 addend overflow
78         for BFD_RELOC_64.
79
80 2012-05-11  Daniel Richard G.  <skunk@iskunk.org>
81
82         PR binutils/14028
83         * configure.in: Invoke ACX_HEADER_STRING.
84         * configure: Regenerate.
85         * config.in: Regenerate.
86         * as.h: If STRINGS_WITH_STRING is defined then include both
87         string.h and strings.h.
88
89 2012-05-11  Georg-Johann Lay  <avr@gjlay.de
90
91         PR target/13503
92         * config/tc-avr.c (exp_mod_pm): Remove variable.
93         (exp_mod_data_t): New typedef.
94         (pexp_mod_data, exp_mod_data): New variables.
95         (avr_parse_cons_expression): Scan through exp_mod_data[] to find
96         data expression modifiers "pm", "gs", "lo8", hi8", "hhi8", "hh8"
97         and set pexp_mod_data accordingly to be used in avr_cons_fix_new.
98         (avr_cons_fix_new): Handle new data expression modifiers shipped
99         in pexp_mod_data.
100         (md_apply_fix): Handle BFD_RELOC_AVR_8_LO, BFD_RELOC_AVR_8_HI,
101         BFD_RELOC_AVR_8_HHI.
102
103 2012-05-10  H.J. Lu  <hongjiu.lu@intel.com>
104
105         * config/tc-i386.c (tc_gen_reloc): Use bfd_signed_vma in x32
106         addend overflow check.
107
108 2012-05-10  H.J. Lu  <hongjiu.lu@intel.com>
109
110         * config/tc-i386.c (tc_gen_reloc): Display signed hex number in
111         x32 addend overflow check.
112
113 2012-05-09  H.J. Lu  <hongjiu.lu@intel.com>
114
115         * config/tc-i386.c (tc_gen_reloc): Use fits_in_signed_long.
116
117 2012-05-09  H.J. Lu  <hongjiu.lu@intel.com>
118
119         * config/tc-i386.c (tc_gen_reloc): Check x32 addend overflow
120         for BFD_RELOC_64.
121
122 2012-05-08  Alan Modra  <amodra@gmail.com>
123
124         * Makefile.am (check_DEJAGNU): Export LC_ALL=C in place of other
125         LC and LANG environment vars.
126         * Makefile.in: Regenerate.
127
128 2012-05-07  Alan Modra  <amodra@gmail.com>
129
130         * Makefile.am (check-DEJAGNU): Clear LC_COLLATE, LC_ALL and LANG.
131         * Makefile.in: Regenerate.
132
133 2012-05-06  Arnold Metselaar <arnold_m@operamail.com>
134
135         * config/tc-z80.h(md_register_arithmetic): Define as 0.
136         * config/tc-z80.c(md_begin): Store register names in symbol table,
137         preventing usage as ordinary symbol.
138         * config/tc-z80.c(contains_register): New function.
139         * config/tc-z80.c(parse_exp2): Removed.
140         * config/tc-z80.c(parse_exp_not_indexed): New function.
141         * config/tc-z80.c(parse_exp): Add code to recogize indexed
142         addressing after parsing.
143         * config/tc-z80.c(emit_byte, emit_word): Use contains_register.
144         * config/tc-z80.c(emit_jp): Use parse_exp_not_indexed, simplify
145         condition for jump to register.
146         * config/tc-z80.c(emit_call, emit_jr, emit_ex, emit_rst): Use
147         parse_exp_not_indexed.
148
149 2012-05-05  Alan Modra  <amodra@gmail.com>
150
151         * ecoff.c: Replace all uses of bfd_abs_section, bfd_com_section,
152         bfd_und_section and bfd_ind_section with their _ptr variants, or
153         use corresponding bfd_is_* macros.
154         * symbols.c: Likewise.
155         * config/obj-aout.c: Likewise.
156         * config/obj-coff-seh.h: Likewise.
157         * config/tc-hppa.c: Likewise.
158         * config/tc-hppa.h: Likewise.
159         * config/tc-ia64.c: Likewise.
160         * config/tc-m32r.c: Likewise.
161         * config/tc-microblaze.c: Likewise.
162         * config/tc-mips.c: Likewise.
163         * config/tc-score.c: Likewise.
164         * config/tc-score7.c: Likewise.
165         * config/tc-tic6x.c: Likewise.
166
167 2012-05-04  H.J. Lu  <hongjiu.lu@intel.com>
168
169         * configure.tgt: Support x86_64-*-linux-gnux32.
170
171 2012-05-04  H.J. Lu  <hongjiu.lu@intel.com>
172
173         * config/tc-i386.c (match_template): Add `instruction' to
174         unsupported error message.
175
176 2012-05-04  H.J. Lu  <hongjiu.lu@intel.com>
177
178         * config/tc-i386.c (output_insn): Reformat.
179
180 2012-05-04  H.J. Lu  <hongjiu.lu@intel.com>
181
182         * config/tc-i386.c (output_insn): Remove the extra VEX check.
183
184 2012-05-04  H.J. Lu  <hongjiu.lu@intel.com>
185
186         * config/tc-i386.c (match_template): Improve unsupported error
187         message.
188
189 2012-05-03  Sean Keys  <skeys@ipdatasys.com>
190
191         * configure, Makefile.in: Regenerate.
192         * Makefile.am (CPU_TYPES, TARGET_CPU_CFILES, TARGET_CPU_HFILES):
193         * configure.tgt: Added cpu type.
194         Added files for XGATE assembler.
195         * config/tc-xgate.c: Assembler for XGATE.
196         * config/tc-xgate.h: Header definition for assembler
197         Added files for XGATE testsuite.
198         * doc/Makefile.am (CPU_DOCS): Added XGATE file.
199         * doc/c-xgate.texi: Document XGATE and XGATE port.
200         * doc/as.texinfo: Ditto.
201         * doc/all.texi: Ditto
202         * NEWS: Mention the new support.
203
204 2012-04-30  DJ Delorie  <dj@redhat.com>
205
206         * config/rx-parse.y (rx_intop): Add parameter for operation size.
207         Check for large positive constants really being small negative
208         ones.
209         (BRA, BSR): Update calls to rx_intop.
210         (immediate): Likewise.
211
212 2012-04-26  Mark Wielaard  <mjw@redhat.com>
213
214         * dwarf2dbg.c (DWARF2_ARANGES_VERSION): New define to 2.
215         (DWARF2_LINE_VERSION): Likewise.
216         (out_debug_line): Use DWARF2_LINE_VERSION not DWARF2_VERSION.
217         (out_debug_aranges): Use DWARF2_ARANGES_VERSION not DWARF2_VERSION.
218         (out_debug_abbrev): Use DW_FORM_data for DW_AT_high_pc when
219         DWARF2_VERSION >= 4.
220         (out_debug_info): Use difference between start and end as data
221         value for DW_AT_high_pc when DWARF2_VERSION >= 4.
222         * config/tc-ia64.h (DWARF2_LINE_VERSION): Override it.
223
224 2012-04-27  David S. Miller  <davem@davemloft.net>
225
226         * doc/c-sparc.text: Document %l34 and %h34.
227
228         * config/tc-sparc.c (v9a_asr_table): Add 'cfr'.
229
230         * config/tc-sparc.c (sparc_arch_table): Add HWCAP_PAUSE to sparc4,
231         v8pluse, v8plusv, v9e, and v9v.
232         (v9a_asr_table): Add 'pause'.
233
234         * config/tc-sparc.c (sparc_arch_table): Add HWCAP_CBCOND to
235         sparc4, v8pluse, v8plusv, v9e, and v9v.
236         (sparc_ip): Handle R_SPARC_5 of immediate constants inline in
237         order to accomodate cbcond which otherwise would require two
238         relocations to be handled in a single instruction..
239
240         * config/tc-sparc.c (sparc_ip): Likewise.  Accept instruction
241         names containing "_".
242         (sparc_arch_table): Add sparc4, v8pluse, and v9e.  Add crypto
243         hwcap masks to v8plusv and v9v.
244
245         * config/tc-sparc.c (sparc_arch_table): Rework to use HWCAP_*
246         masks.
247         (sparc_md_end): No longer need to translate hwcap_seen values into
248         ELF hwcap bits, they now match exactly.
249         (get_hwcap_name): Use HWCAP_* and handle new values.
250         (sparc_ip): Fetch hwcaps from insn->hwcaps instead of insn->flags.
251
252 2012-04-20  Tristan Gingold  <gingold@adacore.com>
253
254         * config/tc-ia64.c (obj_elf_vms_common): New function.
255         (md_pseudo_table): Add .vms_common pseudo.
256         * config/obj-elf.h (obj_elf_section_name): Add a prototype.
257         * config/obj-elf.c (obj_elf_section_name): Make it public.
258
259 2012-04-17  Richard Sandiford  <r.sandiford@uk.ibm.com>
260
261         * config/tc-avr.c (md_apply_fix): Fix handling of BFD_RELOC32.
262
263 2012-04-12  David S. Miller  <davem@davemloft.net>
264
265         * config/tc-sparc.c (sparc_ip): Handle '=', "%h34", "%l34", and
266         BFD_RELOC_SPARC_H34.
267         (md_apply_fix): Handle BFD_RELOC_SPARC_WDISP10 and BFD_RELOC_SPARC_H34.
268         (tc_gen_reloc): Likewise.
269
270 2012-04-12  Roland McGrath  <mcgrathr@google.com>
271
272         * configure.tgt (arm-*-nacl*): Match it.
273         * config/te-nacl.h (FPU_DEFAULT, EABI_DEFAULT): Define.
274         (LOCAL_LABELS_DOLLAR): Define.
275         * config/tc-arm.c (elf32_arm_target_format) [TE_NACL]:
276         Use nacl format variants.
277
278 2012-04-12  Jie Zhang  <jie@codesourcery.com>
279             Meador Inge  <meadori@codesourcery.com>
280
281         * config/tc-arm.c (only_one_reg_in_list): New function.
282         (encode_ldmstm): Ditto.
283         (do_ldmstm): Use a different encoding when pushing or poping
284         a single register.
285         (A_COND_MASK): New macro.
286         (A_PUSH_POP_OP_MASK): Ditto.
287         (A1_OPCODE_PUSH): Ditto.
288         (A2_OPCODE_PUSH): Ditto.
289         (A2_OPCODE_POP): Ditto.
290
291 2012-04-06  Maciej W. Rozycki  <macro@linux-mips.org>
292
293         * doc/c-mips.texi (MIPS Opts): Correct -no-mfix-24k to
294         -mno-fix-24k.
295
296 2012-04-06  Roland McGrath  <mcgrathr@google.com>
297
298         * configure.in (AC_CHECK_HEADERS): Add locale.h.
299         * config.in: Regenerate.
300         * configure: Regenerate.
301
302 2012-04-05  Nick Clifton  <nickc@redhat.com>
303
304         * configure.in (AC_CHECK_FUNCS): Add setlocale.
305         (AM_LC_MESSAGES): Add.
306         * aclocal.m4: Regenerate.
307         * config.in: Regenerate.
308         * configure: Regenerate.
309
310 2012-04-03  DJ Delorie  <dj@redhat.com>
311
312         * config/rx-parse.y: Make the .L optional for ADC and SBB.
313
314 2012-04-02  DJ Delorie  <dj@redhat.com>
315
316         * config/rx-parse.y: IMM->IMM_, take an extra parameter for the
317         transfer size.
318         (IMM): New, call IMM_ with the default 32.
319         (IMMW,IMMB): Likewise, for 16 and 8.
320         (NIMM, MBIMM): Add size parameter.
321         (immediate): Likewise.  Allow 32768..65535 for 16-bit transfers.
322         (MOV.W): Use IMMW instead of IMM.
323
324         * config/rx-parse.y (ADC,SBB): ADC and SBB only allow .L.
325         (op_dp20_rm_l): New.
326         (op_dp20_rim_l): New.
327
328         * config/rx-parse.y (op_dp20_rms): Rename to op_dp20_rr, don't allow mem.
329         (ABS, NEG, NOT): These only take REG or REG,REG (rr, not rms).
330
331 2012-03-29  Terry Guo  <terry.guo@arm.com>
332
333         * config/tc-arm.c (arm_cpus): Add cortex-m0plus.
334         * doc/c-arm.texi (ARM Options): Document -mcpu=cortex-m0plus.
335
336 2012-03-23  Maxim Kuvyrkov  <maxim@codesourcery.com>
337
338         * config/tc-mips.c (mips_cpu_info_table): Add entry for Broadcom XLP.
339         * doc/c-mips.texi: Mention XLP.
340
341 2012-03-21  Thomas Schwinge  <thomas@codesourcery.com>
342
343         [SH] Support the .uaquad and .8byte directives also for non-sh64
344         configurations.
345
346         * config/tc-sh.c (sh_cons_fix_new, md_apply_fix) [!HAVE_SH64]: Handle
347         BFD_RELOC_64.
348         * doc/c-sh64.texi (SH64 Machine Directives): Move .uaquad
349         description...
350         * doc/c-sh.texi (SH Machine Directives): ... here.
351
352 2012-03-20  Nick Clifton  <nickc@redhat.com>
353
354         * config/tc-arm.c (do_vmrs): Accept priviledged mode VFP system
355         registers.
356         (do_vmsr): Likewise.
357         (arm_opcode_insns): Do not default to using the FPSCR register in
358         the VMRS and VMSR registers.
359
360 2012-03-16  Roland McGrath  <mcgrathr@google.com>
361
362         * config/tc-i386.h [TE_NACL] (ELF_TARGET_FORMAT32, ELF_TARGET_FORMAT64):
363         Define for this case.
364         * configure.tgt (i386-*-nacl*): If ${cpu} is x86_64*, default to x32.
365
366 2012-03-16  Matthew Gretton-Dann  <matthew.gretton-dann@arm.com>
367
368         * config/tc-arm.c (aeabi_set_public_attributes): Correct
369         handling of Tag_DIV_use.
370
371 2012-03-15  Thomas Schwinge  <thomas@codesourcery.com>
372
373         * doc/as.texinfo (Bundle directives): Fix typo.
374
375 2012-03-14  Ryan Mansfield  <rmansfield@qnx.com>
376
377         * doc/as.texinfo (Bundle directives): Replace @defn with @dfn.
378
379 2012-03-13  Roland McGrath  <mcgrathr@google.com>
380
381         * config/tc-arm.c (arm_frag_max_var): New function.
382         * config/tc-arm.h: Declare it.
383         (md_frag_max_var): New macro.
384
385         * config/tc-i386.c (i386_frag_max_var): New function.
386         * config/tc-i386.h: Declare it.
387         (md_frag_max_var): New macro.
388
389         * doc/as.texinfo (Bundle directives): New node.
390         (Pseudo Ops): Add it to the menu.
391         * NEWS: Mention new feature.
392         * read.c [md_frag_max_var] (HANDLE_BUNDLE): New macro.
393         [HANDLE_BUNDLE] (bundle_align_p2): New variable.
394         [HANDLE_BUNDLE] (bundle_lock_frchain, bundle_lock_frag): New variables.
395         [HANDLE_BUNDLE] (start_bundle, pending_bundle_size, finish_bundle):
396         New functions.
397         (assemble_one): New function if [HANDLE_BUNDLE], #define directly
398         to md_assembly if not.
399         (read_a_source_file): Call assemble_one in place of md_assemble.
400         (read_a_source_file) [HANDLE_BUNDLE]: Check for unterminated
401         .bundle_lock at end of processing.
402         [HANDLE_BUNDLE] (s_bundle_align_mode, s_bundle_lock, s_bundle_unlock):
403         New functions.
404         [HANDLE_BUNDLE] (potable): Add their entries.
405         * read.h: Declare new functions.
406
407 2012-03-10  Edmar Wienskoski  <edmar@freescale.com>
408
409         * config/tc-ppc.c (md_show_usage): Document -me5500 and -me6500.
410         (ppc_handle_align): Add termination nop opcode for e500mc family.
411         * doc/as.texinfo: Document options -me5500 and -me6500.
412         * doc/c-ppc.texi: Likewise.
413
414 2012-03-07  Nick Clifton  <nickc@redhat.com>
415
416         * config/tc-mn10300.c (other_registers): Add SSP and USP.
417         (md_assemble): Add support for TLS relocs.
418         (mn10300_parse_name): Likewise.
419
420 2012-02-27  Alan Modra  <amodra@gmail.com>
421
422         * config/tc-crx.c (check_range): Correct uint32_t misconceptions.
423
424 2012-02-27  Alan Modra  <amodra@gmail.com>
425
426         * config/tc-tic4x.c (tic4x_do_align): Remove ATTRIBUTE_UNUSED on
427         params.  Properly generate NOP pattern.  Comment reason for
428         subseg_text_p failure.
429
430 2012-02-27  Alan Modra  <amodra@gmail.com>
431
432         * config/tc-h8300.c (constant_fits_width_p): Trim constant to 32 bits
433         and sign extend before range tests.
434         (constant_fits_size_p): Similarly.
435         (get_specific): Trim X_add_number to 32 bits.
436         (fix_operand_size): Likewise, and use unsigned test for signed
437         ranges.
438
439 2012-02-27  Alan Modra  <amodra@gmail.com>
440
441         * config/tc-crx.c: Include bfd_stdint.h.
442         (getconstant): Remove irrelevant comment.  Don't fail due to
443         sign-extension of int mask.
444         (check_range): Rewrite using unsigned arithmetic throughout.
445
446 2012-02-25  Walter Lee  <walt@tilera.com>
447
448         * tc-tilepro.c (emit_tilepro_instruction): Check if symbol is
449         non-local before checking sy_value.
450         * tc-tilegx.c (emit_tilegx_instruction): Ditto.
451
452 2012-02-25  Walter Lee  <walt@tilera.com>
453
454         * tc-tilepro.c (O_tls_le): Define operator.
455         (O_tls_le_lo16): Ditto.
456         (O_tls_le_hi16): Ditto.
457         (O_tls_le_ha16): Ditto.
458         (O_tls_gd_call): Ditto.
459         (O_tls_gd_add): Ditto.
460         (O_tls_ie_load): Ditto.
461         (md_begin): Delete old operators; handle new operators.
462         (emit_tilepro_instruction): Ditto.
463         (md_apply_fix): Ditto.
464         * tc-tilegx.c (O_hw1_got): Delete operator.
465         (O_hw2_got): Ditto.
466         (O_hw3_got): Ditto.
467         (O_hw2_last_got): Ditto.
468         (O_hw1_tls_gd): Ditto.
469         (O_hw2_tls_gd): Ditto.
470         (O_hw3_tls_gd): Ditto.
471         (O_hw2_last_tls_gd): Ditto.
472         (O_hw1_tls_ie): Ditto.
473         (O_hw2_tls_ie): Ditto.
474         (O_hw3_tls_ie): Ditto.
475         (O_hw2_last_tls_ie): Ditto.
476         (O_hw0_tls_le): Define operator.
477         (O_hw0_last_tls_le): Ditto.
478         (O_hw1_last_tls_le): Ditto.
479         (O_tls_gd_call): Ditto.
480         (O_tls_gd_add): Ditto.
481         (O_tls_ie_load): Ditto.
482         (O_tls_add): Ditto.
483         (md_begin): Delete old operators; handle new operators.
484         (emit_tilegx_instruction): Ditto.
485         (md_apply_fix): Ditto.
486         * doc/c-tilegx.texi: Delete old operators; document new operators.
487         * doc/c-tilepro.texi: Ditto.
488
489 2012-02-25  Walter Lee  <walt@tilera.com>
490
491         * tc-tilepro.c (apply_special_operator): delete cases for
492         got and tls operators.
493         (md_apply_fix): Ditto.
494         * tc-tilegx.c (md_begin): Set architecture and machine.
495         (tilegx_target_format): Handle big endian.
496         (OPTION_EB): Define.
497         (OPTION_EL): Define.
498         (md_longopts): Add entries for "EB" and "EL".
499         (md_parse_option): Handle OPTION_EB and OPTION_EL.
500         (md_show_usage): Add -EB and -EL.
501         (md_number_to_chars): New.
502         (apply_special_operator): delete cases for got and tls
503         operators.
504         (md_apply_fix): Ditto.
505         * tc-tilegx.h (TARGET_BYTES_BIG_ENDIAN): Guard definition with
506         ifndef.
507         (md_number_to_chars): Delete.
508         * configure.tgt (tilegx*be): Handle.
509         * doc/as.texinfo [TILE-Gx]: Document -EB and -EL.
510         * doc/c-tilegx.texi: Ditto.
511
512 2012-02-21  H.J. Lu  <hongjiu.lu@intel.com>
513
514         * config/tc-i386.c (check_hle): Use HLEPrefixNone, HLEPrefixLock,
515         HLEPrefixAny and HLEPrefixRelease.
516
517 2012-02-21  Matthew Gretton-Dann  <matthew.gretton-dann@arm.com>
518
519         * gas/config/tc-arm.h (DOUBLESLASH_LINE_COMMENTS): Define.
520
521 2012-02-21  Iain Sandoe  <idsandoe@googlemail.com>
522
523         * write.c (write_object_file): Add md_pre_output_hook.
524         * config/obj-macho.c (obj_mach_o_check_before_writing): New.
525         (obj_mach_o_pre_output_hook): New.
526         * config/obj-macho.h (md_pre_output_hook): Define.
527         (obj_mach_o_pre_output_hook): Declare.
528
529 2012-02-21  Tristan Gingold  <gingold@adacore.com>
530
531         * config/tc-i386.h (OBJ_MACH_O): New section.
532         (TC_FORCE_RELOCATION): Use obj_mach_o_force_reloc.
533         (TC_FORCE_RELOCATION_SUB_SAME): New
534         (TC_FORCE_RELOCATION_SUB_LOCAL): New.
535         (TC_VALIDATE_FIX_SUB): New.
536         * frags.h (struct frag): OBJ_FRAG_TYPE, new field.
537         * symbols.c (colon): obj_frob_colon: New hook.
538         * write.c (write_object_file): md_pre_relax_hook, new
539         hook.
540         * config/obj-macho.c (obj_mach_o_frob_colon): New.
541         (obj_mach_o_frob_label): Record sub-section labels.
542         (obj_mach_o_frob_symbol): Rename from obj_macho_frob_symbol.
543         (obj_mach_o_set_subsections): New.
544         (obj_mach_o_pre_relax_hook): New.
545         (obj_mach_o_in_different_subsection): New.
546         (obj_mach_o_force_reloc_sub_same): New.
547         (obj_mach_o_force_reloc_sub_local): New.
548         (obj_mach_o_force_reloc): New.
549         * config/obj-macho.h (OBJ_SYMFIELD_TYPE): New.
550         (obj_frob_colon): New Define.
551         (obj_mach_o_frob_label): Renamed.
552         (obj_mach_o_frob_symbol): Renamed.
553         (OBJ_FRAG_TYPE): New.
554         (obj_mach_o_in_different_subsection, obj_mach_o_force_reloc,
555          obj_mach_o_force_reloc_sub_same,
556          obj_mach_o_force_reloc_sub_local): New declarations.
557
558 2012-02-20  Iain Sandoe  <idsandoe@googlemail.com>
559
560         * config/obj-macho.c (obj_mach_o_is_frame_section): New.
561         (obj_mach_o_allow_local_subtract): New.
562         * config/obj-macho.h (md_allow_local_subtract): Define.
563         (obj_mach_o_allow_local_subtract): Declare.
564
565 2012-02-20  Iain Sandoe  <idsandoe@googlemail.com>
566
567         * config/obj-macho.c (obj_mach_o_make_or_get_sect): In the absence of
568         canonical information, try to determine CODE and DEBUG section flags
569         from the mach-o section data.
570
571 2012-02-20  Nick Clifton  <nickc@redhat.com>
572
573         * cgen.c (gas_cgen_parse_operand): Do not set BSF_RELC flag on
574         local symbols.
575
576 2012-02-12  Iain Sandoe  <idsandoe@googlemail.com>
577
578         * config/obj-macho.c (obj_mach_o_indirect_symbol): Force promotion of
579         any local symbol used as an indirect.
580
581 2012-02-10  Iain Sandoe  <idsandoe@googlemail.com>
582
583         * config/obj-macho.c (obj_mach_o_make_or_get_sect): Always fill in
584         stub size when provided.  (obj_mach_o_section): Flag that stub-size
585         has been provided.
586
587 2012-02-08  H.J. Lu  <hongjiu.lu@intel.com>
588
589         * config/tc-i386.c (HLE_PREFIX): New.
590         (check_hle): Likewise.
591         (_i386_insn): Add have_hle.
592         (cpu_arch): Add .hle and .rtm.
593         (md_assemble): Call check_hle if i.have_hle isn't zero.
594         (parse_insn): Set i.have_hle to 1 for HLE prefix.
595         (output_jump): Support up to 2 byte opcode.
596
597         * doc/c-i386.texi: Document hle/.hle and rtm/.rtm.
598
599 2012-02-02  Tristan Gingold  <gingold@adacore.com>
600
601         * config/obj-macho.c (obj_mach_o_zerofill): Silent
602         uninitialized variable warning.
603
604 2012-02-02  Nick Clifton  <nickc@redhat.com>
605
606         PR gas/13224
607         * config/obj-elf.c (obj_elf_parse_section_letters): Rename 'clone'
608         to 'is_clone' to avoid shadowing a gloabl.
609         (obj_elf_section): Likewise.
610
611 2012-01-31  Paul Brook  <paul@codesourcery.com>
612
613         * doc/c-tic6x.c: Fix typo.
614
615 2012-01-26  Alexey Makhalov  <makhaloff@gmail.com>
616
617         PR gas/13624
618         * app.c (app_push): Set 'add_newlines' to zero after saving.
619
620 2012-01-24  DJ Delorie  <dj@redhat.com>
621
622         * config/rl78-parse.y (NOT1): Add.
623
624 2012-01-23  Roland McGrath  <mcgrathr@google.com>
625
626         * configure.tgt (i386-*-nacl*): Match it.
627         * config/te-nacl.h: New file.
628         * config/tc-i386.h [TE_NACL] (ELF_TARGET_FORMAT): Define for this case.
629         * config/tc-i386.c [TE_NACL] (i386_comment_chars, PREFIX_SEPARATOR):
630         Use TE_GNU et al case for TE_NACL too.
631
632 2012-01-20  H.J. Lu  <hongjiu.lu@intel.com>
633
634         * config/tc-i386.c (_i386_insn): Replace disp32_encoding with
635         disp_encoding.
636         (md_assemble): Updated.
637         (output_branch): Likewise.
638         (parse_insn): Support .d8 suffix.
639         (build_modrm_byte): Fake zero displacement for .d8 and .d32
640         suffixes.
641
642         * doc/c-i386.texi: Document .d8 suffix.
643
644 2012-01-17  Andrew Burgess  <aburgess@broadcom.com>
645
646         * write.c (fix_new_internal): Don't mark used parameter as unused.
647
648 2012-01-17  Alan Modra  <amodra@gmail.com>
649
650         * as.c (parse_args): Update copyright message year.
651
652 2012-01-13  H.J. Lu  <hongjiu.lu@intel.com>
653
654         * config/tc-i386.c (cpu_arch): Add ".vmfunc".
655
656         * doc/c-i386.texi: Document vmfunc.
657
658 2012-01-13  Tristan Gingold  <gingold@adacore.com>
659
660         * config/obj-macho.c (obj_mach_o_reorder_section_relocs): New.
661         * config/obj-macho.h (SET_SECTION_RELOCS): Define.
662         (obj_mach_o_reorder_section_relocs): Declare.
663
664 2012-01-13  Iain Sandoe  <idsandoe@googlemail.com>
665
666         * config/obj-macho.c (obj_mach_o_set_indirect_symbols): Handle
667         absolute indirect symbols.
668
669 2012-01-13  Iain Sandoe  <idsandoe@googlemail.com>
670
671         * config/obj-macho.c (obj_mach_o_set_vma_data): New type.
672         (obj_mach_o_set_section_vma): New.
673         (obj_mach_o_post_relax_hook): New.
674         * config/obj-macho.h (md_post_relax_hook): Define.
675         (obj_mach_o_post_relax_hook): Declare.
676
677 2012-01-12  Iain Sandoe  <idsandoe@googlemail.com>
678
679         * config/obj-macho.c (obj_mach_o_set_symbol_qualifier): Switch off
680         lazy when the symbol is private_extern.
681         (obj_mach_o_indirect_sym): New type.
682         (obj_mach_o_indirect_symbol): New.
683         (mach_o_pseudo_table): Use obj_mach_o_indirect_symbol.
684         (obj_macho_frob_label): Adjust to avoid adding bsyms for locals.
685         (obj_macho_frob_label): Likewise.  Adjust external and comm
686         symbol tests.
687         (obj_mach_o_set_indirect_symbols): New.
688         (obj_mach_o_frob_file_after_relocs): New.
689         *config/obj-macho.h (obj_frob_file_after_relocs): Define.
690         (obj_mach_o_frob_file_after_relocs): Declare.
691
692 2012-01-12  Tristan Gingold  <gingold@adacore.com>
693
694         PR gas/13591
695         * config/obj-coff.h (sy_obj): Rename macro to avoid a name conflict.
696
697 2012-01-10  Tristan Gingold  <gingold@adacore.com>
698
699         * struc-symbol.h (struct symbol_flags): New struct, created from...
700         (struct symbol): ... this one.  Add sy_flags field, remove flag fields.
701         (struct local_symbol): Replace lsy_marker field by lsy_flags.
702         Adjust comment.
703         (local_symbol_resolved_p): Adjust.
704         (local_symbol_mark_resolved): Likewise.
705         * symbols.c (LOCAL_SYMBOL_CHECK): Adjust.
706         (local_symbol_make, local_symbol_convert, colon)
707         (symbol_clone_if_forward_ref, verify_symbol_chain)
708         (resolve_symbol_value, snapshot_symbol, S_GET_VALUE)
709         (S_IS_WEAKREFR, S_IS_WEAKREFD, S_IS_VOLATILE, S_IS_FORWARD_REF)
710         (S_SET_WEAKREFR, S_CLEAR_WEAKREFR, S_SET_WEAKREFD)
711         (S_CLEAR_WEAKREFD, S_SET_VOLATILE, S_CLEAR_VOLATILE)
712         (S_SET_FORWARD_REF, symbol_same_p, symbol_mark_used)
713         (symbol_clear_used, symbol_used_p, symbol_mark_used_in_reloc)
714         (symbol_clear_used_in_reloc, symbol_used_in_reloc_p)
715         (symbol_mark_mri_common, symbol_clear_mri_common)
716         (symbol_mri_common_p, symbol_mark_written, symbol_clear_written)
717         (symbol_written_p, symbol_mark_resolved, symbol_resolved_p)
718         (symbol_equated_reloc_p, dot_symbol_init)
719         (print_symbol_value_1): Adjust.
720
721 2012-01-09  Iain Sandoe  <idsandoe@googlemail.com>
722
723         * config/obj-macho.c (obj_mach_o_weak): Remove.
724         (obj_mach_o_common_parse): Set symbol qualifiers.
725         (LAZY, REFE): New macros.
726         (obj_mach_o_symbol_type): New enum.
727         (obj_mach_o_set_symbol_qualifier): New.
728         (obj_mach_o_sym_qual): New.
729         (mach_o_pseudo_table): Add symbol qualifiers, set indirect_symbol to
730         a dummy function.
731         (obj_mach_o_type_for_symbol): New.
732         (obj_macho_frob_label): New.
733         (obj_macho_frob_symbol): New.
734         * config/obj-macho.h (S_SET_ALIGN): Amend temorary var name.
735         (obj_frob_label, obj_macho_frob_label): Declare.
736         (obj_frob_symbol, obj_macho_frob_symbol): Declare.
737
738 2012-01-08  Richard Sandiford  <rdsandiford@googlemail.com>
739
740         * config/tc-mips.c (s_tls_rel_directive): Call mips_clear_insn_labels.
741
742 2012-01-08  Andrew Pinski  <andrew.pinski@caviumnetworks.com>
743             Richard Sandiford  <rdsandiford@googlemail.com>
744
745         * config/tc-mips.c (mips_move_labels): Take the list of labels and
746         textness as parameters.
747         (mips_move_text_labels): New function.
748         (append_insn): Use it instead of mips_move_labels.
749         (mips_emit_delays, start_noreorder): Likewise.
750         (mips_align): Take the labels rather than just one label.
751         Move all labels to after the .align.
752         (s_align): Change the last argument to mips_align.
753         (s_cons): Likewise.
754         (s_float_cons): Likewise.
755         (s_gpword): Likewise.
756         (s_gpdword): Likewise.
757
758 2012-01-06  Tristan Gingold  <gingold@adacore.com>
759
760         * config/tc-i386.c: Update copyright year.
761         (lex_got): Also defined for Mach-O.
762         Add a guard for non-ELF configuration.
763         (md_longopts): Also handle -64 for Mach-O.
764         (md_parse_option): Likewise.
765         (i386_target_format): Adjust for x86_64-darwin.
766
767 2012-01-04  Iain Sandoe  <idsandoe@googlemail.com>
768
769         * config/obj-macho.c (obj_mach_o_segT_from_bfd_name): Tidy definition.
770         (obj_mach_o_get_section_names): New (split from obj_mach_o_section).
771         (obj_mach_o_make_or_get_sect): Likewise.
772         (obj_mach_o_section): Split out the functionality shared with zerofill.
773         (obj_mach_o_zerofill): New.
774         (obj_mach_o_common_parse): Ensure whitespace is skipped.
775         (mach_o_pseudo_table): Add .zerofill.
776
777 2012-01-03  Iain Sandoe  <idsandoe@googlemail.com>
778
779         * config/obj-macho.c (obj_macho_process_stab): New.
780         * config/obj-macho.h (OBJ_PROCESS_STAB): Define.
781         (obj_macho_process_stab): Declare.
782
783 For older changes see ChangeLog-2011
784 \f
785 Local Variables:
786 mode: change-log
787 left-margin: 8
788 fill-column: 74
789 version-control: never
790 End: