2014-04-09 Alan Modra * config/tc-ppc.c (warn_476, last_insn, last_seg, last_subseg): New static vars. (md_longopts, md_parse_option, md_show_usage): Add --ppc476-workaround. (ppc_elf_cons_fix_check): New function. (md_assemble): Set last_insn, last_seg, last_subseg. (ppc_byte, md_apply_fix): Handle warn_476. * config/tc-ppc.h (TC_CONS_FIX_CHECK): Define. (ppc_elf_cons_fix_check): Declare. * read.c (cons_worker): Invoke TC_CONS_FIX_CHECK. 2014-04-09 Alan Modra * gas/config/tc-alpha.h (TC_CONS_FIX_NEW): Add RELOC parameter. * gas/config/tc-arc.c (arc_cons_fix_new): Add reloc parameter. * gas/config/tc-arc.h (arc_cons_fix_new): Update prototype. (TC_CONS_FIX_NEW): Add RELOC parameter. * gas/config/tc-arm.c (cons_fix_new_arm): Similarly * gas/config/tc-arm.h (cons_fix_new_arm, TC_CONS_FIX_NEW): Similarly. * gas/config/tc-cr16.c (cr16_cons_fix_new): Similarly. * gas/config/tc-cr16.h (cr16_cons_fix_new, TC_CONS_FIX_NEW): Similarly. * gas/config/tc-crx.h (TC_CONS_FIX_NEW): Similarly. * gas/config/tc-m32c.c (m32c_cons_fix_new): Similarly. * gas/config/tc-m32c.h (m32c_cons_fix_new, TC_CONS_FIX_NEW): Similarly. * gas/config/tc-mn10300.c (mn10300_cons_fix_new): Similarly. * gas/config/tc-mn10300.h (mn10300_cons_fix_new, TC_CONS_FIX_NEW): Similarly. * gas/config/tc-ns32k.c (cons_fix_new_ns32k): Similarly. * gas/config/tc-ns32k.h (cons_fix_new_ns32k): Similarly. * gas/config/tc-pj.c (pj_cons_fix_new_pj): Similarly. * gas/config/tc-pj.h (pj_cons_fix_new_pj, TC_CONS_FIX_NEW): Similarly. * gas/config/tc-rx.c (rx_cons_fix_new): Similarly. * gas/config/tc-rx.h (rx_cons_fix_new, TC_CONS_FIX_NEW): Similarly. * gas/config/tc-sh.c (sh_cons_fix_new): Similarly. * gas/config/tc-sh.h (sh_cons_fix_new, TC_CONS_FIX_NEW): Similarly. * gas/config/tc-tic54x.c (tic54x_cons_fix_new): Similarly. * gas/config/tc-tic54x.h (tic54x_cons_fix_new, TC_CONS_FIX_NEW): Similarly. * gas/config/tc-tic6x.c (tic6x_cons_fix_new): Similarly. * gas/config/tc-tic6x.h (tic6x_cons_fix_new, TC_CONS_FIX_NEW): Similarly. * gas/config/tc-arc.c (arc_parse_cons_expression): Return reloc. * gas/config/tc-arc.h (arc_parse_cons_expression): Update proto. * gas/config/tc-avr.c (exp_mod_data): Make global. (pexp_mod_data): Delete. (avr_parse_cons_expression): Return exp_mod_data pointer. (avr_cons_fix_new): Add exp_mod_data_t pointer param. (exp_mod_data_t): Move typedef.. * gas/config/tc-avr.h: ..to here. (exp_mod_data): Declare. (TC_PARSE_CONS_RETURN_TYPE, TC_PARSE_CONS_RETURN_NONE): Define. (avr_parse_cons_expression, avr_cons_fix_new): Update prototype. (TC_CONS_FIX_NEW): Update. * gas/config/tc-hppa.c (hppa_field_selector): Delete static var. (cons_fix_new_hppa): Add hppa_field_selector param. (fix_new_hppa): Adjust. (parse_cons_expression_hppa): Return field selector. * gas/config/tc-hppa.h (parse_cons_expression_hppa): Update proto. (cons_fix_new_hppa): Likewise. (TC_PARSE_CONS_RETURN_TYPE, TC_PARSE_CONS_RETURN_NONE): Define. * gas/config/tc-i386.c (got_reloc): Delete static var. (x86_cons_fix_new): Add reloc param. (x86_cons): Return got reloc. * gas/config/tc-i386.h (x86_cons, x86_cons_fix_new): Update proto. (TC_CONS_FIX_NEW): Add RELOC param. * gas/config/tc-ia64.c (ia64_cons_fix_new): Add reloc param. Adjust calls. * gas/config/tc-ia64.h (ia64_cons_fix_new): Update prototype. (TC_CONS_FIX_NEW): Add reloc param. * gas/config/tc-microblaze.c (parse_cons_expression_microblaze): Return reloc. (cons_fix_new_microblaze): Add reloc param. * gas/config/tc-microblaze.h: Formatting. (parse_cons_expression_microblaze): Update proto. (cons_fix_new_microblaze): Likewise. * gas/config/tc-nios2.c (nios2_tls_ldo_reloc): Delete static var. (nios2_cons): Return ldo reloc. (nios2_cons_fix_new): Delete. * gas/config/tc-nios2.h (nios2_cons): Update prototype. (nios2_cons_fix_new, TC_CONS_FIX_NEW): Delete. * gas/config/tc-ppc.c (md_pseudo_table): Remove quad, long, word, short. Make llong use cons. (ppc_elf_suffix): Return BFD_RELOC_NONE rather than BFD_RELOC_UNUSED. (ppc_elf_cons): Delete. (ppc_elf_parse_cons): New function. (ppc_elf_validate_fix): Don't check for BFD_RELOC_UNUSED. (md_assemble): Use BFD_RELOC_NONE rather than BFD_RELOC_UNUSED. * gas/config/tc-ppc.h (TC_PARSE_CONS_EXPRESSION): Define (ppc_elf_parse_cons): Declare. * gas/config/tc-sparc.c (sparc_cons_special_reloc): Delete static var. (sparc_cons): Return reloc specifier. (cons_fix_new_sparc): Add reloc specifier param. (sparc_cfi_emit_pcrel_expr): Use emit_expr_with_reloc. * gas/config/tc-sparc.h (TC_PARSE_CONS_RETURN_TYPE): Define. (TC_PARSE_CONS_RETURN_NONE): Define. (sparc_cons, cons_fix_new_sparc): Update prototype. * gas/config/tc-v850.c (hold_cons_reloc): Delete static var. (v850_reloc_prefix): Use BFD_RELOC_NONE rather than BFD_RELOC_UNUSED. (md_assemble): Likewise. (parse_cons_expression_v850): Return reloc. (cons_fix_new_v850): Add reloc parameter. * gas/config/tc-v850.h (parse_cons_expression_v850): Update proto. (cons_fix_new_v850): Likewise. * gas/config/tc-vax.c (vax_cons_special_reloc): Delete static var. (vax_cons): Return reloc. (vax_cons_fix_new): Add reloc parameter. * gas/config/tc-vax.h (vax_cons, vax_cons_fix_new): Update proto. * gas/config/tc-xstormy16.c (xstormy16_cons_fix_new): Add reloc param. * gas/config/tc-xstormy16.h (xstormy16_cons_fix_new): Update proto. * gas/dwarf2dbg.c (TC_PARSE_CONS_RETURN_NONE): Provide default. (emit_fixed_inc_line_addr): Adjust exmit_expr_fix calls. * gas/read.c (TC_PARSE_CONS_EXPRESSION): Return value. (do_parse_cons_expression): Adjust. (cons_worker): Pass return value from TC_PARSE_CONS_EXPRESSION to emit_expr_with_reloc. (emit_expr_with_reloc): New function handling reloc, mostly extracted from.. (emit_expr): ..here. (emit_expr_fix): Add reloc param. Adjust TC_CONS_FIX_NEW invocation. Handle reloc. (parse_mri_cons): Convert to ISO. * gas/read.h (TC_PARSE_CONS_RETURN_TYPE): Define. (TC_PARSE_CONS_RETURN_NONE): Define. (emit_expr_with_reloc): Declare. (emit_expr_fix): Update prototype. * gas/write.c (write_object_file): Update TC_CONS_FIX_NEW invocation. 2014-04-03 Ilya Tocar * config/tc-i386.c (cpu_arch): Add .se1. * doc/c-i386.texi: Document .se1/se1. 2014-04-02 DJ Delorie * config/tc-rl78.c (md_apply_fix): Add overflow warnings for pc-relative branches. 2014-04-02 Nick Clifton PR gas/16765 * config/tc-arm.c (create_unwind_entry): Report an error if an attempt to recreate an unwind directive is encountered. 2014-03-27 Nick Clifton * config/tc-score.c (s3_parse_pce_inst): Add "%s" parameter to sprintf in order to avoid a compile time warning. 2014-03-26 Nick Clifton * config/tc-rl78.c (rl78_op): Issue an error message if a 16-bit relocation is used on an 8-bit operand or vice versa. (tc_gen_reloc): Use the RL78_16U relocation for RL78_CODE. (md_apply_fix): Add support for RL78_HI8, RL78_HI16 and RL78_LO16. 2014-03-25 Nick Clifton * config/obj-coff-seh.c (obj_coff_seh_code): New function - switches the current segment back to the code segment recorded when seh_proc was last invoked. * config/obj-coff-seh.h (SEH_CMDS): Add seh_code. 2014-03-25 Alan Modra * config/tc-ppc.c (ppc_is_toc_sym): Revert 2014-03-05. (md_assemble): Likewise. Warn. 2014-03-21 David Weatherford Max Filippov * config/tc-xtensa.c (xtensa_check_frag_count) xtensa_create_trampoline_frag, xtensa_maybe_create_trampoline_frag, init_trampoline_frag, find_trampoline_seg, search_trampolines, get_best_trampoline, check_and_update_trampolines, add_jump_to_trampoline, dump_trampolines): New functions. (md_parse_option): Add cases for --[no-]trampolines options. (md_assemble, finish_vinsn, xtensa_end): Add call to xtensa_check_frag_count. (xg_assemble_vliw_tokens): Add call to xtensa_maybe_create_trampoline_frag. (xtensa_relax_frag): Relax fragments with RELAX_TRAMPOLINE state. (relax_frag_immed): Relax jump instructions that cannot reach its target. * config/tc-xtensa.h (xtensa_relax_statesE::RELAX_TRAMPOLINE): New relax state. * doc/as.texinfo: Document --[no-]trampolines command-line options. * doc/c-xtensa.texi: Document trampolines relaxation and command line options. * frags.c (get_frag_count, clear_frag_count): New function. (frag_alloc): Increment totalfrags counter. * frags.h (get_frag_count, clear_frag_count): New function. 2014-03-20 DJ Delorie * config/rl78-defs.h (RL78_RELAX_NONE, RL78_RELAX_BRANCH): Add. * config/rl78-parse.y (BC, BNC, BZ, BNZ, BH, BHZ, bt_bf): Call rl78_relax(). * config/tc-rl78.h (md_relax_frag): Define. (rl78_relax_frag): Declare. * config/tc-rl78.c (rl78_relax): Add. (md_assemble): Set up the variable frags also when relaxing. (op_type_T): New. (rl78_opcode_type): New. (rl78_frag_fix_value): New. (md_estimate_size_before_relax): New-ish. (rl78_relax_frag): New. (md_convert_frag): New-ish. 2014-03-20 Richard Sandiford * config/tc-mips.h (DIFF_EXPR_OK, CFI_DIFF_EXPR_OK): Define. * config/tc-mips.c (md_pcrel_from): Remove error message. (md_apply_fix): Convert PC-relative BFD_RELOC_32s to BFD_RELOC_32_PCREL. Report a specific error message for unhandled PC-relative expressions. Handle BFD_RELOC_8. 2014-03-19 Jose E. Marchesi * config/tc-sparc.c (hpriv_reg_table): Added entries for %hstick_offset and %hstick_enable. * doc/c-sparc.texi (Sparc-Regs): Document the %hstick_offset and %hstick_enable hyperprivileged registers. 2014-03-19 Daniel Gutson Nick Clifton * config/tc-arm.c (codecomposer_syntax): New flag that states whether the CCS syntax compatibility mode is on or off. (asmfunc_states): New enum to represent the asmfunc directive state. (asmfunc_state): New variable holding the asmfunc directive state. (comment_chars): Rename to arm_comment_chars. (line_separator_chars): Rename to arm_line_separator_chars. (s_ccs_ref): New function that handles the .ref directive. (asmfunc_debug): New function. (s_ccs_asmfunc): New function that handles the .asmfunc directive. (s_ccs_endasmfunc): New function that handles the .endasmfunc directive. (s_ccs_def): New function that handles the .def directive. (tc_start_label_without_colon): New function. (md_pseudo_table): Added new CCS directives. (arm_ccs_mode): New function that handles the -mccs command line option. (arm_long_opts): Added new -mccs command line option. * config/tc-arm.h (LABELS_WITHOUT_COLONS): New macro. (TC_START_LABEL_WITHOUT_COLON): New macro. (tc_start_label_without_colon): Added extern function declaration. (tc_comment_chars): Define. (tc_line_separator_chars): Define. * app.c (do_scrub_begin): Use tc_line_separator_chars, if defined. * read.c (read_begin): Likewise. * doc/as.texinfo: Add documentation for the -mccs command line option. * doc/c-arm.texi: Likewise. * doc/internals.texi: Document tc_line_separator_chars. * NEWS: Mention the new feature. 2014-03-18 Jiong Wang * config/tc-aarch64.c (aarch64_opts): Add new option "mno-verbose-error". (verbose_error_p): Initialize to 1. * doc/c-aarch64.texi (AArch64 Options): Document -mverbose-error and -mno-verbose-error. 2014-03-17 Nick Clifton PR gas/16694 * config/tc-arm.c (tc_arm_regname_to_dw2regnum): Parse VFP registers as well. 2014-03-13 Richard Earnshaw Jiong Wang * doc/c-aarch64.texi: Clean up some formatting issues. (AArch64 Options): Document -mcpu and -march. (AArch64 Extensions): New node. 2014-03-13 Tristan Gingold * config/tc-i386.c (use_big_obj): Declare. (OPTION_MBIG_OBJ): Define. (md_longopts): Add -mbig-obj option. (md_parse_option): Handle it. (md_show_usage): Display help for this option. (i386_target_format): Use bigobj for x86-64 if -mbig-obj. * doc/c-i386.texi: Document the option. 2014-03-12 Nick Clifton PR gas/16688 * config/tc-aarch64.c (literal_expression): New structure. (literal_pool): Replace exp array with literal_expression array. (add_to_lit_pool): When adding a bignum cache the big value. (s_ltorg): When emitting a bignum initialise the global bignum array from the cached value. 2014-03-12 Alan Modra * Makefile.in: Regenerate. * config.in: Regenerate. * doc/Makefile.in: Regenerate. 2014-03-06 Pitchumani Sivanupandi Vishnu KS Senthil Kumar Selvaraj Soundararajan * gas/tc-avr.c: Add new devices avr25: ata5272, attiny828 avr35: ata5505, attiny1634 avr4: atmega8a, ata6285, ata6286, atmega48pa avr5: at90pwm161, ata5790, ata5795, atmega164pa, atmega165pa, atmega168pa, atmega32a, atmega64rfr2, atmega644rfr2, atmega64a, atmega16hva2 avr51: atmega128a, atmega1284 avrxmega2: atxmega16a4u, atxmega16c4, atxmega32a4u, atxmega32c4, atxmega32e5, atxmega16e5, atxmega8e5 avrxmega4: atxmega64a3u, atxmega64a4u, atxmega64b1, atxmega64b3, atxmega64c3, atxmega64d4 avrxmega6: atxmega128a3u, atxmega128b3, atxmega128c3, atxmega128d4, atxmega192a3u, atxmega192c3, atxmega256a3u, atxmega256c3, atxmega384c3, atxmega384d3 avrxmega7: atxmega128a4u * doc/c-avr.texi: Ditto. 2014-03-05 Alan Modra Update copyright years. 2014-03-05 Alan Modra * config/tc-ppc.c (ppc_elf_suffix): Support @localentry. (md_apply_fix): Support R_PPC64_ADDR64_LOCAL. 2014-03-05 Alan Modra * config/tc-ppc.c (md_assemble): Move code adjusting reloc types later. Merge absolute and relative branch reloc selection. Generate 16-bit relocs for most 16-bit insn fields given a non-constant expression. 2014-03-05 Alan Modra * config/tc-ppc.c (ppc_is_toc_sym): Remove OBJ_ELF support. (md_assemble): Don't call ppc_is_toc_sym for ELF. 2014-03-04 Heiher * config/tc-mips.c (mips_cpu_info_table): Use ISA_MIPS64R2 for Loongson-3A. 2014-03-03 Nick Clifton * config/msp430/msp430.c: Replace known mcu array with known msp430 ISA mcu name array. Accept any name for -mmcu option. Add -mz option to warn about missing NOP following an interrupt status change. (check_for_nop): New. (msp430_operands): Emit a warning, if requested, when an interrupt changing instruction is not followed by a NOP. * doc/c-msp430.c: Document -mz option. 2014-03-03 Alan Modra * config/bfin-lex-wrapper.c: Correct copyright date. * config/obj-fdpicelf.c: Likewise. * config/obj-fdpicelf.h: Likewise. * config/tc-frv.c: Correct copyright punctuation. * config/tc-ip2k.c: Likewise. * config/tc-iq2000.c: Likewise. * config/tc-mep.c: Likewise. * config/tc-tic4x.c: Likewise. * config/tc-tic4x.h: Likewise. 2014-03-01 Senthil Kumar Selvaraj * config/tc-avr.c: Remove atxmega16x1. 2014-02-28 Alan Modra * dwarf2dbg.c (out_debug_line): Correct .debug_line header_length field for 64-bit dwarf. 2014-02-21 Ilya Tocar * config/tc-i386.c (cpu_arch): Add .prefetchwt1. * doc/c-i386.texi: Document .prefetchwt1/prefetchwt1. 2014-02-12 Ilya Tocar * config/tc-i386.c (cpu_arch): Add .clflushopt, .xsavec, .xsaves. * doc/c-i386.texi: Document .xsavec/xsavec/.xsaves/xsaves/ clflushopt/.clfushopt. 2014-02-10 Alan Modra * po/POTFILES.in: Regenerate. * po/gas.pot: Regenerate. 2014-02-03 Sandra Loosemore * config/tc-nios2.c (md_apply_fix): Test for new relocs. (nios2_special_reloc): Add %call_lo, %call_hiadj, %got_lo, %got_hiadj relocation operators. Sort table and add comment to explain ordering. (nios2_fix_adjustable): Test for new relocs. * doc/c-nios2.texi (Nios II Relocations): Document new relocation operators. 2014-01-30 Sandra Loosemore * config/tc-nios2.c (md_apply_fix): Handle BFD_RELOC_NIOS2_CALL26_NOAT. (nios2_assemble_args_m): Likewise. (md_assemble): Likewise. 2014-01-24 DJ Delorie * config/tc-msp430.c (msp430_section): Always flag data sections, regardless of -md. (msp430_frob_section): New. Make sure all sections are noticed if they have content. (msp430_lcomm): New. Flag bss if .lcomm is seen. (msp430_comm): New. Likewise. (md_pseudo_table): Add them. * config/tc-msp430.h (msp430_frob_section): Declare. (tc_frob_section): Define. 2014-01-23 Nick Clifton * config/tc-msp430.c (show_mcu_list): Delete. (md_parse_option): Accept any MCU name. Accept several more variants for the -mcpu option. (md_show_usage): Do not call show_mcu_list. 2014-01-22 DJ Delorie * config/tc-msp430.c (msp430_refsym): New: ".refsym " * doc/c-msp430.texi (MSP430 Directives): Document it. 2014-01-22 Michael Zolotukhin * config/tc-i386.c (check_VecOperands): Remove regzmm from AVX2 gather assert. 2014-01-22 Michael Zolotukhin PR gas/16489 * config/tc-i386.c (check_VecOperands): Add check for invalid register set in AVX512 gathers. 2014-01-22 Alan Modra * config/tc-tic4x.c (md_shortopts): s/CONST/const/. 2014-01-21 DJ Delorie * config/tc-rl78.c (require_end_of_expr): New. (md_operand): Call it. (rl78_cons_fix_new): Mark LO16, HI16, ahd HI8 internal relocations as not overflowing. 2014-01-17 Will Newton * config/tc-arm.c (do_vfp_nsyn_cvt_fpv8): Set OP to 1 for the s32.f64 flavours of VCVT. 2014-01-14 Nick Clifton PR gas/16434 * config/tc-z80.c (wrong_match): Provide format string to as_warn. (parse_exp_not_indexed): Delete unused variable dummy. (emit_byte): Delete unused variable fixp. 2014-01-08 H.J. Lu * config/tc-i386.c (regbnd): Removed. (vec_disp8): Likewise. 2014-01-08 H.J. Lu * as.c (parse_args): Update copyright year to 2014. 2014-01-07 Tom Tromey * config/tc-tic30.c (debug): Avoid old VA_* compatibility wrappers. 2014-01-07 Tom Tromey * config/tc-microblaze.h (parse_cons_expression_microblaze): Don't use PARAMS. 2014-01-07 Tom Tromey * config/tc-xc16x.h: Don't use ANSI_PROTOTYPES. 2013-01-07 Philipp Tomsich * config/tc-aarch64.c (aarch64_cpus): Add entry for "xgene-1" For older changes see ChangeLog-2013 Copyright (C) 2014 Free Software Foundation, Inc. Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. Local Variables: mode: change-log left-margin: 8 fill-column: 74 version-control: never End: