From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.8]) by sourceware.org (Postfix) with ESMTPS id 6B3813846410 for ; Thu, 25 Apr 2024 10:30:15 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 6B3813846410 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=intel.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=intel.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 6B3813846410 Authentication-Results: server2.sourceware.org; arc=pass smtp.remote-ip=192.198.163.8 ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1714041019; cv=pass; b=YsrGj4+RUPwAPUZv9Ggzcv8VGZUVP0Hv3aZpu27DJDymuJvVheQlmp56iY1wtgQWVkPxgHgPAkAZPs1QOV6has8kOw9zTnxMjB0dKOQabNjPIQLvShaFb/5WzazA10/YHGVPFptGget6DQIAD5W/8HM64rVIV1vmmlywTd88lRw= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1714041019; c=relaxed/simple; bh=yZrRvQFJfNgLoEEJkyg4YuC2FvEZT7u+2mZCMp6W2ZU=; h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version; b=wufAq2KvWS0ZiomZ4TgZwvmDbv2/jzTbJur68cjqOJzOB86kqWXFqBMvubNKnFoL6abzfqZJQiBP+LAepGCTImKD5d6Nb6JabjTiFwZOI5s7E3kdBoUrLfB3NFfHpbvdJBafoyW1dmt6xL1hQa+RGr3kbGVs0hi1NWGGwg1ZQ4c= ARC-Authentication-Results: i=2; server2.sourceware.org DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1714041015; x=1745577015; h=from:to:cc:subject:date:message-id:references: in-reply-to:mime-version; bh=yZrRvQFJfNgLoEEJkyg4YuC2FvEZT7u+2mZCMp6W2ZU=; b=mTf5S5c10P4wjvP74sFMMkvvpjVJ0R8PhBKzuXFQWWwc4lQIjnOQ+7y+ o711iuOMEeHm+WY4PCH0aGKpLafI7DW0ifX9MlcSddukWoWe7NHB5QrWu b+v0NU/Ms0WfKw81yNq8tVg49fszf2nEjIwHb4x9DVo7cXbnVW1IEH6xD CvMrRqjXw/kxx+1cuCCbi5PuK2mRHBv28ce+yqBJAj3o44cEmNYbPYtKm 96iNkyCALdA9/I7z4hlzmxWdL0bRxfF2FnkgAj057vghfdQP147oRomd9 06m7ZJOjV/hVM5HQCyg5DpleeV0j15ONITrzqiFTwAF3p84bdcXwnvBzs g==; X-CSE-ConnectionGUID: 8Ae8AaI1SJaki5Vx5+XWCA== X-CSE-MsgGUID: as3nZ/siQPGm/JQTCVoO6g== X-IronPort-AV: E=McAfee;i="6600,9927,11054"; a="27231532" X-IronPort-AV: E=Sophos;i="6.07,229,1708416000"; d="scan'208,217";a="27231532" Received: from orviesa004.jf.intel.com ([10.64.159.144]) by fmvoesa102.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 25 Apr 2024 03:30:12 -0700 X-CSE-ConnectionGUID: h1GEBFRCTymtZL32/A0Fug== X-CSE-MsgGUID: WGdRQ5IFR8Sik9VFWikQyQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.07,229,1708416000"; d="scan'208,217";a="29818122" Received: from fmsmsx602.amr.corp.intel.com ([10.18.126.82]) by orviesa004.jf.intel.com with ESMTP/TLS/AES256-GCM-SHA384; 25 Apr 2024 03:30:13 -0700 Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) by fmsmsx602.amr.corp.intel.com (10.18.126.82) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.35; Thu, 25 Apr 2024 03:30:12 -0700 Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) by fmsmsx610.amr.corp.intel.com (10.18.126.90) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.35; Thu, 25 Apr 2024 03:30:11 -0700 Received: from fmsedg602.ED.cps.intel.com (10.1.192.136) by fmsmsx610.amr.corp.intel.com (10.18.126.90) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.35 via Frontend Transport; Thu, 25 Apr 2024 03:30:11 -0700 Received: from NAM12-DM6-obe.outbound.protection.outlook.com (104.47.59.168) by edgegateway.intel.com (192.55.55.71) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.35; Thu, 25 Apr 2024 03:30:11 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=QY8mdyXSsWdWnrrFCQ7+WY5y1cwLHZSxO9HmIdtnFgiwLL5qdf8QFMzZBjvlqyOXnJC/mqzv23DXqwbPTyg74J49DTX2ilVACmja79u51eadfjKvQjRNDYS52/s27U7fnkj49ZoZLeTTpMZ6zTLRWKSzeV7qY3Swg5HIng2/dEzKo43FUYVZAUejrokGLGS7zoc+9QYbEJ6TGRW+yuUEV7D/412rW4tGyFtY+yl8fup2DPTXL9SJ5dk9aqgH8Y+BRZjIiyX/nfHbGkSGbjG7YMorUeqtozlUg0Msa6niDlIMqDofH1V6R4UdOld+/OpUb4kgK0Y187Ovvl0M07tDIw== 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=RPMyBZENgtbFvKsvRhSZZ07YZGHQ+JQte64nMQJmdMA=; b=DLnGcvt8d1+A4F+ZVCAnxoTNDx+XiBOC5fVmXuFsFmT70bsdDWnLdzXlpqI6khZ7xEwCVHXMqvM+YBGci+wP3eWpOl6QFt1/jH3uSiEDuNhXf4ophJWJmfFb7GNmSCVwl3qNMW40suwZysmMjXnpani4ciJkqJ5piBbUloPxSC3TA8hEX7/UUXwPrPQBlbjFim/S6GZRQy2kazc0szhhmyx+YJSO+dKsjguOBiT4QUHJEU7ZJ5D3kXfznB27sIRB5U4/rpW33AGW+7WaQbT1hQtfLVLj/riLyrr2yrvi4ZSrJke8dZI0ix64o57sLyWy6XhwQYX669aVddbBXKH3XA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none Received: from MW5PR11MB5908.namprd11.prod.outlook.com (2603:10b6:303:194::10) by MN0PR11MB5986.namprd11.prod.outlook.com (2603:10b6:208:371::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7519.22; Thu, 25 Apr 2024 10:30:08 +0000 Received: from MW5PR11MB5908.namprd11.prod.outlook.com ([fe80::aaa8:bc22:5fb0:5ed0]) by MW5PR11MB5908.namprd11.prod.outlook.com ([fe80::aaa8:bc22:5fb0:5ed0%5]) with mapi id 15.20.7519.021; Thu, 25 Apr 2024 10:30:08 +0000 From: "Li, Pan2" To: "juzhe.zhong@rivai.ai" , gcc-patches CC: kito.cheng , Robin Dapp , Kito.cheng Subject: RE: [PATCH v1] RISC-V: Add test cases for insn does not satisfy its constraints [PR114714] Thread-Topic: [PATCH v1] RISC-V: Add test cases for insn does not satisfy its constraints [PR114714] Thread-Index: AQHalvKYCu25km/ed02wU/sJbr1L/LF4t9TugAARUbA= Date: Thu, 25 Apr 2024 10:30:08 +0000 Message-ID: References: <20240425092547.2667263-1-pan2.li@intel.com> <72DE79A216B36C45+202404251727136438170@rivai.ai> In-Reply-To: <72DE79A216B36C45+202404251727136438170@rivai.ai> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: MW5PR11MB5908:EE_|MN0PR11MB5986:EE_ x-ms-office365-filtering-correlation-id: ffee257f-5e4c-4351-e792-08dc6512ae50 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0;ARA:13230031|376005|366007|1800799015|38070700009; x-microsoft-antispam-message-info: =?us-ascii?Q?vVMAJDPqXhHD310F5pP3hjTifc/xIQYJeBQnFb0PmGUL526zmFQRAJlogTou?= =?us-ascii?Q?6SWOkNZOCMhXQrpmq2FJY15GNrwg3FvnLRe8SwXChI2+mqeLZxGrfgiIGs8D?= =?us-ascii?Q?iPMBYcgtNicRa/w3Qd2Q5F2MaYJuf/Ez1Si6CyXwoOR6Jqzo5OYFActD/A17?= =?us-ascii?Q?om3cfsdVI3AIG2hxVZCcC+Groi7iVwQFTh8F1igNvJcOmVfBWdrG+XmXmVHw?= =?us-ascii?Q?zx77UrAjwjLXw6Jakxz2QCH0Fvs8yuRLGSh9AcGL5CSNIqr2E2thFwdwt4+L?= =?us-ascii?Q?tyLQVydkJzUDMXD/bswFc/lToUftpIjf6DeEb0ro3y1C7i9oHJ7xbDqUaIC3?= =?us-ascii?Q?rKHuMeXAQf5H84CMm1Sb9Lr4VLvmxTfX+mo4AHx/2knlKpozbRsqhg2GuB7H?= =?us-ascii?Q?elEzwbQq4Rmm99GZJYMFzNVlMzG18k/aICrgKSg+lETEUhQ3mETENQ8mTy6z?= =?us-ascii?Q?WOG95VtEm+0dCD8RSy+8X2vOV9hJI/R8yoBDerD/fsa9uqlwxMaNYJP9XA2B?= =?us-ascii?Q?ogQ0D75Uvx5YJD9TaLOXd8uPumSJrCKyF3H7UuxBLwDWTiFCr8M5T9xtJO1A?= =?us-ascii?Q?UGXTQ7eABShLoQHD1Z/G+Kh+aCOB9uAK3IY+bt96oRA4wM0OrQ9vYHYy4O4I?= =?us-ascii?Q?4Y53CS7xNFjMgoVw9Y0yBJaXTpMgosnGJb9JBpvoqyqdu4d0Tn2PYY/pnWVm?= =?us-ascii?Q?SQYllAlyPCAZwXCvhl8Wpn5rMAPZfbNKbyd/bjmdWVTlpAb1FQA4wLH5IIp7?= =?us-ascii?Q?o2ONFJX7tRbdNu+HrvaZu+pYC+Be8YAlzmbTOra13DrRAdOG3WpwglxinFN9?= =?us-ascii?Q?1/Of+9tpeUhmkEgjwUlhTqIbws++6RFT8Kgc2dqPfltmv8Fzd0Tz7LeXheVT?= =?us-ascii?Q?ztPGI+1ZLPvkmxjgurCnp6/uYrKd7Bo0N79nSNMmCcQZjK4iNcx8lAEJwL2O?= =?us-ascii?Q?XLE7G/3SQ/T/ush8RHYpa1g9ON6XfLxgGok/dAhnqCCS1q+5iJieBUHkI1Ho?= =?us-ascii?Q?i7wwtPzyaJqFRYLaPRGfdfw47bLQ93UdGIp5cHvIPsmFjXVA9zil1b6lI1dO?= =?us-ascii?Q?ggPwUQKgwxkHAl3YyuPGlW27sEDi8nKg3sRRgTECC4pRBaNjKxr6PCMrPO5b?= =?us-ascii?Q?ySDaheemh9zJxeFQmA84HH2iawEyByyafZ3x5/qY6BEpAn6ia8hcKnwKPIVf?= =?us-ascii?Q?qEd7BTbhdc+xx2AxCCPLeM+K23wPjAOSeVSp1PkPtaKuUEgNbKZ6dzkGA9fL?= =?us-ascii?Q?QUNxkwcEd/4JQpC/e5DMWeiDcHd2CDK36pT1yQ0u9Mj44IfIsdlxMV9ic7uf?= =?us-ascii?Q?TrPWk7StjvptM/a7cFI5/b2Ok2NpwJ0P1hqj/dIfnqnaQQ=3D=3D?= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MW5PR11MB5908.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376005)(366007)(1800799015)(38070700009);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?OvDWpJGaxpaDaNX4t2bHHSGI3i6TRqCjkHq9NvufiAli99pghQQIFUzQI1+f?= =?us-ascii?Q?vFDQ61Ei4N/MiuZibx0J98FYHJjjhb59T5ZBE69ZdXuqe8Acfrd5hledIrCF?= =?us-ascii?Q?njvqr0snxp3nxatV0QG+EVUWZd+piHdeK0vIWf5U5xFhfNUUCqSNqFSdYun9?= =?us-ascii?Q?wndUXe8lrN2p+X9bWVertSHBA79XlMSjMhCdExn1e8692P4CtRHWDZHs7HfG?= =?us-ascii?Q?vyL9ZUfJDv+JaWa4zFSTkxLUw2A37nHuwhB7PJ2lWsYniOGW5o/8h0BtkEys?= =?us-ascii?Q?RD3a+RdWQUauFfGs/vhJeOHTTddSlGjdNQ4v3LBFH88fBqZhNZLE+lxfqAXa?= =?us-ascii?Q?P/eLsQ0wCko6k3LiGu9Z1IKB3qBhuDnsPdEL7JhMjwJHuTWa+Q+i1QfLGn7B?= =?us-ascii?Q?M+IO7lrzjPT9RGKHY3l1iJxmPZMIwnXW7y1AY3ldYcq2tu0wNABg2R1u91DZ?= =?us-ascii?Q?poNIekyvOZLmWGDrFUpKI62EgVzhXzqD8UkPyGh9JGbA4DRdtaA09rNfkzRH?= =?us-ascii?Q?MSpn/ArcmKVWJBDEBsmhddrKWD2qJd17zP0PignLfNixEPPfXOr2WWYaJBag?= =?us-ascii?Q?PQZzaDm4/lKTY7AgDQPesQQH7e1aNj/nWDYfqJn5953+d4JhXbvlSa1h8wQw?= =?us-ascii?Q?7Pyioj62T0vaYA2zIzIOEccKP+7hw+XLUyNp19/YjYvqwMsabBdwPQfrfsTa?= =?us-ascii?Q?EI0h6PDHsbw6/s+ThMNerQTfYJ/E1xu/qArbnNXIf9QWsbtmzrn04onNv8DR?= =?us-ascii?Q?Tqkq+gHVJy/M1SIiAtgUxkd0A2IRg/PwFjA4Q+fCc719w4KRPmR7glo42xCR?= =?us-ascii?Q?kaHSzWEfKcY1piQlajaeaucSAJw7PCdo55mi2iwA2IEMoWwXoGBjCIfrMQhZ?= =?us-ascii?Q?rFwiIy+sF698UYYEAfQ5uO4gV+kOChRj835X4r+kD7irwsNbnOAhyXdQwpOu?= =?us-ascii?Q?QvhHDnNWsqllkr7l7+JaH/dv7v4sh5osT3jihN/L3GAvsBwxdmDHkbkDmNTN?= =?us-ascii?Q?kB813SBrOpiJLBpCx8Fm/ddeuLYW+HCXQgx2lsEsHProeYoR9F2XxtbFS1s3?= =?us-ascii?Q?UFp9IvhB/QIT3bTxVmFbi9QSFzzqqmnL1Tij4sr5aRQ491SRWW8bZd/hn3PL?= =?us-ascii?Q?ilpFHE0trtP1O4UYv507x+nHbEVVnHRYiwXH7zbjaK9zF2TbNAFZWpacg4vG?= =?us-ascii?Q?bG2eL3N9V13rvcNuDt6ruwx9ExIN6smZFv+qIbc8uF4XTeF8yEbOzoHB+GQE?= =?us-ascii?Q?fJQwqmxAQYOwpLNH6LYeH9ft6eTt/M74k/u4jlBxJHXd33LQ+feuG0KIcWrF?= =?us-ascii?Q?zf9W91fa3zjslF+N1VpvPOUfg1ZrV3vMmhp76BD1knyjZAmDygq8aftflnKN?= =?us-ascii?Q?5IWTvD9h0HMKnVoA15lSAnQGqIKQROFUl6JYkuY/XiN+KEv7jpImC5SFtZc9?= =?us-ascii?Q?nOh1zmN79fVEJBEOOUbIr2eRg5N1IkqpSsebzy3x/RTaoHg2nqhI3EgrWYjr?= =?us-ascii?Q?MYRxKmZ8UuZPqoh1vPkFKHiwNilDZz4XupOSEpTjrxjCbkruq+D0n9n5zq03?= =?us-ascii?Q?7ssCidMWnMwTogOnwXGPgHGt2nlHrfTD0Axhtd3R?= Content-Type: multipart/alternative; boundary="_000_MW5PR11MB59088EC351BF7871017F17ADA9172MW5PR11MB5908namp_" MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: MW5PR11MB5908.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: ffee257f-5e4c-4351-e792-08dc6512ae50 X-MS-Exchange-CrossTenant-originalarrivaltime: 25 Apr 2024 10:30:08.7604 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: wvSetHYMGj6rjv9Q9NWC9cDQTHBIEKyFfkVcRWhohhc7Ik8JmW8Tw04Bd8eD8iIK6DxeIybkOiA/BJqHlr2ZTQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN0PR11MB5986 X-OriginatorOrg: intel.com X-Spam-Status: No, score=-12.5 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,GIT_PATCH_0,HTML_MESSAGE,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 List-Id: --_000_MW5PR11MB59088EC351BF7871017F17ADA9172MW5PR11MB5908namp_ Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Committed, thanks Juzhe. Pan From: juzhe.zhong@rivai.ai Sent: Thursday, April 25, 2024 5:27 PM To: Li, Pan2 ; gcc-patches Cc: kito.cheng ; Robin Dapp ; Li= , Pan2 ; Kito.cheng Subject: Re: [PATCH v1] RISC-V: Add test cases for insn does not satisfy it= s constraints [PR114714] LGTM. THANKS ________________________________ juzhe.zhong@rivai.ai From: pan2.li Date: 2024-04-25 17:25 To: gcc-patches CC: juzhe.zhong; kito.cheng; rdapp.gcc; Pan Li; Kito Cheng Subject: [PATCH v1] RISC-V: Add test cases for insn does not satisfy its co= nstraints [PR114714] From: Pan Li > We have one ICE when RVV register overlap is enabled. We reverted this feature as it is in stage 4 and there is no much time to figure a better solution for this. Thus, for now add the related test cases which will trigger ICE when register overlap enabled. This will gate the RVV register overlap support in GCC-15. PR target/114714 gcc/testsuite/ChangeLog: * g++.target/riscv/rvv/base/pr114714-1.C: New test. * g++.target/riscv/rvv/base/pr114714-2.C: New test. Signed-off-by: Pan Li > Co-Authored-by: Kito Cheng > --- .../g++.target/riscv/rvv/base/pr114714-1.C | 85 +++++++++++++++++++ .../g++.target/riscv/rvv/base/pr114714-2.C | 85 +++++++++++++++++++ 2 files changed, 170 insertions(+) create mode 100644 gcc/testsuite/g++.target/riscv/rvv/base/pr114714-1.C create mode 100644 gcc/testsuite/g++.target/riscv/rvv/base/pr114714-2.C diff --git a/gcc/testsuite/g++.target/riscv/rvv/base/pr114714-1.C b/gcc/tes= tsuite/g++.target/riscv/rvv/base/pr114714-1.C new file mode 100644 index 00000000000..d3230f7f23e --- /dev/null +++ b/gcc/testsuite/g++.target/riscv/rvv/base/pr114714-1.C @@ -0,0 +1,85 @@ +/* Test that we do not have ice when compile */ +/* { dg-do compile } */ +/* { dg-options "-march=3Drv64gcv -mabi=3Dlp64d -O3 -std=3Dc++17" } */ + +typedef int a; +typedef short b; +typedef unsigned c; +template < typename > using e =3D unsigned; +template < typename > void ab(); +#pragma riscv intrinsic "vector" +template < typename f, int, int ac > struct g { + using i =3D f; + template < typename m > using j =3D g< m, 0, ac >; + using k =3D g< i, 1, ac - 1 >; + using ad =3D g< i, 1, ac + 1 >; +}; +namespace ae { +struct af { + using h =3D g< short, 6, 0 < 3 >; +}; +struct ag { + using h =3D af::h; +}; +} template < typename, int > using ah =3D ae::ag::h; +template < class ai > using aj =3D typename ai::i; +template < class i, class ai > using j =3D typename ai::j< i >; +template < class ai > using ak =3D j< e< ai >, ai >; +template < class ai > using k =3D typename ai::k; +template < class ai > using ad =3D typename ai::ad; +template < a ap > vuint16m1_t ar(g< b, ap, 0 >, b); +template < a ap > vuint16m2_t ar(g< b, ap, 1 >, b); +template < a ap > vuint32m2_t ar(g< c, ap, 1 >, c); +template < a ap > vuint32m4_t ar(g< c, ap, 2 >, c); +template < class ai > using as =3D decltype(ar(ai(), aj< ai >())); +template < class ai > as< ai > at(ai); +namespace ae { +template < int ap > vuint32m4_t au(g< c, ap, 1 + 1 >, vuint32m2_t l) { + return __riscv_vlmul_ext_v_u32m2_u32m4(l); +} +} template < int ap > vuint32m2_t aw(g< c, ap, 1 >, vuint16m1_t l) { + return __riscv_vzext_vf2_u32m2(l, 0); +} +namespace ae { +vuint32m4_t ax(vuint32m4_t, vuint32m4_t, a); +} +template < class ay, class an > as< ay > az(ay ba, an bc) { + an bb; + return ae::ax(ae::au(ba, bc), ae::au(ba, bb), 2); +} +template < class bd > as< bd > be(bd, as< ad< bd > >); +namespace ae { +template < class bh, class bi > void bj(bh bk, bi bl) { + ad< decltype(bk) > bn; + az(bn, bl); +} +} template < int ap, int ac, class bp, class bq > +void br(g< c, ap, ac > bk, bp, bq bl) { + ae::bj(bk, bl); +} +template < class ai > using bs =3D decltype(at(ai())); +struct bt; +template < int ac =3D 1 > class bu { +public: + template < typename i > void operator()(i) { + ah< i, ac > d; + bt()(i(), d); + } +}; +struct bt { + template < typename bv, class bf > void operator()(bv, bf bw) { + using bx =3D bv; + ak< bf > by; + k< bf > bz; + using bq =3D bs< decltype(by) >; + using bp =3D bs< decltype(bw) >; + bp cb; + ab< bx >(); + for (;;) { + bp cc; + bq bl =3D aw(by, be(bz, cc)); + br(by, cb, bl); + } + } +}; +void d() { bu()(b()); } diff --git a/gcc/testsuite/g++.target/riscv/rvv/base/pr114714-2.C b/gcc/tes= tsuite/g++.target/riscv/rvv/base/pr114714-2.C new file mode 100644 index 00000000000..55621e98fee --- /dev/null +++ b/gcc/testsuite/g++.target/riscv/rvv/base/pr114714-2.C @@ -0,0 +1,85 @@ +/* Test that we do not have ice when compile */ +/* { dg-do compile } */ +/* { dg-options "-march=3Drv64gcv -mabi=3Dlp64d -O3 -std=3Dc++17" } */ + +typedef int a; +typedef short b; +typedef unsigned c; +template < typename > using e =3D unsigned; +template < typename > void ab(); +#pragma riscv intrinsic "vector" +template < typename f, int, int ac > struct g { + using i =3D f; + template < typename m > using j =3D g< m, 0, ac >; + using k =3D g< i, 1, ac - 1 >; + using ad =3D g< i, 1, ac + 1 >; +}; +namespace ae { +struct af { + using h =3D g< short, 6, 0 < 3 >; +}; +struct ag { + using h =3D af::h; +}; +} template < typename, int > using ah =3D ae::ag::h; +template < class ai > using aj =3D typename ai::i; +template < class i, class ai > using j =3D typename ai::j< i >; +template < class ai > using ak =3D j< e< ai >, ai >; +template < class ai > using k =3D typename ai::k; +template < class ai > using ad =3D typename ai::ad; +template < a ap > vuint16mf2_t ar(g< b, ap, 0 >, b); +template < a ap > vuint16m1_t ar(g< b, ap, 1 >, b); +template < a ap > vuint32m1_t ar(g< c, ap, 1 >, c); +template < a ap > vuint32m2_t ar(g< c, ap, 2 >, c); +template < class ai > using as =3D decltype(ar(ai(), aj< ai >())); +template < class ai > as< ai > at(ai); +namespace ae { +template < int ap > vuint32m2_t au(g< c, ap, 1 + 1 >, vuint32m1_t l) { + return __riscv_vlmul_ext_v_u32m1_u32m2(l); +} +} template < int ap > vuint32m1_t aw(g< c, ap, 1 >, vuint16mf2_t l) { + return __riscv_vzext_vf2_u32m1(l, 0); +} +namespace ae { +vuint32m2_t ax(vuint32m2_t, vuint32m2_t, a); +} +template < class ay, class an > as< ay > az(ay ba, an bc) { + an bb; + return ae::ax(ae::au(ba, bc), ae::au(ba, bb), 2); +} +template < class bd > as< bd > be(bd, as< ad< bd > >); +namespace ae { +template < class bh, class bi > void bj(bh bk, bi bl) { + ad< decltype(bk) > bn; + az(bn, bl); +} +} template < int ap, int ac, class bp, class bq > +void br(g< c, ap, ac > bk, bp, bq bl) { + ae::bj(bk, bl); +} +template < class ai > using bs =3D decltype(at(ai())); +struct bt; +template < int ac =3D 1 > class bu { +public: + template < typename i > void operator()(i) { + ah< i, ac > d; + bt()(i(), d); + } +}; +struct bt { + template < typename bv, class bf > void operator()(bv, bf bw) { + using bx =3D bv; + ak< bf > by; + k< bf > bz; + using bq =3D bs< decltype(by) >; + using bp =3D bs< decltype(bw) >; + bp cb; + ab< bx >(); + for (;;) { + bp cc; + bq bl =3D aw(by, be(bz, cc)); + br(by, cb, bl); + } + } +}; +void d() { bu()(b()); } -- 2.34.1 --_000_MW5PR11MB59088EC351BF7871017F17ADA9172MW5PR11MB5908namp_--