2009-03-03 John David Anglin binutils/3807 * config/tc-hppa.h (tc_frob_symbol): Don't frob absolute symbols with local scope for ELF targets. 2009-03-04 Alan Modra * config/tc-ppc.c (md_assemble): APUinfo only for e500. 2009-03-03 Tristan Gingold Eric Botcazou Douglas B Rupp * doc/as.texinfo (Overview): Mention -replace/-noreplace options for Alpha. * doc/c-alpha.texi (Alpha Options): Document -replace/-noreplace. * config/tc-alpha.h (TC_VALIDATE_FIX_SUB): Define to 1 (evax). (OBJ_SYMFIELD_TYPE): Remove. (tc_canonicalize_symbol_name): Define to evax_shorten_name. (TC_IMPLICIT_LCOMM_ALIGNMENT): For alignment to 3 on evax. (tc_frob_file_before_fix): Do not defined on evax. * config/tc-alpha.c: Always includes dwarf2dbg.h. Include vms.h if OBJ_EVAX. (struct alpha_fixup): Add xtrasym and procsym (evax only). (enum alpha_macro_arg): Remove trailing comma. (md_longopts): Add replace and noreplace arguments (evax only). (alpha_evax_proc_hash): New variable. (alpha_link_section): Make it global. (alpha_ctors_section, alpha_dtors_section): Removed. (alpha_ctors_symbol, alpha_dtors_symbol): Ditto. (alpha_lit8_section): Ifndef'ed on evax. (alpha_lit8_symbol): Ditto. (alpha_prologue_label): New variable. (alpha_linkage_symbol): New variable (evax only). (alpha_flag_replace): Ditto. (struct alpha_evax_procs): Add handler and handler_data field. (alpha_evax_proc): Now of type pointer. (alpha_linkage_fixup_root, alpha_linkage_fixup_tail): New variables. (struct alpha_reloc_tag): Add sym and psym fields (evax only). (get_alpha_reloc_tag): Initialize sym and psym fields (evax only). (alpha_adjust_relocs): Ifndef'ed on evax. (load_expression): Add opname argument. Implement LDA/BSR optimization for evax. (emit_lda): Adjust for new prototype of load_expression. (emit_ir_load): Ditto. Do not nothing for GP if ..lk symbols. (emit_loadstore): Likewise. (emit_ldXu): Likewise. (emit_stX): Likewise. (emit_jsrjmp): Likewise. Implement LDA/BSR optimization for evax. (emit_ldgp): Avoid warning in evax case. (add_to_link_pool): Make it static. Return symbolic expression rather than number expression for the offset. (s_alpha_text): Create .text symbol for evax if not already created. (s_alpha_comm): Do not create specific section for common symbol. Fill common area with zeros for evax. (s_alpha_prologue): Create alpha_prologue_label. (s_alpha_section_name): New function (evax). (s_alpha_section_word): Likewise. (section_name): New static variabke moved out from ... (s_alpha_section): ... here. Create new sections on demand. (s_alpha_literals): New function (evax). (s_alpha_ent): Create alpha_evax_proc instance and insert it in the alpha_evax_proc_hash table. (s_alpha_handler): New function (evax). (s_alpha_frame): Adjust for new type of alpha_evax_proc. (s_alpha_prologue): New function (evax). (s_alpha_pdesc): Adjust for new type of alpha_evax_proc and new handling of procedures with hash table. Add support for condition handlers. (s_alpha_linkage): Create linkage_fixup instance and chain it. (s_alpha_fp_save): Adjust for new type of alpha_evax_proc. (s_alpha_mask): Likewise. (s_alpha_fmask): Likewise. (s_alpha_end): Clear alpha_evax_proc. (s_alpha_align): Increase max_alignment to 16. (alpha_print_token): Call print_expr_1 instead of print_expr. (md_pseudo_table): Add "section", "literals", "handler" and "handler_data" (evax). Do not ignore "prologue" on evax. Fix indentation. (md_begin): Create hash table for alpha_evax_proc_hash. (md_parse_option): Handle OPTION_REPLACE and OPTION_NOREPLACE. (md_show_usage): Mention -replace/-noreplace for evax. (md_apply_fix): Handle evax relocs (_NOP, _LDA, _BSR and _BOH). (alpha_force_relocation): Likewise. (alpha_fix_adjustable): Likewise. Add BFD_RELOC_16 case. (tc_gen_reloc): Likewise. Add BFD_RELOC_ALPHA_LINKAGE for evax. (emit_insn): New cases for evax specific relocs. (assemble_insn): Fix indentation. Take care of -MDISP in operand table. * config/obj-evax.h (struct alpha_linkage_fixups): New struct. (OBJ_SYMFIELD_TYPE): New macro. (obj_symbol_new_hook): Define. (obj_frob_symbol, obj_frob_file_before_adjust): Ditto. (obj_frob_file_before_fix): Ditto. (PDSC_S_M_HANDLER_VALID): New macro. (PDSC_S_M_HANDLER_DATA_VALID): Ditto. (TC_IMPLICIT_LCOMM_ALIGNMENT): Remove. Add prototypes for functions declared in obj-evax.c * config/obj-evax.c: Include subsegs.h, struc-symbol.h, safe-ctype.h. (s_evax_weak): Convert to ansi-C. (evax_symbol_new_hook): New function. (evax_frob_symbol): Ditto. (evax_frob_file_before_adjust): Ditto. (evax_frob_file_before_fix): Ditto. (evax_shorten_name): Ditto. (crc32): Ditto. (encode_32): Ditto. (encode_16): Ditto. (decode_16): Ditto. (shorten_identifier): Ditto. (is_truncated_identifier): Ditto. * dwarf2dbg.c (out_debug_info): Do not append trailing slash on VMS. * as.c (close_output_file): Remove #ifndef OBJ_VMS. (main): Ditto. 2009-03-03 Alan Modra * Makefile.am: Run "make dep-am". * Makefile.in: Regenerate. 2009-03-02 Nick Clifton PR 9874 * config/tc-ia64.c (fix_insn): Fix warning reported by -Wformat-security. 2009-03-02 Qinwei * config/tc-score7.c: New file. * doc/c-score.texi: New file. * Makefile.am: Update dependencies for tc-score.c. * Makefile.in: Regenerate. * NEWS: Mention support for Score7 architecture. * config/tc-score.c: Add support for Score7 architecture. * config/tc-score.h: Likewise. * doc/Makefile.am: Add c-score.texi. * doc/Makefile.in: Regenerate. * doc/all.texi: Add Score7. * doc/as.texinfo: Add Score7. 2009-03-01 Mark Mitchell * config/tc-arm.c (md_assemble): Allow barrier instructions on ARMv6-M cores. 2009-03-01 Ralf Wildenhues * configure: Regenerate. 2009-02-26 Peter Bergner * config/tc-ppc.c (pre_defined_registers): Add "f32" to "f63", "f.32" to "f.63", "vs0" to "vs63" and "vs.0" to "vs.63". (parse_cpu): Extend -mpower7 to accept power7 and isel instructions. 2009-02-25 H.J. Lu * config/tc-i386.c (fits_in_imm4): Removed. 2009-02-24 Helge Deller * config/tc-hppa.c (pa_ip): Add check of immediate values. (SAVE_IMMEDIATE): New define. 2009-02-23 Mark Mitchell * config/tc-arm.c (warn_deprecated_sp): New macro. (do_t_mov_cmp): Permit R13 as the second argument to "cmp.n". 2009-02-23 H.J. Lu * config/tc-i386.c (type_names): Add OPERAND_TYPE_REGYMM. (pt): Replace UINTS_ALL_ZERO with operand_type_all_zero. 2009-02-23 H.J. Lu * config/tc-i386.c (type_names): Remove OPERAND_TYPE_VEX_IMM4. 2009-02-23 H.J. Lu * config/tc-i386.c (vex_imm4): Removed. (VEX_check_operands): Likewise. (match_template): Updated. 2009-02-23 Martin Schwidefsky * doc/all.texi: Set S390. * doc/as.texinfo: Add S390 support and pull in c-s390.texi. * doc/Makefile.am (CPU_DOCS): Add c-s390.texi. * doc/Makefile.in: Likewise. * doc/c-s390.texi: New. 2009-02-12 Nathan Sidwell * config/tc-m68k.c (mcf51qe_ctrl): Add CPUCR. (mcf52259_ctrl, mcf52277_ctrl, mcf53017_ctrl): New. (mcf5307_ctrl): Add VBR. (no_mac): New variable. (m68k_extensions): Refer to no_mac mask. (m68k_cpus): Add 51, 51ac, 51cn, 51em, 51jm, 52274, 52277, 52252..52259, 53011..53017. (m68k_ip): Process CPUCR. (init_table): Add cpucr entry. (m68k_set_extension): Allow negated mask to refer to a variable. (md_show_usage): Use '%s' to silence fprintf warning. * config/m68k-parse.h (CPUCR): New control register. 2009-02-10 Nathan Sidwell * config/tc-ppc.c (ppc_insert_operand, md_assemble): Use '%s' for as_bad calls to silence compiler warning. 2009-02-06 Nick Clifton PR 9814 * config/tc-arm.c (MODE_RECORDED): New define. (output_inst): Record the thumb_mode in the current frag. (arm_handle_align): Ignore the MODE_RECORDED bit in tc_frag_data. (arm_init_frag): Only set the tc_frag_data field if it has not already been set. 2009-02-04 H.J. Lu AVX Programming Reference (January, 2009) * config/tc-i386.c (CPU_FLAGS_PCLMUL_MATCH): New. (CPU_FLAGS_AVX_MATCH): Updated. (CPU_FLAGS_32BIT_MATCH): Likewise. (cpu_flags_match): Likewise. 2009-02-03 Sandip Matte * config/tc-mips.c (macro): Handle M_MSGSND, M_MSGLD, M_MSGLD_T, M_MSGWAIT and M_MSGWAIT_T. (mips_cpu_info_table): Add XLR entry. * doc/c-mips.texi (-march): Document xlr. 2009-02-03 Eric B. Weddington * config/tc-avr.c (mcu_types): Add ata6289. * doc/c-avr.texi: Likewise. 2009-02-03 Carlos O'Donell * configure.in: AC_SUBST pdfdir. * Makefile.am: Add install-pdf, install-pdf-am, and install-pdf-recursive targets. * doc/Makefile.am: Define pdf__strip_dir. Add install-pdf and install-pdf-am targets. * po/Make-in: Add install-pdf target. * configure: Regenerate. * Makefile.in: Regenerate. * doc/Makefile.in: Regenerate. 2009-02-03 Maxim Kuvyrkov * config/m68k-parse.h (enum pic_relocation): Add values for TLS relocations. * config/m68k-parse.y (yylex): Parse TLS relocations. * config/tc-m68k.c (m68k_elf_cons): New static function. (md_pseudo_table): Use it. (get_reloc_code, tc_m68k_fix_adjustable, tc_gen_reloc): Handle TLS relocations. (md_apply_fix): Fix to set thread local flag. (m68k_elf_suffix): New static function; helper for m68k_elf_cons. 2009-02-03 Vince Weaver PR 9779 * config/tc-pdp11.c (parse_op_no_deferred): Fix handling of indexed addressing for symbolic expressions. 2009-01-29 Mark Mitchell * config/tc-arm.c (BAD_SP): Define. (s_arm_unwind_fnstart): Use REG_SP. (s_arm_unwind_setfp): Likewise. (reject_bad_reg): New macro. (do_co_reg): Check for bad registers. (do_co_reg2c): Likewise. (do_srs): Use REG_SP. (do_t_add_sub): Check for bad registers. (do_t_adr): Likewise. (do_t_arit3): Likewise. (do_t_arit3c): Likewise. (do_t_bfc): Likewise. (do_t_bfi): Likewise. (do_t_bfx): Likewise. (do_t_blx): Likewise. (do_t_bx): Likewise. (do_t_bxj): Likewise. (do_t_clz): Likewise. (do_t_div): Likewise. (do_t_mla): Likewise. (do_t_mlal): Likewise. (do_t_mov_cmp): Likewise. (do_t_mov16): Likewise. (do_t_mvn_tst): Likewise. (do_t_mrs): Likewise. (do_t_msr): Likewise. (do_t_mul): Likewise. (do_t_mull): Likewise. (do_t_orn): Likewise. (do_t_pkhbt): Likewise. (do_t_pld): Likewise. (do_t_rbit): Likewise. (do_t_rev): Likewise. (do_t_rrx): Likewise. (do_t_rsb): Likewise. (do_t_shift): Likewise. (do_t_simd): Likewise. (do_t_ssat): Likewise. (do_t_ssat16): Likewise. (do_t_sxtah): Likewise. (do_t_sxth): Likewise. (do_t_tb): Likewise. (do_t_usat): Likewise. (do_t_usat16): Likewise. (nysn_insert_sp): Use REG_SP. 2009-01-29 Mark Mitchell * config/tc-arm.c (do_t_orn): New function. (do_t_rrx): Likewise. (insns): Add orn and rrx. 2009-01-29 Mark Mitchell * config/tc-arm.c (insns): Add qasx, qsax, shasx, shsax, ssax, uasx, uhasx, uhsx, uqasx, uqsax, usax. 2009-01-29 Mark Mitchell * config/tc-arm.c (insns): Correct encoding of qadd, qdadd, qsub, qdsub in Thumb-2 mode. 2009-01-29 Paul Brook Mark Mitchell * config/tc-arm.c (do_t_mul): In Thumb-2 mode, use 16-bit encoding of MUL when possible. 2009-01-29 Nick Clifton * config/tc-mep.h (DIFF_EXPR_OK): Do not define. 2009-01-29 Nathan Sidwell Catherine Moore * config/tc-mips.c (append_insn): Cope with a complex reloc sequence containing an unsupported reloc type. (enum options): Replace computed #define's constants for option numbers with this enum. (struct md_longopts): Use the enum. Allow OPTION_32 in a non-ELF environment. (md_parse_option): Allow -32 in a non-ELF environment. 2009-01-26 Andrew Stubbs * config/tc-arm.c (attributes_set_explicitly): New array. (s_arm_eabi_attribute): Check return value from s_vendor_attribute. (cpu_arch): Add ARM_ARCH_V5T. (aeabi_set_attribute_int): New function. (aeabi_set_attribute_string): New function. (aeabi_set_public_attributes): Set attributes according to the user's intentions, rather than the actual state of the binary. Use aeabi_set_attribute_int and aeabi_set_attribute_string instead of bfd_elf_add_proc_attr_int and bfd_elf_add_proc_attr_string. Support WMMXv2. Use attribute names instead of numbers. * read.c (s_vendor_attribute): Change return type to int. Return the tag number that was set. * read.h (s_vendor_attribute): Change return type to int. 2009-01-26 Eric B. Weddington PR 9789 * config/tc-avr.c (mcu_types): Fix typo in atmega128rfa1 name. * doc/c-avr.texi: Likewise. 2009-01-23 Nathan Sidwell * doc/c-arm.texi (): Document -mwarn-deprecated. * config/tc-arm.c (WARN_DEPRECATED): Remove. Replace with ... (warn_on_deprecated): ... this. (opcode_lookup, md_assemble): Check it before warning. (arm_opts): Add m[no-]warn-deprecated. (md_parse_option): Replace WARN_DEPRECATED with warn_on_deprecated. 2009-01-23 Andreas Schwab * config/tc-mips.c (macro) [M_DINS, M_SEQ_I, M_SNE_I]: Cast arguments to macro_build to match format. * config/obj-elf.h (LOCAL_LABEL_PREFIX): Conditionally define. * config/tc-s390.h (LOCAL_LABEL_PREFIX): Don't define. 2009-01-19 Nick Clifton * config/tc-arm.h (CONVERT_SYMBOLIC_ATTRIBUTE): Only define for ELF format ARM targets. * config/tc-arm.c (arm_convert_symbolic_attribute): Likewise. 2009-01-19 Nick Clifton * configure.tgt: Restore alpha sorting to object format switch statement. 2009-01-19 Andrew Stubbs * read.c (s_vendor_attribute): Allow for unknown flag bits in type. 2009-01-16 Mark Shinwell * config/te-armeabi.h (EABI_DEFAULT): Use EF_ARM_EABI_VER5. * config/te-armlinuxeabi.h (EABI_DEFAULT): Likewise. 2009-01-16 Andrew Stubbs Daniel Jacobowitz * config/tc-arm.c (arm_copy_symbol_attributes): New function. * config/tc-arm.h (arm_copy_symbol_attributes): New prototype. (CONVERT_SYMBOLIC_ATTRIBUTE): New define. * read.c (s_vendor_attribute): Add support for symbolic tag names. Improve string parser. * doc/c-arm.texi (ARM Machine Directives): Document .eabi_attribute symbolic tag names. 2009-01-16 Alan Modra * configure.in (commonbfdlib): Delete. * configure: Regenerate. * po/POTFILES.in: Regenerate. 2009-01-15 Andrew Stubbs Julian Brown * config/tc-arm.c (cpu_arch): Change ARM_ARCH_V6M to 11. 2009-01-15 Andrew Stubbs * read.c (s_vendor_attribute): bfd_elf_add_obj_attr_compat -> bfd_elf_add_obj_attr_int_string. 2009-01-15 Douglas B Rupp * configure.tgt(ia64-*-*vms*): New target. * dwarf2dbg.h (dwarf2_loc_mark_labels): Make extern. * tc.h (md_number_to_chars): Declare iff undefined. * config/obj-elf.c (obj_elf_change_section): Change type of arg attr to bfd_vma. (obj_elf_parse_section_letters): Return a bfd_vma. Change type of variables attr, md_attr to bfd_vma. (obj_elf_section_word): Likewise. (obj_elf_section): Change type of variable attr to bfd_vma * config/obj-elf.h (obj_elf_change_section): Change type of arg attr to bfd_vma. * config/tc-ia64.c (bfdver.h,time.h): Include. (ia64_elf_section_letter): Now returns a bfd_vma. Handle VMS specific attributes. (ia64_elf_section_flags): Arg attr now a bfd_vma. (ia64_init): Don't turn on dependency checking for VMS. (ia64_target_format): Check for VMS flag bit. (do_alias): Hande decc$ functions. (get_vms_time): New function. (ia64_vms_note): New function. * config/tc-ia64.h (ia64_elf_section_letter): Now returns a bfd_vma. (ia64_elf_section_flags): Arg attr now a bfd_vma. (tc_init_after_args): Define for VMS. * config/tc-alpha.c (alpha_elf_section_letter): Return a bfd_vma. (alpha_elf_section_flags): Change type of arg attr to bfd_vma. * config/tc-alpha.h: Likewise. * config/tc-i386.c (x86_64_section_letter): Return a bfd_vma. (x86_64_section_word): Return a bfd_vma. * config/tc-i386.h: Likewise. * config/tc-ip2k.c (ip2k_elf_section_flags): Change type of arg attr to bfd_vma. * config/tc-ip2k.h: Likewise. * config/tc-mep.c (mep_elf_section_letter): Return a bfd_vma. (mep_elf_section_flags): Change type of arg attr to bfd_vma. * config/tc-mep.h: Likewise. * config/tc-ppc.c (ppc_section_letter): Return a bfd_vma. (ppc_section_word): Return a bfd_vma. (ppc_section_flags): Change type of arg attr to bfd_vma. * config/tc-ppc.h: Likewise. * config/tc-frv.h: Provide a prototype for frv_md_number_to_chars. * config/te-vms.h (DWARF2_DIR_SHOULD_END_WITH_SEPARATOR, DWAR2_FILE_TIME_NAME, DWARF2_FILE_SIZE_NAME, DWARF2_FILEN_NAME): New file with new macros * dwarf2dbg.c (get_filenum, out_file_list): Default and call new macros. 2009-01-15 Nick Clifton PR 9722 * config/tc-arm.c (do_t_nop): Check for availability of Thumb2 instructions before generating a Thumb2 nop. 2009-01-14 Andreas Krebbel * config/tc-s390.h: Define LOCAL_LABEL_PREFIX. 2009-01-12 Alan Modra * config/tc-spu.c (md_pseudo_table): Add "brinfo". (brinfo): New var. (md_assemble): Poke brinfo into branch instructions. (spu_brinfo): New function. (md_apply_fix): Don't assume insn fields start off at zero, mask them to remove possible brinfo. 2009-01-10 H.J. Lu * doc/c-i386.texi: Reformat. 2009-01-10 H.J. Lu * config/tc-i386.c (cpu_arch): Add corei7, .clflush and .syscall. (i386_align_code): Handle PROCESSOR_COREI7. (md_show_usage): Add corei7, clflush and syscall. (i386_target_format): Replace cpup4 with cpuclflush. * config/tc-i386.h (processor_type): Add PROCESSOR_COREI7. * doc/c-i386.texi: Document corei7, clflush and syscall. 2009-01-09 H.J. Lu * config/tc-i386.c (cpu_arch): Add .rdtscp. (md_show_usage): Display rdtscp. * doc/c-i386.texi: Document rdtscp. 2009-01-09 Peter Bergner * config/tc-ppc.c (ppc_setup_opcodes): Remove PPC_OPCODE_NOPOWER4 test. Test the new "deprecated" opcode field. 2009-01-07 Sterling Augustine * config/tc-xtensa.c (produce_flix): New. (option_flix, optoin_no_generate_flix, option_no_flix) Define. (md_longopts): Add support for them. (md_parse_option): Likewise. (md_show_usage): Add help message. (finish_vinsn): Don't allow multi-slot flix when produce_flix option is set to FLIX_NONE. * config/xtensa-relax.c (transition_applies): Only relax to flix branches when produce_flix equals FLIX_ALL. * config/xtensa-relax.h (flix_level, FLIX_ALL, FLIX_NO_GENERATE FLIX_NONE): New. (produce_flix): Declare. 2009-01-06 Chao-ying Fu * config/tc-mips.c (mips_ip): Set lastregno to 0xffffffff. Use strncmp to match jalr and jalr.hb. Fix a typo. 2009-01-05 H.J. Lu AVX Programming Reference (December, 2008) * config/tc-i386.c (build_modrm_byte): Remove 5 operand instruction support. Don't swap REG and NDS for FMA. 2009-01-02 Matthias Klose * itbl-ops.c (itbl_disassemble): Don't rely on undefined sprintf behaviour. For older changes see ChangeLog-2008 Local Variables: mode: change-log left-margin: 8 fill-column: 74 version-control: never End: