bfd/
[binutils.git] / gas / ChangeLog
blob11a0d246821b3aa60e482aba81b289c3133e548a
1 2008-08-06  Richard Sandiford  <rdsandiford@googlemail.com>
3         * config/tc-mips.c (mips16_reloc_p, got16_reloc_p, hi16_reloc_p)
4         (lo16_reloc_p): New functions.
5         (reloc_needs_lo_p): Use hi16_reloc_p and got16_reloc_p to
6         generalize relocation checks.
7         (matching_lo_reloc): New function.
8         (fixup_has_matching_lo_p): Use it.
9         (mips16_mark_labels): Don't clobber a symbol's visibility.
10         (append_insn): Use hi16_reloc_p and lo16_reloc_p.
11         (mips16_ip): Handle BFD_RELOC_MIPS16_GOT16 and BFD_RELOC_MIPS16_CALL16.
12         (md_apply_fix): Likewise.
13         (mips16_percent_op): Add %got and %call16.
14         (mips_frob_file): Use got16_reloc_p to generalize relocation checks.
15         Use matching_lo_reloc.
16         (mips_force_relocation): Use hi16_reloc_p and lo16_reloc_p to
17         generalize relocation checks.
18         (mips_fix_adjustable): Use lo16_reloc_p to generalize relocation
19         checks.
21 2008-08-06  DJ Delorie  <dj@redhat.com>
23         * NEWS: Mention these changes.
25         * config/tc-h8300.h (H_TICK_HEX): Define.
26         * config/tc-h8300.c (OPTION_H_TICK_HEX): New.
27         (md_longopts): Add "-h-tick-hex".
28         (md_parse_option): Support it.
29         * doc/c-h8300.texi (H8/300 Options): Document it.
30         * doc/as.texinfo (Overview): Likewise.
31         
32         * config/tc-sh.h (H_TICK_HEX): Define.
33         * config/tc-sh.c (OPTION_H_TICK_HEX): New.
34         (md_longopts): Add "-h-tick-hex".
35         (md_parse_option): Support it.
36         * doc/c-sh.texi (SH Options): Document it.
37         * doc/c-sh64.texi (SH64 Options): Document it.
38         * doc/as.texinfo (Overview): Likewise.
40 2008-08-05  Alan Modra  <amodra@bigpond.net.au>
42         PR gas/6656
43         * dwarf2dbg.c (dwarf2_directive_file): Disable gas generated
44         debug info if we see compiler generated debug info.
45         (dwarf2_directive_loc): Likewise.  Remove redundant debug_type test.
47 2008-08-04  Alan Modra  <amodra@bigpond.net.au>
49         * dwarf2dbg.c: Remove superfluous forward function declarations.
50         (DWARF2_FORMAT): Add section arg.
51         (out_header): New function, split out from..
52         (out_debug_line): ..here.
53         (out_debug_aranges): Use out_header.
54         (out_debug_abbrev): Add info_seg and line_seg args.  Use
55         DW_FORM_data8 (for DW_AT_stmt_list) if line_seg is 64-bit.
56         (out_debug_info): Use out_header.  Output 8 byte DW_AT_stmt_list
57         if line_seg is 64-bit.
58         (dwarf2_finish): Adjust out_debug_abbrev call.
59         * config/tc-mips.h (DWARF2_FORMAT, mips_dwarf2_format): Add sec arg.
60         * config/tc-mips.c (mips_dwarf2_format): Likewise.
62 2008-08-04  Alan Modra  <amodra@bigpond.net.au>
64         * Makefile.am (POTFILES.in): Set LC_ALL=C.
65         * Makefile.in: Regenerate.
66         * po/POTFILES.in: Regenerate.
68 2008-08-01  Peter Bergner  <bergner@vnet.ibm.com>
70         * config/tc-ppc.c (parse_cpu): Rename altivec_or_spe to retain_flags.
71         Handle -mvsx and -mpower7.
72         (md_show_usage): Document -mpower7 and -mvsx.
73         * doc/as.texinfo (Target PowerPC): Document -mvsx.
74         * doc/c-ppc.texi (PowerPC-Opts): Document -mvsx and -mpower7.
76 2008-07-31  Peter Bergner  <bergner@vnet.ibm.com>
78         * config/tc-ppc.c (parse_cpu) <power6>: Accept Altivec instructions.
79         <cell>: Likewise.
81 2008-07-30  Michael J. Eager  <eager@eagercon.com>
83         * config/tc-ppc.c (parse_cpu): Separate handling of -m403/405.
84         (md_show_usage): Likewise.
86 2008-07-30  Alan Modra  <amodra@bigpond.net.au>
88         * messages.c, symbols.c, write.c: Silence gcc warnings.
90 2008-07-28  Ineiev  <ineiev@yahoo.co.uk>
92         * config/tc-i386.c (operand_type_check): Warning fix.
94 2008-07-26  Michael Eager <eager@eagercon.com>
96         * doc/as.texinfo: Add description of single-precision attribute.
98 2008-07-24  Jie Zhang  <jie.zhang@analog.com>
100         * config/bfin-parse.y (asm_1): Error if plain symbol is used
101         as load/store offset.
103 2008-07-22  Chao-ying Fu  <fu@mips.com>
105         * config/tc-mips.c (mips_ip): Reset s to argsStart.
107 2008-07-22  Jie Zhang  <jie.zhang@analog.com>
109         * config/tc-bfin.c (bfin_gen_loop): Remove loop symbol.
111 2008-07-21  DJ Delorie  <dj@redhat.com>
113         * config/tc-h8300.c (fix_operand_size): Use the default size
114         specified by the .lbranch/.sbranch pseudos.
116 2008-07-18  DJ Delorie  <dj@redhat.com>
118         * config/tc-m32c.h (H_TICK_HEX): Define.
119         * config/tc-m32c.c (OPTION_H_TICK_HEX): Define.
120         (md_longopts): Add support for it.
121         (md_parse_option): Likewise.
122         * doc/as.texinfo (Overview): Add new m32c options.
123         * doc/c-m32c.texi (M32C-Modifiers): Likewise
125         * as.h: (enable_h_tick_hex): New.
126         * app.c (enable_h_tick_hex): New.
127         (LEX_IS_H): New.
128         (do_scrub_begin): Mark 'H' and 'h' as special if enable_h_tick_hex.
129         (do_scrub_chars): If enable_h_tick_hex and 'h', check for H'00
130         style hex constants and convert the input stream to 0x00 style.
131         (do_scrub_chars): If a 'X style character constant is found after
132         a symbol character (like you're or X'00), warn the user.
134 2008-07-10  Richard Sandiford  <rdsandiford@googlemail.com>
136         * config/tc-mips.c (mips16_mark_labels): Use ELF_ST_SET_MIPS16.
137         (mips_fix_adjustable): Likewise.
138         (mips_frob_file_after_relocs): Likewise.
140 2008-07-08  Nathan Sidwell  <nathan@codesourcery.com>
142         * config/tc-m68k.c (m68k_set_cpu, m68k_set_arch): Don't complain
143         about overriding an earlier setting.
145 2008-07-07  Adam Nemet  <anemet@caviumnetworks.com>
147         * config/tc-mips.c (NO_ISA_COP): New macro.
148         (COP_INSN): New macro.
149         (is_opcode_valid): Use them.
150         (macro) <ld_st>: Use them.  Don't accept coprocessor load store
151         insns based on the ISA if CPU is NO_ISA_COP.
152         <copz>: Likewise for coprocessor operations.
154 2008-07-07  Paul Brook  <paul@codesourcery.com>
156         * config/tc-arm.c (arm_fix_adjustable): Don't adjust MOVW/MOVT
157         relocations.
159 2008-07-07  Ralf Corsépius  <ralf.corsepius@rtems.org>
161         * configure.tgt: Add bfin-*-rtems*.
163 2008-07-04  Alan Modra  <amodra@bigpond.net.au>
165         * config/tc-spu.c (md_apply_fix): Handle fully resolved
166         BFD_RELOC_32_PCREL, BFD_RELOC_SPU_HI16 and BFD_RELOC_SPU_LO16.
168 2008-06-25  Peter Bergner  <bergner@vnet.ibm.com>
170         * config/tc-ppc.c (parse_cpu): Handle -m464.
171         (md_show_usage): Likewise.
173 2008-06-24  Eric B. Weddington  <eric.weddington@atmel.com>
175         Add support for ATtiny13A.
176         * config/tc-avr.c (mcu_types): Add attiny13a.
177         * doc/c-avr.texi: Likewise.
179 2008-06-24  Bob Wilson  <bob.wilson@acm.org>
180             Alan Modra  <amodra@bigpond.net.au>
182         * write.c (relax_segment <rs_org>): Include current stretch
183         value when calculating whether .org is backwards.
185 2008-06-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
187         * configure: Regenerate.
189 2008-06-17  Nick Clifton  <nickc@redhat.com>
191         * app.c (do_scrub_chars): Do not UNGET an EOF value.
193 2008-06-16  Hans-Peter Nilsson  <hp@bitrange.com>
195         PR gas/6607
196         * config/tc-mmix.c (s_loc): Assume "negative" addresses belong to
197         text_section.  Do the "stepping backwards" test for text_section
198         using unsigned operands.
200 2008-06-13  Peter Bergner  <bergner@vnet.ibm.com>
202         * config/tc-ppc.c (ppc_cpu): Use ppc_cpu_t typedef.
203         (ppc_insert_operand): Likewise.
204         (ppc_machine): Likewise.
205         * config/tc-ppc.h: #include "opcode/ppc.h"
206         (struct _ppc_fix_extra <ppc_cpu>): Use ppc_cpu_t typedef.
207         (ppc_cpu): Update extern decl.
209 2008-06-12  Adam Nemet  <anemet@caviumnetworks.com>
211         * config/tc-mips.c (validate_mips_insn): Handle field descriptors
212         +x, +X, +p, +P, +s, +S.
213         (mips_ip): Likewise.
215         * config/tc-mips.c (validate_mips_insn): Handle field descriptor +Q.
216         (mips_ip): Likewise.
217         (macro_build): Likewise.
218         (CPU_HAS_SEQ): New macro.
219         (macro2) <M_SEQ_I, M_SNE_I>: Use it.  Emit seq/sne and seqi/snei.
221 2008-06-09  Eric B. Weddington  <eric.weddington@atmel.com>
223         * config/tc-avr.c (mcu_types): Remove support for ATmega32HVB device.
224         * doc/c-avr.texi: Likewise.
226 2008-06-04  Nick Clifton  <nickc@redhat.com>
228         * app.c (do_scrub_chars): Do not UNGET an EOF value.
230 2008-06-03  H.J. Lu  <hongjiu.lu@intel.com>
232         * config/tc-i386.c (set_sse_check): New.
233         (md_pseudo_table): Add "sse_check".
235 2008-06-03  Paul Brook  <paul@codesourcery.com>
237         * config/tc-arm.c (do_t_rbit): Populate both rm fields.
239 2008-05-30  Nick Clifton  <nickc@redhat.com>
241         PR 5523
242         * config/tc-avr.c (avr_ldi_expression): Do not warn about unknown
243         relocs here.
245 2008-05-29  Maxim Kuvyrkov  <maxim@codesourcery.com>
247         * config/tc-mips.c (mips_cpu_info_table): Move records for
248         ST Loongson-2E/2F processors to a better place.
250 2008-05-23  H.J. Lu  <hongjiu.lu@intel.com>
252         PR gas/6518
253         * config/tc-i386.c (match_template): Report ambiguous operand
254         size, not invalid suffix when there is no match in Intel
255         syntax.
257 2008-05-22  Paul Brook  <paul@codesourcery.com>
259         * config/tc-arm.c (parse_cond): Covert to lowercase before matching.
261 2008-05-21  I-Jui Sung  <ijsung@gmail.com>
263         * config/tc-arm.c (arm_cpus): Add Faraday ARMv4 and ARMv5TE
264         compatible cores: fa526, fa626, fa626te, fa726te.
265         * doc/c-arm.texi (ARM Opts): Add -mcpu={fa526, fa626, fa626te,
266         fa726te} options.
268 2008-05-14  Alan Modra  <amodra@bigpond.net.au>
270         * Makefile.am: Run "make dep-am".
271         * Makefile.in: Regenerate.
272         * doc/Makefile.in: Regenerate.
273         * po/POTFILES.in: Regenerate.
275 2008-05-09  Catherine Moore  <clm@codesourcery.com>
277         * config/tc-mips.c (mips_frob_file): Don't match MIPS16 relocs
278         with non-MIPS16 relocs.
280 2008-05-09  Chao-ying Fu  <fu@mips.com>
282         * config/tc-mips.c (md_begin): Use strncmp to compare TARGET_OS, in
283         case that some characters append at the end of the name.
284         (mips_ip): Likewise.
285         (s_change_sec): Likewise.
286         (md_section_align): Likewise.
288 2008-05-07  Bob Wilson  <bob.wilson@acm.org>
290         * config/tc-xtensa.c (xtensa_create_property_segments): Use
291         xtensa_make_property_section instead of xtensa_get_property_section.
292         (xtensa_create_xproperty_segments): Likewise.
294 2008-05-02  H.J. Lu  <hongjiu.lu@intel.com>
296         * NEWS: Mention XSAVE, EPT and MOVBE.
298         * config/tc-i386.c (cpu_arch): Add .movbe and .ept.
299         (md_show_usage): Add .movbe and .ept.
301         * doc/c-i386.texi: Add movbe and ept to -march=.  Document
302         .movbe and .ept.
304 2008-04-29  David S. Miller  <davem@davemloft.net>
306         * config/tc-sparc.c (v9a_asr_table): Fix order of softint entries.
308 2008-04-28  Adam Nemet  <anemet@caviumnetworks.com>
310         * config/tc-mips.c (file_mips_soft_float, file_mips_single_float):
311         New statics.
312         (OPTION_ELF_BASE): Make room for new option macros.
313         (OPTION_SOFT_FLOAT, OPTION_HARD_FLOAT, OPTION_SINGLE_FLOAT,
314         OPTION_DOUBLE_FLOAT): New option macros.
315         (md_longopts): Add msoft-float, mhard-float, msingle-float and
316         mdouble-float.
317         (md_parse_option): Handle OPTION_SINGLE_FLOAT,
318         OPTION_DOUBLE_FLOAT, OPTION_SOFT_FLOAT and OPTION_HARD_FLOAT.
319         (md_show_usage): Add -msoft-float, -mhard-float, -msingle-float
320         and -mdouble-float.
321         (struct mips_set_options): New fields soft_float and single_float.
322         (mips_opts): Initialized them.  Add comment for each field
323         initializer.
324         (mips_after_parse_args): Set them based on file_mips_soft_float
325         and file_mips_single_float.
326         (s_mipsset): Add support for `.set softfloat', `.set hardfloat',
327         `.set singlefloat' and `.set doublefloat'.
328         (is_opcode_valid): New function to invoke OPCODE_IS_MEMBER.
329         Handle single-float and soft-float instructions here.
330         (macro_build, mips_ip): Use it instead of OPCODE_IS_MEMBER.
331         (is_opcode_valid_16): New function.
332         (mips16_ip): Use it instead of OPCODE_IS_MEMBER.
333         (macro) <M_LDC1_AB, M_SDC1_AB, M_L_DOB, M_L_DAB, M_S_DAB,
334         M_S_DOB>: Remove special-casing of r4650.
335         * doc/c-mips.texi (-march=): Add Octeon.
336         (MIPS Opts): Document -msoft-float and -mhard-float.  Document
337         -msingle-float and -mdouble-float.
338         (MIPS floating-point): New section.  Document `.set softfloat' and
339         `.set hardfloat'.  Document `.set singlefloat' and `.set
340         doublefloat'.
342 2008-04-25  David S. Miller  <davem@davemloft.net>
344         * config/tc-sparc.c: Accept 'softint_clear' and 'softint_set'
345         %asr aliases.
347         * doc/c-sparc.texi: Consistently refer to architecture 'versions',
348         rather than occaisionally 'levels'.  Consistently refer to Sun's
349         UNIX variant as SunOS, every version of Solaris is also SunOS.
350         Document new 'softint_clear' and 'softint_set' aliases.  Clarify
351         which architecture versions support '%dcr', '%cq', and '%gl'. Add
352         section on 32-bit/64-bit opcode translations.
354 2008-04-23  Mike Frysinger  <vapier@gentoo.org>
356         * Makefile.am (OBJ_FORMAT_CFILES): Add config/obj-fdpicelf.c.
357         (OBJ_FORMAT_HFILES): Add config/obj-fdpicelf.h.
358         (obj-fdpicelf.o): Define.
359         * Makefile.in: Regenerate.
360         * configure.tgt: Set bfd_gas to yes when fmt is fdpicelf.
361         (bfin-*-*): Delete.
362         (bfin-*-linux-uclibc): New; set fmt to fdpicelf and em to linux.
363         (bfin-*-uclinux*): New; set fmt to elf and em to linux.
364         * config/obj-fdpicelf.c: New.
365         * config/obj-fdpicelf.h: Likewise.
366         * config/tc-bfin.c (bfin_flags, bfin_pic_flag): Set default based on
367         the OBJ_FDPIC_ELF define.
368         (OPTION_NOPIC): Define.
369         (md_longopts): Add mnopic and mno-fdpic.
370         (md_parse_option): Handle OPTION_NOPIC.
372 2008-04-23  Paolo Bonzini  <bonzini@gnu.org>
374         * aclocal.m4: Regenerate.
375         * configure: Regenerate.
377 2008-04-23  David S. Miller  <davem@davemloft.net>
379         * config/tc-sparc.c (v9a_asr_table): Add missing
380         'stick' and 'stick_cmpr', and document ordering rules
381         of table.
382         (tc_gen_reloc): Accept BFD_RELOC_SPARC_PC22 and
383         BFD_RELOC_SPARC_PC10.
384         * doc/c-sparc.texi: New section on Sparc constants.
385         Add documentation for %stick and %stick_cmpr.
387 2008-04-22  David S. Miller  <davem@davemloft.net>
389         * config/obj-elf.c (obj_elf_section_type): Add prototype
390         before obj_elf_section_word and add 'warn' arg.
391         (obj_elf_section_word): Add type pointer arg, and if no #SECTION
392         is matched, try checking for #SECTION_TYPE.
393         (obj_elf_section): Adjust for new args.
394         (obj_elf_type_name): New function.
395         (obj_elf_type): Call it, and accept STT_foo number strings
396         in .type statements as output by SunPRO compiler.
398 2008-04-22  H.J. Lu  <hongjiu.lu@intel.com>
400         * config/tc-i386.c (md_assemble): Don't check SSE instructions
401         if noavx is 0.
403 2008-04-18  David S. Miller  <davem@davemloft.net>
405         * doc/c-sparc.texi: Add syntax section.
407 2008-04-18  H.J. Lu  <hongjiu.lu@intel.com>
409         * config/tc-i386.c (build_modrm_byte): Don't check FMA to swap
410         REG and NDS for instructions with immediate operand.
412 2008-04-18  H.J. Lu  <hongjiu.lu@intel.com>
414         * config/tc-i386.c (build_modrm_byte): Swap REG and NDS for
415         FMA.
417 2008-04-16  David S. Miller  <davem@davemloft.net>
419         * config/tc-sparc.c (sparc_ip): Add support for gotdata mnemonics
420         and relocation generation.
421         (tc_gen_reloc): Likewise.
423 2008-04-15  Andrew Stubbs  <andrew.stubbs@st.com>
425         * config/tc-sh.c (md_apply_fix): Make sure BFD_RELOC_SH_PCRELIMM8BY4
426         relocations are properly aligned, and not negative.
428 2008-04-15  Khem Raj  <kraj@mvista.com>
430         * doc/tc-arm.texi: Fix fnstart and fnend directive names.
432 2008-04-14  Edmar Wienskoski  <edmar@freescale.com>
434         * config/tc-ppc.c (parse_cpu): Handle "e500mc".  Extend "e500" to
435         accept e500mc instructions.
436         (md_show_usage): Document -me500mc.
438 2008-04-11  Nick Clifton  <nickc@redhat.com>
440         * listing.c (print_timestamp): Use localtime rather than
441         localtime_r since not all build environments provide the latter.
443 2008-04-10  H.J. Lu  <hongjiu.lu@intel.com>
445         * NEWS: Mention -msse-check=[none|error|warning].
447         * config/tc-i386.c (sse_check): New.
448         (OPTION_MSSE_CHECK): Likewise.
449         (md_assemble): Check SSE instructions if needed.
450         (md_longopts): Add -msse-check.
451         (md_parse_option): Handle OPTION_MSSE_CHECK.
452         (md_show_usage): Show -msse-check=[none|error|warning].
454         * doc/c-i386.texi: Document -msse-check=[none|error|warning].
456 2008-04-10  Santiago Urueña  <suruena@gmail.com>
458         * listing.c: Add -ag listing flag to show general information in
459         listings such as gas version, passed options, and time stamp.
460         (listing_general_info): New function.
461         (print_options): New function.
462         (print_single_option): New function.
463         (print_timestamp): New function.
464         (MAX_DATELEN): Define.
465         (listing_print): Add call to listing_general_info.
466         * listing.h (LISTING_GENERAL): Define.
467         (listing_print): Add new parameter.
468         * as.c (show_usage): Print new switch.
469         (parse_args): Parse new switch.
470         (main): Pass command line on to listing_print.
471         * NEWS: Mention this new feature.
472         * doc/as.texinfo: Document the new sub-option.
474 2008-04-08  Alan Modra  <amodra@bigpond.net.au>
476         * dwarf2dbg.c (dwarf2_emit_insn): Simplify test before dwarf2_where
477         call.  Delete out of date comment.
478         (dwarf2_consume_line_info): Always clear dwarf2_loc_directive_seen.
479         (dwarf2_emit_label): Don't emit unless there has been a previous
480         .file or we are outputting assembler generated debug.
481         dwarf2_consume_line_info after emitting line info, not before.
482         (out_debug_info): Simplify files_in_use test.
484 2008-04-07  H.J. Lu  <hongjiu.lu@intel.com>
486         * config/tc-i386.c (parse_real_register): Return AVX register
487         only if AVX is enabled.
489 2008-04-07  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
491         PR gas/6043
492         * config/tc-sh64.c (shmedia_md_pcrel_from_section): Use
493         md_pcrel_from_section for BFD_RELOC_64 and BFD_RELOC_64_PCREL.
495 2008-04-04  Adrian Bunk  <bunk@stusta.de>
496             Bob Wilson  <bob.wilson@acm.org>
498         * config/tc-xtensa.c (xg_apply_fix_value): Check return code from
499         call to decode_reloc.
501 2008-04-04  H.J. Lu  <hongjiu.lu@intel.com>
503         * NEWS: Mention XSAVE.  Change CLMUL to PCLMUL.
505         * config/tc-i386.c (cpu_arch): Add .pclmul.
506         (md_show_usage): Replace clmul with pclmul.
507         * doc/c-i386.texi: Likewise.
509 2008-04-03  H.J. Lu  <hongjiu.lu@intel.com>
511         * NEWS: Mention AES, CLMUL, AVX/FMA and -msse2avx.
513         * doc/c-i386.texi: Add avx, aes, clmul and fma to -march=.
514         Document -msse2avx, .avx, .aes, .clmul and .fma.
516         * config/tc-i386.c (YMMWORD_MNEM_SUFFIX): New.
517         (vex_prefix): Likewise.
518         (sse2avx): Likewise.
519         (CPU_FLAGS_ARCH_MATCH): Likewise.
520         (CPU_FLAGS_64BIT_MATCH): Likewise.
521         (CPU_FLAGS_32BIT_MATCH): Likewise.
522         (CPU_FLAGS_PERFECT_MATCH): Likewise.
523         (regymm): Likewise.
524         (vex_imm4): Likewise.
525         (fits_in_imm4): Likewise.
526         (build_vex_prefix): Likewise.
527         (VEX_check_operands): Likewise.
528         (bad_implicit_operand): Likewise.
529         (OPTION_MSSE2AVX): Likewise.
530         (T_YMMWORD): Likewise.
531         (_i386_insn): Add vex.
532         (cpu_arch): Add .avx, .aes, .clmul and .fma.
533         (cpu_flags_match): Changed to take a pointer to const template.
534         Enable encoding SSE instructions with VEX prefix for -msse2avx.
535         (match_mem_size): Also check ymmword.
536         (operand_type_match): Clear ymmword.
537         (md_begin): Allow '_' in mnemonic.
538         (type_names): Add OPERAND_TYPE_VEX_IMM4.
539         (process_immext): Update assert.
540         (md_assemble): Don't call process_immext if sse2avx and immext
541         are true.  Call build_vex_prefix if vex is true.
542         (parse_insn): Updated for cpu_flags_match.
543         (swap_operands): Handle 5 operands.
544         (match_template): Handle 5 operands. Updated for cpu_flags_match.
545         Check regymm.  Call VEX_check_operands. Handle YMMWORD_MNEM_SUFFIX.
546         (process_suffix): Handle YMMWORD_MNEM_SUFFIX.
547         (check_byte_reg): Check regymm.
548         (process_operands): Duplicate the destination register for
549         -msse2avx if needed.
550         (build_modrm_byte): Updated for instructions with VEX encoding.
551         (output_insn): Output VEX prefix if needed.
552         (md_longopts): Add msse2avx.
553         (md_parse_option): Handle OPTION_MSSE2AVX.
554         (md_show_usage): Add avx, aes, clmul, fma and -msse2avx.
555         (intel_e09): Support YMMWORD.
556         (intel_e11): Likewise.
557         (intel_get_token): Likewise.
559 2008-03-28  Eric B. Weddington  <eric.weddington@atmel.com>
561         * config/tc-avr.c (mcu_types): Add attiny167.
562         * doc/c-avr.texi: Likewise.
564 2008-03-28  Eric B. Weddington  <eric.weddington@atmel.com>
566         * config/tc-avr.c (mcu_types): Add atmega32u4.
567         * doc/c-avr.texi: Likewise.
569 2008-03-28  Eric B. Weddington  <eric.weddington@atmel.com>
571         * config/tc-avr.c (mcu_types): Add atmega32c1.
572         * doc/c-avr.texi: Likewise.
574 2008-03-28  Paul Brook  <paul@codesourcery.com>
576         * config/tc-arm.c (parse_neon_mov): Parse register before immediate
577         to avoid spurious symbols.
579 2008-03-28  Nathan Sidwell  <nathan@codesourcery.com>
581         * config/tc-m68k.c (md_convert_frag_1): Replace as_fatal with
582         as_bad_where.
584 2008-03-27  Eric B. Weddington  <eric.weddington@atmel.com>
586         * config/tc-avr.c (mcu_types): Add atmega32m1.
587         * doc/c-avr.texi: Likewise.
589 2008-03-27  Ineiev  <ineiev@yahoo.co.uk>
591         * config/tc-arm.c (do_neon_cvt): Move variable declarations to
592         start of block.
593         (do_neon_ext): Fix sign of comparison.
595 2008-03-26  Bernd Schmidt  <bernd.schmidt@analog.com>
597         From Jie Zhang  <jie.zhang@analog.com>
598         * config/bfin-parse.y (asm_1): Check AREGS in comparison
599         instructions. And call yyerror when comparing PREG with
600         DREG.
601         (check_macfunc_option): New.
602         (check_macfuncs): Check option by calling check_macfunc_option.
603         Fix comparison always true warnings.  Both scalar instructions
604         of vector instruction must share the same mode option.  Only allow
605         option mode at the end of the second instruction of the vector.
606         (asm_1): Check option by calling check_macfunc_option.
608         * config/bfin-parse.y (check_macfunc_option): Allow (IU)
609         option for multiply and multiply-accumulate to data register
610         instruction.
611         (check_macfuncs): Don't check if accumulator matches the data register
612         here.
613         (assign_macfunc): Check if accumulator matches the
614         data register in each rule that moves to the data
615         register.
617         * config/tc-bfin.c (bfin_start_line_hook): Localize the labels
618         generated for LOOP_BEGIN and LOOP_END instructions.
619         (bfin_gen_loop): Likewise.
621 2008-03-19  Andreas Krebbel  <krebbel1@de.ibm.com>
623         * config/tc-s390.c (md_parse_option): z10 option added.
625 2008-03-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
627         * aclocal.m4: Regenerate.
628         * configure: Likewise.
629         * Makefile.in: Likewise.
630         * doc/Makefile.in: Likewise.
632 2008-03-17  Adrian Bunk  <bunk@stusta.de>
634         PR 5946
635         * config/tc-hppa.c (is_same_frag): Delete.
637 2008-03-14  Sterling Augustine  <sterling@tensilica.com>
639         * config/tc-xtensa.h (xtensa_relax_statesE): Update comment for
640         RELAX_LOOP_END_ADD_NOP.
642 2008-03-13  Evandro Menezes  <evandro@yahoo.com>
644         PR gas/5895
645         * read.c (s_mexit): Warn if attempting to exit a macro when not
646         inside a macro definition.
648 2008-03-13  Alan Modra  <amodra@bigpond.net.au>
650         * Makefile.am: Run "make dep-am".
651         * Makefile.in: Regenerate.
652         * configure: Regenerate.
654 2008-03-09  Paul Brook  <paul@codesourcery.com>
656         * config/tc-arm.c (arm_cpu_option_table): Add cortex-a9.
657         * doc/c-arm.texi: Add cortex-a9.
659 2008-03-09  Paul Brook  <paul@codesourcery.com>
661         * config/tc-arm.c (fpu_vfp_ext_d32): New vairable.
662         (parse_vfp_reg_list, encode_arm_vfp_reg): Use it.
663         (arm_option_cpu_value): Add vfpv3-d16, vfpv2 and vfpv3.
664         (aeabi_set_public_attributes): Handle Tag_VFP_arch=VFPV3-D16.
665         * doc/c-arm.texi: Document new ARM FPU variants.
667 2008-03-07  Paul Brook  <paul@codesourcery.com>
669         * config/tc-arm.c (md_apply_fix): Use correct offset range.
671 2008-03-07  Alan Modra  <amodra@bigpond.net.au>
673         * config/tc-ppc.c (ppc_setup_opcodes): Tidy.  Add code to test
674         for strict ordering of powerpc_opcodes, but disable for now.
676 2008-03-04  Paul Brook  <paul@codesourcery.com>
678         * config/tc-arm.c (arm_ext_barrier, arm_ext_msr): New.
679         (arm_ext_v7m): Rename...
680         (arm_ext_m): ... to this.  Include v6-M.
681         (do_t_add_sub): Allow narrow low-reg non flag setting adds.
682         (do_t_mrs, do_t_msr, aeabi_set_public_attributes): Use arm_ext_m.
683         (md_assemble): Allow wide msr instructions.
684         (insns): Add classifications for v6-m instructions.
685         (arm_cpu_option_table): Add cortex-m1.
686         (arm_arch_option_table): Add armv6-m.
687         (cpu_arch): Add ARM_ARCH_V6M.  Fix numbering of other v6 variants.
689 2008-03-03  Sterling Augustine  <sterling@tensilica.com>
690             Bob Wilson  <bob.wilson@acm.org>
692         * config/tc-xtensa.c (xtensa_num_pipe_stages): New.
693         (md_begin): Initialize it.
694         (resources_conflict): Use it.
696 2008-03-03  Sterling Augustine  <sterling@tensilica.com>
698         * config/tc-xtensa.h (RELAX_XTENSA_NONE): New.
700 2008-03-03  Denys Vlasenko <vda.linux@googlemail.com>
701             H.J. Lu  <hongjiu.lu@intel.com>
703         PR gas/5543
704         * read.c (pseudo_set): Don't allow global register symbol.
706         * symbols.c (S_SET_EXTERNAL): Don't allow register symbol
707         global.
709 2008-03-03  H.J. Lu  <hongjiu.lu@intel.com>
711         PR gas/5543
712         * write.c (write_object_file): Don't allow symbols which were
713         equated to register.  Stop if there is an error.
715 2008-03-01  Alan Modra  <amodra@bigpond.net.au>
717         * config/tc-ppc.h (struct _ppc_fix_extra): New.
718         (ppc_cpu): Declare.
719         (TC_FIX_TYPE, TC_INIT_FIX_DATA): Define.
720         * config/tc-ppc.c (ppu_cpu): Make global.
721         (ppc_insert_operand): Add ppu_cpu parameter.
722         (md_assemble): Adjust for above change.
723         (md_apply_fix): Pass tc_fix_data.ppc_cpu to ppc_insert_operand.
725 2008-02-22  Nick Clifton  <nickc@redhat.com>
727         * config/tc-arm.c (do_bx): Only test EF_ARM_EABI_VERSION on ELF
728         targeted ARM ports, otherwise just skip generating the reloc.
730 2008-02-18  H.J. Lu  <hongjiu.lu@intel.com>
732         * doc/c-i386.texi: Update -march= and .arch.
734 2008-02-18  Nick Clifton  <nickc@redhat.com>
736         * config/tc-mn10300.c (has_known_symbol_location): New function.
737         Do not regard weak symbols as having a known location.
738         (md_estimate_size_before_relax): Use new function.
739         (md_pcrel_from): Do not compute a pcrel against a weak symbol.
741 2008-02-18  Jan Beulich  <jbeulich@novell.com>
743         * config/tc-i386.c (match_template): Disallow 'l' suffix when
744         currently selected CPU has no 32-bit support.
745         (parse_real_register): Do not return registers not available on
746         currently selected CPU.
748 2008-02-16  H.J. Lu  <hongjiu.lu@intel.com>
750         * config/tc-i386.c (process_immext): Fix format.
752 2008-02-16  H.J. Lu  <hongjiu.lu@intel.com>
754         * config/tc-i386.c (inoutportreg): New.
755         (process_immext): New.
756         (md_assemble): Use it.
757         (update_imm): Use imm16 and imm32s.
758         (i386_att_operand): Use inoutportreg.
760 2008-02-14  H.J. Lu  <hongjiu.lu@intel.com>
762         * config/tc-i386.c (operand_type_all_zero): New.
763         (operand_type_set): Likewise.
764         (operand_type_equal): Likewise.
765         (cpu_flags_all_zero): Likewise.
766         (cpu_flags_set): Likewise.
767         (cpu_flags_equal): Likewise.
768         (UINTS_ALL_ZERO): Removed.
769         (UINTS_SET): Likewise.
770         (UINTS_CLEAR): Likewise.
771         (UINTS_EQUAL): Likewise.
772         (cpu_flags_match): Updated.
773         (smallest_imm_type): Likewise.
774         (set_cpu_arch): Likewise.
775         (md_assemble): Likewise.
776         (optimize_imm): Likewise.
777         (match_template): Likewise.
778         (process_suffix): Likewise.
779         (update_imm): Likewise.
780         (process_drex): Likewise.
781         (process_operands): Likewise.
782         (build_modrm_byte): Likewise.
783         (i386_immediate): Likewise.
784         (i386_displacement): Likewise.
785         (i386_att_operand): Likewise.
786         (parse_real_register): Likewise.
787         (md_parse_option): Likewise.
788         (i386_target_format): Likewise.
790 2008-02-14  Dimitry Andric  <dimitry@andric.com>
792         PR gas/5712
793         * config/tc-arm.c (s_arm_unwind_save): Advance the input line
794         pointer past the comma after parsing a floating point register
795         name.
797 2008-02-14  Hakan Ardo  <hakan@debian.org>
799         PR gas/2626
800         * config/tc-avr.c (mcu_types): Change the ISA tyoe of the attiny26
801         to AVR_ISA_2xxe.
802         (avr_operand): Disallow post-increment addressing in the lpm
803         instruction for the attiny26.
805 2008-02-13  Jan Beulich  <jbeulich@novell.com>
807         * config/tc-i386.c (parse_real_register): Don't return 'FLAT'
808         if not in Intel mode.
809         (i386_intel_operand): Ignore segment overrides in immediate and
810         offset operands.
811         (intel_e11): Range-check i.mem_operands before use as array
812         index. Filter out FLAT for uses other than as segment override.
813         (intel_get_token): Remove broken promotion of "FLAT:" to mean
814         "offset FLAT:".
816 2008-02-13  Jan Beulich  <jbeulich@novell.com>
818         * config/tc-i386.c (intel_e09): Also special-case 'bound'.
820 2008-02-13  Jan Beulich  <jbeulich@novell.com>
822         * config/tc-i386.c (allow_pseudo_reg): New.
823         (parse_real_register): Check for NULL just once. Allow all
824         register table entries when allow_pseudo_reg is non-zero.
825         Don't allow any registers without type when allow_pseudo_reg
826         is zero.
827         (tc_x86_regname_to_dw2regnum): Replace with ...
828         (tc_x86_parse_to_dw2regnum): ... this.
829         (tc_x86_frame_initial_instructions): Adjust for above change.
830         * config/tc-i386.h (tc_regname_to_dw2regnum): Remove.
831         (tc_parse_to_dw2regnum): New.
832         (tc_x86_regname_to_dw2regnum): Replace with ...
833         (tc_x86_parse_to_dw2regnum): ... this.
834         * dw2gencfi.c (tc_parse_to_dw2regnum): New, broken out of ...
835         (cfi_parse_reg): ... this. Use tc_parse_to_dw2regnum. Adjust
836         error handling.
838 2008-02-12  Nick Clifton  <nickc@redhat.com>
840         * config/tc-tic4x.c (tic4x_insn_insert): Add const qualifier to
841         argument.
842         (tic4x_insn_add): Likewise.
843         (md_begin): Drop cast that was discarding a const qualifier.
844         * config/tc-d30v.c (get_reloc): Add const qualifier to op
845         argument.
846         (build_insn): Drop cast that was discarding a const qualifier.
848 2008-02-11  H.J. Lu  <hongjiu.lu@intel.com>
850         * config/tc-i386.c (cpu_arch): Add .xsave.
851         (md_show_usage): Add .xsave.
853         * doc/c-i386.texi: Add xsave to -march=.
855 2008-02-07  Alan Modra  <amodra@bigpond.net.au>
857         * read.c (s_weakref): Don't pass unadorned NULL to concat.
858         * config/tc-i386.c (set_cpu_arch, md_parse_option): Likewise.
860 2008-02-05  Sterling Augustine  <sterling@tensilica.com>
862         * config/tc-xtensa.c (relax_frag_immed): Change internal consistency
863         checks into assertions.  When relaxation produces an operation that
864         does not fit in the current FLIX instruction, make sure that the
865         operation is relaxed as needed to account for being placed following
866         the current instruction.
868 2008-02-04  H.J. Lu  <hongjiu.lu@intel.com>
870         PR 5715
871         * configure: Regenerated.
873 2008-02-04  Adam Nemet  <anemet@caviumnetworks.com>
875         * config/tc-mips.c (mips_cpu_info_table): Add Octeon.
877 2008-01-31  Marc Gauthier  <marc@tensilica.com>
879         * configure.tgt (xtensa*-*-*): Recognize processor variants.
881 2008-01-25  Kai Tietz  <kai.tietz@onevision.com>
883         * read.c: (emit_expr): Correct for mingw use of printf size
884         specifier.
886 2008-01-24  Bob Wilson  <bob.wilson@acm.org>
888         * doc/c-xtensa.texi (Xtensa Syntax): Clarify handling of opcodes that
889         can only be encoded in FLIX instructions but are not specified as such.
890         (Xtensa Automatic Alignment): Remove obsolete comment about debugging
891         labels.
893 2008-01-24  H.J. Lu  <hongjiu.lu@intel.com>
895         * NEWS: Mention new command line options for x86 targets.
897 2008-01-23  H.J. Lu  <hongjiu.lu@intel.com>
899         * config/tc-i386.c (md_show_usage): Replace tabs with spaces.
901 2008-01-23  Eric B. Weddington  <eric.weddington@atmel.com>
903         * config/tc-avr.c (mcu_types): Change opcode set for at86rf401.
905 2008-01-23  H.J. Lu  <hongjiu.lu@intel.com>
907         * config/tc-i386.c (md_show_usage): Show more processors for
908         -march=/-mtune=.
910 2008-01-22  H.J. Lu  <hongjiu.lu@intel.com>
912         * config/tc-i386.c (i386_target_format): Remove cpummx2.
914 2008-01-22  H.J. Lu  <hongjiu.lu@intel.com>
916         * config/tc-i386.c (XXX_PREFIX): Moved from tc-i386.h.
917         (XXX_MNEM_SUFFIX): Likewise.
918         (END_OF_INSN): Likewise.
919         (templates): Likewise.
920         (modrm_byte): Likewise.
921         (rex_byte): Likewise.
922         (DREX_XXX): Likewise.
923         (drex_byte): Likewise.
924         (sib_byte): Likewise.
925         (processor_type): Likewise.
926         (arch_entry): Likewise.
927         (cpu_sub_arch_name): Remove const.
928         (cpu_arch): Add .vmx and .smx.
929         (set_cpu_arch): Append cpu_sub_arch_name.
930         (md_parse_option): Support -march=CPU[,+EXTENSION...].
931         (md_show_usage): Updated.
933         * config/tc-i386.h (XXX_PREFIX): Moved to tc-i386.c.
934         (XXX_MNEM_SUFFIX): Likewise.
935         (END_OF_INSN): Likewise.
936         (templates): Likewise.
937         (modrm_byte): Likewise.
938         (rex_byte): Likewise.
939         (DREX_XXX): Likewise.
940         (drex_byte): Likewise.
941         (sib_byte): Likewise.
942         (processor_type): Likewise.
943         (arch_entry): Likewise.
945         * doc/as.texinfo: Update i386 -march option.
947         * doc/c-i386.texi: Update -march= for ISA.
949 2008-01-18  Bob Wilson  <bob.wilson@acm.org>
951         * config/tc-xtensa.c (xtensa_leb128): New function.
952         (md_pseudo_table): Use it for sleb128 and uleb128.
953         (is_leb128_expr): New internal flag.
954         (xtensa_symbol_new_hook): Check new flag.
956 2008-01-16  Eric B. Weddington  <eric.weddington@atmel.com>
958         * config/tc-avr.c (mcu_types): Change opcode set for avr3,
959         at90usb82, at90usb162.
960         * doc/c-avr.texi: Change architecture grouping for at90usb82,
961         at90usb162.
962         These changes support the new avr35 architecture group in gcc.
964 2008-01-15  H.J. Lu  <hongjiu.lu@intel.com>
966         * config/tc-i386.c (md_assemble): Also zap movzx and movsx
967         suffix for AT&T syntax.
969 2008-01-14  H.J. Lu  <hongjiu.lu@intel.com>
971         * config/tc-i386.c (match_reg_size): New.
972         (match_mem_size): Likewise.
973         (operand_size_match): Likewise.
974         (operand_type_match): Also clear all size fields.
975         (match_template): Skip Intel syntax when in AT&T syntax.
976         Call operand_size_match to check operand size.
977         (i386_att_operand): Set the mem field to 1 for memory
978         operand.
979         (i386_intel_operand): Likewise.
981 2008-01-12  H.J. Lu  <hongjiu.lu@intel.com>
983         PR gas/5534
984         * config/tc-i386.c (_i386_insn): Update comment.
985         (operand_type_match): Also clear unspecified.
986         (operand_type_register_match): Likewise.
987         (parse_operands): Initialize unspecified.
988         (i386_intel_operand): Likewise.
989         (match_template): Check memory and accumulator operand size.
990         (i386_att_operand): Clear unspecified on register operand.
991         (intel_e11): Likewise.
992         (intel_e09): Set operand size and clean unspecified for
993         "XXX PTR".
995 2008-01-11  Andreas Schwab  <schwab@suse.de>
997         * read.c (s_space): Declare `repeat' as offsetT.
999 2008-01-10  H.J. Lu  <hongjiu.lu@intel.com>
1001         * config/tc-i386.c (match_template): Check processor support
1002         first.
1004 2008-01-10  H.J. Lu  <hongjiu.lu@intel.com>
1006         * config/tc-i386.c (match_template): Continue if processor
1007         doesn't match.
1009 2008-01-09  Alexandre Oliva  <aoliva@redhat.com>
1011         * config/tc-ia64.c (ia64_convert_frag): Zero-initialize room for
1012         unwind personality function address.
1014 2008-01-09  Bob Wilson  <bob.wilson@acm.org>
1016         * dwarf2dbg.c (out_sleb128): Delete.
1017         (size_fixed_inc_line_addr, emit_fixed_inc_line_addr): New.
1018         (out_fixed_inc_line_addr): Delete.
1019         (relax_inc_line_addr, dwarf2dbg_estimate_size_before_relax): Call new
1020         size_fixed_inc_line_addr if DWARF2_USE_FIXED_ADVANCE_PC is set.
1021         (dwarf2dbg_convert_frag): Likewise for emit_fixed_inc_line_addr.
1022         (process_entries): Remove calls to out_fixed_inc_line_addr.  When
1023         DWARF2_USE_FIXED_ADVANCE_PC is set, call relax_inc_line_addr.
1024         * read.h (emit_expr_fix): New prototype.
1025         * read.c (emit_expr): Move code to emit_expr_fix and use it here.
1026         (emit_expr_fix): New.
1028 2008-01-09  H.J. Lu  <hongjiu.lu@intel.com>
1030         * config/tc-i386.c (match_template): Check register size
1031         only when size of operands can be encoded the canonical way.
1033 2008-01-08  H.J. Lu  <hongjiu.lu@intel.com>
1035         * config/tc-i386.c (i386_operand): Renamed to ...
1036         (i386_att_operand): This.
1037         (parse_operands): Updated.
1039 2008-01-05  H.J. Lu  <hongjiu.lu@intel.com>
1041         * doc/c-i386.texi: Update .att_mnemonic and .intel_mnemonic.
1043         * config/tc-i386.c (set_intel_mnemonic): Set intel_mnemonic
1044         only.
1045         (md_assemble): Remove Intel mode workaround.
1046         (match_template): Check support for old gcc, AT&T mnemonic
1047         and Intel Syntax.
1048         (md_parse_option): Don't set intel_mnemonic to 0 for
1049         OPTION_MOLD_GCC.
1051 2008-01-04  H.J. Lu  <hongjiu.lu@intel.com>
1053         * config/tc-i386.h: Update copyright to 2008.
1055 2008-01-04  Nick Clifton  <nickc@redhat.com>
1057         * config/tc-ppc.c (parse_cpu): Preserve the settings of the
1058         PPC_OPCODE_ALTIVEC and PPC_OPCODE_SPE flags.
1060 2008-01-03  H.J. Lu  <hongjiu.lu@intel.com>
1062         * config/tc-i386.c (md_assemble): Use !intel_mnemonic instead
1063         of SYSV386_COMPAT.
1065 2008-01-03  H.J. Lu  <hongjiu.lu@intel.com>
1067         * gas/config/tc-i386.c (cpu_arch_flags_not): Removed.
1068         (cpu_flags_not): Likewise.
1069         (cpu_flags_match): Updated to check 64bit and arch.
1070         (set_code_flag): Remove cpu_arch_flags_not.
1071         (set_16bit_gcc_code_flag): Likewise.
1072         (set_cpu_arch): Likewise.
1073         (md_begin): Likewise.
1074         (parse_insn): Call cpu_flags_match to check 64bit and arch.
1075         (match_template): Likewise.
1077 2008-01-03  Jakub Jelinek  <jakub@redhat.com>
1079         * config/tc-i386.c (process_drex): Initialize modrm_reg and
1080         modrm_regmem to 0 instead of None.
1082 2008-01-03  H.J. Lu  <hongjiu.lu@intel.com>
1084         * config/tc-i386.c (match_template): Use the xmmword field
1085         instead of no_xsuf.
1087 2008-01-02  H.J. Lu  <hongjiu.lu@intel.com>
1089         * config/tc-i386.c (process_suffix): Fix a typo.
1091 2008-01-02  H.J. Lu  <hongjiu.lu@intel.com>
1093         PR gas/5534
1094         * config/tc-i386.c (match_template): Handle XMMWORD_MNEM_SUFFIX.
1095         Check memory size in Intel mode.
1096         (process_suffix): Handle XMMWORD_MNEM_SUFFIX.
1097         (intel_e09): Likewise.
1099         * config/tc-i386.h (XMMWORD_MNEM_SUFFIX): New.
1101 2008-01-02  Catherine Moore  <clm@codesourcery.com>
1103         * config/tc-mips.c (mips_ip): Check operands on jalr instruction.
1105 For older changes see ChangeLog-2007
1107 Local Variables:
1108 mode: change-log
1109 left-margin: 8
1110 fill-column: 74
1111 version-control: never
1112 End: