blob: 15e56a6de0f652d6060d4cdc13257159e68639aa [file] [log] [blame]
2012-12-20 Greta Yorsh <>
* config/tc-arm.c (rfefa,rfeea,rfeed): Fix encoding.
(rfe,srs,srsea,srsfa,srsed,srsfd): Add missing mnemonics.
2012-12-17 Nick Clifton <>
* CONTRIBUTORS: Add copyright notice.
* MAINTAINERS: Likewise.
* Likewise.
* NEWS: Likewise.
* README: Likewise.
* Likewise.
* Likewise.
* configure.tgt: Likewise.
* itbl-lex-wrapper.c: Likewise.
* makefile.vms: Likewise.
* config/bfin-lex-wrapper.c: Likewise.
* config/obj-fdpicelf.c: Likewise.
* config/obj-fdpicelf.h: Likewise.
* doc/ Likewise.
* doc/h8.texi: Likewise.
* Regenerate.
* doc/ Regenerate.
2012-12-11 Edgar E. Iglesias <>
* config/tc-microblaze.c: Define TLS offsets
(md_relax_table): Add TLS offsets
(imm_types), (match_imm), (get_imm_otype): New to support TLS offsets.
(tc_microblaze_fix_adjustable): Add TLS relocs.
(md_convert_frag): Support TLS offsets.
(md_apply_fix), (md_estimate_size_before_relax), (tc_gen_reloc):
Add TLS relocs
2012-12-06 Yufeng Zhang <>
* config/tc-aarch64.c (exp_has_bignum_p): Remove.
(my_get_expression): Not get rid of bignums.
(s_ltorg): Increase the range of 'align'.
(programmer_friendly_fixup): Allow bignum expression.
2012-11-29 David Holsgrove <>
* config/tc-microblaze.c: Rename INST_TYPE_RD_R1_SPECIAL to
INST_TYPE_R1_R2_SPECIAL, don't set RD for wic.
2012-11-28 Julian Brown <>
* config/tc-arm.c (md_apply_fix): Fix conversion of BL to BLX for
local targets in Thumb mode.
2012-11-23 Alan Modra <>
* config/tc-ppc.c (sticky): New var.
(md_parse_option, ppc_machine): Update ppc_parse_cpu calls.
2012-11-21 Edgar E. Iglesias <>
* config/tc-microblaze.c (parse_reg): Parse REG_SLR, REG_SHR
2012-11-20 H.J. Lu <>
PR gas/14859
* gas/i386/x86-64-opcode.s: Add jecxz.
* gas/i386/x86-64-opcode.d: Updated.
2012-11-20 Yufeng Zhang <>
* config/tc-aarch64.c (first_error_fmt): Add ATTRIBUTE_UNUSED to the
local variable "ret".
2012-11-20 Roland McGrath <>
* config/tc-arm.c (arm_symbol_chars): New variable.
* config/tc-arm.h (tc_symbol_chars): New macro, defined to that.
2012-11-20 David S. Miller <>
* config/tc-sparc.c (md_parse_option): Only certain arch
specifications should override the object to be 32-bit
or 64-bit.
2012-11-14 David Holsgrove <>
* config/tc-microblaze.c (md_assemble): Add support for INST_TYPE_IMM5
2012-11-14 Ulrich Weigand <>
* config/tc-ppc.c (md_apply_fix): Leave field zero when emitting
an ELF reloc on data as well.
2012-11-09 Maciej W. Rozycki <>
* read.h (s_vendor_attribute): Move to...
* config/obj-elf.h (obj_elf_vendor_attribute): ... here.
* read.c (potable): Remove "gnu_attribute".
(skip_whitespace, skip_past_char, skip_past_comma): Delete, move
to config/obj-elf.c.
(s_vendor_attribute): Delete, move to obj_elf_vendor_attribute
in config/obj-elf.c.
(s_gnu_attribute): Delete, move to obj_elf_gnu_attribute in
* config/obj-elf.c (elf_pseudo_table): Add "gnu_attribute".
(skip_whitespace, skip_past_char, skip_past_comma): New, moved
from read.c.
(obj_elf_vendor_attribute): New, moved from s_vendor_attribute
in read.c.
(obj_elf_gnu_attribute): New, moved from s_gnu_attribute in
* config/tc-arm.c (s_arm_eabi_attribute): Rename
s_vendor_attribute to obj_elf_vendor_attribute.
* config/tc-tic6x.c (s_tic6x_c6xabi_attribute): Likewise.
2012-11-09 Nick Clifton <>
* config/obj-elf.c (obj_elf_change_section): Allow init array
sections to have the SHF_EXECINSTR attribute for the RX target.
* config/tc-rx.c (elf_flags): Initialise with E_FLAG_RX_ABI.
(md_longopts): Add -mgcc-abi and -mrx-abi.
(md_parse_option): Add support for OPTION_USES_GCC_ABI and
* doc/as.texinfo (RX Options): Add mention of remaining RX
* doc/c-rx.texi: Document -mgcc-abi and -mrx-abi.
* config/tc-v850.c (v850_target_arch): New.
(v850_target_format): New.
(set_machine): Use v850_target_arch.
(md_begin): Likewise.
(md_show_usage): Document new switches.
(md_parse_option): Add -mgcc-abi, -mrh850-abi, -m8byte-align and
* config/tc-v850.c (TARGET_ARCH) Use v850_target_arch.
(TARGET_FORMAT): Use v850_target_format.
* doc/c-v850.texi: Document new options.
2012-11-09 David Holsgrove <>
* tc-microblaze.c (md_longopts): Define OPTION_EB and
OPTION_EL for target.
(md_parse_option): Likewise.
* tc-microblaze.h: Set elf32-microblazeel if not
target_big_endian for TARGET_FORMAT.
* configure.tgt: Add microblazeel and set endian per target.
2012-11-09 H.J. Lu <>
* config/atof-ieee.c (gen_to_words): Remove trailing redundant
* config/atof-vax.c (flonum_gen2vax): Likewise.
* config/tc-d10v.c (write_2_short): Likewise.
* config/tc-i386-intel.c (i386_intel_simplify): Likewise.
* config/tc-s390.c (tc_s390_force_relocation): Likewise.
* config/tc-v850.c (md_parse_option): Likewise.
* config/tc-xtensa.c (find_address_of_next_align_frag): Likewise.
* dwarf2dbg.c (out_header): Likewise.
* symbols.c (dollar_label_name): Likewise.
(fb_label_name): Likewise.
2012-11-08 Maciej W. Rozycki <>
* config/tc-mips.c (mips_ip) <'u'>: Default to BFD_RELOC_LO16.
2012-11-08 Alan Modra <>
* po/ Regenerate.
2012-11-07 James Murray <>
* config/tc-m68hc11.c: Fix R_M68HC12_16B relocation for movb/w
2012-11-07 David Holsgrove <>
* config/tc-microblaze.c: Remove special register condition check
for INST_TYPE_RFSL related instructions.
2012-11-06 Alan Modra <>
* config/tc-xgate.c: Make some functions static. Formatting
style and whitespace fixes. Wrap overly long lines. Format
help message.
2012-11-06 Alan Modra <>
* config/tc-tic4x.c: Remove alignment TODO comments.
(tic4x_do_align): Enable subseg_text_p test.
2012-11-06 Alan Modra <>
* config/tc-ppc.c (ppc_elf_adjust_symtab): New function, split out..
(ppc_frob_file_before_adjust): ..from here.
(md_apply_fix): Set BSF_KEEP on .TOC. if not @tocbase.
* config/tc-ppc.h (ppc_elf_adjust_symtab): Declare.
(tc_adjust_symtab): Define.
2012-11-06 Alan Modra <>
* config/tc-ppc.c (md_apply_fix): Fix xcoff build breakage from
last patch.
2012-11-05 Sean Keys <>
* config/tc-xgate.c: Remove bogus use of <fx_pcrel_adjust>.
* config/tc-m68hc11.c: Likewise.
2012-11-05 Alan Modra <>
* Apply 2012-09-10 change to here.
2012-11-05 Alan Modra <>
* config/tc-ppc.c (md_chars_to_number): Delete.
(ppc_setup_opcodes): Assert num_powerpc_operands fit.
(ppc_is_toc_sym): Move earlier in file.
(md_assemble): Move code setting reloc from md_apply_fix. Combine
non-ELF code setting fixup with ELF code. Stash opindex in
fx_pcrel_adjust. Adjust fixup offset for VLE. Don't set
fx_no_overflow here.
(md_apply_fix): Rewrite to use ppc_insert_operand for all
resolved instruction fields. Leave insn field zero when
emitting an ELF reloc in most cases.
* write.h (struct fix <fx_pcrel_adjust>): Make it a signed char.
* config/tc-m68k.c (tc_gen_reloc, md_pcrel_from): Remove explicit
sign extendion of fx_pxrel_adjust.
2012-11-01 Maciej W. Rozycki <>
* config/tc-mips.c (is_delay_slot_valid): Simplify expression.
2012-11-01 Chao-ying Fu <>
* config/tc-mips.c (append_insn): Set fx_no_overflow for 16-bit
microMIPS branch relocations.
2012-11-01 Maciej W. Rozycki <>
* config/tc-mips.c (is_delay_slot_valid): Don't accept macros
in 16-bit delay slots.
(macro_build_jalr): Emit 32-bit JALR if placed in a 32-bit delay
(macro) <M_JAL_2>: Likewise
2012-10-31 David Holsgrove <>
* config/tc-microblaze.c: Check for weak symbols before
emitting relocation.
2012-10-29 Alan Modra <>
* sb.c (sb_check): Use __builtin_clzll when size_t is not the
same size as long.
2012-10-29 Alan Modra <>
* config/tc-ppc.c (ppc_znop): Remove unused vars.
2012-10-26 Alan Modra <>
PR gas/14758
* config/tc-ppc.c (ppc_setup_opcodes): Fix comment.
(md_assemble): Translate to _DS relocs for ppc32 as well as ppc64.
(tc_gen_reloc): Handle _DS relocs in ppc32 mode.
2012-10-22 Simon Baldwin <>
* as.c (dump_statistics): Compute data size as the delta between
current sbrk(0) and start_sbrk.
* (main): Set start_sbrk to sbrk(0) on entry.
2012-10-18 Kai Tietz <>
* config/obj-coff.c: Add include of struc-symbol.h header.
(coff_frob_symbol): Check that function-aux entries are generated for
defined symbols only.
* doc/as.texinfo: Add missing documentation about section flag
2012-10-14 John David Anglin <>
* config/tc-hppa.c (pa_get_number): New.
(pa_get_absolute_expression): Simplify.
(pa_ip): Use pa_get_number instead of pa_get_absolute_expression
to get SOP, SFU and COPR identifiers.
* config/tc-hppa.c (pa_ip): Reject double floating point stores and
loads that reference the right half of a floating point register.
2012-10-13 John David Anglin <>
* config/tc-hppa.c (pa_ip): Limit unit conditions for uxor to those
not involving a carry.
2012-10-12 Peter Bergner <>
* doc/as.texinfo (-mpwr4, -mpwr7): Fix option name typos.
2012-10-11 Kyrylo Tkachov <>
* config/tc-arm.c: Change condition code insertion for
lds[hb] instructions from after the 2nd character to after the 3rd.
(tCM): Remove macro.
(TxCM): Likewise.
(TxCM_): Likewise.
(TCM): Likewise.
2012-10-09 Nagajyothi Eggone <>
* config/tc-i386.c (cpu_arch): Add CPU_BDVER3_FLAGS.
* doc/c-i386.texi: Add -march=bdver3 option.
2012-10-04 Nick Clifton <>
* config/tc-v850.c (v850_insert_operand): Use a static buffer for
the error message.
2012-10-04 Andreas Krebbel <>
* config/tc-s390.c (s390_parse_cpu): Add new option zEC12.
* doc/as.texinfo: Document new option zEC12.
* doc/c-s390.texi: Likewise.
2012-10-03 DJ Delorie <>
* config/tc-rl78.c: Change line_separator to '@' so that '|' can
be used in expressions.
2012-10-01 Alan Modra <>
* write.c (chain_frchains_together_1): Reorder assertion to avoid
uninit warning.
2012-09-23 Richard Sandiford <>
* config/tc-mips.h (TC_FORCE_RELOCATION): Remove comment.
* config/tc-mips.c (calculate_reloc): New function.
(append_insn): Use it. Do not resolve compound relocations here.
(mips16_macro_build, mips16_ip): Use calculate_reloc.
(mips16_immed_extend): New function, split out from...
(mips_frob_file): Handle null symbols.
(mips_force_relocation): Remove NEWABI handling.
(read_reloc_insn, write_reloc_insn): New functions.
(md_apply_fix): Report TLS relocations against constants.
Use read_reloc_insn, calculate_reloc and write_reloc_insn.
Report relocations against constants that can't be resolved
at assembly time.
2012-09-23 Maciej W. Rozycki <>
* config/tc-mips.c (append_insn) <BFD_RELOC_MIPS_JMP>: Don't
mark as incomplete for constant expressions.
<BFD_RELOC_MIPS16_JMP>: Likewise.
2012-09-23 Richard Sandiford <>
Maciej W. Rozycki <>
* config/tc-mips.h (mips_record_label): Delete.
(mips_add_dot_label): Declare.
(tc_new_dot_label): Use it.
* config/tc-mips.c (mips_assembling_insn): New variable.
(md_assemble): Call mips_mark_labels. Set mips_assembling_insn
while the main part of the function is executing.
(mips_compressed_mark_label): New function, split out from...
(append_insn): Don't call mips_mark_labels here.
(mips_record_label): Make local.
(mips_add_dot_label): New function.
2012-09-23 Richard Sandiford <>
* config/tc-mips.c (SEXT_16BIT): New macro.
(mips16_immed): Take the reloc type as a parameter. Do not impose
a signed vs. unsigned distinction on the value when a relocation
operator was used.
(mips16_macro_build, mips16_ip, md_convert_frag): Pass the reloc
type to mips16_immed.
(macro): Use SEXT_16BIT.
2012-09-23 Richard Sandiford <>
* config/tc-mips.c (read_insn, write_insn, read_compressed_insn):
New functions.
(install_insn, md_apply_fix, md_convert_frag, mips_handle_align):
Use them, and write_compressed_insn.
2012-09-23 Richard Sandiford <>
* config/tc-mips.c (mips_cl_insn): Remove use_extend and extend.
(MIPS16_EXTEND): New macro.
(mips16_opcode_length): New function.
(insn_length): Use it.
(create_insn): Update after mips_cl_insn change.
(write_compressed_insn): New function.
(install_insn): Use it.
(append_insn): Use insn_length to check for unextended MIPS16
(mips16_macro_build): Update call to mips16_immed.
(mips16_ip): Likewise. Use MIPS16_EXTEND to force an extended
(mips16_immed): Remove use_extend and extend; install EXTEND
opcodes in the upper 16 bits of *INSN instead. Keep the
instruction extended if it already is. Replace warn, small
and ext with a forced_insn_length-like parameter.
(md_convert_frag): Update call mips16_immed.
Use write_compressed_insn.
2012-09-20 Michael Zolotukhin <>
* config/tc-i386.c (cpu_arch): Add .cx16.
* doc/c-i386.texi: Document .cx16.
2012-09-19 Steve Ellcey <>
* configure.tgt: Add mips*-mti-elf* target.
2012-09-18 Kyrylo Tkachov <>
* config/tc-arm.c: Changed ldra and strl-form mnemonics
to lda and stl-form for armv8.
2012-09-17 Yufeng Zhang <>
* config/tc-aarch64.c (aarch64_archs): Rename 'armv8' to 'armv8-a'.
2012-09-14 David Edelsohn <>
* configure: Regenerate.
2012-09-13 Anthony Green <>
* config/tc-moxie.h (DEFAULT_TARGET_FORMAT): Define.
(TARGET_FORMAT): Don't hard-code endian-ness.
* config/tc-moxie.c (target_big_endian, moxie_target_format):
(md_assemble): Handle bi-endian encodings.
(md_shortopts, md_parse_option, md_show_usage, md_apply_fix)
(md_number_to_chars, md_chars_to_number): Update for bi-endian
2012-09-12 Chris Schlumberger-Socha <>
* config/tc-aarch64.c
(reloc_table): Add reloc to table entry.
(parse_address_main): Add support for #:<reloc_op>:<symbol>.
(parse_operands): Check for unused reloc.
(md_apply_fix): New case for reloc.
(aarch64_force_relocation): Likewise.
2012-09-11 Georg-Johann Lay <>
PR gas/13503
* config/tc-avr.h (TC_VALIDATE_FIX): Skip: BFD_RELOC_AVR_8_LO,
2012-09-11 Alan Modra <>
* (bootstrap): Add $EXEEXT to dependency.
* Regenerate.
2012-09-10 Matthias Klose <>
* Disable sanity check for kfreebsd.
2012-09-10 H.J. Lu <>
* configure: Regenerated.
2012-09-07 Anthony Green <>
* config/tc-moxie.c (md_pcrel_from): Branches are now relative
to the address following the branch instruction.
2012-09-06 Andreas Krebbel <>
* config/tc-s390.c (set_highgprs_p): New variable.
(s390_machinemode): New function.
(md_pseudo_table): Add new pseudo command machinemode.
(md_parse_option): Set set_highgprs_p to TRUE if -mzarch was
specified on command line.
(s390_elf_final_processing): Set the highgprs flag in the ELF
header depending on set_highgprs_p.
* doc/c-s390.texi: Document new pseudo machinemode.
2012-09-05 James Lemke <>
* doc/c-ppc.texi: Document -mvle.
* doc/as.texinfo: Likewise.
2012-09-04 Sergey A. Guriev <>
* config/tc-ia64.c (reg_symbol): Add a new register.
(indirect_reg): Ditto.
(pseudo_func): Add new symbolic constants.
(operand_match): Add new operand types recognition.
(operand_insn): Add new register recognition.
(md_begin): Add new register definition.
(specify_resource): Add new register recognition.
2012-09-01 Hans-Peter Nilsson <>
PR gas/14521
* config/tc-mmix.h (tc_frob_file_before_fix): Renumber sections
after call to mmix_frob_file.
2012-08-31 Maciej W. Rozycki <>
* doc/c-mips.texi (MIPS Opts): Correct a typo in the -mips5
2012-08-27 Walter Lee <>
* tc-tilegx.c (O_hw0_plt): Define operator.
(O_hw1_plt): Ditto.
(O_hw1_last_plt): Ditto.
(O_hw2_last_plt): Ditto.
(md_begin): Handle new operators.
(emit_tilegx_instruction): Ditto.
(md_apply_fix): Ditto.
* doc/c-tilegx.texi: Document new operators.
2012-08-24 Matthew Gretton-Dann <>
* config/tc-arm.c (ARM_ENC_TAB): Add sha1h and sha2op entries.
(do_sha1h): New function.
(do_sha1su1): Likewise.
(do_sha256su0): Likewise.
(insns): Add 2 operand SHA instructions.
2012-08-24 Matthew Gretton-Dann <>
* config/tc-arm.c (NEON_ENC_TAB): Add sha3op entry.
(do_crypto_3op_1): New function.
(do_sha1c): Likewise.
(do_sha1p): Likewise.
(do_sha1m): Likewise.
(do_sha1su0): Likewise.
(do_sha256h): Likewise.
(do_sha256h2): Likewise.
(do_sha256su1): Likewise.
(insns): Add SHA 3 operand instructions.
2012-08-24 Matthew Gretton-Dann <>
* config/tc-arm.c (neon_type_mask): Add P64 type.
(type_chk_of_el_type): Handle P64 type.
(el_type_of_type_chk): Likewise.
(do_neon_vmull): Handle VMULL.P64.
2012-08-24 Matthew Gretton-Dann <>
* config/tc-arm.c (NEON_ENC_TAB): Add aes entry.
(neon_type_mask): Add N_UNT.
(neon_check_type): Don't always decay typed to untyped sizes.
(do_crypto_2op_1): New function.
(do_aese): Likewise.
(do_aesd): Likewise.
(do_aesmc.8): Likewise.
(do_aesimc.8): Likewise.
(insns): Add AES instructions.
2012-08-24 Matthew Gretton-Dann <>
* config/tc-arm.c (el_type_type_check): Add handling for 16-bit
floating point types.
(do_neon_cvttb_2): New function.
(do_neon_cvttb_1): Likewise.
(do_neon_cvtb): Refactor to use do_neon_cvttb_1.
(do_neon_cvtt): Likewise.
2012-08-24 Matthew Gretton-Dann <>
* config/tc-arm.c (NEON_ENC_TAB): Add vrint entries.
(neon_cvt_mode): Add neon_cvt_mode_r.
(do_vrint_1): New function.
(do_vrint_x): Likewise.
(do_vrint_z): Likewise.
(do_vrint_r): Likewise.
(do_vrint_a): Likewise.
(do_vrint_n): Likewise.
(do_vrint_p): Likewise.
(do_vrint_m): Likewise.
(insns): Add VRINT instructions.
2012-08-24 Matthew Gretton-Dann <>
* config/tc-arm.c (NEON_ENC_TAB): Add vcvta entry.
(neon_cvt_mode): New enumeration.
(do_vfp_nsyn_cvt_fpv8): New function.
(do_neon_cvt_1): Add support for new conversions.
(do_neon_cvtr): Use neon_cvt_mode enumerator.
(do_neon_cvt): Likewise.
(do_neon_cvta): New function.
(do_neon_cvtn): Likewise.
(do_neon_cvtp): Likewise.
(do_neon_cvtm): Likewise.
(insns): Add new VCVT instructions.
2012-08-24 Matthew Gretton-Dann <matthew.gretton-dann@arm>
* config/tc-arm.c (CVT_FLAVOUR_VAR): New define.
(CVT_VAR): New helper define.
(neon_cvt_flavour): New enumeration, function renamed...
(get_neon_cvt_flavour): this.
(do_vfp_nsyn_cvt): Update to use new neon_cvt_flavour.
(do_vfp_nsyn_cvtz): Likewise.
(do_neon_cvt_1): Likewise.
2012-08-24 Matthew Gretton-Dann <>
* config/tc-arm.c (NEON_ENC_TAB): Add vmaxnm, vminnm entries.
(vfp_or_neon_is_neon_bits): Add NEON_CHECK_ARCH8 enumerator.
(vfp_or_neon_is_neon): Add check for SIMD for ARMv8.
(do_maxnm): New function.
(insns): Add vmaxnm, vminnm entries.
2012-08-24 Matthew Gretton-Dann <>
* config/tc-arm.c (NEON_ENC_TAB): Add entries for VSEL.
(NEON_ENC_FPV8_): New define.
(do_vfp_nsyn_fpv8): New function.
(do_vsel): Likewise.
(insns): Add VSEL instructions.
2012-08-24 Matthew Gretton-Dann <>
* config/tc-arm.c (do_rm_rn): New function.
(do_strlex): Likewise.
(do_t_strlex): Likewise.
(insns): Add support for LDRA/STRL instructions.
2012-08-24 Matthew Gretton-Dann <>
* config/tc-arm.c (do_t_bkpt_hlt1): New function.
(do_t_hlt): New function.
(do_t_bkpt): Use do_t_bkpt_hlt1.
(insns): Add HLT.
2012-08-24 Matthew Gretton-Dann <>
* config/tc-arm.c (insns): Add DCPS instruction.
2012-08-24 Matthew Gretton-Dann <>
* config/tc-arm.c (T16_32_TAB): Add _sevl.
(insns): Add SEVL.
2012-08-24 Matthew Gretton-Dann <>
* config/tc-arm.c (asm_barrier_opt): Add arch field.
(mark_feature_used): New function.
(parse_barrier): Check specified option is valid for the
specified architecture.
(UL_BARRIER): New macro.
(barrier_opt_names): Update for new barrier options.
2012-08-24 Matthew Gretton-Dann <>
* config/tc-arm.c (do_setend): Warn on deprecated SETEND.
(do_t_setend): Likewise.
2012-08-24 Matthew Gretton-Dann <>
* config/tc-arm.c (do_t_it): Fully initialise now_it.
(new_automatic_it_block): Likewise.
(handle_it_block): Record whether current instruction is
conditionally executed.
* config/tc-arm.c (depr_insn_mask): New structure.
(depr_it_insns): New variable.
(it_fsm_post_encode): Warn on deprecated uses.
* config/tc-arm.h (current_it): Add new fields.
2012-08-24 Matthew Gretton-Dann <>
* config/tc-arm.c (deprecated_coproc_regs_s): New structure.
(deprecated_coproc_regs): New variable.
(deprecated_coproc_reg_count): Likewise.
(do_co_reg): Error on obsolete & warn on deprecated registers.
2012-08-24 Matthew Gretton-Dann <>
* config/tc-arm.c (check_obsolete): New function.
(do_rd_rm_rn): Check swp{b} for obsoletion.
2012-08-24 Matthew Gretton-Dann <>
* config/tc-arm.h (arm_ext_v8): New variable.
(fpu_vfp_ext_armv8): Likewise.
(fpu_neon_ext_armv8): Likewise.
(fpu_crypto_ext_armv8): Likewise.
(arm_archs): Add armv8-a.
(arm_extensions): Add crypto, fp, and simd.
(arm_fpus): Add fp-armv8, neon-fp-armv8, crypto-neon-fp-armv8.
(cpu_arch_ver): Add support for ARMv8.
(aeabi_set_public_sttributes): Likewise.
* doc/c-arm.texi (ARM Options): Document new architecture and
extension options for ARMv8.
2012-08-20 H.J. Lu <>
* doc/as.texinfo: Replace --n32 with --x32.
2012-08-17 Nagajyothi Eggone <>
* config/tc-i386.c (cpu_arch): Add CPU_BTVER1_FLAGS and
(i386_align_code): Add case for PROCESSOR_BT.
* config/tc-i386.h (enum processor_type): Add PROCESSOR_BT.
* doc/c-i386.texi: Add -march={btver1, btver2} options.
2012-08-14 H.J. Lu <>
PR gas/14457
* config/tc-i386.c (i386_att_operand): Terminate register name
when reporting bad register.
2012-08-14 Hans-Peter Nilsson <>
* config/tc-mmix.c (loc_asserts): New variable.
(mmix_greg_internal): Handle expressions not determinable at first
(s_loc): Ditto. Record expressions where the section isn't
determinable at the first pass, and assume they don't refer to
other sections.
(mmix_md_end): Verify that recorded LOC expressions weren't
to other sections, else emit error messages.
2012-08-13 Ian Bolton <>
Laurent Desnogues <>
Jim MacArthur <>
Marcus Shawcroft <>
Nigel Stephens <>
Ramana Radhakrishnan <>
Richard Earnshaw <>
Sofiane Naci <>
Tejas Belagod <>
Yufeng Zhang <>
* Add AArch64.
* Regenerate.
* config/tc-aarch64.c: New file.
* config/tc-aarch64.h: New file.
* configure.tgt: Add AArch64.
* doc/ Add AArch64.
* doc/ Regenerate.
* doc/all.texi: Add AArch64.
* doc/as.texinfo: Add AArch64.
* doc/c-aarch64.texi: New file.
* po/ Regenerate.
* NEWS: Mention the new support.
2012-08-13 Maciej W. Rozycki <>
* config/tc-mips.c (NO_ISA_COP, COP_INSN): Remove macros.
(is_opcode_valid): Remove coprocessor instruction exclusions.
Replace OPCODE_IS_MEMBER with opcode_is_member.
(is_opcode_valid_16): Replace OPCODE_IS_MEMBER with
(macro): Remove coprocessor instruction exclusions.
2012-08-13 Maciej W. Rozycki <>
* config/tc-mips.c (s_cpload, s_cpsetup): Fail if MIPS16 mode.
(s_cplocal, s_cprestore, s_cpreturn): Likewise.
2012-08-07 Jan Beulich <>
* config/tc-i386-intel.c (build_modrm_byte): Split determining
default segment from figuring out encoding. Honor RegRex for
the former.
2012-08-07 Jan Beulich <>
* config/tc-i386.c (set_check): Renamed from set_sse_check.
Generalize to also handle operand checking option.
(enum i386_error): New enumerator 'invalid_vector_register_set'.
(match_template): Handle it.
(enum check_kind): Give it a tag. Drop sse_ prefixes from
(operand_check): New.
(md_pseudo_table): Add "operand_check".
(check_VecOperands): Don't special case RIP addressing. Check
that vSIB operands use distinct vector registers unless no
checking was requested.
(md_parse_option): Handle it.
(md_longopts): Add "moperand-check".
(md_show_usage): Add help text for it.
2012-08-07 Jan Beulich <>
* config/tc-i386.c (register_number): New function.
(build_vex_prefix, process_immext, process_operands,
build_modrm_byte, i386_index_check): Use it.
2012-08-07 Daniel Green <>
* config/tc-i386.c (lex_got): Provide implementation for PE
2012-08-06 Maciej W. Rozycki <>
* config/tc-mips.c (append_insn): Also handle moving delay-slot
instruction across frags for fixed branches.
2012-08-03 Maciej W. Rozycki <>
* frags.c (frag_grow): Never shrink the obstack size requested
below the default.
2012-08-02 Sean Keys <>
* config/tc-m68hc11.c (s_m68hc11_parse_pseudo_instruction):
New function to parse pseudo ops that are unreleated to
existing pseudo ops.
2012-08-01 Catherine Moore <>
Sandra Loosemore <>
* config/mips/tc-mips.c (mips_cpu_info): Add the 34kn.
* doc/c-mips.texi (MIPS Opts): Document it.
2012-08-01 James Lemke <>
* dwarf2dbg.c (out_set_addr): Allow for non-constant value of
* config/tc-ppc.c (ppc_dwarf2_line_min_insn_length): Declare
and initialize.
(md_apply_fix): Branch addr can be a multiple of 2 or 4.
* config/tc-ppc.h (DWARF2_LINE_MIN_INSN_LENGTH): Now a
variable reference.
2012-07-31 Maciej W. Rozycki <>
Chao-Ying Fu <>
Catherine Moore <>
* config/tc-mips.c (ISA_SUPPORTS_DSP_ASE): Also set if microMIPS
(macro_build) <'2'>: Handle microMIPS.
(macro) <M_BALIGN>: Update error handling.
(validate_micromips_insn) <'2', '3', '4', '5', '6'>: New cases.
<'7', '8', '0', '@', '^'>: Likewise.
(mips_ip) <'2', '3', '4', '5', '6', '7', '8'>: Handle microMIPS.
<'9'>: Fix formatting.
<'0', '@'>: Handle microMIPS.
<'^'>: New case.
2012-07-31 Jan Beulich <>
* config/tc-i386.c (match_template): Adjust error message
for 'bad_imm4' case.
2012-07-31 Jan Beulich <>
* config/tc-i386.c (check_byte_reg): Check for I/O port
register earlier, and just once. Drop diagnostic that got
issued only for some registers.
2012-07-31 Jan Beulich <>
* config/tc-i386.c (match_template): New local variable
'specific_error'. Set it from i.error after failed
check_VecOperands or VEX_check_operands. Use it if set in
preference to i.error when actually issuing disagnostic.
2012-07-30 Nick Clifton <>
* po/gas.pot: Updated template.
* po/es.po: Updated Spanish translation.
* po/fi.po: Updated Finnish translation.
* po/fr.po: Updated French translation.
2012-07-27 Mike Frysinger <>
* (BFD_VERSION): Run bfd/configure --version and
parse the output of that.
* configure: Regenerate.
2012-07-27 Tristan Gingold <>
* NEWS: Add marker for 2.23.
2012-07-27 James Murray <>
* config/tc-m68hc11.c: Replace binary with hex for cygwin.
2012-07-26 Segher Boessenkool <>
* listing.c (struct list_message): New.
(struct list_info_struct): Delete "message". Add "messages"
and "last_message".
(listing_message): Adjust.
(listing_newline): Adjust.
(print_lines): Adjust.
2012-07-24 Jan Beulich <>
* config/tc-i386-intel.c (i386_intel_simplify_register): Handle
xmm/ymm index register being specified first as well as esp/rsp
base register being specified last in a memory operand.
2012-07-24 Jan Beulich <>
* config/tc-i386-intel.c (i386_intel_simplify_register):
Replace literal 4 by corresponding ESP_REG_NUM.
2012-07-24 Sandra Loosemore <>
Jie Zhang <>
* config/tc-arm.c (md_apply_fix): Use encoding A2 of ADR
if offset is negative.
2012-07-16 Michael Zolotukhin <>
* config/tc-i386.c: Add ADX, RDSEED and PRFCHW asm directives.
* doc/c-i386.texi: Document the new directives.
2012-07-05 Sean Keys <>
* config/tc-xgate.c: Revised assembler so that operands
are collected before the addressing mode is determined.
2012-07-02 Nick Clifton <>
* write.c (fixup_segment): Only perform the subtraction of an
fx_subsy symbol if MD_APPLY_SYM_VALUE allows it and the symbol is
properly defined.
* config/tc-msp430.h (MD_APPLY_SYM_VALUE): Define.
2012-06-30 Alan Modra <>
PR gas/14315
* config/obj-elf.c (obj_elf_weak): Don't set local.
2012-06-30 Johan Olmutz Nielsen <>
* frags.h (frag_offset_fixed_p): Update prototype.
* frags.c (frag_offset_fixed_p): Change type of "offset" to offsetT.
* expr.c (expr, resolve_expression): Likewise for frag_off var.
2012-06-29 Nick Clifton <>
PR gas/14263
* config/tc-arm.c (parse_operands): Initialise val.
2012-06-28 Nick Clifton <>
PR gas/14260
* config/tc-arm.c (encode_arm_addr_mode_common): Generate an error
message if literal pool addressing is used.
2012-06-28 Nick Clifton <>
* dwarf2dbg.c (DWARF2_USE_FIXED_ADVANCE_PC): Enable when using
linker relaxation.
(dwarf2_gen_line_info): Generate real, local, labels for line
(dwarf2dbg_convert_frag): Do not finalize the computation of the
frag's symbol value when linker relaxation is enabled.
(size_fixed_inc_line_addr): Use ADDR_DELTA_LIMIT.
(emit_fixed_inc_line_addr): Likewise.
* write.c (fixup_segment): If the subtraction of two symbols
cannot be resolved but is valid, then prevent bogus range warnings
by pre-biasing add_number.
* config/tc-h8300.h (DWARF2_USE_FIXED_ADVANCE_PC): Define to 0.
2012-06-28 Sean Keys <>
* config/tc-xgate.h: Defined tc_frob_symbol.
* config/tc-xgate.c (xgate_frob_symbol): Wrote new function to mark
symbols as being XGATE by setting st_target_internal value.
2012-06-22 Roland McGrath <>
* NEWS: Mention 'rep ret' too.
* config/tc-i386.c (parse_insn): Don't complain about REP prefix
when the template has opcode_modifier.repprefixok set.
* NEWS: Mention the change.
2012-06-18 Iain Sandoe <>
* Check DECLS for free, getenv, malloc, realloc,
* configure: Regenerate.
* Likewise.
2012-06-13 H.J. Lu <>
* config/tc-i386.c (x86_address_bytes): New.
* config/tc-i386.h (TC_ADDRESS_BYTES): Likewise.
(x86_address_bytes): Likewise.
2012-06-13 Zhenqiang Chen <>
PR gas/12698
* config/tc-arm.c (do_t_mrs): Do not require an m-profile
architecure when assembling for all archiectures.
(do_t_msr): Likewise.
2012-06-11 Georg-Johann Lay <>
PR 13503
* config/tc-avr.c (exp_mod): Fix typo introduced in 1.82
from 2012-05-16.
2012-06-09 H.J. Lu <>
* input-scrub.c (input_scrub_include_sb): Use sb_build to
allocate sufficient space for from_sb. Use sb_terminate to
terminate string.
* read.c (read_a_source_file): Use sb_build to allocate
sufficient space and replace sb_add_string with sb_add_buffer.
(s_macro): Likewise.
(input_scrub_insert_line): Likewise.
(s_irp): Use sb_build to allocate sufficient space.
(do_repeat): Use sb_build to allocate sufficient space
for many.
* sb.c (sb_build): Remove static.
* sb.h (sb_build): New prototype.
2012-06-09 Alan Modra <>
* sb.c: Include limits.h.
(dsize): Delete.
(sb_new): Use INIT_ALLOC.
(sb_check): Modify allocation strategy using MALLOC_OVERHEAD.
(sb_terminate): Don't use sb_add_char.
2012-06-07 Alan Modra <>
PR gas/14201
* sb.h (sb_max_power_two): Delete.
(struct sb): Delete "item" and "pot". Make "len" a size_t. Add "max".
(sb_element): Delete.
(sb_add_char, sb_add_buffer, sb_skip_comma, sb_skip_write): Update
* sb.c (string_count, free_list): Delete.
(sb_build, sb_kill, sb_check): Rewrite.
(scrub_from_sb, sb_add_char, sb_add_string, sb_add_buffer,
sb_skip_white, sb_skip_comma): Replace assorted int params,
vars and return types with size_t.
* input-scrub.c: Likewise.
* macro.c: Likewise.
* macro.h: Likewise.
* as.c: Likewise.
* as.h: Likewise.
* input-file.h: Likewise.
* input-file.c: Likewise.
* read.c: Likewise.
* app.c: ..or ptrdiff_t.
* input-file.c (input_file_get): Use ferror.
(input_file_give_next_buffer): Use input_file_get.
2012-05-31 Sean Keys <>
* config/tc-xgate.c (md_begin): Refactored code.
2012-05-29 Roland McGrath <>
* read.c [HANDLE_BUNDLE] (bundle_lock_depth): New variable.
(read_a_source_file) [HANDLE_BUNDLE]: Reset it.
[HANDLE_BUNDLE] (s_bundle_lock, s_bundle_unlock): Allow nested
2012-05-28 Nick Clifton <>
* read.c (read_symbol_name): New function. Reads a symbol names.
Allows escape codes in names.
(s_comm_internal): Use read_symbol_name.
(s_globl, s_lsym, s_set, s_weakref): Likewise.
* doc/as.texinfo: Document support for multibyte characters in
symbol names.
2012-05-21 Mike Frysinger <>
* config/tc-mips.c (mips_after_parse_args): Assert that arch_info
is non-NULL.
2012-05-19 Alan Modra <>
* config/obj-elf.c (obj_elf_section): Cater for TC_KEEP_OPERAND_SPACES
targets when checking for "comdat".
2012-05-19 Alan Modra <>
* config/tc-dlx.c (s_proc): Don't use asprintf.
2012-05-18 Alan Modra <>
* config/tc-dlx.c (s_proc): Avoid warning about ignoring asprintf
return value.
2012-05-18 James Lemke <>
Alan Modra <>
* config/tc-ppc.c: Don't capitalise error and warning messages.
(md_parse_option): Add checks for -a32 -mvle.
2012-05-18 Alan Modra <>
* config/obj-evax.c: Include as.h first.
2012-05-18 Andreas Schwab <>
* aclocal.m4: Regenerate.
* configure: Regenerate.
* Regenerate.
2012-05-17 Daniel Richard G. <>
Nick Clifton <>
PR 14072
* Add check that sysdep.h has been included before
any system header files.
* configure: Regenerate.
* Regenerate.
* aclocal.m4: Regenerate.
* Use wrappers around C files generated by flex.
* Regenerate.
* doc/ Regenerate.
* itbl-lex-wrapper.c: New file.
* config/bfin-lex-wrapper.c: New file.
* cgen.c: Include as.h before setjmp.h.
* config/tc-dlx.c: Include as.h before any other header.
* config/tc-h8300.c: Likewise.
* config/tc-lm32.c: Likewise.
* config/tc-mep.c: Likewise.
* config/tc-microblaze.c: Likewise.
* config/tc-mmix.c: Likewise.
* config/tc-msp430.c: Likewise.
* config/tc-or32.c: Likewise.
* config/tc-tic4x.c: Likewise.
* config/tc-tic54x.c: Likewise.
* config/tc-xtensa.c: Likewise.
2012-05-16 Sergio Durigan Junior <>
* config/tc-alpha.c (maybe_set_gp): Pass proper `bfd'
as the first argument for `bfd_get_section_vma'.
2012-05-16 Alberto Garcia <>
PR gas/14082
* app.c (do_scrub_chars): Prevent possible out of bounds access to
lex[] array.
2012-05-16 Georg-Johann Lay <>
PR target/13503
* config/tc-avr.c (avr_cons_fix_new): Rename R_AVR_8_HHI8 to
(exp_mod_data) Ditto. And replace "hhi8" with "hlo8".
(md_apply_fix): Rename BFD_RELOC_AVR_8_HHI to BFD_RELOC_AVR_8_HLO.
2012-05-16 Nathan Sidwell <>
Kwok Cheung Yeung <>
* config/tc-m68k.c (m68k_cpus): Add 51ag, 51je, 51jf, 51jg, 51mm,
51qm variants.
2012-05-15 James Murray <>
* config/tc-m68hc11.c: Add S12X and XGATE co-processor support.
Add option to offset S12 addresses into XGATE memory space.
Tweak target flags to match other tools. (i.e. -m m68hc11).
* doc/as.texinfo: Mention new options.
* doc/c-m68hc11.texi: Document new options.
* NEWS: Mention new support.
2012-05-14 DJ Delorie <>
* config/rx-parse.y (rx_range): declare.
(O1,O2,O3,O4): Add calls to rx_range.
(UO1,UO2,UO3): Likewise.
(IMM2,IMMB): Likewise.
(rx_range): New.
* config/tc-rx.c (rx_fetchalign): Declare.
(md_pseudo_table): Add .fetchalign.
(fetchalign_bytes): New.
(rx_fetchalign): New.
(rx_frag_init): If a "magic" value is found, also init the
machine-specific data.
(md_assemble): Note following opcode size if called for.
(rx_next_opcode): New.
(rx_relax_frag): Support .fetchalign.
(md_convert_frag): Likewise.
* doc/c-rx.texi (RX-Directives): Add .fetchalign.
2012-05-14 James Lemke <>
* config/tc-ppc.c (insn_validate): New func of existing code to call..
(ppc_setup_opcodes): ..from 2 places here.
Revise for second (VLE) opcode table.
Add #ifdef'd code to print opcode tables.
2012-05-14 James Lemke <>
* config/tc-ppc.c (ppc_setup_opcodes): Allow out-of-order
for the VLE conditional branches.
2012-05-14 Catherine Moore <>
Maciej W. Rozycki <>
Rhonda Wittels <>
* config/tc-ppc.c (PPC_VLE_SPLIT16A): New macro.
(PPC_VLE_SPLIT16D): New macro.
(PPC_VLE_LO16A): New macro.
(PPC_VLE_LO16D): New macro.
(PPC_VLE_HI16A): New macro.
(PPC_VLE_HI16D): New macro.
(PPC_VLE_HA16A): New macro.
(PPC_VLE_HA16D): New macro.
(PPC_APUINFO_VLE): New definition.
(md_chars_to_number): New function.
(md_parse_option): Check for combinations of little
endian and -mvle.
(md_show_usage): Document -mvle.
(ppc_arch): Recognize VLE.
(ppc_mach): Recognize bfd_mach_ppc_vle.
(ppc_setup_opcodes): Print the opcode table if
* config/tc-ppc.h (ppc_frag_check): Declare.
* doc/c-ppc.texi: Document -mvle.
* NEWS: Mention PowerPC VLE port.
2012-05-14 Catherine Moore <>
* config/tc-ppc.h (ppc_dw2_line_min_insn_length): Declare.
* config/tc-ppc.c (ppc_dw2_line_min_insn_length): New.
* dwarf2dbg.c (scale_addr_delta): Handle values of 1
2012-05-12 H.J. Lu <>
* config/tc-i386.c (tc_gen_reloc): Remove x32 addend overflow
for BFD_RELOC_64.
2012-05-11 Daniel Richard G. <>
PR binutils/14028
* configure: Regenerate.
* Regenerate.
* as.h: If STRINGS_WITH_STRING is defined then include both
string.h and strings.h.
2012-05-11 Georg-Johann Lay <
PR target/13503
* config/tc-avr.c (exp_mod_pm): Remove variable.
(exp_mod_data_t): New typedef.
(pexp_mod_data, exp_mod_data): New variables.
(avr_parse_cons_expression): Scan through exp_mod_data[] to find
data expression modifiers "pm", "gs", "lo8", hi8", "hhi8", "hh8"
and set pexp_mod_data accordingly to be used in avr_cons_fix_new.
(avr_cons_fix_new): Handle new data expression modifiers shipped
in pexp_mod_data.
(md_apply_fix): Handle BFD_RELOC_AVR_8_LO, BFD_RELOC_AVR_8_HI,
2012-05-10 H.J. Lu <>
* config/tc-i386.c (tc_gen_reloc): Use bfd_signed_vma in x32
addend overflow check.
2012-05-10 H.J. Lu <>
* config/tc-i386.c (tc_gen_reloc): Display signed hex number in
x32 addend overflow check.
2012-05-09 H.J. Lu <>
* config/tc-i386.c (tc_gen_reloc): Use fits_in_signed_long.
2012-05-09 H.J. Lu <>
* config/tc-i386.c (tc_gen_reloc): Check x32 addend overflow
for BFD_RELOC_64.
2012-05-08 Alan Modra <>
* (check_DEJAGNU): Export LC_ALL=C in place of other
LC and LANG environment vars.
* Regenerate.
2012-05-07 Alan Modra <>
* (check-DEJAGNU): Clear LC_COLLATE, LC_ALL and LANG.
* Regenerate.
2012-05-06 Arnold Metselaar <>
* config/tc-z80.h(md_register_arithmetic): Define as 0.
* config/tc-z80.c(md_begin): Store register names in symbol table,
preventing usage as ordinary symbol.
* config/tc-z80.c(contains_register): New function.
* config/tc-z80.c(parse_exp2): Removed.
* config/tc-z80.c(parse_exp_not_indexed): New function.
* config/tc-z80.c(parse_exp): Add code to recogize indexed
addressing after parsing.
* config/tc-z80.c(emit_byte, emit_word): Use contains_register.
* config/tc-z80.c(emit_jp): Use parse_exp_not_indexed, simplify
condition for jump to register.
* config/tc-z80.c(emit_call, emit_jr, emit_ex, emit_rst): Use
2012-05-05 Alan Modra <>
* ecoff.c: Replace all uses of bfd_abs_section, bfd_com_section,
bfd_und_section and bfd_ind_section with their _ptr variants, or
use corresponding bfd_is_* macros.
* symbols.c: Likewise.
* config/obj-aout.c: Likewise.
* config/obj-coff-seh.h: Likewise.
* config/tc-hppa.c: Likewise.
* config/tc-hppa.h: Likewise.
* config/tc-ia64.c: Likewise.
* config/tc-m32r.c: Likewise.
* config/tc-microblaze.c: Likewise.
* config/tc-mips.c: Likewise.
* config/tc-score.c: Likewise.
* config/tc-score7.c: Likewise.
* config/tc-tic6x.c: Likewise.
2012-05-04 H.J. Lu <>
* configure.tgt: Support x86_64-*-linux-gnux32.
2012-05-04 H.J. Lu <>
* config/tc-i386.c (match_template): Add `instruction' to
unsupported error message.
2012-05-04 H.J. Lu <>
* config/tc-i386.c (output_insn): Reformat.
2012-05-04 H.J. Lu <>
* config/tc-i386.c (output_insn): Remove the extra VEX check.
2012-05-04 H.J. Lu <>
* config/tc-i386.c (match_template): Improve unsupported error
2012-05-03 Sean Keys <>
* configure, Regenerate.
* configure.tgt: Added cpu type.
Added files for XGATE assembler.
* config/tc-xgate.c: Assembler for XGATE.
* config/tc-xgate.h: Header definition for assembler
Added files for XGATE testsuite.
* doc/ (CPU_DOCS): Added XGATE file.
* doc/c-xgate.texi: Document XGATE and XGATE port.
* doc/as.texinfo: Ditto.
* doc/all.texi: Ditto
* NEWS: Mention the new support.
2012-04-30 DJ Delorie <>
* config/rx-parse.y (rx_intop): Add parameter for operation size.
Check for large positive constants really being small negative
(BRA, BSR): Update calls to rx_intop.
(immediate): Likewise.
2012-04-26 Mark Wielaard <>
* dwarf2dbg.c (DWARF2_ARANGES_VERSION): New define to 2.
(out_debug_line): Use DWARF2_LINE_VERSION not DWARF2_VERSION.
(out_debug_aranges): Use DWARF2_ARANGES_VERSION not DWARF2_VERSION.
(out_debug_abbrev): Use DW_FORM_data for DW_AT_high_pc when
(out_debug_info): Use difference between start and end as data
value for DW_AT_high_pc when DWARF2_VERSION >= 4.
* config/tc-ia64.h (DWARF2_LINE_VERSION): Override it.
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_*
(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
(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.
* 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.
(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
2012-04-06 Roland McGrath <>
* (AC_CHECK_HEADERS): Add locale.h.
* Regenerate.
* configure: Regenerate.
2012-04-05 Nick Clifton <>
* (AC_CHECK_FUNCS): Add setlocale.
* aclocal.m4: Regenerate.
* 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
* config/tc-sh.c (sh_cons_fix_new, md_apply_fix) [!HAVE_SH64]: Handle
* doc/c-sh64.texi (SH64 Machine Directives): Move .uaquad
* doc/c-sh.texi (SH Machine Directives): ... here.
2012-03-20 Nick Clifton <>
* config/tc-arm.c (do_vmrs): Accept priviledged mode VFP system
(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
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
(md_apply_fix): Ditto.
* tc-tilegx.h (TARGET_BYTES_BIG_ENDIAN): Guard definition with
(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.
* 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
* 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_mach_o_in_different_subsection, obj_mach_o_force_reloc,
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
(md_assemble): Updated.
(output_branch): Likewise.
(parse_insn): Support .d8 suffix.
(build_modrm_byte): Fake zero displacement for .d8 and .d32
* 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_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
Copyright (C) 2012 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