2012-04-27 David S. Miller * doc/c-sparc.text: Document %l34 and %h34. * config/tc-sparc.c (v9a_asr_table): Add 'cfr'. * config/tc-sparc.c (sparc_arch_table): Add HWCAP_PAUSE to sparc4, v8pluse, v8plusv, v9e, and v9v. (v9a_asr_table): Add 'pause'. * config/tc-sparc.c (sparc_arch_table): Add HWCAP_CBCOND to sparc4, v8pluse, v8plusv, v9e, and v9v. (sparc_ip): Handle R_SPARC_5 of immediate constants inline in order to accomodate cbcond which otherwise would require two relocations to be handled in a single instruction.. * config/tc-sparc.c (sparc_ip): Likewise. Accept instruction names containing "_". (sparc_arch_table): Add sparc4, v8pluse, and v9e. Add crypto hwcap masks to v8plusv and v9v. * config/tc-sparc.c (sparc_arch_table): Rework to use HWCAP_* masks. (sparc_md_end): No longer need to translate hwcap_seen values into ELF hwcap bits, they now match exactly. (get_hwcap_name): Use HWCAP_* and handle new values. (sparc_ip): Fetch hwcaps from insn->hwcaps instead of insn->flags. 2012-04-20 Tristan Gingold * config/tc-ia64.c (obj_elf_vms_common): New function. (md_pseudo_table): Add .vms_common pseudo. * config/obj-elf.h (obj_elf_section_name): Add a prototype. * config/obj-elf.c (obj_elf_section_name): Make it public. 2012-04-17 Richard Sandiford * config/tc-avr.c (md_apply_fix): Fix handling of BFD_RELOC32. 2012-04-12 David S. Miller * config/tc-sparc.c (sparc_ip): Handle '=', "%h34", "%l34", and BFD_RELOC_SPARC_H34. (md_apply_fix): Handle BFD_RELOC_SPARC_WDISP10 and BFD_RELOC_SPARC_H34. (tc_gen_reloc): Likewise. 2012-04-12 Roland McGrath * configure.tgt (arm-*-nacl*): Match it. * config/te-nacl.h (FPU_DEFAULT, EABI_DEFAULT): Define. (LOCAL_LABELS_DOLLAR): Define. * config/tc-arm.c (elf32_arm_target_format) [TE_NACL]: Use nacl format variants. 2012-04-12 Jie Zhang Meador Inge * config/tc-arm.c (only_one_reg_in_list): New function. (encode_ldmstm): Ditto. (do_ldmstm): Use a different encoding when pushing or poping a single register. (A_COND_MASK): New macro. (A_PUSH_POP_OP_MASK): Ditto. (A1_OPCODE_PUSH): Ditto. (A2_OPCODE_PUSH): Ditto. (A2_OPCODE_POP): Ditto. 2012-04-06 Maciej W. Rozycki * doc/c-mips.texi (MIPS Opts): Correct -no-mfix-24k to -mno-fix-24k. 2012-04-06 Roland McGrath * configure.in (AC_CHECK_HEADERS): Add locale.h. * config.in: Regenerate. * configure: Regenerate. 2012-04-05 Nick Clifton * configure.in (AC_CHECK_FUNCS): Add setlocale. (AM_LC_MESSAGES): Add. * aclocal.m4: Regenerate. * config.in: Regenerate. * configure: Regenerate. 2012-04-03 DJ Delorie * config/rx-parse.y: Make the .L optional for ADC and SBB. 2012-04-02 DJ Delorie * config/rx-parse.y: IMM->IMM_, take an extra parameter for the transfer size. (IMM): New, call IMM_ with the default 32. (IMMW,IMMB): Likewise, for 16 and 8. (NIMM, MBIMM): Add size parameter. (immediate): Likewise. Allow 32768..65535 for 16-bit transfers. (MOV.W): Use IMMW instead of IMM. * config/rx-parse.y (ADC,SBB): ADC and SBB only allow .L. (op_dp20_rm_l): New. (op_dp20_rim_l): New. * config/rx-parse.y (op_dp20_rms): Rename to op_dp20_rr, don't allow mem. (ABS, NEG, NOT): These only take REG or REG,REG (rr, not rms). 2012-03-29 Terry Guo * config/tc-arm.c (arm_cpus): Add cortex-m0plus. * doc/c-arm.texi (ARM Options): Document -mcpu=cortex-m0plus. 2012-03-23 Maxim Kuvyrkov * config/tc-mips.c (mips_cpu_info_table): Add entry for Broadcom XLP. * doc/c-mips.texi: Mention XLP. 2012-03-21 Thomas Schwinge [SH] Support the .uaquad and .8byte directives also for non-sh64 configurations. * config/tc-sh.c (sh_cons_fix_new, md_apply_fix) [!HAVE_SH64]: Handle BFD_RELOC_64. * doc/c-sh64.texi (SH64 Machine Directives): Move .uaquad description... * doc/c-sh.texi (SH Machine Directives): ... here. 2012-03-20 Nick Clifton * config/tc-arm.c (do_vmrs): Accept priviledged mode VFP system registers. (do_vmsr): Likewise. (arm_opcode_insns): Do not default to using the FPSCR register in the VMRS and VMSR registers. 2012-03-16 Roland McGrath * config/tc-i386.h [TE_NACL] (ELF_TARGET_FORMAT32, ELF_TARGET_FORMAT64): Define for this case. * configure.tgt (i386-*-nacl*): If ${cpu} is x86_64*, default to x32. 2012-03-16 Matthew Gretton-Dann * config/tc-arm.c (aeabi_set_public_attributes): Correct handling of Tag_DIV_use. 2012-03-15 Thomas Schwinge * doc/as.texinfo (Bundle directives): Fix typo. 2012-03-14 Ryan Mansfield * doc/as.texinfo (Bundle directives): Replace @defn with @dfn. 2012-03-13 Roland McGrath * config/tc-arm.c (arm_frag_max_var): New function. * config/tc-arm.h: Declare it. (md_frag_max_var): New macro. * config/tc-i386.c (i386_frag_max_var): New function. * config/tc-i386.h: Declare it. (md_frag_max_var): New macro. * doc/as.texinfo (Bundle directives): New node. (Pseudo Ops): Add it to the menu. * NEWS: Mention new feature. * read.c [md_frag_max_var] (HANDLE_BUNDLE): New macro. [HANDLE_BUNDLE] (bundle_align_p2): New variable. [HANDLE_BUNDLE] (bundle_lock_frchain, bundle_lock_frag): New variables. [HANDLE_BUNDLE] (start_bundle, pending_bundle_size, finish_bundle): New functions. (assemble_one): New function if [HANDLE_BUNDLE], #define directly to md_assembly if not. (read_a_source_file): Call assemble_one in place of md_assemble. (read_a_source_file) [HANDLE_BUNDLE]: Check for unterminated .bundle_lock at end of processing. [HANDLE_BUNDLE] (s_bundle_align_mode, s_bundle_lock, s_bundle_unlock): New functions. [HANDLE_BUNDLE] (potable): Add their entries. * read.h: Declare new functions. 2012-03-10 Edmar Wienskoski * config/tc-ppc.c (md_show_usage): Document -me5500 and -me6500. (ppc_handle_align): Add termination nop opcode for e500mc family. * doc/as.texinfo: Document options -me5500 and -me6500. * doc/c-ppc.texi: Likewise. 2012-03-07 Nick Clifton * config/tc-mn10300.c (other_registers): Add SSP and USP. (md_assemble): Add support for TLS relocs. (mn10300_parse_name): Likewise. 2012-02-27 Alan Modra * config/tc-crx.c (check_range): Correct uint32_t misconceptions. 2012-02-27 Alan Modra * config/tc-tic4x.c (tic4x_do_align): Remove ATTRIBUTE_UNUSED on params. Properly generate NOP pattern. Comment reason for subseg_text_p failure. 2012-02-27 Alan Modra * config/tc-h8300.c (constant_fits_width_p): Trim constant to 32 bits and sign extend before range tests. (constant_fits_size_p): Similarly. (get_specific): Trim X_add_number to 32 bits. (fix_operand_size): Likewise, and use unsigned test for signed ranges. 2012-02-27 Alan Modra * config/tc-crx.c: Include bfd_stdint.h. (getconstant): Remove irrelevant comment. Don't fail due to sign-extension of int mask. (check_range): Rewrite using unsigned arithmetic throughout. 2012-02-25 Walter Lee * tc-tilepro.c (emit_tilepro_instruction): Check if symbol is non-local before checking sy_value. * tc-tilegx.c (emit_tilegx_instruction): Ditto. 2012-02-25 Walter Lee * tc-tilepro.c (O_tls_le): Define operator. (O_tls_le_lo16): Ditto. (O_tls_le_hi16): Ditto. (O_tls_le_ha16): Ditto. (O_tls_gd_call): Ditto. (O_tls_gd_add): Ditto. (O_tls_ie_load): Ditto. (md_begin): Delete old operators; handle new operators. (emit_tilepro_instruction): Ditto. (md_apply_fix): Ditto. * tc-tilegx.c (O_hw1_got): Delete operator. (O_hw2_got): Ditto. (O_hw3_got): Ditto. (O_hw2_last_got): Ditto. (O_hw1_tls_gd): Ditto. (O_hw2_tls_gd): Ditto. (O_hw3_tls_gd): Ditto. (O_hw2_last_tls_gd): Ditto. (O_hw1_tls_ie): Ditto. (O_hw2_tls_ie): Ditto. (O_hw3_tls_ie): Ditto. (O_hw2_last_tls_ie): Ditto. (O_hw0_tls_le): Define operator. (O_hw0_last_tls_le): Ditto. (O_hw1_last_tls_le): Ditto. (O_tls_gd_call): Ditto. (O_tls_gd_add): Ditto. (O_tls_ie_load): Ditto. (O_tls_add): Ditto. (md_begin): Delete old operators; handle new operators. (emit_tilegx_instruction): Ditto. (md_apply_fix): Ditto. * doc/c-tilegx.texi: Delete old operators; document new operators. * doc/c-tilepro.texi: Ditto. 2012-02-25 Walter Lee * tc-tilepro.c (apply_special_operator): delete cases for got and tls operators. (md_apply_fix): Ditto. * tc-tilegx.c (md_begin): Set architecture and machine. (tilegx_target_format): Handle big endian. (OPTION_EB): Define. (OPTION_EL): Define. (md_longopts): Add entries for "EB" and "EL". (md_parse_option): Handle OPTION_EB and OPTION_EL. (md_show_usage): Add -EB and -EL. (md_number_to_chars): New. (apply_special_operator): delete cases for got and tls operators. (md_apply_fix): Ditto. * tc-tilegx.h (TARGET_BYTES_BIG_ENDIAN): Guard definition with ifndef. (md_number_to_chars): Delete. * configure.tgt (tilegx*be): Handle. * doc/as.texinfo [TILE-Gx]: Document -EB and -EL. * doc/c-tilegx.texi: Ditto. 2012-02-21 H.J. Lu * config/tc-i386.c (check_hle): Use HLEPrefixNone, HLEPrefixLock, HLEPrefixAny and HLEPrefixRelease. 2012-02-21 Matthew Gretton-Dann * gas/config/tc-arm.h (DOUBLESLASH_LINE_COMMENTS): Define. 2012-02-21 Iain Sandoe * write.c (write_object_file): Add md_pre_output_hook. * config/obj-macho.c (obj_mach_o_check_before_writing): New. (obj_mach_o_pre_output_hook): New. * config/obj-macho.h (md_pre_output_hook): Define. (obj_mach_o_pre_output_hook): Declare. 2012-02-21 Tristan Gingold * config/tc-i386.h (OBJ_MACH_O): New section. (TC_FORCE_RELOCATION): Use obj_mach_o_force_reloc. (TC_FORCE_RELOCATION_SUB_SAME): New (TC_FORCE_RELOCATION_SUB_LOCAL): New. (TC_VALIDATE_FIX_SUB): New. * frags.h (struct frag): OBJ_FRAG_TYPE, new field. * symbols.c (colon): obj_frob_colon: New hook. * write.c (write_object_file): md_pre_relax_hook, new hook. * config/obj-macho.c (obj_mach_o_frob_colon): New. (obj_mach_o_frob_label): Record sub-section labels. (obj_mach_o_frob_symbol): Rename from obj_macho_frob_symbol. (obj_mach_o_set_subsections): New. (obj_mach_o_pre_relax_hook): New. (obj_mach_o_in_different_subsection): New. (obj_mach_o_force_reloc_sub_same): New. (obj_mach_o_force_reloc_sub_local): New. (obj_mach_o_force_reloc): New. * config/obj-macho.h (OBJ_SYMFIELD_TYPE): New. (obj_frob_colon): New Define. (obj_mach_o_frob_label): Renamed. (obj_mach_o_frob_symbol): Renamed. (OBJ_FRAG_TYPE): New. (obj_mach_o_in_different_subsection, obj_mach_o_force_reloc, obj_mach_o_force_reloc_sub_same, obj_mach_o_force_reloc_sub_local): New declarations. 2012-02-20 Iain Sandoe * config/obj-macho.c (obj_mach_o_is_frame_section): New. (obj_mach_o_allow_local_subtract): New. * config/obj-macho.h (md_allow_local_subtract): Define. (obj_mach_o_allow_local_subtract): Declare. 2012-02-20 Iain Sandoe * config/obj-macho.c (obj_mach_o_make_or_get_sect): In the absence of canonical information, try to determine CODE and DEBUG section flags from the mach-o section data. 2012-02-20 Nick Clifton * cgen.c (gas_cgen_parse_operand): Do not set BSF_RELC flag on local symbols. 2012-02-12 Iain Sandoe * config/obj-macho.c (obj_mach_o_indirect_symbol): Force promotion of any local symbol used as an indirect. 2012-02-10 Iain Sandoe * config/obj-macho.c (obj_mach_o_make_or_get_sect): Always fill in stub size when provided. (obj_mach_o_section): Flag that stub-size has been provided. 2012-02-08 H.J. Lu * config/tc-i386.c (HLE_PREFIX): New. (check_hle): Likewise. (_i386_insn): Add have_hle. (cpu_arch): Add .hle and .rtm. (md_assemble): Call check_hle if i.have_hle isn't zero. (parse_insn): Set i.have_hle to 1 for HLE prefix. (output_jump): Support up to 2 byte opcode. * doc/c-i386.texi: Document hle/.hle and rtm/.rtm. 2012-02-02 Tristan Gingold * config/obj-macho.c (obj_mach_o_zerofill): Silent uninitialized variable warning. 2012-02-02 Nick Clifton PR gas/13224 * config/obj-elf.c (obj_elf_parse_section_letters): Rename 'clone' to 'is_clone' to avoid shadowing a gloabl. (obj_elf_section): Likewise. 2012-01-31 Paul Brook * doc/c-tic6x.c: Fix typo. 2012-01-26 Alexey Makhalov PR gas/13624 * app.c (app_push): Set 'add_newlines' to zero after saving. 2012-01-24 DJ Delorie * config/rl78-parse.y (NOT1): Add. 2012-01-23 Roland McGrath * configure.tgt (i386-*-nacl*): Match it. * config/te-nacl.h: New file. * config/tc-i386.h [TE_NACL] (ELF_TARGET_FORMAT): Define for this case. * config/tc-i386.c [TE_NACL] (i386_comment_chars, PREFIX_SEPARATOR): Use TE_GNU et al case for TE_NACL too. 2012-01-20 H.J. Lu * config/tc-i386.c (_i386_insn): Replace disp32_encoding with disp_encoding. (md_assemble): Updated. (output_branch): Likewise. (parse_insn): Support .d8 suffix. (build_modrm_byte): Fake zero displacement for .d8 and .d32 suffixes. * doc/c-i386.texi: Document .d8 suffix. 2012-01-17 Andrew Burgess * write.c (fix_new_internal): Don't mark used parameter as unused. 2012-01-17 Alan Modra * as.c (parse_args): Update copyright message year. 2012-01-13 H.J. Lu * config/tc-i386.c (cpu_arch): Add ".vmfunc". * doc/c-i386.texi: Document vmfunc. 2012-01-13 Tristan Gingold * config/obj-macho.c (obj_mach_o_reorder_section_relocs): New. * config/obj-macho.h (SET_SECTION_RELOCS): Define. (obj_mach_o_reorder_section_relocs): Declare. 2012-01-13 Iain Sandoe * config/obj-macho.c (obj_mach_o_set_indirect_symbols): Handle absolute indirect symbols. 2012-01-13 Iain Sandoe * config/obj-macho.c (obj_mach_o_set_vma_data): New type. (obj_mach_o_set_section_vma): New. (obj_mach_o_post_relax_hook): New. * config/obj-macho.h (md_post_relax_hook): Define. (obj_mach_o_post_relax_hook): Declare. 2012-01-12 Iain Sandoe * config/obj-macho.c (obj_mach_o_set_symbol_qualifier): Switch off lazy when the symbol is private_extern. (obj_mach_o_indirect_sym): New type. (obj_mach_o_indirect_symbol): New. (mach_o_pseudo_table): Use obj_mach_o_indirect_symbol. (obj_macho_frob_label): Adjust to avoid adding bsyms for locals. (obj_macho_frob_label): Likewise. Adjust external and comm symbol tests. (obj_mach_o_set_indirect_symbols): New. (obj_mach_o_frob_file_after_relocs): New. *config/obj-macho.h (obj_frob_file_after_relocs): Define. (obj_mach_o_frob_file_after_relocs): Declare. 2012-01-12 Tristan Gingold PR gas/13591 * config/obj-coff.h (sy_obj): Rename macro to avoid a name conflict. 2012-01-10 Tristan Gingold * struc-symbol.h (struct symbol_flags): New struct, created from... (struct symbol): ... this one. Add sy_flags field, remove flag fields. (struct local_symbol): Replace lsy_marker field by lsy_flags. Adjust comment. (local_symbol_resolved_p): Adjust. (local_symbol_mark_resolved): Likewise. * symbols.c (LOCAL_SYMBOL_CHECK): Adjust. (local_symbol_make, local_symbol_convert, colon) (symbol_clone_if_forward_ref, verify_symbol_chain) (resolve_symbol_value, snapshot_symbol, S_GET_VALUE) (S_IS_WEAKREFR, S_IS_WEAKREFD, S_IS_VOLATILE, S_IS_FORWARD_REF) (S_SET_WEAKREFR, S_CLEAR_WEAKREFR, S_SET_WEAKREFD) (S_CLEAR_WEAKREFD, S_SET_VOLATILE, S_CLEAR_VOLATILE) (S_SET_FORWARD_REF, symbol_same_p, symbol_mark_used) (symbol_clear_used, symbol_used_p, symbol_mark_used_in_reloc) (symbol_clear_used_in_reloc, symbol_used_in_reloc_p) (symbol_mark_mri_common, symbol_clear_mri_common) (symbol_mri_common_p, symbol_mark_written, symbol_clear_written) (symbol_written_p, symbol_mark_resolved, symbol_resolved_p) (symbol_equated_reloc_p, dot_symbol_init) (print_symbol_value_1): Adjust. 2012-01-09 Iain Sandoe * config/obj-macho.c (obj_mach_o_weak): Remove. (obj_mach_o_common_parse): Set symbol qualifiers. (LAZY, REFE): New macros. (obj_mach_o_symbol_type): New enum. (obj_mach_o_set_symbol_qualifier): New. (obj_mach_o_sym_qual): New. (mach_o_pseudo_table): Add symbol qualifiers, set indirect_symbol to a dummy function. (obj_mach_o_type_for_symbol): New. (obj_macho_frob_label): New. (obj_macho_frob_symbol): New. * config/obj-macho.h (S_SET_ALIGN): Amend temorary var name. (obj_frob_label, obj_macho_frob_label): Declare. (obj_frob_symbol, obj_macho_frob_symbol): Declare. 2012-01-08 Richard Sandiford * config/tc-mips.c (s_tls_rel_directive): Call mips_clear_insn_labels. 2012-01-08 Andrew Pinski Richard Sandiford * config/tc-mips.c (mips_move_labels): Take the list of labels and textness as parameters. (mips_move_text_labels): New function. (append_insn): Use it instead of mips_move_labels. (mips_emit_delays, start_noreorder): Likewise. (mips_align): Take the labels rather than just one label. Move all labels to after the .align. (s_align): Change the last argument to mips_align. (s_cons): Likewise. (s_float_cons): Likewise. (s_gpword): Likewise. (s_gpdword): Likewise. 2012-01-06 Tristan Gingold * config/tc-i386.c: Update copyright year. (lex_got): Also defined for Mach-O. Add a guard for non-ELF configuration. (md_longopts): Also handle -64 for Mach-O. (md_parse_option): Likewise. (i386_target_format): Adjust for x86_64-darwin. 2012-01-04 Iain Sandoe * config/obj-macho.c (obj_mach_o_segT_from_bfd_name): Tidy definition. (obj_mach_o_get_section_names): New (split from obj_mach_o_section). (obj_mach_o_make_or_get_sect): Likewise. (obj_mach_o_section): Split out the functionality shared with zerofill. (obj_mach_o_zerofill): New. (obj_mach_o_common_parse): Ensure whitespace is skipped. (mach_o_pseudo_table): Add .zerofill. 2012-01-03 Iain Sandoe * config/obj-macho.c (obj_macho_process_stab): New. * config/obj-macho.h (OBJ_PROCESS_STAB): Define. (obj_macho_process_stab): Declare. For older changes see ChangeLog-2011 Local Variables: mode: change-log left-margin: 8 fill-column: 74 version-control: never End: