Message ID | Z1BIRbih9N9feAO0@arm.com |
---|---|
State | New |
Headers |
Return-Path: <gcc-patches-bounces~patchwork=sourceware.org@gcc.gnu.org> 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 98FCE3858D38 for <patchwork@sourceware.org>; Wed, 4 Dec 2024 12:23:50 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 98FCE3858D38 Authentication-Results: sourceware.org; dkim=pass (1024-bit key, unprotected) header.d=arm.com header.i=@arm.com header.a=rsa-sha256 header.s=selector1 header.b=RhZf1ry9; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.a=rsa-sha256 header.s=selector1 header.b=RhZf1ry9 X-Original-To: gcc-patches@gcc.gnu.org Delivered-To: gcc-patches@gcc.gnu.org Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on20614.outbound.protection.outlook.com [IPv6:2a01:111:f403:2612::614]) by sourceware.org (Postfix) with ESMTPS id 8461B3858C2B for <gcc-patches@gcc.gnu.org>; Wed, 4 Dec 2024 12:17:27 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 8461B3858C2B 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 8461B3858C2B Authentication-Results: server2.sourceware.org; arc=pass smtp.remote-ip=2a01:111:f403:2612::614 ARC-Seal: i=3; a=rsa-sha256; d=sourceware.org; s=key; t=1733314647; cv=pass; b=oeH7yreY9/nqvUeT1/J+KxjaUAZrvpKWhYgtI6In8JviiM5JCda9mT7zuUW3F49chkzW4yhS8TiHBRQAQcLb8GY6DH3WFwm6ylbK3I99W0sw8Vh6ZsCl2JxE0AFWJt2xSvlUDujJIBiiZgf8m+ggaTwC7BcJDbA1XUZTes9XAk4= ARC-Message-Signature: i=3; a=rsa-sha256; d=sourceware.org; s=key; t=1733314647; c=relaxed/simple; bh=XC30Mr5GEkMzuhrJ72xqgQd9+bZDEnNGmNje7jUwmIM=; h=DKIM-Signature:DKIM-Signature:Date:From:To:Subject:Message-ID: MIME-Version; b=LxFCZrgglayyy6LIeDQ8ZBCSdn9CtLZKjcou52Z7F+cWg8FWw8YrF71mJD6Fh+m346Ydt/wlKPbqB8KdymWcXsK3dkX21HIq5+bKELq2MmPhp48/+ShxQMcT1oqYxqpyC5HA4+s8N/MBfNDbh2z/e3FaNfuJ5/ao8JPecQQ4FOY= ARC-Authentication-Results: i=3; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 8461B3858C2B ARC-Seal: i=2; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=pass; b=ueMcvDUQposQy3CWaAQXvo6ENE8gSoaanO+UhbwbcstB5lz9sh9xYPwIqIrWAeSJQ3htbpOQZBXe9O7ssm6vo7y1rkoqDQdAsddyqd3H6P9SKPkKKVJx+R5Htiaf8bhAkJBn3YwRZUQtOln4Cnxj6J+15qM1vc7st374AZqwmjIsKB06euIAHadTk23JS4b2JiWcIqZ7rSL4uAsm5uKUi9BzqONPlvyJnHQuZWGTq9JQ3tcNLCrxLZOl8bMt8Xiy510ArC/yOJn0cAx+C5wCftk/rPFeyMque6raceb+jZdTM9KqoUl36jP964i8RflwpHsXYh/VieO81H43CdW7Xg== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=WRe6nMzCxEVpcNKlS/MSfBOC4PMTC7gci1+qC53BPrA=; b=JTN/23MTmLj1Stibmuyy3FDUUjVWYHO37pVuytyEZGAaztfVK7YXS9F+Ujh5TJ95DlArmBe3Pvx3a42uDmpOM/cykVRjzjXGudpKBc0KhTjPC0ZPS8qggIQQ7Vl+RaRreTyD+UFRaSP4+0YoH8ALMOkaaQTP+VNwBOjcxEldsqbhYWRz4ksWCzOIfhe+f2o+KmTPtTaKX3DJhbCrrB10s5ULSpRlEvp8y2VeCNCXsHR1xdbJYEiQ7JNaOqoGoOl+E2o3vwjWEWTRqJhG8XZ1u0wFhXwfmc9xLSL0qwbRtcsFTPD+CLmZNPgNhf391GyqAzfI8ARMjiKPlWV2duQEqA== 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=arm.com; arc=pass (0 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com] dmarc=[1,1,header.from=arm.com]) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=arm.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=WRe6nMzCxEVpcNKlS/MSfBOC4PMTC7gci1+qC53BPrA=; b=RhZf1ry9QtZynb0p3ce3YwjqhZnEj+fNfD8baJwRMjNSCh/8cYcshA0wZpXdxHRhmv3JqHJcS6t+5kC7B10PAdsyPlkW2/7PB45Nrs9qni/WLHGiI43MPioluS3ejUSL7ezsVIoatHO1bdL95b0CotRQOegCoFQ3Uxa/6e0+ZgQ= Received: from AM0PR06CA0118.eurprd06.prod.outlook.com (2603:10a6:208:ab::23) by PR3PR08MB5689.eurprd08.prod.outlook.com (2603:10a6:102:90::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8207.19; Wed, 4 Dec 2024 12:17:21 +0000 Received: from AM3PEPF00009B9C.eurprd04.prod.outlook.com (2603:10a6:208:ab:cafe::a3) by AM0PR06CA0118.outlook.office365.com (2603:10a6:208:ab::23) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8207.18 via Frontend Transport; Wed, 4 Dec 2024 12:17:21 +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=arm.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 AM3PEPF00009B9C.mail.protection.outlook.com (10.167.16.21) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8230.7 via Frontend Transport; Wed, 4 Dec 2024 12:17:21 +0000 Received: ("Tessian outbound 6f08927dda96:v522"); Wed, 04 Dec 2024 12:17:21 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: b9cdbeb8ae6d161b X-TessianGatewayMetadata: VLPUn9fV0EwRWpFadtU/yGqLllVim63vGgjbHhZbJpDPyJZ3g1lso6gr86YyT9Zcn6xP8JiolbPH3H2i1TJtzgiOTidpBzj76J8mImDtd4dSnrl37g2j8ObC+CTBpzDts7HNfZ649AJK4sShPa19Ow== X-CR-MTA-TID: 64aa7808 Received: from La01b6f28ab25.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 3A447729-B8D4-4295-AD70-DDBE55B5DCA3.1; Wed, 04 Dec 2024 12:17:14 +0000 Received: from EUR02-VI1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id La01b6f28ab25.1 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384); Wed, 04 Dec 2024 12:17:14 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=iPrWJdh9LpkVDFY7OuZA37jOKU1JHTRDsp6kYuyC9JmpX/y8nMApX9/1ziClPs8zLFSwVJ7+uVpuZeUz4yLhuOlYgRfNLedQlLbmGoO5c/FsEDJXNRpHV+24HnapKug5lCsG84g/+fyEFeIr1an56Ry4kO11UkURUkyvAcYql2+UB72WLnCU+PszUE4cHEjFyefE9ve0dXQx2Ra/ddYJLAVfpYQ3zuQ/nLTszZ3QflUEF4LgjVdXQuv/ods382dVYxdpkAXEdz3VHN43CQ4JpAfPrOje9Sp7JT19+zrxXbeAVP1NhcpISUSE6IovYMamhsiMgqmaLuidLwLiO/JKFg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=WRe6nMzCxEVpcNKlS/MSfBOC4PMTC7gci1+qC53BPrA=; b=ROdh6l98Dvnr7W4qndfAFhvwFL5X3WowAZw1royR/l/DptbQNdI9/LZtdFvjAAEjRPNIWVV9nr8p31o33AVpRodr9w5d6m8EWRlYAn4j0kJT+yD0uUcWaf6uX3hp8nYYy83HHgXrE+7dKBGvn2So7njYts59VCh28Hc2Zi8iaz29PW2SjExZ4sbTIVnuRzxn0EIhMWJHo6+inpjA7LELS2x2w2NcSO+P/RPlK4yl96tSRsq6ccLoz+mfWADmQtfxLVtIE9GEDh4kZtW9Wzsjwj5a4r3D2F2NMo7/x+01DGwv4JvWcPZ1s0FNFL/7PmN1ZDAhK0HwnExX87C9D6v/iA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=arm.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=WRe6nMzCxEVpcNKlS/MSfBOC4PMTC7gci1+qC53BPrA=; b=RhZf1ry9QtZynb0p3ce3YwjqhZnEj+fNfD8baJwRMjNSCh/8cYcshA0wZpXdxHRhmv3JqHJcS6t+5kC7B10PAdsyPlkW2/7PB45Nrs9qni/WLHGiI43MPioluS3ejUSL7ezsVIoatHO1bdL95b0CotRQOegCoFQ3Uxa/6e0+ZgQ= Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; Received: from VI1PR08MB5325.eurprd08.prod.outlook.com (2603:10a6:803:13e::17) by AS8PR08MB6390.eurprd08.prod.outlook.com (2603:10a6:20b:31b::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8230.11; Wed, 4 Dec 2024 12:17:12 +0000 Received: from VI1PR08MB5325.eurprd08.prod.outlook.com ([fe80::89dc:c731:362b:7c69]) by VI1PR08MB5325.eurprd08.prod.outlook.com ([fe80::89dc:c731:362b:7c69%2]) with mapi id 15.20.8207.017; Wed, 4 Dec 2024 12:17:12 +0000 Date: Wed, 4 Dec 2024 12:17:09 +0000 From: Tamar Christina <tamar.christina@arm.com> To: gcc-patches@gcc.gnu.org Cc: nd@arm.com, rguenther@suse.de Subject: [PATCH 4/7]middle-end: Fix mask length arg in call to vect_get_loop_mask [PR96342] Message-ID: <Z1BIRbih9N9feAO0@arm.com> Content-Type: multipart/mixed; boundary="7OHi7NbONfu/zn6E" Content-Disposition: inline In-Reply-To: <patch-19026-tamar@arm.com> X-ClientProxiedBy: LO3P123CA0011.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:ba::16) To VI1PR08MB5325.eurprd08.prod.outlook.com (2603:10a6:803:13e::17) MIME-Version: 1.0 X-MS-TrafficTypeDiagnostic: VI1PR08MB5325:EE_|AS8PR08MB6390:EE_|AM3PEPF00009B9C:EE_|PR3PR08MB5689:EE_ X-MS-Office365-Filtering-Correlation-Id: 48d8f4d4-1771-4b28-2903-08dd145d9a76 x-checkrecipientrouted: true NoDisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0;ARA:13230040|1800799024|376014|366016; X-Microsoft-Antispam-Message-Info-Original: /lACgR2UEGQCNdLODl/yxHmWVjrw7+ilv4avpaq+8GBWhdFoLb3GX2PgO3D14VIrh6Z2+TbLF/JNNDtqd5O2WVWR9Rrm4jdX1aK/xMPmGdl0+XtsVrVDb715jvyPJkvTLdIGPI0MpmYpXty+ExYxUQkKEWW1KsBeeEFZJQkiwwilXPDAWPqRBUtJbTqHk6+dviF9C+xqFJ1DqFtd79JZ46IHxBzL7Rnhb5g61I5kVtjj5veEHEqy7fTmTna9Tdtw/TMWFfijYmKdFdEogUwRSLJueF7shwXLsERVl2l1sgrICWmi2y+21DhgtSkKFkuD2gBFJaqipc3EckAA5twjcz3bigZdCfaT6lKkZsSMAw+6eWjXkcK/PUCiwb49JZVlc4BIAA+WCyrcEe3/3g25MExw0JcIdnbhU3ltmGTJkZrRh967TaWGxkpd+O9Th8KGuHmeoooAILJ3dcrS0KBOAwH0j88Z1seyi/Z8Yfx7RG9iT4JgFzSimp5HZxh/aHd6xYyDJUX3788onQhmd40cdJsgCt8vLW0SGP1p7FlFRlEFFWrfsW5NOAD4mWWld608LyWsL6D3uv+dV74AYhhr/dp7kWufxdwlF1hbXvzn5WLPmdrgnhlKw7RcFA+r/NiTX5g9W+6z1GUpxDBNwrXnS0xF4/IVQVxCXJMWq/OLl25QLLcY7AVH6L+dZEoNbXAr5UsaAUDoT4NG0k5HGcEkRTlJJCy2DZ/rMvIb9PCjQmOQbzrnTpl/gGcSzIKWlb6pvIQx7eC4uVz3mss1Vxr0QBM65nxK/n9GzIHemNBsaETm5IrHeBoFFQ3KcBIUy1gtYcQ1xrT6j+QmIbiUReVqiWQ5bdgkOI5mh+Q0p1D8U0DlptRSd3LzHmzpiicwexzTIvsteHlR7VmIWlDjH4uhjvtT/XQ5/Vv/QB6ek14Cr1cHnMpfhi//P5Fq/woDaUnBHsp73y0ARhXdnzkUaPMTEaoVM36ZrsiltJyZJWh4yvsw28OeA5rX2p6GDZCiz6tGnBdxUs2aNC71V7zRCfxI7I101keIBSNTeL0wH57tBrnw7BxHYwLTcVbeo7PsXh7ZyZwRjzLc1vqHcspy2yZgMlsrt9xrxqwBmu1TvW/aCgXiAvJAZE1vkWNLihHzCvCy1Fl98DdJcXHleuC+fnnMUCeyHvhrc5OYn8JvXrcSSPahSb4y8z97Fyym61w/auf9/pmFxdUd1e3uo8jSIxC97UvY4orm8SfDiFCswVAETeQ96I+cbVw0PJ20UgUlRYBqFcsO0vmp2kecjzBPixT6nNu/BQ2HdZuD4wzeBcsguWne0hnLOwzTboBJ/0JoxYRIDZHZkEqOwEkW5YSaqzvQgQ== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:VI1PR08MB5325.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(1800799024)(376014)(366016); DIR:OUT; SFP:1101; X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB6390 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-SkipListedInternetSender: ip=[2603:10a6:803:13e::17]; domain=VI1PR08MB5325.eurprd08.prod.outlook.com X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM3PEPF00009B9C.eurprd04.prod.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: c9fee7e0-6bfb-4ef8-32ce-08dd145d94bb X-Microsoft-Antispam: BCL:0; ARA:13230040|35042699022|14060799003|376014|1800799024|82310400026|36860700013; X-Microsoft-Antispam-Message-Info: =?utf-8?q?YENRIBmXd3ptVVtG6F5P4OSqAHrmari?= =?utf-8?q?ZhzAjGCboA7TRpRnKTbjJgkxrM9IMbYUN/88MwhF20eLTssj9d0BeIwrDFmMJOkDQ?= =?utf-8?q?OwTce5xANGQyggUlm1kaJYCP8OJo7zKRdgs3bcULtbygmM2S0izacvfY3fXDkAMx7?= =?utf-8?q?lvxhl98KsWkQTRYPtovsqRUdB6RTmtqAA//MZd2b2+cufMT27C7tKJQ9YgTXkpAUR?= =?utf-8?q?WHRr/9R63Lh9kb4P2wAUVJOqjg9c8IHwoPVuzwBYPGaLZPLOyZFOfhHYw+NEstLhr?= =?utf-8?q?a5em8KtmSeM7qWu2ftfEzhbtrhP121Mto6PSyv02zmlLHZE6vPDF7u180vxdbYeNB?= =?utf-8?q?BSlxTgRic+3TLdNzfKyWrttD4/nY24EsScRFTa9p22x3fahgUaQAwXYhSH66Galbh?= =?utf-8?q?cJm2HdXs5fuxvqq994DwHOMEzyB+iEkwgqyzYOMgK8ucyJ8boV1U8NHLAcTXKIVSr?= =?utf-8?q?If5TvGJM9MxpQ6eSBahb7k0+BGavRNIH7BLA2DWMGfMi+VqnvapvLIVxf+Wgmo/sV?= =?utf-8?q?2XzXRuHi9zZedv5Y6n5F2Mbs+5E7Feozfh3/uzRMrFRAoUO/yCIiDEBEzaFQV7Bae?= =?utf-8?q?8JqleSixs7A96DHd3iYy9B+qsyWaRuDqMsrWNhDovf82gqwFbqemSCEpKAo/9iUja?= =?utf-8?q?OKGTtoIJP4q8h5Omg9z9rD12LgK2mwiGDQC0GBY/t3TNFnFvW4sekb7+/tAIio0LQ?= =?utf-8?q?9rnCpWjDESNU/H7nCaLm6DaupiyaYyDFXEHL9u9dafwA+w3AH7sJNSxnIKYU0FETe?= =?utf-8?q?llfeyIj1PSowEFi6yrkmyXTEt9XG3IzSBHFmfZcz123SDjC/qtS7XBxBZ5JXnMSz7?= =?utf-8?q?tvJ0rld7meSOyaw+gI1Nyp/9GvEmyrNxl7uBHnvC942LY5JqAwKplaQue77ufnz/D?= =?utf-8?q?NWE3uTj22DKJQUeGG012SiKWaGnArRQOI17Oqv+fWsCgYCRpj7J4NWVf7NOq3EKsu?= =?utf-8?q?E5wzHX0fmsD0X+cfC8qaLVLTrtaQK1DBV4flPPLuVxw0vEvAHjMgJw5HUYRXyUgdm?= =?utf-8?q?VHOUZudf/34wDuSuzfBeDcKDFZk+7prLFdgtFcsLhIZDj9D3EZg6ePx+CUr3NWDEq?= =?utf-8?q?B7ZjBfFBbzVIjsC6a7POpLIHDGt4wGmITSRDFrvpiabZrDXgJvmzxQvS0LbC1IHil?= =?utf-8?q?fbUx2ygKrdwc7mjQlOHXAoiUsYhziYU5DFEq2R2Y6uHRhyHyoVKo8MztLGuKd4TGD?= =?utf-8?q?+8TFBpjXHhP+/sVNn9YoBR392AjIecz4x7Ggq3qZM+nXFq/EgoH3qtegbsr+QrQgP?= =?utf-8?q?i4faOAFT0gb4Iq23joPCeXe9PqRmmEMydJYBEm9n1Lk4LrIMWv74F/i/Egal3acfa?= =?utf-8?q?1ZRXe8JZ9w0PMJbSePIhi0QXr9y8W9BygNZ0BUIzgrDIEf5+Eoswi7h5aEdl3Gk7t?= =?utf-8?q?FB/CHJ+3JM7?= 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:64aa7808-outbound-1.mta.getcheckrecipient.com; CAT:NONE; SFS:(13230040)(35042699022)(14060799003)(376014)(1800799024)(82310400026)(36860700013); DIR:OUT; SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Dec 2024 12:17:21.1802 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 48d8f4d4-1771-4b28-2903-08dd145d9a76 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: AM3PEPF00009B9C.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR3PR08MB5689 X-Spam-Status: No, score=-12.4 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, FORGED_SPF_HELO, GIT_PATCH_0, SPF_HELO_PASS, SPF_NONE, TXREP, UNPARSEABLE_RELAY, URIBL_BLOCKED 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 <gcc-patches.gcc.gnu.org> List-Unsubscribe: <https://gcc.gnu.org/mailman/options/gcc-patches>, <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>, <mailto:gcc-patches-request@gcc.gnu.org?subject=subscribe> Errors-To: gcc-patches-bounces~patchwork=sourceware.org@gcc.gnu.org |
Series |
None
|
|
Commit Message
Tamar Christina
Dec. 4, 2024, 12:17 p.m. UTC
Hi All, When issuing multiple calls to a simdclone in a vectorized loop, TYPE_VECTOR_SUBPARTS(vectype) gives the incorrect number when compared to the TYPE_VECTOR_SUBPARTS result we get from the mask type derived from the relevant `rgroup_controls' entry within `vect_get_loop_mask'. By passing `masktype' instead, we are able to get the correct number of vector subparts and thu eliminate the ICE in the call to `vect_get_loop_mask' when the data type for which we retrieve the mask is wider than the one used when defining the mask at mask registration time. gcc/ChangeLog: PR target/96342 * tree-vect-stmts.cc (vectorizable_simd_clone_call): s/vectype/masktype/ in call to vect_get_loop_mask. Bootstrapped Regtested on aarch64-none-linux-gnu, arm-none-linux-gnueabihf, x86_64-pc-linux-gnu -m32, -m64 and no issues. Ok for master? Thanks, Tamar --- --
Comments
On Wed, 4 Dec 2024, Tamar Christina wrote: > Hi All, > > When issuing multiple calls to a simdclone in a vectorized loop, > TYPE_VECTOR_SUBPARTS(vectype) gives the incorrect number when compared > to the TYPE_VECTOR_SUBPARTS result we get from the mask type derived > from the relevant `rgroup_controls' entry within `vect_get_loop_mask'. > > By passing `masktype' instead, we are able to get the correct number of > vector subparts and thu eliminate the ICE in the call to > `vect_get_loop_mask' when the data type for which we retrieve the mask > is wider than the one used when defining the mask at mask registration > time. > > gcc/ChangeLog: > > PR target/96342 > * tree-vect-stmts.cc (vectorizable_simd_clone_call): > s/vectype/masktype/ in call to vect_get_loop_mask. > > > Bootstrapped Regtested on aarch64-none-linux-gnu, > arm-none-linux-gnueabihf, x86_64-pc-linux-gnu > -m32, -m64 and no issues. > > Ok for master? Hmm, I think the corresponding vect_record_loop_mask is case SIMD_CLONE_ARG_TYPE_MASK: if (loop_vinfo && LOOP_VINFO_CAN_USE_PARTIAL_VECTORS_P (loop_vinfo)) { unsigned nmasks = exact_div (ncopies * bestn->simdclone->simdlen, TYPE_VECTOR_SUBPARTS (vectype)).to_constant (); vect_record_loop_mask (loop_vinfo, &LOOP_VINFO_MASKS (loop_vinfo), nmasks, vectype, op); } and that doesn't exactly match the bestn->simdclone->nargs - 1 mask use then unless bestn->simdclone->args[mask_i].vector_type == vectype? The patch looks OK, but I think we miss a corresponding vect_record_loop_mask case. I also wonder how we support a SIMD clone call where the result vector type subparts doesn't match the argument or loop mask number of subparts? > Thanks, > Tamar > > --- > diff --git a/gcc/tree-vect-stmts.cc b/gcc/tree-vect-stmts.cc > index 497a31322accba8672b82dee00f5403b40dca22b..be1139a423c85608755f10750bb68e70223a84ea 100644 > --- a/gcc/tree-vect-stmts.cc > +++ b/gcc/tree-vect-stmts.cc > @@ -4964,7 +4964,7 @@ vectorizable_simd_clone_call (vec_info *vinfo, stmt_vec_info stmt_info, > { > vec_loop_masks *loop_masks = &LOOP_VINFO_MASKS (loop_vinfo); > mask = vect_get_loop_mask (loop_vinfo, gsi, loop_masks, > - ncopies, vectype, j); > + ncopies, masktype, j); > } > else > mask = vect_build_all_ones_mask (vinfo, stmt_info, masktype); > > > > >
> -----Original Message----- > From: Richard Biener <rguenther@suse.de> > Sent: Wednesday, December 4, 2024 2:43 PM > To: Tamar Christina <Tamar.Christina@arm.com> > Cc: gcc-patches@gcc.gnu.org; nd <nd@arm.com> > Subject: Re: [PATCH 4/7]middle-end: Fix mask length arg in call to > vect_get_loop_mask [PR96342] > > On Wed, 4 Dec 2024, Tamar Christina wrote: > > > Hi All, > > > > When issuing multiple calls to a simdclone in a vectorized loop, > > TYPE_VECTOR_SUBPARTS(vectype) gives the incorrect number when compared > > to the TYPE_VECTOR_SUBPARTS result we get from the mask type derived > > from the relevant `rgroup_controls' entry within `vect_get_loop_mask'. > > > > By passing `masktype' instead, we are able to get the correct number of > > vector subparts and thu eliminate the ICE in the call to > > `vect_get_loop_mask' when the data type for which we retrieve the mask > > is wider than the one used when defining the mask at mask registration > > time. > > > > gcc/ChangeLog: > > > > PR target/96342 > > * tree-vect-stmts.cc (vectorizable_simd_clone_call): > > s/vectype/masktype/ in call to vect_get_loop_mask. > > > > > > Bootstrapped Regtested on aarch64-none-linux-gnu, > > arm-none-linux-gnueabihf, x86_64-pc-linux-gnu > > -m32, -m64 and no issues. > > > > Ok for master? > > Hmm, I think the corresponding vect_record_loop_mask is > > case SIMD_CLONE_ARG_TYPE_MASK: > if (loop_vinfo > && LOOP_VINFO_CAN_USE_PARTIAL_VECTORS_P (loop_vinfo)) > { > unsigned nmasks > = exact_div (ncopies * bestn->simdclone->simdlen, > TYPE_VECTOR_SUBPARTS > (vectype)).to_constant (); > vect_record_loop_mask (loop_vinfo, > &LOOP_VINFO_MASKS (loop_vinfo), > nmasks, vectype, op); > } > > and that doesn't exactly match the bestn->simdclone->nargs - 1 > mask use then unless bestn->simdclone->args[mask_i].vector_type > == vectype? > > The patch looks OK, but I think we miss a corresponding > vect_record_loop_mask case. I also wonder how we support a SIMD clone > call where the result vector type subparts doesn't match the argument > or loop mask number of subparts? > I think it's correct because of the difference in type is accounted for In the usage: As you posted, when we register a mask we use nmasks, because it's ncopies * bestn->simdclone->simdlen. So nmasks represents the widest input. When using it we do: mask = vect_get_loop_mask (loop_vinfo, gsi, loop_masks, ncopies, vectype, j); My understanding is that the reason for this is that when registering the mask we want to register the smaller type, and when using it, since you may have decomposed in multiple vectors, vect_get_look_mask on the smaller type will give you the unpacked mask. The problem was before that we passed the wrong type here. So we gave the input type rather than the expected decomposed mask. Thanks, Tamar > > Thanks, > > Tamar > > > > --- > > diff --git a/gcc/tree-vect-stmts.cc b/gcc/tree-vect-stmts.cc > > index > 497a31322accba8672b82dee00f5403b40dca22b..be1139a423c85608755f107 > 50bb68e70223a84ea 100644 > > --- a/gcc/tree-vect-stmts.cc > > +++ b/gcc/tree-vect-stmts.cc > > @@ -4964,7 +4964,7 @@ vectorizable_simd_clone_call (vec_info *vinfo, > stmt_vec_info stmt_info, > > { > > vec_loop_masks *loop_masks = &LOOP_VINFO_MASKS > (loop_vinfo); > > mask = vect_get_loop_mask (loop_vinfo, gsi, loop_masks, > > - ncopies, vectype, j); > > + ncopies, masktype, j); > > } > > else > > mask = vect_build_all_ones_mask (vinfo, stmt_info, masktype); > > > > > > > > > > > > -- > Richard Biener <rguenther@suse.de> > SUSE Software Solutions Germany GmbH, > Frankenstrasse 146, 90461 Nuernberg, Germany; > GF: Ivo Totev, Andrew McDonald, Werner Knoblich; (HRB 36809, AG Nuernberg)
> Am 04.12.2024 um 16:26 schrieb Tamar Christina <tamar.christina@arm.com>: > > >> >> -----Original Message----- >> From: Richard Biener <rguenther@suse.de> >> Sent: Wednesday, December 4, 2024 2:43 PM >> To: Tamar Christina <Tamar.Christina@arm.com> >> Cc: gcc-patches@gcc.gnu.org; nd <nd@arm.com> >> Subject: Re: [PATCH 4/7]middle-end: Fix mask length arg in call to >> vect_get_loop_mask [PR96342] >> >>> On Wed, 4 Dec 2024, Tamar Christina wrote: >>> >>> Hi All, >>> >>> When issuing multiple calls to a simdclone in a vectorized loop, >>> TYPE_VECTOR_SUBPARTS(vectype) gives the incorrect number when compared >>> to the TYPE_VECTOR_SUBPARTS result we get from the mask type derived >>> from the relevant `rgroup_controls' entry within `vect_get_loop_mask'. >>> >>> By passing `masktype' instead, we are able to get the correct number of >>> vector subparts and thu eliminate the ICE in the call to >>> `vect_get_loop_mask' when the data type for which we retrieve the mask >>> is wider than the one used when defining the mask at mask registration >>> time. >>> >>> gcc/ChangeLog: >>> >>> PR target/96342 >>> * tree-vect-stmts.cc (vectorizable_simd_clone_call): >>> s/vectype/masktype/ in call to vect_get_loop_mask. >>> >>> >>> Bootstrapped Regtested on aarch64-none-linux-gnu, >>> arm-none-linux-gnueabihf, x86_64-pc-linux-gnu >>> -m32, -m64 and no issues. >>> >>> Ok for master? >> >> Hmm, I think the corresponding vect_record_loop_mask is >> >> case SIMD_CLONE_ARG_TYPE_MASK: >> if (loop_vinfo >> && LOOP_VINFO_CAN_USE_PARTIAL_VECTORS_P (loop_vinfo)) >> { >> unsigned nmasks >> = exact_div (ncopies * bestn->simdclone->simdlen, >> TYPE_VECTOR_SUBPARTS >> (vectype)).to_constant (); >> vect_record_loop_mask (loop_vinfo, >> &LOOP_VINFO_MASKS (loop_vinfo), >> nmasks, vectype, op); >> } >> >> and that doesn't exactly match the bestn->simdclone->nargs - 1 >> mask use then unless bestn->simdclone->args[mask_i].vector_type >> == vectype? >> >> The patch looks OK, but I think we miss a corresponding >> vect_record_loop_mask case. I also wonder how we support a SIMD clone >> call where the result vector type subparts doesn't match the argument >> or loop mask number of subparts? >> > > I think it's correct because of the difference in type is accounted for In the usage: > > As you posted, when we register a mask we use nmasks, because it's > ncopies * bestn->simdclone->simdlen. So nmasks represents the widest input. > > When using it we do: > > mask = vect_get_loop_mask (loop_vinfo, gsi, loop_masks, > ncopies, vectype, j); > > My understanding is that the reason for this is that when registering the mask > we want to register the smaller type, and when using it, since you may have > decomposed in multiple vectors, vect_get_look_mask on the smaller type will > give you the unpacked mask. > > The problem was before that we passed the wrong type here. So we gave the input > type rather than the expected decomposed mask. Yes, the Type Change definitely is OK. I just Wondered About The registering… Richard > > Thanks, > Tamar > >>> Thanks, >>> Tamar >>> >>> --- >>> diff --git a/gcc/tree-vect-stmts.cc b/gcc/tree-vect-stmts.cc >>> index >> 497a31322accba8672b82dee00f5403b40dca22b..be1139a423c85608755f107 >> 50bb68e70223a84ea 100644 >>> --- a/gcc/tree-vect-stmts.cc >>> +++ b/gcc/tree-vect-stmts.cc >>> @@ -4964,7 +4964,7 @@ vectorizable_simd_clone_call (vec_info *vinfo, >> stmt_vec_info stmt_info, >>> { >>> vec_loop_masks *loop_masks = &LOOP_VINFO_MASKS >> (loop_vinfo); >>> mask = vect_get_loop_mask (loop_vinfo, gsi, loop_masks, >>> - ncopies, vectype, j); >>> + ncopies, masktype, j); >>> } >>> else >>> mask = vect_build_all_ones_mask (vinfo, stmt_info, masktype); >>> >>> >>> >>> >>> >> >> -- >> Richard Biener <rguenther@suse.de> >> SUSE Software Solutions Germany GmbH, >> Frankenstrasse 146, 90461 Nuernberg, Germany; >> GF: Ivo Totev, Andrew McDonald, Werner Knoblich; (HRB 36809, AG Nuernberg)
diff --git a/gcc/tree-vect-stmts.cc b/gcc/tree-vect-stmts.cc index 497a31322accba8672b82dee00f5403b40dca22b..be1139a423c85608755f10750bb68e70223a84ea 100644 --- a/gcc/tree-vect-stmts.cc +++ b/gcc/tree-vect-stmts.cc @@ -4964,7 +4964,7 @@ vectorizable_simd_clone_call (vec_info *vinfo, stmt_vec_info stmt_info, { vec_loop_masks *loop_masks = &LOOP_VINFO_MASKS (loop_vinfo); mask = vect_get_loop_mask (loop_vinfo, gsi, loop_masks, - ncopies, vectype, j); + ncopies, masktype, j); } else mask = vect_build_all_ones_mask (vinfo, stmt_info, masktype);