Add Intel AVX-512 support
[deliverable/binutils-gdb.git] / gas / ChangeLog
index 3ca1cd6151c7f3d27f4e9a7ddd277c497f483f9e..0641b1c29d561464e1c7e8ce2dd282ae84cae9c5 100644 (file)
@@ -1,3 +1,148 @@
+2013-07-26  Sergey Guriev  <sergey.s.guriev@intel.com>
+           Alexander Ivchenko  <alexander.ivchenko@intel.com>
+           Maxim Kuznetsov  <maxim.kuznetsov@intel.com>
+           Sergey Lega  <sergey.s.lega@intel.com>
+           Anna Tikhonova  <anna.tikhonova@intel.com>
+           Ilya Tocar  <ilya.tocar@intel.com>
+           Andrey Turetskiy  <andrey.turetskiy@intel.com>
+           Ilya Verbin  <ilya.verbin@intel.com>
+           Kirill Yukhin  <kirill.yukhin@intel.com>
+           Michael Zolotukhin  <michael.v.zolotukhin@intel.com>
+
+       * config/tc-i386-intel.c (O_zmmword_ptr): New.
+       (i386_types): Add zmmword.
+       (i386_intel_simplify_register): Allow regzmm.
+       (i386_intel_simplify): Handle zmmwords.
+       (i386_intel_operand): Handle RC/SAE, vector operations and
+       zmmwords.
+       * config/tc-i386.c (ZMMWORD_MNEM_SUFFIX): New.
+       (struct RC_Operation): New.
+       (struct Mask_Operation): New.
+       (struct Broadcast_Operation): New.
+       (vex_prefix): Size of bytes increased to 4 to support EVEX
+       encoding.
+       (enum i386_error): Add new error codes: unsupported_broadcast,
+       broadcast_not_on_src_operand, broadcast_needed,
+       unsupported_masking, mask_not_on_destination, no_default_mask,
+       unsupported_rc_sae, rc_sae_operand_not_last_imm,
+       invalid_register_operand, try_vector_disp8.
+       (struct _i386_insn): Add new fields vrex, need_vrex, mask,
+       rounding, broadcast, memshift.
+       (struct RC_name): New.
+       (RC_NamesTable): New.
+       (evexlig): New.
+       (evexwig): New.
+       (extra_symbol_chars): Add '{'.
+       (cpu_arch): Add AVX512F, AVX512CD, AVX512ER and AVX512PF.
+       (i386_operand_type): Add regzmm, regmask and vec_disp8.
+       (match_mem_size): Handle zmmwords.
+       (operand_type_match): Handle zmm-registers.
+       (mode_from_disp_size): Handle vec_disp8.
+       (fits_in_vec_disp8): New.
+       (md_begin): Handle {} properly.
+       (type_names): Add "rZMM", "Mask reg" and "Vector d8".
+       (build_vex_prefix): Handle vrex.
+       (build_evex_prefix): New.
+       (process_immext): Adjust to properly handle EVEX.
+       (md_assemble): Add EVEX encoding support.
+       (swap_2_operands): Correctly handle operands with masking,
+       broadcasting or RC/SAE.
+       (check_VecOperands): Support EVEX features.
+       (VEX_check_operands): Properly handle 16 upper [xyz]mm registers.
+       (match_template): Support regzmm and handle new error codes.
+       (process_suffix): Handle zmmwords and zmm-registers.
+       (check_byte_reg): Extend to zmm-registers.
+       (process_operands): Extend to zmm-registers.
+       (build_modrm_byte): Handle EVEX.
+       (output_insn): Adjust to properly handle EVEX case.
+       (disp_size): Handle vec_disp8.
+       (output_disp): Support compressed disp8*N evex feature.
+       (output_imm): Handle RC/SAE immediates properly.
+       (check_VecOperations): New.
+       (i386_immediate): Handle EVEX features.
+       (i386_index_check): Handle zmmwords and zmm-registers.
+       (RC_SAE_immediate): New.
+       (i386_att_operand): Handle EVEX features.
+       (parse_real_register): Add a check for ZMM/Mask registers.
+       (OPTION_MEVEXLIG): New.
+       (OPTION_MEVEXWIG): New.
+       (md_longopts): Add mevexlig and mevexwig.
+       (md_parse_option): Handle mevexlig and mevexwig options.
+       (md_show_usage): Add description for mevexlig and mevexwig.
+       * doc/c-i386.texi: Document avx512f/.avx512f, avx512cd/.avx512cd,
+       avx512er/.avx512er, avx512pf/.avx512pf, mevexlig and mevexwig.
+
+2013-07-25  Michael Zolotukhin  <michael.v.zolotukhin@intel.com>
+
+       * config/tc-i386.c (cpu_arch): Add .sha.
+       * doc/c-i386.texi: Document sha/.sha.
+
+2013-07-24  Anna Tikhonova  <anna.tikhonova@intel.com>
+           Kirill Yukhin  <kirill.yukhin@intel.com>
+           Michael Zolotukhin  <michael.v.zolotukhin@intel.com>
+
+       * config/tc-i386.c (BND_PREFIX): New.
+       (struct _i386_insn): Add new field bnd_prefix.
+       (add_bnd_prefix): New.
+       (cpu_arch): Add MPX.
+       (i386_operand_type): Add regbnd.
+       (md_assemble): Handle BND prefixes.
+       (parse_insn): Likewise.
+       (output_branch): Likewise.
+       (output_jump): Likewise.
+       (build_modrm_byte): Handle regbnd.
+       (OPTION_MADD_BND_PREFIX): New.
+       (md_longopts): Add entry for 'madd-bnd-prefix'.
+       (md_parse_option): Handle madd-bnd-prefix option.
+       (md_show_usage): Add description for madd-bnd-prefix
+       option.
+       * doc/c-i386.texi: Document mpx/.mpx and -madd-bnd-prefix.
+
+2013-07-24  Tristan Gingold  <gingold@adacore.com>
+
+       * config/tc-ppc.c (md_apply_fix): Adjust BFD_RELOC_PPC_B16 on
+       xcoff targets.
+
+2013-07-24  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
+
+       * config/tc-s390.c (s390_machine): Don't force the .machine
+       argument to lower case.
+
+2013-07-22  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
+
+       * config/tc-arm.c (s_arm_arch_extension): Improve error message
+       for invalid extension.
+
+2013-07-19  Yufeng Zhang  <yufeng.zhang@arm.com>
+
+       * config/tc-aarch64.c (enum aarch64_abi_type): New enumeration tag.
+       (AARCH64_ABI_LP64, AARCH64_ABI_ILP32): New enumerators.
+       (aarch64_abi): New variable.
+       (ilp32_p): Change to be a macro.
+       (aarch64_opts): Remove the support for option -milp32 and -mlp64.
+       (struct aarch64_option_abi_value_table): New struct.
+       (aarch64_abis): New table.
+       (aarch64_parse_abi): New function.
+       (aarch64_long_opts): Add entry for -mabi=.
+       * doc/as.texinfo (Target AArch64 options): Document -mabi.
+       * doc/c-aarch64.texi: Likewise.
+
+2013-07-18  Jim Thomas  <thomas@cfht.hawaii.edu>
+
+       * config/tc-i386-intel.c (i386_intel_operand): Fixed signed vs
+       unsigned comparison.
+
+2013-07-18  Sandeep Kumar Singh  <Sandeep.Singh2@kpitcummins.com>
+
+        * config/rx-defs.h: Add macros for RX100, RX200, RX600, and
+       RX610.
+        * config/rx-parse.y: (rx_check_float_support): Add function to
+       check floating point operation support for target RX100 and
+       RX200.
+        * config/tc-rx.c: Add CPU options RX100, RX200, RX600, and RX610.
+        * doc/c-rx.texi: Add -mcpu option to recognize macros for RX100,
+        RX200, RX600, and RX610
+
 2013-07-18  Senthil Kumar Selvaraj  <senthil_kumar.selvaraj@atmel.com>
 
        * config/tc-avr.c (md_show_usage): Add avrxmega2 to help text
This page took 0.029541 seconds and 4 git commands to generate.