From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 20639 invoked by alias); 25 Feb 2014 09:41:48 -0000 Mailing-List: contact binutils-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: binutils-owner@sourceware.org Received: (qmail 20624 invoked by uid 89); 25 Feb 2014 09:41:47 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.2 required=5.0 tests=AWL,BAYES_00,FREEMAIL_FROM,RCVD_IN_DNSWL_LOW,SPF_PASS autolearn=ham version=3.3.2 X-HELO: mail-bk0-f43.google.com Received: from mail-bk0-f43.google.com (HELO mail-bk0-f43.google.com) (209.85.214.43) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES128-SHA encrypted) ESMTPS; Tue, 25 Feb 2014 09:41:45 +0000 Received: by mail-bk0-f43.google.com with SMTP id v15so139266bkz.16 for ; Tue, 25 Feb 2014 01:41:41 -0800 (PST) X-Received: by 10.205.32.142 with SMTP id sk14mr1297605bkb.18.1393321301325; Tue, 25 Feb 2014 01:41:41 -0800 (PST) Received: from msticlxl7.ims.intel.com (jfdmzpr02-ext.jf.intel.com. [134.134.137.71]) by mx.google.com with ESMTPSA id z2sm18018713bkm.14.2014.02.25.01.41.37 for (version=TLSv1 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Tue, 25 Feb 2014 01:41:39 -0800 (PST) Date: Tue, 25 Feb 2014 09:41:00 -0000 From: Ilya Tocar To: "H.J. Lu" Cc: Binutils Subject: Re: [PATCH, i386][3/3] Update to match latest AVX512 spec. Message-ID: <20140225094128.GB31394@msticlxl7.ims.intel.com> References: <20140220151936.GA1312@msticlxl7.ims.intel.com> <20140224132223.GA39232@msticlxl7.ims.intel.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="J/dobhs11T7y2rNN" Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.21 (2010-09-15) X-SW-Source: 2014-02/txt/msg00143.txt.bz2 --J/dobhs11T7y2rNN Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-length: 1167 On 24 Feb 08:30, H.J. Lu wrote: > On Mon, Feb 24, 2014 at 5:22 AM, Ilya Tocar wrote: > > Hi, > > > > Currently support version of vctps2ph with sae and only 1 register > ^^^^^^^^^^^^^^ Please fix > commit log. It should be vcvtps2ph. Fixed. > > operand. This version is encoded as if missing operand was equal to > > ymm0. I didn't found any references to this variant in > > http://download-software.intel.com/sites/default/files/managed/50/1a/319433-018.pdf > > Attached patch removes it. Testing passes. Ok for trunk? > > vcvtps2ph supports memory destination. Please add AVX512F testcases > with memory destination. > We already have such tests. See e. g. on lines 6883-6890 in gas/testsuite/gas/i386/avx512f.s we have: vcvtps2ph $0xab, %zmm6, (%ecx) # AVX512F vcvtps2ph $0xab, %zmm6, (%ecx){%k7} # AVX512F vcvtps2ph $123, %zmm6, (%ecx) # AVX512F vcvtps2ph $123, %zmm6, -123456(%esp,%esi,8) # AVX512F vcvtps2ph $123, %zmm6, 4064(%edx) # AVX512F Disp8 vcvtps2ph $123, %zmm6, 4096(%edx) # AVX512F vcvtps2ph $123, %zmm6, -4096(%edx) # AVX512F Disp8 Do we need additional tests? --J/dobhs11T7y2rNN Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename="0001-Remove-bogus-vcvtps2ph-variant.patch" Content-length: 4321 >From 1f3a59fb284f10f8f7c16e33d644e4cd9d132ee0 Mon Sep 17 00:00:00 2001 From: Ilya Tocar Date: Thu, 20 Feb 2014 19:08:13 +0400 Subject: [PATCH] Remove bogus vcvtps2ph variant. We currently support version of vcvtps2ph with sae and only 1 register operand. This version is encoded as if missing operand was equal to ymm0. I didn't found any references to this variant in http://download-software.intel.com/sites/default/files/managed/50/1a/319433-018.pdf This patch removes it. opcodes/ * i386-opc.tbl: Remove wrong variant of vcvtps2ph * i386-tbl.h: Regenerate. --- opcodes/ChangeLog | 7 ++++++- opcodes/i386-opc.tbl | 1 - opcodes/i386-tbl.h | 18 ------------------ 3 files changed, 6 insertions(+), 20 deletions(-) diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog index 585d619..ac1d8fb 100644 --- a/opcodes/ChangeLog +++ b/opcodes/ChangeLog @@ -1,4 +1,9 @@ -2014-02-21 Ilya Tocar +2014-02-25 Ilya Tocar + + * i386-opc.tbl: Remove wrong variant of vcvtps2ph + * i386-tbl.h: Regenerate. + +2014-02-20 Ilya Tocar * i386-gen.c (cpu_flag_init): Add CPU_PREFETCHWT1_FLAGS/ (cpu_flags): Add CpuPREFETCHWT1. diff --git a/opcodes/i386-opc.tbl b/opcodes/i386-opc.tbl index e0b7072..b22ecad 100644 --- a/opcodes/i386-opc.tbl +++ b/opcodes/i386-opc.tbl @@ -3633,7 +3633,6 @@ vcvtps2pd, 3, 0x5A, None, 1, CpuAVX512F, Modrm|EVex=1|Masking=3|VexOpcode=0|VexW vcvtps2ph, 3, 0x661D, None, 1, CpuAVX512F, Modrm|EVex=1|Masking=3|VexOpcode=2|VexW=1|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf, { Imm8, RegZMM, RegYMM|RegMem } vcvtps2ph, 4, 0x661D, None, 1, CpuAVX512F, Modrm|EVex=1|Masking=3|VexOpcode=2|VexW=1|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|SAE, { Imm8, Imm8, RegZMM, RegYMM|RegMem } vcvtps2ph, 3, 0x661D, None, 1, CpuAVX512F, Modrm|EVex=1|Masking=2|VexOpcode=2|VexW=1|Disp8MemShift=5|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf, { Imm8, RegZMM, YMMword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|Vec_Disp8 } -vcvtps2ph, 3, 0x661D, None, 1, CpuAVX512F, Modrm|EVex=1|Masking=2|VexOpcode=2|VexW=1|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|SAE, { Imm8, Imm8, RegZMM|RegMem } vcvtsd2si, 2, 0xF22D, None, 1, CpuAVX512F, Modrm|EVex=4|VexOpcode=0|VexW=1|VecESize=1|Disp8MemShift=3|IgnoreSize|No_bSuf|No_wSuf|No_sSuf|No_qSuf|No_ldSuf, { RegXMM|Qword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|Vec_Disp8, Reg32 } vcvtsd2si, 3, 0xF22D, None, 1, CpuAVX512F, Modrm|EVex=4|VexOpcode=0|VexW=1|VecESize=1|IgnoreSize|No_bSuf|No_wSuf|No_sSuf|No_qSuf|No_ldSuf|StaticRounding|SAE, { Imm8, RegXMM, Reg32 } diff --git a/opcodes/i386-tbl.h b/opcodes/i386-tbl.h index 6f910b2..a4759d2 100644 --- a/opcodes/i386-tbl.h +++ b/opcodes/i386-tbl.h @@ -44114,24 +44114,6 @@ const insn_template i386_optab[] = { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 1, 0 } } } }, - { "vcvtps2ph", 3, 0x661D, None, 1, - { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } }, - { 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, - 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 1, 2, 0, 0, 0, 0, 0, 1, 2, 0, 0, 0, 1, 0, 0, 0, 0, - 0, 0 }, - { { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } }, - { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } }, - { { 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } } }, { "vfmadd132pd", 3, 0x6698, None, 1, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -- 1.8.3.1 --J/dobhs11T7y2rNN--