From patchwork Mon May 4 22:05:07 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "H.J. Lu" X-Patchwork-Id: 134446 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from vm01.sourceware.org (localhost [127.0.0.1]) by sourceware.org (Postfix) with ESMTP id EAE4E4BABF31 for ; Mon, 4 May 2026 22:06:35 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org EAE4E4BABF31 Authentication-Results: sourceware.org; dkim=pass (2048-bit key, unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20251104 header.b=gu8h6lRl X-Original-To: gcc-patches@gcc.gnu.org Delivered-To: gcc-patches@gcc.gnu.org Received: from mail-pj1-x1030.google.com (mail-pj1-x1030.google.com [IPv6:2607:f8b0:4864:20::1030]) by sourceware.org (Postfix) with ESMTPS id 35F064BA79A2 for ; Mon, 4 May 2026 22:05:47 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 35F064BA79A2 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=gmail.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 35F064BA79A2 Authentication-Results: server2.sourceware.org; arc=pass smtp.remote-ip=2607:f8b0:4864:20::1030 ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1777932347; cv=pass; b=R+xAmOT/4068OcUBkzIzVhs9MihXJZW31EMS4hzSOHhl4h1dzdJTOBXnXc3uiOeYN4xfEa/4vQ8cYFZ/mukZvPH+i1Z1y45b+1HMaVKnn4GSOKuUHlpW8dbElf/uTuw19hFObEuh45g3hJvC14iz/gOwlJKl9KFkY3BbezwDV40= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1777932347; c=relaxed/simple; bh=9jYAxQCZytNpr2zrDl9t1gm6htczHHgHyvAcq/BkYnk=; h=DKIM-Signature:MIME-Version:From:Date:Message-ID:Subject:To; b=vwcCKa/YkBhy5uGTlHCtbx7WjzPxJERRPWntaFMD1VNn8Hn0+PFGObyxcEsf0v0cWV2B6FjnUlDdHOa7FnG7eefLIRJvTFap75ehmHp7gdjLxibiMfL1YVTyQE7IHAWyZ/J2pE/46JMHVTNtt6yhk+xBwCLt23mgYWaRcx9QMAg= ARC-Authentication-Results: i=2; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 35F064BA79A2 Received: by mail-pj1-x1030.google.com with SMTP id 98e67ed59e1d1-365212191f6so1485570a91.3 for ; Mon, 04 May 2026 15:05:47 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1777932346; cv=none; d=google.com; s=arc-20240605; b=Dw1BMrD2YC2tzdEh8nuBh4Ix8QNA4Pgtrv3zVPMdZrJxRgt0DJHKIhn8UrILM3bbTF 7ADSav9B9DG96Hybql/yecXh8UjprqN1t9zT3g6pIOgnK7W1vuzP+eqVJUYWYSBGOZHa 3pYRrAoLQOczzAP2PirzooX6Ff+M/9pINzWTIoZbD1aJiRmt5JWadqkscq7iS3YQW5cn R60+OsFFBqm1fWX7uaIGi0aO6pjltMgqQ7XerWieCMwOqXAs2aO0qUpSTotUCfPoczJ/ QZcBmHtMqm6+LxpcNg7QVsxCWChk5qj5c6HSCKDymR8a3NlDLQ+I+n/1tvlj9NM6m8F1 xIKw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=to:subject:message-id:date:from:mime-version:dkim-signature; bh=ADe4fi4ij6gfDUVZ+7ncogxkLmEnoEYLx1YwobKEDFg=; fh=cicFQXEHENU/cU861CQal/8e9v1oFuB/WrIZ0ZvJp6E=; b=d4ax/YvyX8yZDglPQaR6h1eO3PC7odHMVhPM7nsbrtqOhZVdyaYGX2qI1KZ57sb+xL KC8Q3SLY9jGCjKJ/WT0rAIBkTt5jbnKmXcujtspOYiKbxkCha6fT7vwZUE53D1qrJsol 4zyqqO6ggjB3vu3UFs9QRFexvxwkla1UyjfanJrz4+AAZRL24AKiaByTl6At4VdKsM1E a8FUBt8FafrjcdWOshwb73u7Iw9O/lPUZ5mk4iyrGMMCwLgSMXUZH55U6K75sMlztI8b 7bAzm892RpfHlB3iIrBDzHqh3iDk/iJSWyCSC11rgpJfnTVb788kT7LMxSebQSUR+ssO sQMA==; darn=gcc.gnu.org ARC-Authentication-Results: i=1; mx.google.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1777932346; x=1778537146; darn=gcc.gnu.org; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=ADe4fi4ij6gfDUVZ+7ncogxkLmEnoEYLx1YwobKEDFg=; b=gu8h6lRlRYXnCVqHORLK8JSU8WLf8NGvxKEoYkB7Vfl1HfD6wRhZuwBnMz0P11MVa8 u/zIJtKVMKSyn7q9QN06d7cvnXqATUYK0SLfyYsD4TxH7Xw1tg8k8qPH7CpD1LjxgqHo J69Gt6W1RoJtCY8TFhSHUXiNNk1hRkDF1YK727dZJtow08fCO1kSzRLo2ocmz/XP+tSS mMg1SzZjgzC1hheZmiCnuZzNaWxGLtUfpXC3KmTMGtR+CKeunP1w33MsBrqpaLB9yVVd 9vErGjBHZ39wKWCGd38z0WGffZ0Lt8xgstoRApTKdeXSP4ATiOd9MCEQCM6QZkyCXRVO gOLg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1777932346; x=1778537146; h=to:subject:message-id:date:from:mime-version:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=ADe4fi4ij6gfDUVZ+7ncogxkLmEnoEYLx1YwobKEDFg=; b=FC/BZ9np5JWW1T/hXfJia4ghB4hCrvX/5tAx/VHsiAMu+egMN2hQFVQTC35ctpaIZA 0zrbcl9ccKMQpmxjWQyMoeFhyRm84qXrrPv4pEavZ6XvQ2yoe3+zvkwFaL9k1zE+aTr2 s7x/dIkwXkv9bFEOhpRIkLopZzSVnrXYYzv/m00pEW+XDABBVYH0p+iyzKd93bfs9pqd vDsFgn1wpORFzRdJHTk0Ss4hf2BajAA6lphuSIzLBbOjJIQDqltBdb6ak3cSo1/hn3wD KKdBkR7AXQZPN4ie9KUobSOSSh/K284IKP4qAkPPUkOAXYjD0TBHn+dGG9lt1L1BMFtb SKYQ== X-Gm-Message-State: AOJu0YzfiWqiK8SfZxUh4kqILc5SLs4mAicJ0l2CjbSwD/47VHwXemo7 +zqKML5z+z4D+ITJhO4Q8M1GhPnzGWi8QDkMLwccthv0cht4e0mCEWp7CR3F9mFQx4pNIxfCSd6 0XigqGf4mdgguPygcF7EudZ8RQHY/2oieghMSIy1KtFYe X-Gm-Gg: AeBDietXTQqapUt3UVbSq5eDqFrD5WiBRFEPdL2GAu/43SP8bN0j3HBLB5cdv7dbVHD +w8Mw+eRPyZCiKdaamXNxlW05sYz5Th1mnjhi+t/8/mcPo/AGsd717HmmXMeS7Q04WPMw00UTI0 NzFIXdvwK4jcQNSgoIfzSn/NhIUFgpMeZDu1krsGagp+YPopcYJkowViWGdnEcUURGt+JIbdMZB pUffMfwa3GfOkS2sl9LhqzcQGL1kljkUHRu8lCpxO83PKBizRAYqegn0eXGbOAab0gsFIaCEXD8 jD8z+8b6X+SnB2LyxYA= X-Received: by 2002:a17:90a:c88b:b0:35f:b69d:7292 with SMTP id 98e67ed59e1d1-3657747c1f3mr582179a91.15.1777932344733; Mon, 04 May 2026 15:05:44 -0700 (PDT) MIME-Version: 1.0 From: "H.J. Lu" Date: Tue, 5 May 2026 06:05:07 +0800 X-Gm-Features: AVHnY4LRq-Jsf8pYFxEw0JFsNlABB1FSuCI6TF2HlZ58rWeByWwj21HZSKAEETo Message-ID: Subject: [PATCH] x86: Fix shift-gf2p8affine-2.c failure on non-AVX512 CPU To: GCC Patches , Xi Ruoyao , Uros Bizjak , Hongtao Liu X-Spam-Status: No, score=-3010.0 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, FREEMAIL_FROM, GIT_PATCH_0, KAM_SHORT, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on sourceware.org X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: gcc-patches-bounces~patchwork=sourceware.org@gcc.gnu.org Enabling AVX512 via command line may cause the compiler to generate AVX512 instructions even before the runtime CPU feature check, causing the test to SIGILL if the CPU lacks AVX512. Extract tests to do_test and change main to call only if __builtin_cpu_supports ("gfni") returns true to avoid any AVX512 instructions in main: main: movq __cpu_features2@GOTPCREL(%rip), %rax testb $1, (%rax) jne .L1577 xorl %eax, %eax ret .L1577: pushq %rax call do_test xorl %eax, %eax popq %rdx ret * gcc.target/i386/shift-gf2p8affine-2.c (do_test): New function. Extracted from main. (main): Drop __builtin_cpu_init. Call do_test only if __builtin_cpu_supports ("gfni") returns true. From b277262e2d735bb70b4a7dd6dc0293ed9275887c Mon Sep 17 00:00:00 2001 From: "H.J. Lu" Date: Sun, 3 May 2026 04:39:19 +0800 Subject: [PATCH] x86: Fix shift-gf2p8affine-2.c failure on non-AVX512 CPU Enabling AVX512 via command line may cause the compiler to generate AVX512 instructions even before the runtime CPU feature check, causing the test to SIGILL if the CPU lacks AVX512. Extract tests to do_test and change main to call only if __builtin_cpu_supports ("gfni") returns true to avoid any AVX512 instructions in main: main: movq __cpu_features2@GOTPCREL(%rip), %rax testb $1, (%rax) jne .L1577 xorl %eax, %eax ret .L1577: pushq %rax call do_test xorl %eax, %eax popq %rdx ret * gcc.target/i386/shift-gf2p8affine-2.c (do_test): New function. Extracted from main. (main): Drop __builtin_cpu_init. Call do_test only if __builtin_cpu_supports ("gfni") returns true. Signed-off-by: H.J. Lu --- gcc/testsuite/gcc.target/i386/shift-gf2p8affine-2.c | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/gcc/testsuite/gcc.target/i386/shift-gf2p8affine-2.c b/gcc/testsuite/gcc.target/i386/shift-gf2p8affine-2.c index ef088ab0b95..5b88ae098d7 100644 --- a/gcc/testsuite/gcc.target/i386/shift-gf2p8affine-2.c +++ b/gcc/testsuite/gcc.target/i386/shift-gf2p8affine-2.c @@ -151,12 +151,10 @@ FUNC (N5) func##N##ref (array2, len); \ if (memcmp (array, array2, len)) __builtin_abort () -int main () +__attribute__ ((noipa)) +void +do_test (void) { - __builtin_cpu_init (); - if (!__builtin_cpu_supports ("gfni")) - return 0; - const unsigned long len = 256; char array[len], array2[len]; unsigned char filler = FILLER; @@ -195,6 +193,11 @@ int main () TEST (N5, sbyteshiftr); TEST (N5, ubyteror); TEST (N5, ubyterol); +} +int main () +{ + if (__builtin_cpu_supports ("gfni")) + do_test (); return 0; } -- 2.54.0