From patchwork Fri Nov 15 10:58:37 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Beulich X-Patchwork-Id: 101174 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 13D3F3858C53 for ; Fri, 15 Nov 2024 11:00:58 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 13D3F3858C53 Authentication-Results: sourceware.org; dkim=pass (2048-bit key, unprotected) header.d=suse.com header.i=@suse.com header.a=rsa-sha256 header.s=google header.b=caLCVxLh X-Original-To: binutils@sourceware.org Delivered-To: binutils@sourceware.org Received: from mail-lj1-x236.google.com (mail-lj1-x236.google.com [IPv6:2a00:1450:4864:20::236]) by sourceware.org (Postfix) with ESMTPS id 8A41B3858C5F for ; Fri, 15 Nov 2024 10:58:40 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 8A41B3858C5F Authentication-Results: sourceware.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=suse.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 8A41B3858C5F Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2a00:1450:4864:20::236 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1731668320; cv=none; b=KgJ/KYDACRB2y7io/nYfDAnaXhplJ7ZyQLCelgWKQO2+QlIGeYDie/CcRErjfwED+/jiMdxCkHUp9CDJ1HJ/QTb0BIxJiESWkLsgxBV4KgpDpvtFjFbOzddg6IxYGHKpy0XqHm/L4QRv4HkGnBF/lW8ouTGBmU0DzkQ6n/mJttY= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1731668320; c=relaxed/simple; bh=MtPKy2MKfDJyFi9f3LN2j75cjydu9Rsg2cGBc/LqXiU=; h=DKIM-Signature:Message-ID:Date:MIME-Version:Subject:From:To; b=SbyXCLw+h4311PSJqbdsQwam3vEmBkteiCh/hW4YlyGmwg77Juo+h2P85H2BZZvcC2oPOEMz9ZXibk5GCqNLMGY+CVKh/Cm60Y/8Rkb/le8G8HaKFLXpL/uFTHEtEYQx2V0i8J162kZ6rNKaJTHGhWr3kDkGSb/3a3RRGcohA8I= ARC-Authentication-Results: i=1; server2.sourceware.org Received: by mail-lj1-x236.google.com with SMTP id 38308e7fff4ca-2fb4fa17044so17637641fa.3 for ; Fri, 15 Nov 2024 02:58:40 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1731668319; x=1732273119; darn=sourceware.org; h=content-transfer-encoding:in-reply-to:autocrypt:content-language :references:cc:to:from:subject:user-agent:mime-version:date :message-id:from:to:cc:subject:date:message-id:reply-to; bh=EPyDwegW5ANv7fH/Wvm4U0XCsnDuY8cZlkRKhZGErIg=; b=caLCVxLhVjJOYEy+rYeyXDmO2tMG8B+G6UNof7vT+iRbY3YsvbZBg808mSayfMiIxc F1mWUE9x4+S4dglpmQewRBrrK+1xRPfQhpcd0PuwWorlz1dKVyaWUwa78ZmmhdUJOJ9n Q3sbX9IeTy8uNZd1NVhODMYTfZiFJwhw6RLFpl/Y1iQfnIy1rhg4oc4yjjlMTD++IVOF kB+afoLQ/8hnqEbghgcvDsxwVzx6Dh2J4gCvTgQkPRLKzH+w/phQR6lwqNC1ecc571xa THT6ErhqTIOPz9CfDzLX0EH0+Y8zP0TO6Gi2YEikszeC6cO9XFMQe0cbHvFTrtJkmtCE Du6Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1731668319; x=1732273119; h=content-transfer-encoding:in-reply-to:autocrypt:content-language :references:cc:to:from:subject:user-agent:mime-version:date :message-id:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=EPyDwegW5ANv7fH/Wvm4U0XCsnDuY8cZlkRKhZGErIg=; b=a+ShWFZb7UCUDDR7TZUtRXTJBdU7W8kTMiTe7BT46fcTBedVfl5gYXvIUpVMi7xUQM H9vb3Lq69kvDEfsOqM5ZzPU8p4R/itAR9UuAZaCumfeiSXyXNxsVUgV0RaOom68bezaS n1pvZWq0/1elSvbupXp/yL9JsUlRKS1B+SzbLIwpEYXDVn5gLBZMoI/WcyOX+0Wdzykb MyzGjKnWfDSI5i7PC0UuQyNL9+oypoxF3nI/Lrav7ZgW787zaYR+yFupwthnewidx+gB 9lOAKubKcV36MRLNk0c8Mpx09IDCZMz9s6ejR+MA2LvV+LwdJHTYUgi80A+CpkTYGPQc RXrw== X-Gm-Message-State: AOJu0Yz/VImPE2nT8OVoC78mBzQI7ZmRneHHdZe7LNIB2W8EGs2BSVI5 5gv65pJoFt3+/6kkLxfBlbJm6M1nqRz4s2tIfMrL62RxulrdNN/rC4/by8m40neiXBiLnFuAynI = X-Google-Smtp-Source: AGHT+IH9l7HoZPK7tkw+hUxlsekyLWFo7btVHyfBaaeHjkf0blWK5DFBeuZWETh/ktyh0D5by2paag== X-Received: by 2002:a2e:b8c1:0:b0:2fa:d723:efba with SMTP id 38308e7fff4ca-2ff60621c40mr13625371fa.8.1731668318862; Fri, 15 Nov 2024 02:58:38 -0800 (PST) Received: from [10.156.60.236] (ip-037-024-206-209.um08.pools.vodafone-ip.de. [37.24.206.209]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-432d4788c2asm64037955e9.0.2024.11.15.02.58.38 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 15 Nov 2024 02:58:38 -0800 (PST) Message-ID: <2dec576a-3a21-4135-90f2-da34f4ee8960@suse.com> Date: Fri, 15 Nov 2024 11:58:37 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: [PATCH RFC 1/2] x86: default to not accepting MPX insns From: Jan Beulich To: Binutils Cc: "H.J. Lu" References: <3ffc6c0b-4779-4dd7-90a7-150ed74b85dc@suse.com> Content-Language: en-US Autocrypt: addr=jbeulich@suse.com; keydata= xsDiBFk3nEQRBADAEaSw6zC/EJkiwGPXbWtPxl2xCdSoeepS07jW8UgcHNurfHvUzogEq5xk hu507c3BarVjyWCJOylMNR98Yd8VqD9UfmX0Hb8/BrA+Hl6/DB/eqGptrf4BSRwcZQM32aZK 7Pj2XbGWIUrZrd70x1eAP9QE3P79Y2oLrsCgbZJfEwCgvz9JjGmQqQkRiTVzlZVCJYcyGGsD /0tbFCzD2h20ahe8rC1gbb3K3qk+LpBtvjBu1RY9drYk0NymiGbJWZgab6t1jM7sk2vuf0Py O9Hf9XBmK0uE9IgMaiCpc32XV9oASz6UJebwkX+zF2jG5I1BfnO9g7KlotcA/v5ClMjgo6Gl MDY4HxoSRu3i1cqqSDtVlt+AOVBJBACrZcnHAUSuCXBPy0jOlBhxPqRWv6ND4c9PH1xjQ3NP nxJuMBS8rnNg22uyfAgmBKNLpLgAGVRMZGaGoJObGf72s6TeIqKJo/LtggAS9qAUiuKVnygo 3wjfkS9A3DRO+SpU7JqWdsveeIQyeyEJ/8PTowmSQLakF+3fote9ybzd880fSmFuIEJldWxp Y2ggPGpiZXVsaWNoQHN1c2UuY29tPsJgBBMRAgAgBQJZN5xEAhsDBgsJCAcDAgQVAggDBBYC AwECHgECF4AACgkQoDSui/t3IH4J+wCfQ5jHdEjCRHj23O/5ttg9r9OIruwAn3103WUITZee e7Sbg12UgcQ5lv7SzsFNBFk3nEQQCACCuTjCjFOUdi5Nm244F+78kLghRcin/awv+IrTcIWF hUpSs1Y91iQQ7KItirz5uwCPlwejSJDQJLIS+QtJHaXDXeV6NI0Uef1hP20+y8qydDiVkv6l IreXjTb7DvksRgJNvCkWtYnlS3mYvQ9NzS9PhyALWbXnH6sIJd2O9lKS1Mrfq+y0IXCP10eS FFGg+Av3IQeFatkJAyju0PPthyTqxSI4lZYuJVPknzgaeuJv/2NccrPvmeDg6Coe7ZIeQ8Yj t0ARxu2xytAkkLCel1Lz1WLmwLstV30g80nkgZf/wr+/BXJW/oIvRlonUkxv+IbBM3dX2OV8 AmRv1ySWPTP7AAMFB/9PQK/VtlNUJvg8GXj9ootzrteGfVZVVT4XBJkfwBcpC/XcPzldjv+3 HYudvpdNK3lLujXeA5fLOH+Z/G9WBc5pFVSMocI71I8bT8lIAzreg0WvkWg5V2WZsUMlnDL9 mpwIGFhlbM3gfDMs7MPMu8YQRFVdUvtSpaAs8OFfGQ0ia3LGZcjA6Ik2+xcqscEJzNH+qh8V m5jjp28yZgaqTaRbg3M/+MTbMpicpZuqF4rnB0AQD12/3BNWDR6bmh+EkYSMcEIpQmBM51qM EKYTQGybRCjpnKHGOxG0rfFY1085mBDZCH5Kx0cl0HVJuQKC+dV2ZY5AqjcKwAxpE75MLFkr wkkEGBECAAkFAlk3nEQCGwwACgkQoDSui/t3IH7nnwCfcJWUDUFKdCsBH/E5d+0ZnMQi+G0A nAuWpQkjM1ASeQwSHEeAWPgskBQL In-Reply-To: <3ffc6c0b-4779-4dd7-90a7-150ed74b85dc@suse.com> X-Spam-Status: No, score=-3022.9 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_NONE, TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: binutils@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Binutils mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: binutils-bounces~patchwork=sourceware.org@sourceware.org Gcc9 had MPX support removed. While we don't want to remove support, require these deprecated insns (and registers) to be enabled explicitly. --- Question is whether -madd-bnd-prefix should then also enable MPX. --- a/gas/testsuite/gas/i386/bnd.l +++ b/gas/testsuite/gas/i386/bnd.l @@ -1,14 +1,12 @@ .*: Assembler messages: -.*:6: Error: .*`bndmov'.* +.*:5: Error: .*`bndmov'.* GAS LISTING .* [ ]*1[ ]+\.text [ ]*2[ ]+\.intel_syntax noprefix -[ ]*3[ ]+\.arch generic32 -[ ]*4[ ]+bnd: -[ ]*5[ ]+\?\?\?\? A1000000[ ]+mov eax, bnd0 -[ ]*5[ ]+00 -[ ]*6[ ]+bndmov bnd0, bnd0 -[ ]*7[ ]+\?\?\?\? 00000000 \.p2align 4,0 -#... +[ ]*3[ ]+bnd: +[ ]*4[ ]+\?\?\?\? A1000000[ ]+mov eax, bnd0 +[ ]*4[ ]+00 +[ ]*5[ ]+bndmov bnd0, bnd0 +#pass --- a/gas/testsuite/gas/i386/bnd.s +++ b/gas/testsuite/gas/i386/bnd.s @@ -1,6 +1,5 @@ .text .intel_syntax noprefix - .arch generic32 bnd: mov eax, bnd0 bndmov bnd0, bnd0 --- a/gas/testsuite/gas/i386/got.d +++ b/gas/testsuite/gas/i386/got.d @@ -1,4 +1,4 @@ -#as: -mrelax-relocations=yes +#as: -mrelax-relocations=yes -march=+mpx #objdump: -dwr .*: +file format .* --- a/gas/testsuite/gas/i386/got-no-relax.d +++ b/gas/testsuite/gas/i386/got-no-relax.d @@ -1,5 +1,5 @@ #source: got.s -#as: -mrelax-relocations=no +#as: -mrelax-relocations=no -march=+mpx #objdump: -dwr .*: +file format .* --- a/gas/testsuite/gas/i386/i386.exp +++ b/gas/testsuite/gas/i386/i386.exp @@ -68,7 +68,7 @@ if [gas_32_check] then { run_dump_test "intelok" run_dump_test "intelok2" run_dump_test "prefix" - run_list_test "prefix32" "-al" + run_list_test "prefix32" "-al -march=+mpx" run_dump_test "insn-32" run_dump_test "lea" run_dump_test "lea16" @@ -374,8 +374,8 @@ if [gas_32_check] then { run_dump_test "prefetch-intel" run_dump_test "smap" run_dump_test "mpx" - run_list_test "mpx-inval-1" "-al" - run_list_test "mpx-inval-2" "-al" + run_list_test "mpx-inval-1" "-al -march=+mpx" + run_list_test "mpx-inval-2" "-al -march=+mpx" run_dump_test "mpx-add-bnd-prefix" run_dump_test "mpx-16bit" run_list_test "bnd" "-al" --- a/gas/testsuite/gas/i386/lfence-load.d +++ b/gas/testsuite/gas/i386/lfence-load.d @@ -1,4 +1,4 @@ -#as: -mlfence-after-load=yes +#as: -mlfence-after-load=yes -march=+mpx #objdump: -dw #warning_output: lfence-load.e #name: -mlfence-after-load=yes --- a/gas/testsuite/gas/i386/mpx.d +++ b/gas/testsuite/gas/i386/mpx.d @@ -1,3 +1,4 @@ +#as: -march=+mpx #objdump: -drw #name: i386 MPX --- a/gas/testsuite/gas/i386/mpx-16bit.d +++ b/gas/testsuite/gas/i386/mpx-16bit.d @@ -1,4 +1,4 @@ -#as: -I${srcdir}/$subdir +#as: -I${srcdir}/$subdir -march=+mpx #objdump: -drw -Mi8086 #name: i386 MPX (16-bit) --- a/gas/testsuite/gas/i386/mpx-add-bnd-prefix.d +++ b/gas/testsuite/gas/i386/mpx-add-bnd-prefix.d @@ -1,4 +1,4 @@ -#as: -madd-bnd-prefix +#as: -madd-bnd-prefix -march=+mpx #warning_output: mpx-add-bnd-prefix.e #objdump: -drw #name: Check -madd-bnd-prefix --- a/gas/testsuite/gas/i386/notrack.d +++ b/gas/testsuite/gas/i386/notrack.d @@ -1,4 +1,5 @@ #objdump: -dw +#as: -march=+mpx #name: i386 NOTRACK prefix .*: +file format .* --- a/gas/testsuite/gas/i386/notrack-intel.d +++ b/gas/testsuite/gas/i386/notrack-intel.d @@ -1,5 +1,6 @@ #source: notrack.s #objdump: -dw -Mintel +#as: -march=+mpx #name: i386 NOTRACK prefix (Intel disassembly) .*: +file format .* --- a/gas/testsuite/gas/i386/opts.d +++ b/gas/testsuite/gas/i386/opts.d @@ -1,4 +1,5 @@ #objdump: -drwMsuffix +#as: -march=+mpx #name: encoding option .*: +file format .* --- a/gas/testsuite/gas/i386/opts-intel.d +++ b/gas/testsuite/gas/i386/opts-intel.d @@ -1,4 +1,5 @@ #objdump: -drwMintel,suffix +#as: -march=+mpx #name: encoding option (Intel mode) #source: opts.s --- a/gas/testsuite/gas/i386/pseudos.d +++ b/gas/testsuite/gas/i386/pseudos.d @@ -1,4 +1,4 @@ -#as: -O0 +#as: -O0 -march=+mpx #objdump: -drw #name: pseudo prefixes --- a/gas/testsuite/gas/i386/solaris/x86-64-mpx-branch-1.d +++ b/gas/testsuite/gas/i386/solaris/x86-64-mpx-branch-1.d @@ -1,4 +1,4 @@ -#as: -J +#as: -J -march=+mpx #source: ../x86-64-mpx-branch-1.s #objdump: -dwr #name: x86-64 MPX branch --- a/gas/testsuite/gas/i386/solaris/x86-64-mpx-branch-2.d +++ b/gas/testsuite/gas/i386/solaris/x86-64-mpx-branch-2.d @@ -1,4 +1,4 @@ -#as: -J -madd-bnd-prefix +#as: -J -madd-bnd-prefix -march=+mpx #source: ../x86-64-mpx-branch-1.s #objdump: -dwr #name: x86-64 branch with BND prefix --- a/gas/testsuite/gas/i386/sse2avx-opts.d +++ b/gas/testsuite/gas/i386/sse2avx-opts.d @@ -1,4 +1,4 @@ -#as: -msse2avx +#as: -msse2avx -march=+mpx #objdump: -drwMsuffix #name: encoding option with -msse2avx #source: opts.s --- a/gas/testsuite/gas/i386/sse2avx-opts-intel.d +++ b/gas/testsuite/gas/i386/sse2avx-opts-intel.d @@ -1,4 +1,4 @@ -#as: -msse2avx +#as: -msse2avx -march=+mpx #objdump: -drwMintel,suffix #name: encoding option with -msse2avx (Intel mode) #source: opts.s --- a/gas/testsuite/gas/i386/x86-64.exp +++ b/gas/testsuite/gas/i386/x86-64.exp @@ -168,7 +168,7 @@ run_list_test "x86-64-specific-reg" run_list_test "suffix-bad" run_list_test "x86-64-suffix-bad" run_list_test "unspec64" "" -run_list_test "prefix64" "-al" +run_list_test "prefix64" "-al -march=+mpx" run_list_test "oversized64" "-al --divide" run_dump_test "x86-64-fxsave" run_dump_test "x86-64-fxsave-intel" @@ -303,8 +303,8 @@ run_dump_test "x86-64-prefetch" run_dump_test "x86-64-prefetch-intel" run_dump_test "x86-64-smap" run_dump_test "x86-64-mpx" -run_list_test "x86-64-mpx-inval-1" "-al" -run_list_test "x86-64-mpx-inval-2" "-al" +run_list_test "x86-64-mpx-inval-1" "-al -march=+mpx" +run_list_test "x86-64-mpx-inval-2" "-al -march=+mpx" run_dump_test "x86-64-mpx-addr32" run_dump_test "x86-64-mpx-add-bnd-prefix" run_dump_test "x86-64-sha" --- a/gas/testsuite/gas/i386/x86-64-lfence-load.d +++ b/gas/testsuite/gas/i386/x86-64-lfence-load.d @@ -1,4 +1,4 @@ -#as: -mlfence-after-load=yes +#as: -mlfence-after-load=yes -march=+mpx #objdump: -dw #warning_output: lfence-load.e #name: x86-64 -mlfence-after-load=yes --- a/gas/testsuite/gas/i386/x86-64-mpx.d +++ b/gas/testsuite/gas/i386/x86-64-mpx.d @@ -1,3 +1,4 @@ +#as: -march=+mpx #objdump: -drw #name: x86-64 MPX --- a/gas/testsuite/gas/i386/x86-64-mpx-add-bnd-prefix.d +++ b/gas/testsuite/gas/i386/x86-64-mpx-add-bnd-prefix.d @@ -1,4 +1,4 @@ -#as: -madd-bnd-prefix +#as: -madd-bnd-prefix -march=+mpx #warning_output: x86-64-mpx-add-bnd-prefix.e #objdump: -drw #name: Check -madd-bnd-prefix (x86-64) --- a/gas/testsuite/gas/i386/x86-64-mpx-addr32.d +++ b/gas/testsuite/gas/i386/x86-64-mpx-addr32.d @@ -1,3 +1,4 @@ +#as: -march=+mpx #objdump: -drw #name: x86-64 MPX addr32 tests --- a/gas/testsuite/gas/i386/x86-64-mpx-branch-1.d +++ b/gas/testsuite/gas/i386/x86-64-mpx-branch-1.d @@ -1,4 +1,4 @@ -#as: -J +#as: -J -march=+mpx #objdump: -dwr #name: x86-64 MPX branch #notarget: *-*-solaris* --- a/gas/testsuite/gas/i386/x86-64-mpx-branch-2.d +++ b/gas/testsuite/gas/i386/x86-64-mpx-branch-2.d @@ -1,4 +1,4 @@ -#as: -J -madd-bnd-prefix +#as: -J -madd-bnd-prefix -march=+mpx #objdump: -dwr #name: x86-64 branch with BND prefix #dump: x86-64-mpx-branch-1.d --- a/gas/testsuite/gas/i386/x86-64-notrack.d +++ b/gas/testsuite/gas/i386/x86-64-notrack.d @@ -1,3 +1,4 @@ +#as: -march=+mpx #objdump: -dw #name: x86-64 NOTRACK prefix --- a/gas/testsuite/gas/i386/x86-64-notrack-intel.d +++ b/gas/testsuite/gas/i386/x86-64-notrack-intel.d @@ -1,4 +1,5 @@ #source: x86-64-notrack.s +#as: -march=+mpx #objdump: -dw -Mintel #name: x86-64 NOTRACK prefix (Intel disassembly) --- a/gas/testsuite/gas/i386/x86-64-pseudos.d +++ b/gas/testsuite/gas/i386/x86-64-pseudos.d @@ -1,4 +1,4 @@ -#as: -O0 +#as: -O0 -march=+mpx #objdump: -drw #name: x86-64 pseudo prefixes --- a/opcodes/i386-gen.c +++ b/opcodes/i386-gen.c @@ -45,7 +45,7 @@ typedef struct dependency static const dependency isa_dependencies[] = { { "UNKNOWN", - "~IAMCU" }, + "~(IAMCU|MPX)" }, { "GENERIC32", "386" }, { "GENERIC64", From patchwork Fri Nov 15 10:59:12 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Beulich X-Patchwork-Id: 101173 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 0B0AC3858430 for ; Fri, 15 Nov 2024 10:59:51 +0000 (GMT) X-Original-To: binutils@sourceware.org Delivered-To: binutils@sourceware.org Received: from mail-wm1-x334.google.com (mail-wm1-x334.google.com [IPv6:2a00:1450:4864:20::334]) by sourceware.org (Postfix) with ESMTPS id 8156F3858431 for ; Fri, 15 Nov 2024 10:59:19 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 8156F3858431 Authentication-Results: sourceware.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=suse.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 8156F3858431 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2a00:1450:4864:20::334 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1731668359; cv=none; b=k8/J0iJhAkz/gBLQ8SbP1eSLgs7xf7rN/TmhpzxHM8Jfc6oxxd8NDtPlOKbsWvA+L8Exeo4wyugT7HVhk7a62xrH12UFtPUxkCz3WvUhwRxcBSPKKelD4RNQHMJDMj+6yojSdOR5oYbSd+6bE3pUFq4+e7yMbZ7HHGD7pOKuyr0= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1731668359; c=relaxed/simple; bh=b66wbekVO2HAcJCv9E4X0TAgjlBZn9nritfeaNEHKzE=; h=DKIM-Signature:Message-ID:Date:MIME-Version:Subject:From:To; b=pg8lEcBnkNhF+8fRlFfYlRoO7DD7Obe/wAdVsskJ/JJtoAeYAVLjAbidQFk/s94OQW+sTO+FOrXjgiO/qru7pvIjAs4bnXZCXdOFLgpKLeppR8E8pmGdCD+r0tOQLOpSU/9ySLiadJJARNNLem4RsfOkC8Ll8iTulQ7MT7Fdv9A= ARC-Authentication-Results: i=1; server2.sourceware.org Received: by mail-wm1-x334.google.com with SMTP id 5b1f17b1804b1-4316a44d1bbso4548685e9.3 for ; Fri, 15 Nov 2024 02:59:19 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1731668354; x=1732273154; darn=sourceware.org; h=content-transfer-encoding:in-reply-to:autocrypt:content-language :references:cc:to:from:subject:user-agent:mime-version:date :message-id:from:to:cc:subject:date:message-id:reply-to; bh=DWf4HYkPgFy7FVOcead/DzYq2Sp8TmNHV6JY+XTa07k=; b=HXCaiuuUQdKh5F+g0YQdeMBu9wLzl3kBvcXrNmBmYUj4YhG6SezTm128wgQJAEFWt/ Y6pgN8t1sDOctpv8ZcCZbxvN0DOMMETpQqUgn1t10u7LbkjczYhAwyN9LZ991Z6ZTZes /gzTQAqPL85zKvku23gY5SY9XkErs2LQ3w4MCtQGi9RjpKdfppLkUVTKO3p1qD71ZaNb Z2dxIdMFZn88AUi1jE6156821fqqVo3LUPwzMNI2NChAdE/tYpcwHOpcmhNWveadNx0w STA7zWfaWCKR7ju03b35hcxE8/NCE/nGsmWNb7muiSCxY4uJtLNtIdjW24YxiPPqt7er 06Sg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1731668354; x=1732273154; h=content-transfer-encoding:in-reply-to:autocrypt:content-language :references:cc:to:from:subject:user-agent:mime-version:date :message-id:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=DWf4HYkPgFy7FVOcead/DzYq2Sp8TmNHV6JY+XTa07k=; b=C2WExDCH0jwKuTcF6p/WrSHMtV7d0ywDbRsI9NgLxY8JO2QHR3IJgHVHeHQoKEBqBS Fs2c0zB4cZ5Qhcy2J1KoK3Q4qNCfWoaeJkSW2hXDhN+vVjtfyRBzaeG+m94Xhq/zRL9I TT/Pf5UhZDppDgSEV2QwFd38HsJM5CVq5eSYidFSSuw5W/Dl28RYVBEmSVPoBneUriOF 1z1gqPqAvBvDbo53IF8jDUK402ICNNs9wwSi2BVy15pn3E2YKAAf78pmU0Fn61QOZ3/D vjBWkAi1m5iwO+4BQUMrw3w9J2Tep1At/PreAwlgGGSx05ktoklkKo8J03ghw+Wk9Jil 9BBw== X-Gm-Message-State: AOJu0YyZghOFi9pS+uMtkwnSQdHxM+z9UwI2RLq+ylKB93N72NzZCEJp n5VdsDxOblrF9YqTKjSLyltyOknYnanad518VmZSRlxvEUNY9ylpdmZdFMkfDHwud8Ld3S0f+9A = X-Google-Smtp-Source: AGHT+IEBNOU6qbV5GbVUcNMjU8wXwYFORIq+itwYd4cuqx5qXSiQbjTBsWCZnWHqXKYXz5keABcu5A== X-Received: by 2002:a05:600c:4584:b0:431:4e3f:9dee with SMTP id 5b1f17b1804b1-432df71e956mr18280135e9.4.1731668353826; Fri, 15 Nov 2024 02:59:13 -0800 (PST) Received: from [10.156.60.236] (ip-037-024-206-209.um08.pools.vodafone-ip.de. [37.24.206.209]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-432da2800absm53330755e9.25.2024.11.15.02.59.13 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 15 Nov 2024 02:59:13 -0800 (PST) Message-ID: <1002ac5e-6e4b-4d68-bccd-c25deb79b804@suse.com> Date: Fri, 15 Nov 2024 11:59:12 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: [PATCH RFC 2/2] x86: default to not accepting Xeon Phi insns From: Jan Beulich To: Binutils Cc: "H.J. Lu" References: <3ffc6c0b-4779-4dd7-90a7-150ed74b85dc@suse.com> Content-Language: en-US Autocrypt: addr=jbeulich@suse.com; keydata= xsDiBFk3nEQRBADAEaSw6zC/EJkiwGPXbWtPxl2xCdSoeepS07jW8UgcHNurfHvUzogEq5xk hu507c3BarVjyWCJOylMNR98Yd8VqD9UfmX0Hb8/BrA+Hl6/DB/eqGptrf4BSRwcZQM32aZK 7Pj2XbGWIUrZrd70x1eAP9QE3P79Y2oLrsCgbZJfEwCgvz9JjGmQqQkRiTVzlZVCJYcyGGsD /0tbFCzD2h20ahe8rC1gbb3K3qk+LpBtvjBu1RY9drYk0NymiGbJWZgab6t1jM7sk2vuf0Py O9Hf9XBmK0uE9IgMaiCpc32XV9oASz6UJebwkX+zF2jG5I1BfnO9g7KlotcA/v5ClMjgo6Gl MDY4HxoSRu3i1cqqSDtVlt+AOVBJBACrZcnHAUSuCXBPy0jOlBhxPqRWv6ND4c9PH1xjQ3NP nxJuMBS8rnNg22uyfAgmBKNLpLgAGVRMZGaGoJObGf72s6TeIqKJo/LtggAS9qAUiuKVnygo 3wjfkS9A3DRO+SpU7JqWdsveeIQyeyEJ/8PTowmSQLakF+3fote9ybzd880fSmFuIEJldWxp Y2ggPGpiZXVsaWNoQHN1c2UuY29tPsJgBBMRAgAgBQJZN5xEAhsDBgsJCAcDAgQVAggDBBYC AwECHgECF4AACgkQoDSui/t3IH4J+wCfQ5jHdEjCRHj23O/5ttg9r9OIruwAn3103WUITZee e7Sbg12UgcQ5lv7SzsFNBFk3nEQQCACCuTjCjFOUdi5Nm244F+78kLghRcin/awv+IrTcIWF hUpSs1Y91iQQ7KItirz5uwCPlwejSJDQJLIS+QtJHaXDXeV6NI0Uef1hP20+y8qydDiVkv6l IreXjTb7DvksRgJNvCkWtYnlS3mYvQ9NzS9PhyALWbXnH6sIJd2O9lKS1Mrfq+y0IXCP10eS FFGg+Av3IQeFatkJAyju0PPthyTqxSI4lZYuJVPknzgaeuJv/2NccrPvmeDg6Coe7ZIeQ8Yj t0ARxu2xytAkkLCel1Lz1WLmwLstV30g80nkgZf/wr+/BXJW/oIvRlonUkxv+IbBM3dX2OV8 AmRv1ySWPTP7AAMFB/9PQK/VtlNUJvg8GXj9ootzrteGfVZVVT4XBJkfwBcpC/XcPzldjv+3 HYudvpdNK3lLujXeA5fLOH+Z/G9WBc5pFVSMocI71I8bT8lIAzreg0WvkWg5V2WZsUMlnDL9 mpwIGFhlbM3gfDMs7MPMu8YQRFVdUvtSpaAs8OFfGQ0ia3LGZcjA6Ik2+xcqscEJzNH+qh8V m5jjp28yZgaqTaRbg3M/+MTbMpicpZuqF4rnB0AQD12/3BNWDR6bmh+EkYSMcEIpQmBM51qM EKYTQGybRCjpnKHGOxG0rfFY1085mBDZCH5Kx0cl0HVJuQKC+dV2ZY5AqjcKwAxpE75MLFkr wkkEGBECAAkFAlk3nEQCGwwACgkQoDSui/t3IH7nnwCfcJWUDUFKdCsBH/E5d+0ZnMQi+G0A nAuWpQkjM1ASeQwSHEeAWPgskBQL In-Reply-To: <3ffc6c0b-4779-4dd7-90a7-150ed74b85dc@suse.com> X-Spam-Status: No, score=-3022.9 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_NONE, TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: binutils@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Binutils mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: binutils-bounces~patchwork=sourceware.org@sourceware.org Gcc15 has Xeon Phi support removed. While we don't want to remove support, require these deprecated insns to be enabled explicitly. --- RFC: Likely this wants holding back until gcc15 was actually released, to avoid negatively affecting in particular gcc14. Seeing the various *ig*-intel.d that needed adjustment, I actually question their value. Checking this once (e.g. for AVX512F) ought to be enough to be certain the intended behavior is there. We could down the number of tests by 8 or more this way. --- a/gas/testsuite/gas/i386/avx512_4fmaps.d +++ b/gas/testsuite/gas/i386/avx512_4fmaps.d @@ -1,3 +1,4 @@ +#as: -march=+avx512_4fmaps #objdump: -dw #name: i386 AVX512/4FMAPS insns #source: avx512_4fmaps.s --- a/gas/testsuite/gas/i386/avx512_4fmaps-intel.d +++ b/gas/testsuite/gas/i386/avx512_4fmaps-intel.d @@ -1,3 +1,4 @@ +#as: -march=+avx512_4fmaps #objdump: -dw -Mintel #name: i386 AVX512/4FMAPS insns (Intel disassembly) #source: avx512_4fmaps.s --- a/gas/testsuite/gas/i386/avx512_4fmaps-warn.s +++ b/gas/testsuite/gas/i386/avx512_4fmaps-warn.s @@ -1,6 +1,6 @@ # Check warnings for invalid usage of register group - -.text + .arch .avx512_4fmaps + .text v4fmaddps (%eax), %zmm0, %zmm6 v4fmaddps (%eax), %zmm1, %zmm6 v4fmaddps (%eax), %zmm2, %zmm6 --- a/gas/testsuite/gas/i386/avx512_4vnniw.d +++ b/gas/testsuite/gas/i386/avx512_4vnniw.d @@ -1,3 +1,4 @@ +#as: -march=+avx512_4vnniw #objdump: -dw #name: i386 AVX512/4VNNIW insns #source: avx512_4vnniw.s --- a/gas/testsuite/gas/i386/avx512_4vnniw-intel.d +++ b/gas/testsuite/gas/i386/avx512_4vnniw-intel.d @@ -1,3 +1,4 @@ +#as: -march=+avx512_4vnniw #objdump: -dw -Mintel #name: i386 AVX512/4VNNIW insns (Intel disassembly) #source: avx512_4vnniw.s --- a/gas/testsuite/gas/i386/avx512_4vnniw-warn.s +++ b/gas/testsuite/gas/i386/avx512_4vnniw-warn.s @@ -1,5 +1,5 @@ # Check warnings for invalid usage of register group - + .arch .avx512_4vnniw .text vp4dpwssd (%eax), %zmm0, %zmm6 vp4dpwssd (%eax), %zmm1, %zmm6 --- a/gas/testsuite/gas/i386/avx512er-intel.d +++ b/gas/testsuite/gas/i386/avx512er-intel.d @@ -1,3 +1,4 @@ +#as: -march=+avx512er #objdump: -dwMintel #name: i386 AVX512ER insns (Intel disassembly) #source: avx512er.s --- a/gas/testsuite/gas/i386/avx512er-rcigrd.d +++ b/gas/testsuite/gas/i386/avx512er-rcigrd.d @@ -1,4 +1,4 @@ -#as: -mevexrcig=rd +#as: -march=+avx512er -mevexrcig=rd #objdump: -dw #name: i386 AVX512ER rcig insns #source: avx512er-rcig.s --- a/gas/testsuite/gas/i386/avx512er-rcigrd-intel.d +++ b/gas/testsuite/gas/i386/avx512er-rcigrd-intel.d @@ -1,4 +1,4 @@ -#as: -mevexrcig=rd +#as: -march=+avx512er -mevexrcig=rd #objdump: -dw -Mintel #name: i386 AVX512ER rcig insns (Intel disassembly) #source: avx512er-rcig.s --- a/gas/testsuite/gas/i386/avx512er-rcigrne.d +++ b/gas/testsuite/gas/i386/avx512er-rcigrne.d @@ -1,4 +1,4 @@ -#as: -mevexrcig=rne +#as: -march=+avx512er -mevexrcig=rne #objdump: -dw #name: i386 AVX512ER rcig insns #source: avx512er-rcig.s --- a/gas/testsuite/gas/i386/avx512er-rcigrne-intel.d +++ b/gas/testsuite/gas/i386/avx512er-rcigrne-intel.d @@ -1,4 +1,4 @@ -#as: -mevexrcig=rne +#as: -march=+avx512er -mevexrcig=rne #objdump: -dw -Mintel #name: i386 AVX512ER rcig insns (Intel disassembly) #source: avx512er-rcig.s --- a/gas/testsuite/gas/i386/avx512er-rcigru.d +++ b/gas/testsuite/gas/i386/avx512er-rcigru.d @@ -1,4 +1,4 @@ -#as: -mevexrcig=ru +#as: -march=+avx512er -mevexrcig=ru #objdump: -dw #name: i386 AVX512ER rcig insns #source: avx512er-rcig.s --- a/gas/testsuite/gas/i386/avx512er-rcigru-intel.d +++ b/gas/testsuite/gas/i386/avx512er-rcigru-intel.d @@ -1,4 +1,4 @@ -#as: -mevexrcig=ru +#as: -march=+avx512er -mevexrcig=ru #objdump: -dw -Mintel #name: i386 AVX512ER rcig insns (Intel disassembly) #source: avx512er-rcig.s --- a/gas/testsuite/gas/i386/avx512er-rcigrz.d +++ b/gas/testsuite/gas/i386/avx512er-rcigrz.d @@ -1,4 +1,4 @@ -#as: -mevexrcig=rz +#as: -march=+avx512er -mevexrcig=rz #objdump: -dw #name: i386 AVX512ER rcig insns #source: avx512er-rcig.s --- a/gas/testsuite/gas/i386/avx512er-rcigrz-intel.d +++ b/gas/testsuite/gas/i386/avx512er-rcigrz-intel.d @@ -1,4 +1,4 @@ -#as: -mevexrcig=rz +#as: -march=+avx512er -mevexrcig=rz #objdump: -dw -Mintel #name: i386 AVX512ER rcig insns (Intel disassembly) #source: avx512er-rcig.s --- a/gas/testsuite/gas/i386/avx512er.d +++ b/gas/testsuite/gas/i386/avx512er.d @@ -1,3 +1,4 @@ +#as: -march=+avx512er #objdump: -dw #name: i386 AVX512ER insns --- a/gas/testsuite/gas/i386/avx512pf.d +++ b/gas/testsuite/gas/i386/avx512pf.d @@ -1,3 +1,4 @@ +#as: -march=+avx512pf #objdump: -dw #name: i386 AVX512PF insns --- a/gas/testsuite/gas/i386/avx512pf-intel.d +++ b/gas/testsuite/gas/i386/avx512pf-intel.d @@ -1,3 +1,4 @@ +#as: -march=+avx512pf #objdump: -dwMintel #name: i386 AVX512PF insns (Intel disassembly) #source: avx512pf.s --- a/gas/testsuite/gas/i386/evex-lig256.d +++ b/gas/testsuite/gas/i386/evex-lig256.d @@ -1,4 +1,4 @@ -#as: -mevexlig=256 +#as: -march=+avx512er -mevexlig=256 #objdump: -dw #name: i386 AVX512 lig256 insns #source: evex-lig.s --- a/gas/testsuite/gas/i386/evex-lig256-intel.d +++ b/gas/testsuite/gas/i386/evex-lig256-intel.d @@ -1,4 +1,4 @@ -#as: -mevexlig=256 +#as: -march=+avx512er -mevexlig=256 #objdump: -dwMintel #name: i386 AVX512 lig256 insns (Intel disassembly) #source: evex-lig.s --- a/gas/testsuite/gas/i386/evex-lig512.d +++ b/gas/testsuite/gas/i386/evex-lig512.d @@ -1,4 +1,4 @@ -#as: -mevexlig=512 +#as: -march=+avx512er -mevexlig=512 #objdump: -dw #name: i386 AVX512 lig512 insns #source: evex-lig.s --- a/gas/testsuite/gas/i386/evex-lig512-intel.d +++ b/gas/testsuite/gas/i386/evex-lig512-intel.d @@ -1,4 +1,4 @@ -#as: -mevexlig=512 +#as: -march=+avx512er -mevexlig=512 #objdump: -dwMintel #name: i386 AVX512 lig512 insns (Intel disassembly) #source: evex-lig.s --- a/gas/testsuite/gas/i386/i386.exp +++ b/gas/testsuite/gas/i386/i386.exp @@ -298,7 +298,7 @@ if [gas_32_check] then { run_dump_test "sse2avx" run_dump_test "unaligned-vector-move" run_list_test "inval-avx" "-al" - run_list_test "inval-avx512f" "-al" + run_list_test "inval-avx512f" "-al -march=+avx512pf" run_list_test "inval-avx512vl" "-al" run_dump_test "sse-check" run_dump_test "sse-check-none" --- a/gas/testsuite/gas/i386/noavx512-1.l +++ b/gas/testsuite/gas/i386/noavx512-1.l @@ -11,11 +11,9 @@ .*:14: Error: .*not supported.* .*:15: Error: .*not supported.* .*:16: Error: .*not supported.* -.*:17: Error: .*not supported.* .*:21: Error: .*operand.*mismatch.* .*:22: Error: .*unsupported masking.* .*:23: Error: .*unsupported masking.* -.*:24: Error: .*not supported.* .*:25: Error: .*not supported.* .*:26: Error: .*not supported.* .*:27: Error: .*not supported.* @@ -28,14 +26,12 @@ .*:14: Error: .*not supported.* .*:15: Error: .*not supported.* .*:16: Error: .*not supported.* -.*:17: Error: .*not supported.* .*:18: Error: .*bad register name.* .*:19: Error: .*unknown vector operation.* .*:20: Error: .*unknown vector operation.* .*:21: Error: .*bad register name.* .*:22: Error: .*unknown vector operation.* .*:23: Error: .*unknown vector operation.* -.*:24: Error: .*not supported.* .*:25: Error: .*not supported.* .*:26: Error: .*not supported.* .*:27: Error: .*not supported.* @@ -48,14 +44,12 @@ .*:14: Error: .*not supported.* .*:15: Error: .*not supported.* .*:16: Error: .*not supported.* -.*:17: Error: .*not supported.* .*:18: Error: .*bad register name.* .*:19: Error: .*unknown vector operation.* .*:20: Error: .*unknown vector operation.* .*:21: Error: .*bad register name.* .*:22: Error: .*unknown vector operation.* .*:23: Error: .*unknown vector operation.* -.*:24: Error: .*not supported.* .*:25: Error: .*not supported.* .*:26: Error: .*not supported.* .*:27: Error: .*not supported.* @@ -87,8 +81,7 @@ [ ]*[0-9]+[ ]+7B31 [ ]*[0-9]+[ ]+\?\?\?\? 62F1FD2F > vcvtpd2qq \(%ecx\),%ymm6\{%k7\} [ ]*[0-9]+[ ]+7B31 -[ ]*[0-9]+[ ]+\?\?\?\? 62F27D4F > vexp2ps %zmm5,%zmm6\{%k7\} -[ ]*[0-9]+[ ]+C8F5 +[ ]*[0-9]+[ ]+> * [ ]*[0-9]+[ ]+\?\?\?\? 62F1D54F > vaddpd %zmm4,%zmm5,%zmm6\{%k7\} [ ]*[0-9]+[ ]+58F4 [ ]*[0-9]+[ ]+\?\?\?\? 62F1D50F > vaddpd %xmm4,%xmm5,%xmm6\{%k7\} @@ -101,9 +94,7 @@ [ ]*[0-9]+[ ]+B4F4 [ ]*[0-9]+[ ]+\?\?\?\? 62F2D52F > vpmadd52luq %ymm4,%ymm5,%ymm6\{%k7\} [ ]*[0-9]+[ ]+B4F4 -[ ]*[0-9]+[ ]+\?\?\?\? 62F2FD49 > vgatherpf0dpd 23\(%ebp,%ymm7,8\)\{%k1\} -[ ]*[0-9]+[ ]+C68CFD17 * -[ ]*[0-9]+[ ]+000000 +[ ]*[0-9]+[ ]+> * [ ]*[0-9]+[ ]+\?\?\?\? 62F2554F > vpermb %zmm4,%zmm5,%zmm6\{%k7\} [ ]*[0-9]+[ ]+8DF4 [ ]*[0-9]+[ ]+\?\?\?\? 62F2550F > vpermb %xmm4,%xmm5,%xmm6\{%k7\} @@ -128,8 +119,7 @@ [ ]*[0-9]+[ ]+7B31 [ ]*[0-9]+[ ]+\?\?\?\? 62F1FD2F > vcvtpd2qq \(%ecx\),%ymm6\{%k7\} [ ]*[0-9]+[ ]+7B31 -[ ]*[0-9]+[ ]+\?\?\?\? 62F27D4F > vexp2ps %zmm5,%zmm6\{%k7\} -[ ]*[0-9]+[ ]+C8F5 +[ ]*[0-9]+[ ]+> * [ ]*[0-9]+[ ]+\?\?\?\? 62F1D54F > vaddpd %zmm4,%zmm5,%zmm6\{%k7\} [ ]*[0-9]+[ ]+58F4 [ ]*[0-9]+[ ]+\?\?\?\? 62F1D50F > vaddpd %xmm4,%xmm5,%xmm6\{%k7\} @@ -142,9 +132,7 @@ [ ]*[0-9]+[ ]+B4F4 [ ]*[0-9]+[ ]+\?\?\?\? 62F2D52F > vpmadd52luq %ymm4,%ymm5,%ymm6\{%k7\} [ ]*[0-9]+[ ]+B4F4 -[ ]*[0-9]+[ ]+\?\?\?\? 62F2FD49 > vgatherpf0dpd 23\(%ebp,%ymm7,8\)\{%k1\} -[ ]*[0-9]+[ ]+C68CFD17 * -[ ]*[0-9]+[ ]+000000 +[ ]*[0-9]+[ ]+> * [ ]*[0-9]+[ ]+> vpermb %zmm4,%zmm5,%zmm6\{%k7\} [ ]*[0-9]+[ ]+> vpermb %xmm4,%xmm5,%xmm6\{%k7\} [ ]*[0-9]+[ ]+> vpermb %ymm4,%ymm5,%ymm6\{%k7\} @@ -166,8 +154,7 @@ [ ]*[0-9]+[ ]+7B31 [ ]*[0-9]+[ ]+\?\?\?\? 62F1FD2F > vcvtpd2qq \(%ecx\),%ymm6\{%k7\} [ ]*[0-9]+[ ]+7B31 -[ ]*[0-9]+[ ]+\?\?\?\? 62F27D4F > vexp2ps %zmm5,%zmm6\{%k7\} -[ ]*[0-9]+[ ]+C8F5 +[ ]*[0-9]+[ ]+> * [ ]*[0-9]+[ ]+\?\?\?\? 62F1D54F > vaddpd %zmm4,%zmm5,%zmm6\{%k7\} [ ]*[0-9]+[ ]+58F4 [ ]*[0-9]+[ ]+\?\?\?\? 62F1D50F > vaddpd %xmm4,%xmm5,%xmm6\{%k7\} @@ -180,9 +167,7 @@ [ ]*[0-9]+[ ]+B4F4 [ ]*[0-9]+[ ]+\?\?\?\? 62F2D52F > vpmadd52luq %ymm4,%ymm5,%ymm6\{%k7\} [ ]*[0-9]+[ ]+B4F4 -[ ]*[0-9]+[ ]+\?\?\?\? 62F2FD49 > vgatherpf0dpd 23\(%ebp,%ymm7,8\)\{%k1\} -[ ]*[0-9]+[ ]+C68CFD17 * -[ ]*[0-9]+[ ]+000000 +[ ]*[0-9]+[ ]+> * [ ]*[0-9]+[ ]+\?\?\?\? 62F2554F > vpermb %zmm4,%zmm5,%zmm6\{%k7\} [ ]*[0-9]+[ ]+8DF4 [ ]*[0-9]+[ ]+\?\?\?\? 62F2550F > vpermb %xmm4,%xmm5,%xmm6\{%k7\} @@ -207,8 +192,7 @@ [ ]*[0-9]+[ ]+> vcvtpd2qq \(%ecx\),%zmm6\{%k7\} [ ]*[0-9]+[ ]+> vcvtpd2qq \(%ecx\),%xmm6\{%k7\} [ ]*[0-9]+[ ]+> vcvtpd2qq \(%ecx\),%ymm6\{%k7\} -[ ]*[0-9]+[ ]+\?\?\?\? 62F27D4F > vexp2ps %zmm5,%zmm6\{%k7\} -[ ]*[0-9]+[ ]+C8F5 +[ ]*[0-9]+[ ]+> * [ ]*[0-9]+[ ]+\?\?\?\? 62F1D54F > vaddpd %zmm4,%zmm5,%zmm6\{%k7\} [ ]*[0-9]+[ ]+58F4 [ ]*[0-9]+[ ]+\?\?\?\? 62F1D50F > vaddpd %xmm4,%xmm5,%xmm6\{%k7\} @@ -221,52 +205,7 @@ [ ]*[0-9]+[ ]+B4F4 [ ]*[0-9]+[ ]+\?\?\?\? 62F2D52F > vpmadd52luq %ymm4,%ymm5,%ymm6\{%k7\} [ ]*[0-9]+[ ]+B4F4 -[ ]*[0-9]+[ ]+\?\?\?\? 62F2FD49 > vgatherpf0dpd 23\(%ebp,%ymm7,8\)\{%k1\} -[ ]*[0-9]+[ ]+C68CFD17 * -[ ]*[0-9]+[ ]+000000 -[ ]*[0-9]+[ ]+\?\?\?\? 62F2554F > vpermb %zmm4,%zmm5,%zmm6\{%k7\} -[ ]*[0-9]+[ ]+8DF4 -[ ]*[0-9]+[ ]+\?\?\?\? 62F2550F > vpermb %xmm4,%xmm5,%xmm6\{%k7\} -[ ]*[0-9]+[ ]+8DF4 -[ ]*[0-9]+[ ]+\?\?\?\? 62F2552F > vpermb %ymm4,%ymm5,%ymm6\{%k7\} -[ ]*[0-9]+[ ]+8DF4 -#... -[ ]*[0-9]+[ ]+> \.arch default -[ ]*[0-9]+[ ]+> \.arch \.noavx512er -[ ]*[0-9]+[ ]+\?\?\?\? 62F27D4F > vpabsb %zmm5,%zmm6\{%k7\} -[ ]*[0-9]+[ ]+1CF5 -[ ]*[0-9]+[ ]+\?\?\?\? 62F27D0F > vpabsb %xmm5,%xmm6\{%k7\} -[ ]*[0-9]+[ ]+1CF5 -[ ]*[0-9]+[ ]+\?\?\?\? 62F27D2F > vpabsb %ymm5,%ymm6\{%k7\} -[ ]*[0-9]+[ ]+1CF5 -[ ]*[0-9]+[ ]+\?\?\?\? 62F27D48 > vpconflictd %zmm5,%zmm6 -[ ]*[0-9]+[ ]+C4F5 -[ ]*[0-9]+[ ]+\?\?\?\? 62F27D08 > vpconflictd %xmm5,%xmm6 -[ ]*[0-9]+[ ]+C4F5 -[ ]*[0-9]+[ ]+\?\?\?\? 62F27D28 > vpconflictd %ymm5,%ymm6 -[ ]*[0-9]+[ ]+C4F5 -[ ]*[0-9]+[ ]+\?\?\?\? 62F1FD4F > vcvtpd2qq \(%ecx\),%zmm6\{%k7\} -[ ]*[0-9]+[ ]+7B31 -[ ]*[0-9]+[ ]+\?\?\?\? 62F1FD0F > vcvtpd2qq \(%ecx\),%xmm6\{%k7\} -[ ]*[0-9]+[ ]+7B31 -[ ]*[0-9]+[ ]+\?\?\?\? 62F1FD2F > vcvtpd2qq \(%ecx\),%ymm6\{%k7\} -[ ]*[0-9]+[ ]+7B31 -[ ]*[0-9]+[ ]+> vexp2ps %zmm5,%zmm6\{%k7\} -[ ]*[0-9]+[ ]+\?\?\?\? 62F1D54F > vaddpd %zmm4,%zmm5,%zmm6\{%k7\} -[ ]*[0-9]+[ ]+58F4 -[ ]*[0-9]+[ ]+\?\?\?\? 62F1D50F > vaddpd %xmm4,%xmm5,%xmm6\{%k7\} -[ ]*[0-9]+[ ]+58F4 -[ ]*[0-9]+[ ]+\?\?\?\? 62F1D52F > vaddpd %ymm4,%ymm5,%ymm6\{%k7\} -[ ]*[0-9]+[ ]+58F4 -[ ]*[0-9]+[ ]+\?\?\?\? 62F2D54F > vpmadd52luq %zmm4,%zmm5,%zmm6\{%k7\} -[ ]*[0-9]+[ ]+B4F4 -[ ]*[0-9]+[ ]+\?\?\?\? 62F2D50F > vpmadd52luq %xmm4,%xmm5,%xmm6\{%k7\} -[ ]*[0-9]+[ ]+B4F4 -[ ]*[0-9]+[ ]+\?\?\?\? 62F2D52F > vpmadd52luq %ymm4,%ymm5,%ymm6\{%k7\} -[ ]*[0-9]+[ ]+B4F4 -[ ]*[0-9]+[ ]+\?\?\?\? 62F2FD49 > vgatherpf0dpd 23\(%ebp,%ymm7,8\)\{%k1\} -[ ]*[0-9]+[ ]+C68CFD17 * -[ ]*[0-9]+[ ]+000000 +[ ]*[0-9]+[ ]+> * [ ]*[0-9]+[ ]+\?\?\?\? 62F2554F > vpermb %zmm4,%zmm5,%zmm6\{%k7\} [ ]*[0-9]+[ ]+8DF4 [ ]*[0-9]+[ ]+\?\?\?\? 62F2550F > vpermb %xmm4,%xmm5,%xmm6\{%k7\} @@ -294,8 +233,7 @@ [ ]*[0-9]+[ ]+7B31 [ ]*[0-9]+[ ]+\?\?\?\? 62F1FD2F > vcvtpd2qq \(%ecx\),%ymm6\{%k7\} [ ]*[0-9]+[ ]+7B31 -[ ]*[0-9]+[ ]+\?\?\?\? 62F27D4F > vexp2ps %zmm5,%zmm6\{%k7\} -[ ]*[0-9]+[ ]+C8F5 +[ ]*[0-9]+[ ]+> * [ ]*[0-9]+[ ]+\?\?\?\? 62F1D54F > vaddpd %zmm4,%zmm5,%zmm6\{%k7\} [ ]*[0-9]+[ ]+58F4 [ ]*[0-9]+[ ]+\?\?\?\? 62F1D50F > vaddpd %xmm4,%xmm5,%xmm6\{%k7\} @@ -305,51 +243,7 @@ [ ]*[0-9]+[ ]+> vpmadd52luq %zmm4,%zmm5,%zmm6\{%k7\} [ ]*[0-9]+[ ]+> vpmadd52luq %xmm4,%xmm5,%xmm6\{%k7\} [ ]*[0-9]+[ ]+> vpmadd52luq %ymm4,%ymm5,%ymm6\{%k7\} -[ ]*[0-9]+[ ]+\?\?\?\? 62F2FD49 > vgatherpf0dpd 23\(%ebp,%ymm7,8\)\{%k1\} -[ ]*[0-9]+[ ]+C68CFD17 * -[ ]*[0-9]+[ ]+000000 -[ ]*[0-9]+[ ]+\?\?\?\? 62F2554F > vpermb %zmm4,%zmm5,%zmm6\{%k7\} -[ ]*[0-9]+[ ]+8DF4 -[ ]*[0-9]+[ ]+\?\?\?\? 62F2550F > vpermb %xmm4,%xmm5,%xmm6\{%k7\} -[ ]*[0-9]+[ ]+8DF4 -[ ]*[0-9]+[ ]+\?\?\?\? 62F2552F > vpermb %ymm4,%ymm5,%ymm6\{%k7\} -[ ]*[0-9]+[ ]+8DF4 -#... -[ ]*[0-9]+[ ]+> \.arch default -[ ]*[0-9]+[ ]+> \.arch \.noavx512pf -[ ]*[0-9]+[ ]+\?\?\?\? 62F27D4F > vpabsb %zmm5,%zmm6\{%k7\} -[ ]*[0-9]+[ ]+1CF5 -[ ]*[0-9]+[ ]+\?\?\?\? 62F27D0F > vpabsb %xmm5,%xmm6\{%k7\} -[ ]*[0-9]+[ ]+1CF5 -[ ]*[0-9]+[ ]+\?\?\?\? 62F27D2F > vpabsb %ymm5,%ymm6\{%k7\} -[ ]*[0-9]+[ ]+1CF5 -[ ]*[0-9]+[ ]+\?\?\?\? 62F27D48 > vpconflictd %zmm5,%zmm6 -[ ]*[0-9]+[ ]+C4F5 -[ ]*[0-9]+[ ]+\?\?\?\? 62F27D08 > vpconflictd %xmm5,%xmm6 -[ ]*[0-9]+[ ]+C4F5 -[ ]*[0-9]+[ ]+\?\?\?\? 62F27D28 > vpconflictd %ymm5,%ymm6 -[ ]*[0-9]+[ ]+C4F5 -[ ]*[0-9]+[ ]+\?\?\?\? 62F1FD4F > vcvtpd2qq \(%ecx\),%zmm6\{%k7\} -[ ]*[0-9]+[ ]+7B31 -[ ]*[0-9]+[ ]+\?\?\?\? 62F1FD0F > vcvtpd2qq \(%ecx\),%xmm6\{%k7\} -[ ]*[0-9]+[ ]+7B31 -[ ]*[0-9]+[ ]+\?\?\?\? 62F1FD2F > vcvtpd2qq \(%ecx\),%ymm6\{%k7\} -[ ]*[0-9]+[ ]+7B31 -[ ]*[0-9]+[ ]+\?\?\?\? 62F27D4F > vexp2ps %zmm5,%zmm6\{%k7\} -[ ]*[0-9]+[ ]+C8F5 -[ ]*[0-9]+[ ]+\?\?\?\? 62F1D54F > vaddpd %zmm4,%zmm5,%zmm6\{%k7\} -[ ]*[0-9]+[ ]+58F4 -[ ]*[0-9]+[ ]+\?\?\?\? 62F1D50F > vaddpd %xmm4,%xmm5,%xmm6\{%k7\} -[ ]*[0-9]+[ ]+58F4 -[ ]*[0-9]+[ ]+\?\?\?\? 62F1D52F > vaddpd %ymm4,%ymm5,%ymm6\{%k7\} -[ ]*[0-9]+[ ]+58F4 -[ ]*[0-9]+[ ]+\?\?\?\? 62F2D54F > vpmadd52luq %zmm4,%zmm5,%zmm6\{%k7\} -[ ]*[0-9]+[ ]+B4F4 -[ ]*[0-9]+[ ]+\?\?\?\? 62F2D50F > vpmadd52luq %xmm4,%xmm5,%xmm6\{%k7\} -[ ]*[0-9]+[ ]+B4F4 -[ ]*[0-9]+[ ]+\?\?\?\? 62F2D52F > vpmadd52luq %ymm4,%ymm5,%ymm6\{%k7\} -[ ]*[0-9]+[ ]+B4F4 -[ ]*[0-9]+[ ]+> vgatherpf0dpd 23\(%ebp,%ymm7,8\)\{%k1\} +[ ]*[0-9]+[ ]+> * [ ]*[0-9]+[ ]+\?\?\?\? 62F2554F > vpermb %zmm4,%zmm5,%zmm6\{%k7\} [ ]*[0-9]+[ ]+8DF4 [ ]*[0-9]+[ ]+\?\?\?\? 62F2550F > vpermb %xmm4,%xmm5,%xmm6\{%k7\} @@ -377,8 +271,7 @@ [ ]*[0-9]+[ ]+7B31 [ ]*[0-9]+[ ]+\?\?\?\? 62F1FD2F > vcvtpd2qq \(%ecx\),%ymm6\{%k7\} [ ]*[0-9]+[ ]+7B31 -[ ]*[0-9]+[ ]+\?\?\?\? 62F27D4F > vexp2ps %zmm5,%zmm6\{%k7\} -[ ]*[0-9]+[ ]+C8F5 +[ ]*[0-9]+[ ]+> * [ ]*[0-9]+[ ]+\?\?\?\? 62F1D54F > vaddpd %zmm4,%zmm5,%zmm6\{%k7\} [ ]*[0-9]+[ ]+58F4 [ ]*[0-9]+[ ]+\?\?\?\? 62F1D50F > vaddpd %xmm4,%xmm5,%xmm6\{%k7\} @@ -391,9 +284,7 @@ [ ]*[0-9]+[ ]+B4F4 [ ]*[0-9]+[ ]+\?\?\?\? 62F2D52F > vpmadd52luq %ymm4,%ymm5,%ymm6\{%k7\} [ ]*[0-9]+[ ]+B4F4 -[ ]*[0-9]+[ ]+\?\?\?\? 62F2FD49 > vgatherpf0dpd 23\(%ebp,%ymm7,8\)\{%k1\} -[ ]*[0-9]+[ ]+C68CFD17 * -[ ]*[0-9]+[ ]+000000 +[ ]*[0-9]+[ ]+> * [ ]*[0-9]+[ ]+> vpermb %zmm4,%zmm5,%zmm6\{%k7\} [ ]*[0-9]+[ ]+> vpermb %xmm4,%xmm5,%xmm6\{%k7\} [ ]*[0-9]+[ ]+> vpermb %ymm4,%ymm5,%ymm6\{%k7\} @@ -409,14 +300,14 @@ [ ]*[0-9]+[ ]+> vcvtpd2qq \(%ecx\),%zmm6\{%k7\} [ ]*[0-9]+[ ]+> vcvtpd2qq \(%ecx\),%xmm6\{%k7\} [ ]*[0-9]+[ ]+> vcvtpd2qq \(%ecx\),%ymm6\{%k7\} -[ ]*[0-9]+[ ]+> vexp2ps %zmm5,%zmm6\{%k7\} +[ ]*[0-9]+[ ]+> * [ ]*[0-9]+[ ]+> vaddpd %zmm4,%zmm5,%zmm6\{%k7\} [ ]*[0-9]+[ ]+> vaddpd %xmm4,%xmm5,%xmm6\{%k7\} [ ]*[0-9]+[ ]+> vaddpd %ymm4,%ymm5,%ymm6\{%k7\} [ ]*[0-9]+[ ]+> vpmadd52luq %zmm4,%zmm5,%zmm6\{%k7\} [ ]*[0-9]+[ ]+> vpmadd52luq %xmm4,%xmm5,%xmm6\{%k7\} [ ]*[0-9]+[ ]+> vpmadd52luq %ymm4,%ymm5,%ymm6\{%k7\} -[ ]*[0-9]+[ ]+> vgatherpf0dpd 23\(%ebp,%ymm7,8\)\{%k1\} +[ ]*[0-9]+[ ]+> * [ ]*[0-9]+[ ]+> vpermb %zmm4,%zmm5,%zmm6\{%k7\} [ ]*[0-9]+[ ]+> vpermb %xmm4,%xmm5,%xmm6\{%k7\} [ ]*[0-9]+[ ]+> vpermb %ymm4,%ymm5,%ymm6\{%k7\} @@ -432,14 +323,14 @@ [ ]*[0-9]+[ ]+> vcvtpd2qq \(%ecx\),%zmm6\{%k7\} [ ]*[0-9]+[ ]+> vcvtpd2qq \(%ecx\),%xmm6\{%k7\} [ ]*[0-9]+[ ]+> vcvtpd2qq \(%ecx\),%ymm6\{%k7\} -[ ]*[0-9]+[ ]+> vexp2ps %zmm5,%zmm6\{%k7\} +[ ]*[0-9]+[ ]+> * [ ]*[0-9]+[ ]+> vaddpd %zmm4,%zmm5,%zmm6\{%k7\} [ ]*[0-9]+[ ]+> vaddpd %xmm4,%xmm5,%xmm6\{%k7\} [ ]*[0-9]+[ ]+> vaddpd %ymm4,%ymm5,%ymm6\{%k7\} [ ]*[0-9]+[ ]+> vpmadd52luq %zmm4,%zmm5,%zmm6\{%k7\} [ ]*[0-9]+[ ]+> vpmadd52luq %xmm4,%xmm5,%xmm6\{%k7\} [ ]*[0-9]+[ ]+> vpmadd52luq %ymm4,%ymm5,%ymm6\{%k7\} -[ ]*[0-9]+[ ]+> vgatherpf0dpd 23\(%ebp,%ymm7,8\)\{%k1\} +[ ]*[0-9]+[ ]+> * [ ]*[0-9]+[ ]+> vpermb %zmm4,%zmm5,%zmm6\{%k7\} [ ]*[0-9]+[ ]+> vpermb %xmm4,%xmm5,%xmm6\{%k7\} [ ]*[0-9]+[ ]+> vpermb %ymm4,%ymm5,%ymm6\{%k7\} --- a/gas/testsuite/gas/i386/noavx512-1.s +++ b/gas/testsuite/gas/i386/noavx512-1.s @@ -1,7 +1,7 @@ # Test .arch .noavx512XX .text - .irp isa, default, .noavx512bw, .noavx512cd, .noavx512dq, .noavx512er, .noavx512ifma, .noavx512pf, .noavx512vbmi, .noavx512f, .noavx10.1 + .irp isa, default, .noavx512bw, .noavx512cd, .noavx512dq, .noavx512ifma, .noavx512vbmi, .noavx512f, .noavx10.1 .arch default .arch \isa @@ -14,14 +14,14 @@ vcvtpd2qq (%ecx), %zmm6{%k7} # AVX512DQ vcvtpd2qq (%ecx), %xmm6{%k7} # AVX512DQ + AVX512VL vcvtpd2qq (%ecx), %ymm6{%k7} # AVX512DQ + AVX512VL - vexp2ps %zmm5, %zmm6{%k7} # AVX512ER + vaddpd %zmm4, %zmm5, %zmm6{%k7} # AVX512F vaddpd %xmm4, %xmm5, %xmm6{%k7} # AVX512F + AVX512VL vaddpd %ymm4, %ymm5, %ymm6{%k7} # AVX512F + AVX512VL vpmadd52luq %zmm4, %zmm5, %zmm6{%k7} # AVX512IFMA vpmadd52luq %xmm4, %xmm5, %xmm6{%k7} # AVX512IFMA + AVX512VL vpmadd52luq %ymm4, %ymm5, %ymm6{%k7} # AVX512IFMA + AVX512VL - vgatherpf0dpd 23(%ebp,%ymm7,8){%k1} # AVX512PF + vpermb %zmm4, %zmm5, %zmm6{%k7} # AVX512VBMI vpermb %xmm4, %xmm5, %xmm6{%k7} # AVX512VBMI + AVX512VL vpermb %ymm4, %ymm5, %ymm6{%k7} # AVX512VBMI + AVX512VL --- a/gas/testsuite/gas/i386/noavx512-2.l +++ b/gas/testsuite/gas/i386/noavx512-2.l @@ -1,11 +1,13 @@ .*: Assembler messages: +.*:17: Error: .*not supported.* +.*:24: Error: .*not supported.* .*:8: Error: .*bad register name `%zmm.* .*:11: Error: .*bad register name `%zmm.* .*:14: Error: .*bad register name `%zmm.* -.*:17: Error: .*bad register name `%zmm.* +.*:17: Error: .* .*:18: Error: .*bad register name `%zmm.* .*:21: Error: .*bad register name `%zmm.* -.*:24: Error: .*vector size.* +.*:24: Error: .* .*:25: Error: .*bad register name `%zmm.* .*:8: Error: .*bad register name `%zmm.* .*:10: Error: .*bad register name `%ymm.* @@ -13,7 +15,7 @@ .*:13: Error: .*bad register name `%ymm.* .*:14: Error: .*bad register name `%zmm.* .*:16: Error: .*bad register name `%ymm.* -.*:17: Error: .*bad register name `%zmm.* +.*:17: Error: .* .*:18: Error: .*bad register name `%zmm.* .*:20: Error: .*bad register name `%ymm.* .*:21: Error: .*bad register name `%zmm.* @@ -27,10 +29,12 @@ .*:13: Error: .*operand size mismatch.* .*:15: Error: .*operand size mismatch.* .*:16: Error: .*operand size mismatch.* +.*:17: Error: .*not supported.* .*:19: Error: .*unsupported masking.* .*:20: Error: .*unsupported masking.* .*:22: Error: .*operand size mismatch.* .*:23: Error: .*operand size mismatch.* +.*:24: Error: .*not supported.* .*:26: Error: .*operand size mismatch.* .*:27: Error: .*operand size mismatch.* #... @@ -61,8 +65,7 @@ [ ]*[0-9]+[ ]+7B31 [ ]*[0-9]+[ ]+\?\?\?\? 62F1FD2F > vcvtpd2qq \(%ecx\),%ymm6\{%k7\} [ ]*[0-9]+[ ]+7B31 -[ ]*[0-9]+[ ]+\?\?\?\? 62F27D4F > vexp2ps %zmm5,%zmm6\{%k7\} -[ ]*[0-9]+[ ]+C8F5 +[ ]*[0-9]+[ ]+> vexp2ps %zmm5,%zmm6\{%k7\} [ ]*[0-9]+[ ]+\?\?\?\? 62F1D54F > vaddpd %zmm4,%zmm5,%zmm6\{%k7\} [ ]*[0-9]+[ ]+58F4 [ ]*[0-9]+[ ]+\?\?\?\? 62F1D50F > vaddpd %xmm4,%xmm5,%xmm6\{%k7\} @@ -75,9 +78,7 @@ [ ]*[0-9]+[ ]+B4F4 [ ]*[0-9]+[ ]+\?\?\?\? 62F2D52F > vpmadd52luq %ymm4,%ymm5,%ymm6\{%k7\} [ ]*[0-9]+[ ]+B4F4 -[ ]*[0-9]+[ ]+\?\?\?\? 62F2FD49 > vgatherpf0dpd 23\(%ebp,%ymm7,8\)\{%k1\} -[ ]*[0-9]+[ ]+C68CFD17 * -[ ]*[0-9]+[ ]+000000 +[ ]*[0-9]+[ ]+> vgatherpf0dpd 23\(%ebp,%ymm7,8\)\{%k1\} [ ]*[0-9]+[ ]+\?\?\?\? 62F2554F > vpermb %zmm4,%zmm5,%zmm6\{%k7\} [ ]*[0-9]+[ ]+8DF4 [ ]*[0-9]+[ ]+\?\?\?\? 62F2550F > vpermb %xmm4,%xmm5,%xmm6\{%k7\} @@ -162,8 +163,7 @@ [ ]*[0-9]+[ ]+7B31 [ ]*[0-9]+[ ]+> vcvtpd2qq \(%ecx\),%xmm6\{%k7\} [ ]*[0-9]+[ ]+> vcvtpd2qq \(%ecx\),%ymm6\{%k7\} -[ ]*[0-9]+[ ]+\?\?\?\? 62F27D4F > vexp2ps %zmm5,%zmm6\{%k7\} -[ ]*[0-9]+[ ]+C8F5 +[ ]*[0-9]+[ ]+> vexp2ps %zmm5,%zmm6\{%k7\} [ ]*[0-9]+[ ]+\?\?\?\? 62F1D54F > vaddpd %zmm4,%zmm5,%zmm6\{%k7\} [ ]*[0-9]+[ ]+58F4 [ ]*[0-9]+[ ]+> vaddpd %xmm4,%xmm5,%xmm6\{%k7\} @@ -172,9 +172,7 @@ [ ]*[0-9]+[ ]+B4F4 [ ]*[0-9]+[ ]+> vpmadd52luq %xmm4,%xmm5,%xmm6\{%k7\} [ ]*[0-9]+[ ]+> vpmadd52luq %ymm4,%ymm5,%ymm6\{%k7\} -[ ]*[0-9]+[ ]+\?\?\?\? 62F2FD49 > vgatherpf0dpd 23\(%ebp,%ymm7,8\)\{%k1\} -[ ]*[0-9]+[ ]+C68CFD17 * -[ ]*[0-9]+[ ]+000000 +[ ]*[0-9]+[ ]+> vgatherpf0dpd 23\(%ebp,%ymm7,8\)\{%k1\} [ ]*[0-9]+[ ]+\?\?\?\? 62F2554F > vpermb %zmm4,%zmm5,%zmm6\{%k7\} [ ]*[0-9]+[ ]+8DF4 [ ]*[0-9]+[ ]+> vpermb %xmm4,%xmm5,%xmm6\{%k7\} --- a/gas/testsuite/gas/i386/property-13.d +++ b/gas/testsuite/gas/i386/property-13.d @@ -1,5 +1,5 @@ #name: i386 property 13 -#as: -mx86-used-note=yes --generate-missing-build-notes=no +#as: -march=+avx512pf -mx86-used-note=yes --generate-missing-build-notes=no #readelf: -n Displaying notes found in: .note.gnu.property --- a/gas/testsuite/gas/i386/property-v4fmaddps.d +++ b/gas/testsuite/gas/i386/property-v4fmaddps.d @@ -1,5 +1,5 @@ #name: i386 property v4fmaddps -#as: -mx86-used-note=yes --generate-missing-build-notes=no +#as: -march=+avx512_4fmaps -mx86-used-note=yes --generate-missing-build-notes=no #readelf: -n Displaying notes found in: .note.gnu.property --- a/gas/testsuite/gas/i386/x86-64-avx512_4fmaps.d +++ b/gas/testsuite/gas/i386/x86-64-avx512_4fmaps.d @@ -1,3 +1,4 @@ +#as: -march=+avx512_4fmaps #objdump: -dw #name: x86_64 AVX512/4FMAPS insns #source: x86-64-avx512_4fmaps.s --- a/gas/testsuite/gas/i386/x86-64-avx512_4fmaps-intel.d +++ b/gas/testsuite/gas/i386/x86-64-avx512_4fmaps-intel.d @@ -1,3 +1,4 @@ +#as: -march=+avx512_4fmaps #objdump: -dw -Mintel #name: x86_64 AVX512/4FMAPS insns (Intel disassembly) #source: x86-64-avx512_4fmaps.s --- a/gas/testsuite/gas/i386/x86-64-avx512_4fmaps-warn.s +++ b/gas/testsuite/gas/i386/x86-64-avx512_4fmaps-warn.s @@ -1,6 +1,6 @@ # Check warnings for invalid usage of register group - -.text + .arch .avx512_4fmaps + .text v4fmaddps (%rax), %zmm0, %zmm10 v4fmaddps (%rax), %zmm1, %zmm10 v4fmaddps (%rax), %zmm2, %zmm10 --- a/gas/testsuite/gas/i386/x86-64-avx512_4vnniw.d +++ b/gas/testsuite/gas/i386/x86-64-avx512_4vnniw.d @@ -1,3 +1,4 @@ +#as: -march=+avx512_4vnniw #objdump: -dw #name: x86_64 AVX512/4VNNIW insns #source: x86-64-avx512_4vnniw.s --- a/gas/testsuite/gas/i386/x86-64-avx512_4vnniw-intel.d +++ b/gas/testsuite/gas/i386/x86-64-avx512_4vnniw-intel.d @@ -1,3 +1,4 @@ +#as: -march=+avx512_4vnniw #objdump: -dw -Mintel #name: x86_64 AVX512/4VNNIW insns (Intel disassembly) #source: x86-64-avx512_4vnniw.s --- a/gas/testsuite/gas/i386/x86-64-avx512er.d +++ b/gas/testsuite/gas/i386/x86-64-avx512er.d @@ -1,3 +1,4 @@ +#as: -march=+avx512er #objdump: -dw #name: x86_64 AVX512ER insns --- a/gas/testsuite/gas/i386/x86-64-avx512er-intel.d +++ b/gas/testsuite/gas/i386/x86-64-avx512er-intel.d @@ -1,3 +1,4 @@ +#as: -march=+avx512er #objdump: -dwMintel #name: x86_64 AVX512ER insns (Intel disassembly) #source: x86-64-avx512er.s --- a/gas/testsuite/gas/i386/x86-64-avx512er-rcigrd.d +++ b/gas/testsuite/gas/i386/x86-64-avx512er-rcigrd.d @@ -1,4 +1,4 @@ -#as: -mevexrcig=rd +#as: -march=+avx512er -mevexrcig=rd #objdump: -dw #name: x86_64 AVX512ER rcig insns #source: x86-64-avx512er-rcig.s --- a/gas/testsuite/gas/i386/x86-64-avx512er-rcigrd-intel.d +++ b/gas/testsuite/gas/i386/x86-64-avx512er-rcigrd-intel.d @@ -1,4 +1,4 @@ -#as: -mevexrcig=rd +#as: -march=+avx512er -mevexrcig=rd #objdump: -dw -Mintel #name: x86_64 AVX512ER rcig insns (Intel disassembly) #source: x86-64-avx512er-rcig.s --- a/gas/testsuite/gas/i386/x86-64-avx512er-rcigrne.d +++ b/gas/testsuite/gas/i386/x86-64-avx512er-rcigrne.d @@ -1,4 +1,4 @@ -#as: -mevexrcig=rne +#as: -march=+avx512er -mevexrcig=rne #objdump: -dw #name: x86_64 AVX512ER rcig insns #source: x86-64-avx512er-rcig.s --- a/gas/testsuite/gas/i386/x86-64-avx512er-rcigrne-intel.d +++ b/gas/testsuite/gas/i386/x86-64-avx512er-rcigrne-intel.d @@ -1,4 +1,4 @@ -#as: -mevexrcig=rne +#as: -march=+avx512er -mevexrcig=rne #objdump: -dw -Mintel #name: x86_64 AVX512ER rcig insns (Intel disassembly) #source: x86-64-avx512er-rcig.s --- a/gas/testsuite/gas/i386/x86-64-avx512er-rcigru.d +++ b/gas/testsuite/gas/i386/x86-64-avx512er-rcigru.d @@ -1,4 +1,4 @@ -#as: -mevexrcig=ru +#as: -march=+avx512er -mevexrcig=ru #objdump: -dw #name: x86_64 AVX512ER rcig insns #source: x86-64-avx512er-rcig.s --- a/gas/testsuite/gas/i386/x86-64-avx512er-rcigru-intel.d +++ b/gas/testsuite/gas/i386/x86-64-avx512er-rcigru-intel.d @@ -1,4 +1,4 @@ -#as: -mevexrcig=ru +#as: -march=+avx512er -mevexrcig=ru #objdump: -dw -Mintel #name: x86_64 AVX512ER rcig insns (Intel disassembly) #source: x86-64-avx512er-rcig.s --- a/gas/testsuite/gas/i386/x86-64-avx512er-rcigrz.d +++ b/gas/testsuite/gas/i386/x86-64-avx512er-rcigrz.d @@ -1,4 +1,4 @@ -#as: -mevexrcig=rz +#as: -march=+avx512er -mevexrcig=rz #objdump: -dw #name: x86_64 AVX512ER rcig insns #source: x86-64-avx512er-rcig.s --- a/gas/testsuite/gas/i386/x86-64-avx512er-rcigrz-intel.d +++ b/gas/testsuite/gas/i386/x86-64-avx512er-rcigrz-intel.d @@ -1,4 +1,4 @@ -#as: -mevexrcig=rz +#as: -march=+avx512er -mevexrcig=rz #objdump: -dw -Mintel #name: x86_64 AVX512ER rcig insns (Intel disassembly) #source: x86-64-avx512er-rcig.s --- a/gas/testsuite/gas/i386/x86-64-avx512pf.d +++ b/gas/testsuite/gas/i386/x86-64-avx512pf.d @@ -1,3 +1,4 @@ +#as: -march=+avx512pf #objdump: -dw #name: x86_64 AVX512PF insns --- a/gas/testsuite/gas/i386/x86-64-avx512pf-intel.d +++ b/gas/testsuite/gas/i386/x86-64-avx512pf-intel.d @@ -1,3 +1,4 @@ +#as: -march=+avx512pf #objdump: -dwMintel #name: x86_64 AVX512PF insns (Intel disassembly) #source: x86-64-avx512pf.s --- a/gas/testsuite/gas/i386/x86-64-evex-lig256.d +++ b/gas/testsuite/gas/i386/x86-64-evex-lig256.d @@ -1,4 +1,4 @@ -#as: -mevexlig=256 +#as: -march=+avx512er -mevexlig=256 #objdump: -dw #name: x86_64 AVX512 lig256 insns #source: x86-64-evex-lig.s --- a/gas/testsuite/gas/i386/x86-64-evex-lig256-intel.d +++ b/gas/testsuite/gas/i386/x86-64-evex-lig256-intel.d @@ -1,4 +1,4 @@ -#as: -mevexlig=256 +#as: -march=+avx512er -mevexlig=256 #objdump: -dwMintel #name: x86_64 AVX512 lig256 insns (Intel disassembly) #source: x86-64-evex-lig.s --- a/gas/testsuite/gas/i386/x86-64-evex-lig512.d +++ b/gas/testsuite/gas/i386/x86-64-evex-lig512.d @@ -1,4 +1,4 @@ -#as: -mevexlig=512 +#as: -march=+avx512er -mevexlig=512 #objdump: -dw #name: x86_64 AVX512 lig512 insns #source: x86-64-evex-lig.s --- a/gas/testsuite/gas/i386/x86-64-evex-lig512-intel.d +++ b/gas/testsuite/gas/i386/x86-64-evex-lig512-intel.d @@ -1,4 +1,4 @@ -#as: -mevexlig=512 +#as: -march=+avx512er -mevexlig=512 #objdump: -dwMintel #name: x86_64 AVX512 lig512 insns (Intel disassembly) #source: x86-64-evex-lig.s --- a/opcodes/i386-gen.c +++ b/opcodes/i386-gen.c @@ -45,7 +45,7 @@ typedef struct dependency static const dependency isa_dependencies[] = { { "UNKNOWN", - "~(IAMCU|MPX)" }, + "~(IAMCU|MPX|AVX512ER|AVX512PF|AVX512_4FMAPS|AVX512_4VNNIW)" }, { "GENERIC32", "386" }, { "GENERIC64",