From patchwork Tue Jan 16 11:05:23 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Tejas Belagod X-Patchwork-Id: 84173 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 54CE63857BBE for ; Tue, 16 Jan 2024 11:06:36 +0000 (GMT) X-Original-To: gcc-patches@gcc.gnu.org Delivered-To: gcc-patches@gcc.gnu.org Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on2083.outbound.protection.outlook.com [40.107.20.83]) by sourceware.org (Postfix) with ESMTPS id 2CE6A3858C74 for ; Tue, 16 Jan 2024 11:05:56 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 2CE6A3858C74 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=arm.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=arm.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 2CE6A3858C74 Authentication-Results: server2.sourceware.org; arc=pass smtp.remote-ip=40.107.20.83 ARC-Seal: i=3; a=rsa-sha256; d=sourceware.org; s=key; t=1705403166; cv=pass; b=s9KiAq6J7NZLLmJQTfUXceMsKI2GX196BcnT1cB50BhcedSCSTZlwnNaxzdme1358Xm+LA2X0e/T+0jw8zWkZQ5+398WbvzECl5zTmnVJdsRTDDonGJRoj6ZH0C2ZhorVF7/B5hfGFyvs8ax76jeRo1gLKcWQLYg6ws5kQZkquQ= ARC-Message-Signature: i=3; a=rsa-sha256; d=sourceware.org; s=key; t=1705403166; c=relaxed/simple; bh=xEFTOtUqjVUoaUTElZXT3ibfp+Ka2qYf4VdRpKzsTR8=; h=DKIM-Signature:DKIM-Signature:From:To:Subject:Date:Message-ID: MIME-Version; b=OsxsfVasMnA+imnd6DJnJsHKiIFlMZWpmESKeV+OZ/EgEeYsO2xrl3+o6Y1z/S413A4Yj2sng9iXuuEoxwNGwxta9l/dLrQHzNyCg1ltD3f6bTuunDihEw54QLaRcETTkLGV1W2PUdanPBn91VynHPEZIfw1nymmHBuSd6vnZKk= ARC-Authentication-Results: i=3; server2.sourceware.org ARC-Seal: i=2; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=pass; b=XsE4GXJwk0YjJ8U4arqqhxQgHsbkPtbymhm5tbZTdfDE7X21qNT1kqC0XFTLIhYcrZsT+mlLP4bArMKkdOPtDzVN+anNGq6WiKVtXFjZcTEazLlAP3rEu/IptA7UiM7VuhiP5FgHE94Q0dew/n2NoycFYKuQ/EiXcBd5L60kr4DgiylFQzMw0ml4PJ6AqjBig7APPcYAiLe5efVrlCmhnRULsuQJeJfsg249zCv7gHJ6JDS7lCeJhLzh1nblGguSGm8cAzaoEsA/SVbyEMWxSQ6EPNXI51FJ4mh4qgKHu+VqOsgCM2qr8rStnakI2mLvnWIw4gEuB2kRZM2O0dSwQw== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=lYraOWNk7TeRbxkJZemMunQrkP/FfLm4TItj+gcioqk=; b=WewhgTnpVYtty5D5zsLIHdrSQQH5duWl5aVH6BbLeYCZ3dnQoyvE+1YOshXnPXt4Y2sr18gihmwd+/7273XkcCte+bB9B1dMfBxI2e25yrXuAP43zCZq1I8CAcKqTjumMTo3nGKqMCj7XmQfJNSYLm+TFZSbqzm5sa5JRBlmRIxgTS36EM9WLJ5Y0IrIGSTUpCErSjod4Asg6xzedNOgB17pkkCXw5vQyStwzhIFEb7ADHAWbT90LMauTU0PgKtX6bDz3OWSTzjbu9T0m1gYPc8C2Ev3OwqeMhFvp5eMbqL4ICDGKIZos4Fol2pkr8rOt3ou3upb20CYHpJVpy1ViQ== ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is 63.35.35.123) smtp.rcpttodomain=gcc.gnu.org smtp.mailfrom=arm.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com; arc=pass (0 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dmarc=[1,1,header.from=arm.com]) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=lYraOWNk7TeRbxkJZemMunQrkP/FfLm4TItj+gcioqk=; b=fHZXesh4z8n5vZkjGOl7OwucAtk86GOa78C/7j8IuWT7kimhzVAEAPyhuZi7/Fr6cfbiTk0Yv3v0Mqk+CvA199Mzhzb2JaqAtO5S3KOEAUrjsCsyEOV06rbNP7sIX7XSEe87ONjcSC4Di/weZXHha3Kwulh9lYzHCrn8cbK2IBU= Received: from AS9PR06CA0777.eurprd06.prod.outlook.com (2603:10a6:20b:484::31) by DBBPR08MB6156.eurprd08.prod.outlook.com (2603:10a6:10:20b::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7181.26; Tue, 16 Jan 2024 11:05:53 +0000 Received: from AMS1EPF00000046.eurprd04.prod.outlook.com (2603:10a6:20b:484:cafe::b5) by AS9PR06CA0777.outlook.office365.com (2603:10a6:20b:484::31) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7181.28 via Frontend Transport; Tue, 16 Jan 2024 11:05:52 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AMS1EPF00000046.mail.protection.outlook.com (10.167.16.43) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7202.16 via Frontend Transport; Tue, 16 Jan 2024 11:05:52 +0000 Received: ("Tessian outbound a064b9944658:v228"); Tue, 16 Jan 2024 11:05:52 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: bdd9db8e2ba09fdb X-CR-MTA-TID: 64aa7808 Received: from b96bf1b65826.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 2151BBF6-1959-4AB5-8361-C012469A1C49.1; Tue, 16 Jan 2024 11:05:45 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id b96bf1b65826.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Tue, 16 Jan 2024 11:05:45 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=SUJlNtnaDlL9YWKPcMGjHpjIxnu1lC67H3vFbquP+9nGRztwjMJZChDwwyfdJDaHLzI7dC2ecrvrsihPPazDcjn57Vqy7T1y5k1zxypAgmMK/hS19LO6RwVm3TyqMZv8xL6E71wW954HJyXR/r5tqtIImYIGH3fFvDxZHf6CQvLjyhJXU5qDyy9PdnUL6GIjw6Lr2RYnqkDwDZkRn/ZN2vf5GbdipVn0TQOuAqBOJvNrb+W2WV8XV3mLOfp6N5WyClebJpjo26ZhsrVLprKwA99rcIfK9/CsereYQqPT927DcymQrUjDDoWGCxQTdhW+UrGYUq6ClUglDsD9STYQFg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=lYraOWNk7TeRbxkJZemMunQrkP/FfLm4TItj+gcioqk=; b=HQAJX13pr29VQHQtceXbwp7cfDC8aUG3YG/6zA47sYNHEPy7tlelWC0uD/o6ybNHW9bzjKVFiFwSzx5hSjPH1Digv0nNvRgM7lVJzX/ohAC8abfuDPRA+oUyZDJmCE9hy1Uxn9vU6Ey8lAcwhrZlKZIJKGi1cXqn5mEyN7kCiim4abIdm1hYMzjyDdDvCOLgyNA3lxYj97JtnBy1Ld/l/bcZThvJjtfWFCaHCV6APzb3nlNcQ51DlDTRt1zLor0mASV9sC3oSezjtM2Lvah40j1smdUodJm5AXcuSIHZi11F9cKImnXgvRbpTLzLg/W/kvqdC4omm1aJ6i4OSrfuvw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 40.67.248.234) smtp.rcpttodomain=gcc.gnu.org smtp.mailfrom=arm.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com; dkim=none (message not signed); arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=lYraOWNk7TeRbxkJZemMunQrkP/FfLm4TItj+gcioqk=; b=fHZXesh4z8n5vZkjGOl7OwucAtk86GOa78C/7j8IuWT7kimhzVAEAPyhuZi7/Fr6cfbiTk0Yv3v0Mqk+CvA199Mzhzb2JaqAtO5S3KOEAUrjsCsyEOV06rbNP7sIX7XSEe87ONjcSC4Di/weZXHha3Kwulh9lYzHCrn8cbK2IBU= Received: from AS4P189CA0036.EURP189.PROD.OUTLOOK.COM (2603:10a6:20b:5dd::7) by GV2PR08MB9376.eurprd08.prod.outlook.com (2603:10a6:150:d0::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7181.23; Tue, 16 Jan 2024 11:05:43 +0000 Received: from AMS1EPF00000040.eurprd04.prod.outlook.com (2603:10a6:20b:5dd:cafe::23) by AS4P189CA0036.outlook.office365.com (2603:10a6:20b:5dd::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7181.28 via Frontend Transport; Tue, 16 Jan 2024 11:05:43 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 40.67.248.234) smtp.mailfrom=arm.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 40.67.248.234 as permitted sender) receiver=protection.outlook.com; client-ip=40.67.248.234; helo=nebula.arm.com; pr=C Received: from nebula.arm.com (40.67.248.234) by AMS1EPF00000040.mail.protection.outlook.com (10.167.16.37) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.7202.16 via Frontend Transport; Tue, 16 Jan 2024 11:05:42 +0000 Received: from AZ-NEU-EX02.Emea.Arm.com (10.251.26.5) by AZ-NEU-EX03.Arm.com (10.251.24.31) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.32; Tue, 16 Jan 2024 11:05:42 +0000 Received: from AZ-NEU-EX04.Arm.com (10.251.24.32) by AZ-NEU-EX02.Emea.Arm.com (10.251.26.5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.32; Tue, 16 Jan 2024 11:05:41 +0000 Received: from a078660.blr.arm.com (10.162.46.14) by mail.arm.com (10.251.24.32) with Microsoft SMTP Server id 15.1.2507.32 via Frontend Transport; Tue, 16 Jan 2024 11:05:40 +0000 From: Tejas Belagod To: CC: Tejas Belagod , Subject: [PATCH] AArch64: aarch64_class_max_nregs mishandles 64-bit structure modes [PR112577] Date: Tue, 16 Jan 2024 16:35:23 +0530 Message-ID: <20240116110523.2365505-1-tejas.belagod@arm.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 X-EOPAttributedMessage: 1 X-MS-TrafficTypeDiagnostic: AMS1EPF00000040:EE_|GV2PR08MB9376:EE_|AMS1EPF00000046:EE_|DBBPR08MB6156:EE_ X-MS-Office365-Filtering-Correlation-Id: ddb562b4-5377-4ad8-d573-08dc16831b04 x-checkrecipientrouted: true NoDisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: Veq2d5JyzESolLF6M38XdzQz6MR999G+C9gctEOkwiYFMZiq56n2JElKVDRhKPZJrzKCuX23UGFtQhssUDQVE/LoVlQDNz8QrvFm1bxRpF5aRnNi9UjAQqUlVDqM75O04A/CXKGa5iVaM4mcFpnK2H+Ws1txKyuSVhbuKSyoE/K3p1cHzcBitwbBLzHQAxBXIodaDeFN5P9eQjAI5Q41FXucv8IRlnZ7vKGLOVbrdzDK9nwlZcM9vGCbrBSEBFknwAtutipVhnkFptlWxDX6D+WVA/3KOwDKrIRBvlowoYBQnbvjWN3USIbfIWusOciUiXRIx7LVDnEqP725Ff+aEB5Q1g5xfGfOihdYypU50HIt1R7vnN6JAC7qgxN9Pxz5MqLuIoapM8h2LyfMTtK17bq2S7sokYRsG/liCYUCaCmf89scSRFR0mTOuXgFQ2wGeb1AU6VDQKq6OrzmizTRa0hHI3/AgtBNKdNGaFSmCWlFbtbK49ZL7vBVHB6k2QdpKUc8Z+DbHumyeatI4EBvh2ZNkFgOk6sOePW/apma6/M4aAqXNSEWYwVX8fXvN5YAsFvHAPakM9OhLOexToQXVS1nUQo6siZFyRq56GwkL25L/LrsFYZfloU5zLJTFZyW3Sns0e6a7c6RNmVLmKF3Cq0qfaG7UM0Tk2+XH2SAGuddSYlFoY4NX0sH0pcJPX1R/0fmH8av1oqJ2CTAMYDZKCDfenZPbVeU7SRv/dAeBESlVafhgux/7FxjEZx18ZVP X-Forefront-Antispam-Report-Untrusted: CIP:40.67.248.234; CTRY:IE; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:nebula.arm.com; PTR:InfoDomainNonexistent; CAT:NONE; SFS:(13230031)(4636009)(376002)(136003)(346002)(396003)(39860400002)(230922051799003)(1800799012)(451199024)(186009)(82310400011)(64100799003)(40470700004)(36840700001)(46966006)(40460700003)(84970400001)(40480700001)(336012)(426003)(26005)(83380400001)(36756003)(86362001)(81166007)(356005)(6666004)(36860700001)(44832011)(47076005)(5660300002)(4326008)(82740400003)(1076003)(2616005)(7696005)(6916009)(54906003)(8936002)(316002)(8676002)(478600001)(70586007)(70206006)(2906002)(41300700001)(36900700001); DIR:OUT; SFP:1101; X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV2PR08MB9376 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AMS1EPF00000046.eurprd04.prod.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 7212cd2e-5965-4757-9a20-08dc16831510 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: ca6Sz9f6Qxbe7sxEW4cMT7vyCisYFCaAL7X9PEV96zknt7pN5RtO976fAq1mBUBfGflwwp+ZVzlYMhKDXPGIs5JJ8dm+oP3MG70Yqq4A8Og+9RuVAq2mxf7mAjiaIUZVmgWWsGL3TXzGj5QGJ+hDM/mN91HLKMfPp9uL+oLuqKkrjzKa9PMg0Vb43rDb+5228jBqSH1PxG+giAXEiBYiF2+ecLLXkx2YLvvGqgpXTxraFDw0O5Tbbknzh28rhF2IxN3NVGusTNZ4mYu1BHIUlkmbvtmXI17ot2YulX6I4gFf2YhP3AlswztETbVYGb2dWrGab/JSCjF6AK6t2esP/e8Ww1YepHBbP7iaq8888w9sfMtoIZmTBg8NAxB5UUgrzmYQrO6haJCMIFe4xsZIYcTvTmmVY/PgICakxynoo4PV5RjuwsLI7yjb6/SblKvxAz0+/RLo32breW70W8OZjKQYmnrfjcaqpqdF6zJSwgmSaHVLIRJCNdWLJIrSFgv4CX0ihkxaPOcuUM6tQOpwHA+0UzJAMP9pvEyoZifSyZ/n0eK6wpM+EsxTk8hgeoCQHOktHP4XfH9CwwknucnENZNuPkGYpBzd30JjP/Qt9YQkD/PBBye9IZV8HQJbG9YJGf1msIhLj/yto7OCl1zdiisPQpNMIqYcBLffq1NckKGcrSyOTNJuoh+7O07cX4d8jiDrPf697vmWGdt7OlLLbV5973J1SH6O6wGaZFtUIGs= X-Forefront-Antispam-Report: CIP:63.35.35.123; CTRY:IE; LANG:en; SCL:1; SRV:; IPV:CAL; SFV:NSPM; H:64aa7808-outbound-1.mta.getcheckrecipient.com; PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com; CAT:NONE; SFS:(13230031)(4636009)(396003)(39860400002)(346002)(136003)(376002)(230922051799003)(82310400011)(64100799003)(186009)(1800799012)(451199024)(46966006)(40470700004)(36840700001)(40460700003)(84970400001)(40480700001)(426003)(26005)(336012)(83380400001)(86362001)(36756003)(81166007)(6916009)(5660300002)(6666004)(7696005)(4326008)(41300700001)(47076005)(36860700001)(44832011)(1076003)(82740400003)(478600001)(316002)(8936002)(8676002)(54906003)(70586007)(70206006)(2906002)(2616005); DIR:OUT; SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jan 2024 11:05:52.9127 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: ddb562b4-5377-4ad8-d573-08dc16831b04 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[63.35.35.123]; Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AMS1EPF00000046.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR08MB6156 X-Spam-Status: No, score=-11.5 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, FORGED_SPF_HELO, GIT_PATCH_0, KAM_DMARC_NONE, KAM_SHORT, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H2, SPF_HELO_PASS, SPF_NONE, TXREP, T_SCC_BODY_TEXT_LINE, UNPARSEABLE_RELAY 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: 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 The target hook aarch64_class_max_nregs returns the incorrect result for 64-bit structure modes like V31DImode or V41DFmode etc. The calculation of the nregs is based on the size of AdvSIMD vector register for 64-bit modes which ought to be UNITS_PER_VREG / 2. This patch fixes the register size. Existing tests like gcc.target/aarch64/advsimd-intrinsics/vld1x3.c cover this change. Regression tested on aarch64-linux. Bootstrapped on aarch64-linux. OK for trunk? gcc/ChangeLog: PR target/112577 * config/aarch64/aarch64.cc (aarch64_class_max_nregs): Handle 64-bit vector structure modes correctly. --- gcc/config/aarch64/aarch64.cc | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/gcc/config/aarch64/aarch64.cc b/gcc/config/aarch64/aarch64.cc index a5a6b52730d..b9f00bdce3b 100644 --- a/gcc/config/aarch64/aarch64.cc +++ b/gcc/config/aarch64/aarch64.cc @@ -12914,10 +12914,12 @@ aarch64_class_max_nregs (reg_class_t regclass, machine_mode mode) && constant_multiple_p (GET_MODE_SIZE (mode), aarch64_vl_bytes (mode, vec_flags), &nregs)) return nregs; - return (vec_flags & VEC_ADVSIMD - ? CEIL (lowest_size, UNITS_PER_VREG) - : CEIL (lowest_size, UNITS_PER_WORD)); - + if (vec_flags == (VEC_ADVSIMD | VEC_STRUCT | VEC_PARTIAL)) + return GET_MODE_SIZE (mode).to_constant () / 8; + else + return (vec_flags & VEC_ADVSIMD + ? CEIL (lowest_size, UNITS_PER_VREG) + : CEIL (lowest_size, UNITS_PER_WORD)); case PR_REGS: case PR_LO_REGS: case PR_HI_REGS: