[{"id":3678962,"web_url":"http://patchwork.ozlabs.org/comment/3678962/","msgid":"<87ik9osclf.fsf@googlemail.com>","list_archive_url":null,"date":"2026-04-18T11:59:56","subject":"Re: [PATCH 1/7] aarch64: Add ZTO_REGNUM use to movt","submitter":{"id":4363,"url":"http://patchwork.ozlabs.org/api/people/4363/","name":"Richard Sandiford","email":"rdsandiford@googlemail.com"},"content":"Alice Carlotti <alice.carlotti@arm.com> writes:\n> Also replace unspec_volatile with plain unspec - there no need to\n> prevent dead code elimination if the dependencies are correct.\n>\n> ---\n>\n> If the index is 0, then movt is a destructive instruction, so it should be\n> possible to remove the dependency in that case.  However, that would be a more\n> disruptive chane, so we can leave it till stage 1.\n>\n>\n> gcc/ChangeLog:\n>\n> \t* config/aarch64/aarch64-sme.md (aarch64_sme_write_zt): Add\n> \tZTO_REGNUM use and make unspec non-volatile.\n>\n> gcc/testsuite/ChangeLog:\n>\n> \t* gcc.target/aarch64/sme/zt0_state_8.c: New test.\n\nOK, thanks.\n\nRichard\n\n> diff --git a/gcc/config/aarch64/aarch64-sme.md b/gcc/config/aarch64/aarch64-sme.md\n> index f24e91997fd640f82c11353dd196fe334daec630..d5564e57bdf130bb51daf5c52be5a743ab32064d 100644\n> --- a/gcc/config/aarch64/aarch64-sme.md\n> +++ b/gcc/config/aarch64/aarch64-sme.md\n> @@ -1067,8 +1067,9 @@\n>  ;;      __arm_streaming __arm_out (\"zt0\");\n>  (define_insn \"@aarch64_sme_write_zt<SVE_FULL:mode>\"\n>    [(set (reg:V8DI ZT0_REGNUM)\n> -\t(unspec_volatile:V8DI\n> -\t  [(match_operand:SVE_FULL 0 \"register_operand\" \"w\")\n> +\t(unspec:V8DI\n> +\t  [(reg:V8DI ZT0_REGNUM)\n> +\t   (match_operand:SVE_FULL 0 \"register_operand\" \"w\")\n>  \t   (match_operand:DI       1 \"const_int_operand\")]\n>  \t  UNSPEC_SME_WRITE))]\n>    \"TARGET_SME_LUTv2 && TARGET_STREAMING\"\n> diff --git a/gcc/testsuite/gcc.target/aarch64/sme/zt0_state_8.c b/gcc/testsuite/gcc.target/aarch64/sme/zt0_state_8.c\n> new file mode 100644\n> index 0000000000000000000000000000000000000000..8eb3d424f539d8a645a9889f465ac9013048b5f5\n> --- /dev/null\n> +++ b/gcc/testsuite/gcc.target/aarch64/sme/zt0_state_8.c\n> @@ -0,0 +1,14 @@\n> +// { dg-options \"-O3 -fomit-frame-pointer -fno-optimize-sibling-calls\" }\n> +\n> +#include <arm_sme.h>\n> +\n> +#pragma GCC target \"+sme2+sme-lutv2\"\n> +\n> +__arm_streaming __arm_inout(\"zt0\")\n> +void foo(svfloat32_t z)\n> +{\n> +  svzero_zt (0);\n> +  svwrite_lane_zt_f32 (0, z, 1);\n> +}\n> +\n> +// { dg-final { scan-assembler \"zero\" } }","headers":{"Return-Path":"<gcc-patches-bounces~incoming=patchwork.ozlabs.org@gcc.gnu.org>","X-Original-To":["incoming@patchwork.ozlabs.org","gcc-patches@gcc.gnu.org"],"Delivered-To":["patchwork-incoming@legolas.ozlabs.org","gcc-patches@gcc.gnu.org"],"Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=googlemail.com header.i=@googlemail.com\n header.a=rsa-sha256 header.s=20251104 header.b=gzPoaApj;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=gcc.gnu.org\n (client-ip=38.145.34.32; helo=vm01.sourceware.org;\n envelope-from=gcc-patches-bounces~incoming=patchwork.ozlabs.org@gcc.gnu.org;\n receiver=patchwork.ozlabs.org)","sourceware.org;\n\tdkim=pass (2048-bit key,\n unprotected) header.d=googlemail.com header.i=@googlemail.com\n header.a=rsa-sha256 header.s=20251104 header.b=gzPoaApj","sourceware.org; dmarc=pass (p=quarantine dis=none)\n header.from=googlemail.com","sourceware.org; spf=pass smtp.mailfrom=googlemail.com","server2.sourceware.org;\n arc=none smtp.remote-ip=209.85.221.50"],"Received":["from vm01.sourceware.org (vm01.sourceware.org [38.145.34.32])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519 server-signature ECDSA (secp384r1) server-digest SHA384)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4fyVgp5Yh2z1yDF\n\tfor <incoming@patchwork.ozlabs.org>; Sat, 18 Apr 2026 22:00:37 +1000 (AEST)","from vm01.sourceware.org (localhost [127.0.0.1])\n\tby sourceware.org (Postfix) with ESMTP id 405C64D8D1E2\n\tfor <incoming@patchwork.ozlabs.org>; Sat, 18 Apr 2026 12:00:35 +0000 (GMT)","from mail-wr1-f50.google.com (mail-wr1-f50.google.com\n [209.85.221.50])\n by sourceware.org (Postfix) with ESMTPS id E1FB14D108F4\n for <gcc-patches@gcc.gnu.org>; Sat, 18 Apr 2026 12:00:06 +0000 (GMT)","by mail-wr1-f50.google.com with SMTP id\n ffacd0b85a97d-43d734223e4so991424f8f.0\n for <gcc-patches@gcc.gnu.org>; Sat, 18 Apr 2026 05:00:06 -0700 (PDT)","from localhost ([103.214.45.63])\n by smtp.googlemail.com with ESMTPSA id\n ffacd0b85a97d-43fe4e4d112sm13847311f8f.29.2026.04.18.05.00.03\n (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n Sat, 18 Apr 2026 05:00:04 -0700 (PDT)"],"DKIM-Filter":["OpenDKIM Filter v2.11.0 sourceware.org 405C64D8D1E2","OpenDKIM Filter v2.11.0 sourceware.org E1FB14D108F4"],"DMARC-Filter":"OpenDMARC Filter v1.4.2 sourceware.org E1FB14D108F4","ARC-Filter":"OpenARC Filter v1.0.0 sourceware.org E1FB14D108F4","ARC-Seal":"i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1776513607; cv=none;\n b=isKZuwIPmjP3DPq2i0uDp2XwkVo65TprTaLkW/1rE8kNZOU0cfTJ+sd73c/9SnrGhd5cN+ZHHxzadWJesH52xSmwRM0rIUS0wY1BtTqLwN8g/IIT4n3m0BhIkdjeFa93EynDRKXGMg6/QmDfpd/V831Wwr7Ogvx3wUBYYlcNozU=","ARC-Message-Signature":"i=1; a=rsa-sha256; d=sourceware.org; s=key;\n t=1776513607; c=relaxed/simple;\n bh=/kAwdDcx3Fb9lr7ilSOn/UqsphJpGxcs3uWXA5poqgw=;\n h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version;\n b=xuMNo/BmUJBUW06i0QDmqJtFaseXlHNah+w5NodgAZeMNYd73xS9pKYQVsBCvetuUYjUW6d5lEwBt7bvEfzds774wCBsdV2bQsWsA6PdcJCDvpCRV2CGGViWXX0YxWL8ovbbNHtU4dUB06w7nmR1Jejr6znA+HqkvIZpMv2eUTQ=","ARC-Authentication-Results":"i=1; server2.sourceware.org","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=googlemail.com; s=20251104; t=1776513606; x=1777118406; darn=gcc.gnu.org;\n h=mime-version:user-agent:message-id:date:references:in-reply-to\n :subject:cc:mail-followup-to:to:from:from:to:cc:subject:date\n :message-id:reply-to;\n bh=Sm9VzByBKGN4wWOuyBnDWlNZwrJLDLRANRLTsdOi2dE=;\n b=gzPoaApjxc1gUyiExtGPk8LPhQkGYzpwY1IrNb+dSua93+L3B1yY6mcAXXDOLBUrPm\n KpCSA39UenekdeI3JwZfDmOqveOvJHGHD+OTqhPht/3oK7/B5INTOTUsF/pfKdkGiXWB\n Vp2SdR9dhGJvIMblEQ+ydmFPFDtX7YW5s5sx8TbKI5N/WvKs51wynTuQmrWvNv8eRrHa\n ldiunOmLgqUvfgLAurBDxjJ0ys7x/5BxgzocAXu6ZndRWKQoQlzLpukzfOFUqiXtpmga\n YfVQk+pNT+dpWd6YClAFHUe4J/T6EzBgbzQhnzuGD+Dxavnofl2Gf0W5riDIalr0bcH2\n vh7A==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20251104; t=1776513606; x=1777118406;\n h=mime-version:user-agent:message-id:date:references:in-reply-to\n :subject:cc:mail-followup-to:to:from:x-gm-gg:x-gm-message-state:from\n :to:cc:subject:date:message-id:reply-to;\n bh=Sm9VzByBKGN4wWOuyBnDWlNZwrJLDLRANRLTsdOi2dE=;\n b=tHxEx4ClS3gFgLgGv63afQgEdJzhRGDq9p3+3mgMPI7cChBmxoXQhL1IM37faVoM2b\n Hx/lIIfw258TTGKngBGz9EM3YSesHzP5eN5IvZj+MQ9Q18OWJppjxgiz/2T+s3HFHby8\n nufSvUfv/NVcz+FzGMgiAr5ZWBVdVOF+6nzexfOuPFp/Mn5wkoOxPlg/iHCIsgSFO90L\n 8dmG4A1gQahmoWsdF142Z89/vCNz2ywzyzrU+qfPQvsMBb31iRa4VvAnYRsIJspTB9ME\n mXEDQZzQgqIvsGEEHpbfCYessBi9HyYdWn9XCTm6VEr+jHrg4ChAsnU0QBxInWoHYUk6\n bhwg==","X-Gm-Message-State":"AOJu0YzwwIAd5enmX5hVm8rFJaoUm7EOhPhVQfAKel3sqQA24J7jIgEs\n HFtbG3LEUXvuHCcqs7OAhO42Dlft3yA/p0kZkZJbYWnZnpUtAC+8pRkI","X-Gm-Gg":"AeBDietWdymNq1TI/PnK7f7G5MVbVTehs73t8PC7rkJ4Ocn8NVLXquS05agdV+ncgFK\n SFYIbzgkCh+ttfxUYYm4hBNwQ/+i8vltfVELoczYEFJKnyxVzIgDm+B/EfNgJKpuMtC6PsDROjY\n wmaud2XKB4uvfYH3D8Y1H0QR5g4gTZ7prflYOiMEDz20axgeSUY2D4R0nZvkROv9hFv5KxWBvu6\n fTP96+1iop1Tvm+HhsIp7RHkvnkHa0f7zAe4aeehFWDxUnfsp4Ov2uWC8Pa49U6m2fS+SNaV8+o\n oiDpXQa6kL9htorBVALjYcrWAbZOeBQRTashnOBZJqs03naQwVuqpZvlSrY/LPBg9IiI+0bqevO\n 0vAt1fytrKNa2aa34y4l53maSkwb4wcCfPt/HZ/KT6X31rCtC3Jnwfcenf4m7VevkCgFrzv6MSg\n DWn2kWEitFyNP5GPhFd4eaCQq7rtkM9Z8bX2UES2A=","X-Received":"by 2002:a5d:5c81:0:b0:43d:729e:f23a with SMTP id\n ffacd0b85a97d-43fe408dab9mr7751667f8f.22.1776513605468;\n Sat, 18 Apr 2026 05:00:05 -0700 (PDT)","From":"Richard Sandiford <rdsandiford@googlemail.com>","To":"Alice Carlotti <alice.carlotti@arm.com>","Mail-Followup-To":"Alice Carlotti\n <alice.carlotti@arm.com>,gcc-patches@gcc.gnu.org,  Richard Earnshaw\n <richard.earnshaw@arm.com>,  Tamar Christina <tamar.christina@arm.com>,\n Kyrylo Tkachov <ktkachov@nvidia.com>,  Alex Coplan <alex.coplan@arm.com>,\n Andrew Pinski <andrew.pinski@oss.qualcomm.com>,  Wilco Dijkstra\n <wilco.dijkstra@arm.com>,  Karl Meakin <karl.meakin@arm.com>,\n rdsandiford@googlemail.com","Cc":"gcc-patches@gcc.gnu.org,  Richard Earnshaw <richard.earnshaw@arm.com>,\n Tamar Christina <tamar.christina@arm.com>,  Kyrylo Tkachov\n <ktkachov@nvidia.com>,  Alex Coplan <alex.coplan@arm.com>,  Andrew Pinski\n <andrew.pinski@oss.qualcomm.com>,  Wilco Dijkstra\n <wilco.dijkstra@arm.com>,  Karl Meakin <karl.meakin@arm.com>","Subject":"Re: [PATCH 1/7] aarch64: Add ZTO_REGNUM use to movt","In-Reply-To":"<700b4a89-6081-9cd6-0e91-0304a15affd9@e124511.cambridge.arm.com>\n (Alice Carlotti's message of \"Sat, 18 Apr 2026 01:28:52 +0100\")","References":"<500b3dee-1ffe-5d08-2308-5bf06d38650c@e124511.cambridge.arm.com>\n <700b4a89-6081-9cd6-0e91-0304a15affd9@e124511.cambridge.arm.com>","Date":"Sat, 18 Apr 2026 12:59:56 +0100","Message-ID":"<87ik9osclf.fsf@googlemail.com>","User-Agent":"Gnus/5.13 (Gnus v5.13)","MIME-Version":"1.0","Content-Type":"text/plain","X-BeenThere":"gcc-patches@gcc.gnu.org","X-Mailman-Version":"2.1.30","Precedence":"list","List-Id":"Gcc-patches mailing list <gcc-patches.gcc.gnu.org>","List-Unsubscribe":"<https://gcc.gnu.org/mailman/options/gcc-patches>,\n <mailto:gcc-patches-request@gcc.gnu.org?subject=unsubscribe>","List-Archive":"<https://gcc.gnu.org/pipermail/gcc-patches/>","List-Post":"<mailto:gcc-patches@gcc.gnu.org>","List-Help":"<mailto:gcc-patches-request@gcc.gnu.org?subject=help>","List-Subscribe":"<https://gcc.gnu.org/mailman/listinfo/gcc-patches>,\n <mailto:gcc-patches-request@gcc.gnu.org?subject=subscribe>","Errors-To":"gcc-patches-bounces~incoming=patchwork.ozlabs.org@gcc.gnu.org"}}]