From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.15]) by sourceware.org (Postfix) with ESMTPS id 663263858C31 for ; Tue, 30 Apr 2024 11:36:05 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 663263858C31 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 663263858C31 Authentication-Results: server2.sourceware.org; arc=pass smtp.remote-ip=192.198.163.15 ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1714476976; cv=pass; b=Mlw0iC5aYB/Tcbcn+ottna53Aw2EXI5kvo7kbp2RXE5wbqCZw738b7xMqLZ6nyKCb9KPFStL+iI33UtaZR9RerfZ3iyCh/vztqigLcz0qhS2VwmxD1bDLAsQujFj7z6Kg6iswJqIPRYtYzcKmu95fIYmwBGHyFk/2ebF47j0Xh4= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1714476976; c=relaxed/simple; bh=NSrDgJ3rNC1aBcEKXq3TrWwzsmEsF6k7kClNkKJ2F5g=; h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version; b=o+nyWMXwPbBcoBPBlpJwYs2ziC5Z2AvVKfGJ78O0ESOn4i8ysroaNMNpyAFapHQ56ntuvgP2d/FeZlgGNd5qWSGQWMEI/iz7mH7xhGeor3qwgVaVRJVokoR4kDX9+Vb8JQ14vpYpi33AZL7POaO5C2D1RB6ScONNSlRAy+k2YvA= 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=1714476966; x=1746012966; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=NSrDgJ3rNC1aBcEKXq3TrWwzsmEsF6k7kClNkKJ2F5g=; b=drBGGlO1rnAkazIDcE9OLBnMZudY8KpI0cyetP2vf2wKesEnLC5uuEEa 7eARjtvP3hpCYXuRYotWKXRcJdLaMOM4A3BBZqCZ1pk21inqXGJfQSwEf vzZdgLaIvbIu6vVvUmN3uUKD7cDpo/SyPsmkO485SsSOpbQyuSn9wmItf NbObQE7r8fVgafS6ZexlubJXNOET/1yM0dM/38wkx2DqQ1Bl7aynQR3Bo VAMiObShFvE6lWbW63WRAhu9g+YyfTMTY930c5FrIagBl4/5ZnJVWb4QG FaAYsWpWdShRwsM+FMzv1/poCkG3mRyuKKTb/p7oN2Srghv8yAAatCeM6 A==; X-CSE-ConnectionGUID: RdzHKxyRQV+ruPo9ZQkn9A== X-CSE-MsgGUID: vpnLZHxmTjCssR7tQBmOpQ== X-IronPort-AV: E=McAfee;i="6600,9927,11059"; a="10340849" X-IronPort-AV: E=Sophos;i="6.07,242,1708416000"; d="scan'208";a="10340849" Received: from orviesa002.jf.intel.com ([10.64.159.142]) by fmvoesa109.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 30 Apr 2024 04:36:03 -0700 X-CSE-ConnectionGUID: 2hytxz2dS0GPsCEsbpSp2Q== X-CSE-MsgGUID: HNhD7VjIRISDsWP+CC/Zog== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.07,242,1708416000"; d="scan'208";a="57322940" Received: from fmsmsx603.amr.corp.intel.com ([10.18.126.83]) by orviesa002.jf.intel.com with ESMTP/TLS/AES256-GCM-SHA384; 30 Apr 2024 04:36:03 -0700 Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) by fmsmsx603.amr.corp.intel.com (10.18.126.83) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.35; Tue, 30 Apr 2024 04:36:02 -0700 Received: from fmsmsx603.amr.corp.intel.com (10.18.126.83) 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; Tue, 30 Apr 2024 04:36:02 -0700 Received: from fmsedg601.ED.cps.intel.com (10.1.192.135) by fmsmsx603.amr.corp.intel.com (10.18.126.83) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.35 via Frontend Transport; Tue, 30 Apr 2024 04:36:02 -0700 Received: from NAM04-BN8-obe.outbound.protection.outlook.com (104.47.74.40) by edgegateway.intel.com (192.55.55.70) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.35; Tue, 30 Apr 2024 04:36:02 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=F+oLhhylYg3OkLFrfErJkcrd4vgtwbRUkut/sOKpTGwrncOPAPUFcv/eOKVPbVbgiqfnaWfYNkDUKqIhNqds6pSjFoa8W0NZu21+RbiSDNFeu5ccmoeROQS+uQ4LyaXG0YmPSvZC52qmQ1PR8Xodxf5qsPl9h3DU6SSfbt2PD82Y7tgW5S14xlKO7r1bJRs4dMpLsVsPtJAJR/5EKCzqRC2tCnb3ZDMw3gd5RP/naaM1ouuy4TyI/8zNnZULzRduiWs0W5v30azxHtits6jQ47oxLI0wqgd0VDFEOrQE+Ell+HQnX7gM9ZdbMiIZdmxE7UoC22+Pptv/HxPyvOFz8Q== 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=oR40Mjc/yi/U9XCaVY4Trtl0V1hNtSFWv23psMYUKEI=; b=CfNhaki2zeuZZr2pqf64cjMCbBb83sOcdl/pOX6LtxYohWW4kgswDS6wYmRupBoQalyqDmR3muzUaiGewCfxAIZBXuVpgMCDz+3ukP3VdbSPJxUeqKzjy6L57oOka73lmSNmyTkyuMtrGgyTWzEOoWmQApobuvlrJjL3Enux21rUa7kJWfPPjYHYSTJFioXR+yryyYbWvNh4x84Rp8wWAhGUpj0r7IHlAFYG2VlL2SM8XxeTQjjMTmrWvos1rbe9XIMEZ1qSpnxwsvKK2IAefsp1Ppbp+wsylVjr09USdhHqTbNdPmg0ANd8dGTlEuVI6vYBbXu6GWMLPOSZSKojHg== 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 PH0PR11MB7636.namprd11.prod.outlook.com (2603:10b6:510:26f::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7519.34; Tue, 30 Apr 2024 11:35:59 +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.031; Tue, 30 Apr 2024 11:35:59 +0000 From: "Li, Pan2" To: "gcc-patches@gcc.gnu.org" CC: "jeffreyalaw@gmail.com" , "juzhe.zhong@rivai.ai" , "kito.cheng@gmail.com" , "Liu, Hongtao" , "richard.guenther@gmail.com" Subject: RE: [PATCH v3] DSE: Fix ICE after allow vector type in get_stored_val Thread-Topic: [PATCH v3] DSE: Fix ICE after allow vector type in get_stored_val Thread-Index: AQHams509Ds+oX8BZUKOLbD9FN7d2rGArslw Date: Tue, 30 Apr 2024 11:35:59 +0000 Message-ID: References: <20240226032558.587912-1-pan2.li@intel.com> <20240430071715.3391799-1-pan2.li@intel.com> In-Reply-To: <20240430071715.3391799-1-pan2.li@intel.com> 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_|PH0PR11MB7636:EE_ x-ms-office365-filtering-correlation-id: 42e335a0-63a9-40ae-4aad-08dc6909b558 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0;ARA:13230031|376005|1800799015|366007|38070700009; x-microsoft-antispam-message-info: =?us-ascii?Q?nbeiwEgAdxVoKw+iq1YzmFPsNguQ+PnHFkb9T9YXpzxT44KHzcEMo5pWNbeQ?= =?us-ascii?Q?4f1octBd4AMi2gVSdxBYHdO6vajQJkjH+nDvEbpbgIbSTuXgC/8WhCs7l2kz?= =?us-ascii?Q?7LWV5w/kRKRRO4MYwNnR5kjYKj31+gjiDFetiKHFBYFbL+wC5vbLy5Q2g6R1?= =?us-ascii?Q?02RXRwF+QGxRmcDOPQ9VV3xZhnKbhWTx4WJpF1dzm1UsjDlgkDFCPK5bnBv/?= =?us-ascii?Q?5vEAtJc5JVzWQ0Wi2Xqt1FYnf7I0TGLtOZ6e0jaTd9k95ppcWq8L5eBKIyLZ?= =?us-ascii?Q?Gf2gbR9pwz8vxzGfiFfLeuIKo1tXHqcux7BUghKnzx97fO0krs+Ipto6GEY/?= =?us-ascii?Q?+nXG56T5MtfUolHAa3nvFwTMtoNQGhV8FDzakBzv1w0FtpOf6nDHyrDJ4s+y?= =?us-ascii?Q?nbBC18o1XssQ5Z2fFGLEHl5eretB+A3igEy7gcPlzF6Ah/nrN2q+lkL5SAH+?= =?us-ascii?Q?0Lq4Z06v1ZYTmLJZMPGq8UdCuUDqmxfDFup9C9CiWw8mrInzg+Ay1vnx2wZk?= =?us-ascii?Q?s+X5LNd9BFh3czTtLVDMGGhCq+ib4MHNu+1MOI3l0pDfeXfO8py2rfhwvLfd?= =?us-ascii?Q?rckiGAPvjDQX/J3QcgVQ7u/a2Tv8eGuBHvpPyE/DKKilW8X/XF1fGi4uKPPw?= =?us-ascii?Q?J22jSpCsrEI1y6nqDsDj3lUjb9TDoAxP/c6FBLugudQR1otiOjZzfgim8hJ6?= =?us-ascii?Q?RS2hywa1Ex3Nh65Ko3ROJk2JWBr5xwNa1t36/Wr6vaBaorrRSFrBxRUTanYH?= =?us-ascii?Q?IQ8exal6RMmBSDEOvu03SAoptencBvhr+PlhonsXN68vcnYaNnfSbyb2k8L+?= =?us-ascii?Q?AcFga796qJs7D9lp3ReyRS5l82X0+lo/ChuxQUgMhk46+0FQ1TEQHR5iyBGs?= =?us-ascii?Q?nXC29HqqSDD+V5BPALYVDr+5OiLvYbdww3AVSnpLBkLn4AANZkS+rbBwLx6S?= =?us-ascii?Q?THJUio9uDwPvJSfo4APX204GRcRxzCOHYgU9VY85DNxPFP4qsqgHzgZvuAfq?= =?us-ascii?Q?kuiNuC2hQIj16XbRmHsor0NhEZuAGxQh3w7fV5I1mk42pYxEhjivGgDBpXfq?= =?us-ascii?Q?60IA26K1YXsHmSJcZrzao4JWYf7LZWpSeOiwTPPJ2KKqJhrfg2MKjFXdbVIG?= =?us-ascii?Q?ONb+2kWG3vfKsGXOQWuDoQfJJEW6iF6NRo12NidKqlVP5lGV7SiVEwmTY+Lu?= =?us-ascii?Q?PzWhoTLZDSAFJdN4MzQTYWuhoR2QrOHM3HkHEbZc+X/fhAWfdXevnVZAexcR?= =?us-ascii?Q?X7rg1iNQ4rJigEomfiK8RlF1gZxFNZ4OboGy5ATvLWwkfy/eqVlZLjmaEfJS?= =?us-ascii?Q?LW0=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)(1800799015)(366007)(38070700009);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?rJrHemlfL0SUymBFgYc+xl5ZJj3CbhP+gAH8EyR6QCUw1SQDdhRF1EQQe0N9?= =?us-ascii?Q?/M7XQYSolJ5muPVRuSBWQ3F0Qc1ZjD5NeTpR/oppXyIU3sHW83FQoR0Qpumb?= =?us-ascii?Q?wjopjZNbKUXXceWPi6zG/shfGAdG0k75AGSGOXViI61jN+s3j5ECeByPbqyy?= =?us-ascii?Q?y+1Dp/a9em7faPg0ZUi3dp9Sza+tJaHncOz0sZFEJ8qqJC8cU05b7Ix/CgHk?= =?us-ascii?Q?sj4FcITP5PiBTvwhLtcWaHLM2967sKyWW/diNyyLH5kXyBP9gsw0QEzIJPFQ?= =?us-ascii?Q?scZ80XpcMLbNxCK9M1Lf4m1V3Pi0yCrw7Xy2lGfm71akETlEFVxi2cYCrUId?= =?us-ascii?Q?4S1RU7pBRDG4Nc7qBX9f6YS4nY9IJjhtxYv4XKbsswNtLRF1fzKGMxjPePYA?= =?us-ascii?Q?0I6CrcwLx51+z3K9nGEC4qyJnMKVcDYHpo68ZG9ndKzEjLvmMXrrincd8Zxp?= =?us-ascii?Q?22FEJ8Njc6mNIcMRib1vw3GQfodCnRvowuAwUbS9TcnGwf90sclEeSgpJl+D?= =?us-ascii?Q?Fz0Yt7xgP2lCrFetdHijkjimh9txjz0dWcJRwR53LKzZ7GtCVFbmqJf7mSfb?= =?us-ascii?Q?jIQsm31wMOdqKMnz9XTUbZ07YcGuU3XtbA2SWqCzE1k2DMHEHrbw2rQOjAAE?= =?us-ascii?Q?ZVtQj/71ifdchfdyQ8dT/RsBHc+sY0BxtnC6B0C3DjTqvaGES+TQ2PA03eo7?= =?us-ascii?Q?PA/sneLnwKvpG16bSXrDP1PqOhYEnubPumq+hNU1uKuVZTBNV9QYCp0Ngj6W?= =?us-ascii?Q?CIWM9nmbRotVFUssElHczVjPUs9xIlrEl9t0CdtJ65IFIkxSV7pyJniq/T+W?= =?us-ascii?Q?PVnnt8+er7wY6EdauKx+3c9tT8rZk/P+eBtuaKYm0TqWOo8j58DHnBIP8EUN?= =?us-ascii?Q?OiJNFrqDdm3M6/VHzarF+YxevpgvAWRbTO/IQGrW5DOmMB7na72m32cfc4ns?= =?us-ascii?Q?rF/dmdp9xfY52YzbeNHdUPZevAxTpqCYmcLH/ycaO3LPZ6GOEX4GqEPG4lTw?= =?us-ascii?Q?iYoL4HdALHa9G5x5PSqenivqoRIsVGBP2UhKhwK58mUKfhQlr5cCYPRb7U0R?= =?us-ascii?Q?NpTnYopIB0FYS6ofPGHIUHYopwG0lDaAEH7CMAtMW4Z3dfdOtblEQs3urxSL?= =?us-ascii?Q?N991Hxu0/D6zNp9WyKV9lJZLH2tsl/zf5A55T8ixU2wVz0aKYoXglIh/ZGGx?= =?us-ascii?Q?DK1A7yLw75aJ4co4848WdcS4K5OPGfH5FQ74dlBIfWEB8N3QkKbkrlCmn/Ds?= =?us-ascii?Q?KdU5Jfr55sElSMAameZiVoFvaaCywPf+Z7gSpaeJvq2rqJEfwC4tuqlfKFk9?= =?us-ascii?Q?7aabBxafT5P5VUFqEcWUTqg03+BRuO6ILklV4KV9nlukWGzdQPEkIYj/Ogw/?= =?us-ascii?Q?KD4hAxgDMJy8eUts8vcfJSJdTLJ/X0WSiojnTBtaiB26QjiyL3WmomZJ5RP8?= =?us-ascii?Q?CoT6P+9ImvgaYnVEfJqlFOyTRjb2RoqVb8DxC3jQ9lgvdOlGNvgryG8cW7za?= =?us-ascii?Q?tx3YOV2HC8uo/EMO/3dLagZR4FnGd4rP5abviqbFe5fDEeHjCSpEAk42lpBY?= =?us-ascii?Q?jwWVYQcc8DxvZDI2bmk=3D?= Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable 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: 42e335a0-63a9-40ae-4aad-08dc6909b558 X-MS-Exchange-CrossTenant-originalarrivaltime: 30 Apr 2024 11:35:59.7790 (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: X3ZY6QryJ2ic1qqEB3XtbCDR68LUNh7NOWwRKXkOgqa5wJIOUTIN+w0m5+n1uBpgfbdo9VOmxfI14GecajDCRw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR11MB7636 X-OriginatorOrg: intel.com X-Spam-Status: No, score=-12.7 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,GIT_PATCH_0,KAM_SHORT,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: Linaro reports one build failure for arm but works well in aarch64. /home/tcwg-build/workspace/tcwg_gnu_2/abe/snapshots/gcc.git~master/gcc/dse.= cc:1951:45: error: 'REGMODE_NATURAL_SIZE' was not declared in this scope Looks only part of backend implemented REGMODE_NATURAL_SIZE, then reference= this macro here may not be a good idea. gcc/config/i386/i386.cc:20835:/* Implement REGMODE_NATURAL_SIZE(MODE). */ gcc/config/i386/i386.h:1050:#define REGMODE_NATURAL_SIZE(MODE) ix86_regmode= _natural_size (MODE) gcc/config/aarch64/aarch64.cc:2479:/* Implement REGMODE_NATURAL_SIZE. */ gcc/config/aarch64/aarch64.h:1505:#define REGMODE_NATURAL_SIZE(MODE) aarch6= 4_regmode_natural_size (MODE) gcc/config/riscv/riscv.h:1212:#define REGMODE_NATURAL_SIZE(MODE) riscv_regm= ode_natural_size (MODE) gcc/config/riscv/riscv.cc:10241:/* Implement REGMODE_NATURAL_SIZE. */ gcc/config/sparc/sparc.h:706:#define REGMODE_NATURAL_SIZE(MODE) sparc_regmo= de_natural_size (MODE) Pan -----Original Message----- From: Li, Pan2 =20 Sent: Tuesday, April 30, 2024 3:17 PM To: gcc-patches@gcc.gnu.org Cc: jeffreyalaw@gmail.com; juzhe.zhong@rivai.ai; kito.cheng@gmail.com; Liu,= Hongtao ; richard.guenther@gmail.com; Li, Pan2 Subject: [PATCH v3] DSE: Fix ICE after allow vector type in get_stored_val From: Pan Li We allowed vector type for get_stored_val when read is less than or equal to store in previous. Unfortunately, the valididate_subreg treats the vector type's size is less than vector register as invalid. Then we will have ICE here. This patch would like to fix it by filter-out the invalid type size, and make sure the subreg is valid for both the read_mode and store_mode before perform the real gen_lowpart. The below test suites are passed for this patch: * The x86 bootstrap test. * The x86 regression test. * The riscv rv64gcv regression test. * The riscv rv64gc regression test. * The aarch64 regression test. gcc/ChangeLog: * dse.cc (get_stored_val): Make sure read_mode size is greater than or equal to the vector register size before gen_lowpart. gcc/testsuite/ChangeLog: * gcc.target/riscv/rvv/base/pr111720-10.c: Adjust asm checker. * gcc.target/riscv/rvv/base/bug-6.c: New test. Signed-off-by: Pan Li --- gcc/dse.cc | 4 +++- .../gcc.target/riscv/rvv/base/bug-6.c | 22 +++++++++++++++++++ .../gcc.target/riscv/rvv/base/pr111720-10.c | 2 +- 3 files changed, 26 insertions(+), 2 deletions(-) create mode 100644 gcc/testsuite/gcc.target/riscv/rvv/base/bug-6.c diff --git a/gcc/dse.cc b/gcc/dse.cc index edc7a1dfecf..258d2ccc299 100644 --- a/gcc/dse.cc +++ b/gcc/dse.cc @@ -1946,7 +1946,9 @@ get_stored_val (store_info *store_info, machine_mode = read_mode, copy_rtx (store_info->const_rhs)); else if (VECTOR_MODE_P (read_mode) && VECTOR_MODE_P (store_mode) && known_le (GET_MODE_BITSIZE (read_mode), GET_MODE_BITSIZE (store_mod= e)) - && targetm.modes_tieable_p (read_mode, store_mode)) + && targetm.modes_tieable_p (read_mode, store_mode) + /* It's invalid in validate_subreg if read_mode size is < reg natural.= */ + && known_ge (GET_MODE_SIZE (read_mode), REGMODE_NATURAL_SIZE (read_mod= e))) read_reg =3D gen_lowpart (read_mode, copy_rtx (store_info->rhs)); else read_reg =3D extract_low_bits (read_mode, store_mode, diff --git a/gcc/testsuite/gcc.target/riscv/rvv/base/bug-6.c b/gcc/testsuit= e/gcc.target/riscv/rvv/base/bug-6.c new file mode 100644 index 00000000000..5bb00b8f587 --- /dev/null +++ b/gcc/testsuite/gcc.target/riscv/rvv/base/bug-6.c @@ -0,0 +1,22 @@ +/* Test that we do not have ice when compile */ +/* { dg-do compile } */ +/* { dg-options "-march=3Drv64gcv -mabi=3Dlp64d -O3 -ftree-vectorize" } */ + +struct A { float x, y; }; +struct B { struct A u; }; + +extern void bar (struct A *); + +float +f3 (struct B *x, int y) +{ + struct A p =3D {1.0f, 2.0f}; + struct A *q =3D &x[y].u; + + __builtin_memcpy (&q->x, &p.x, sizeof (float)); + __builtin_memcpy (&q->y, &p.y, sizeof (float)); + + bar (&p); + + return x[y].u.x + x[y].u.y; +} diff --git a/gcc/testsuite/gcc.target/riscv/rvv/base/pr111720-10.c b/gcc/te= stsuite/gcc.target/riscv/rvv/base/pr111720-10.c index 215eb99ce0f..ee6b2ccf7ad 100644 --- a/gcc/testsuite/gcc.target/riscv/rvv/base/pr111720-10.c +++ b/gcc/testsuite/gcc.target/riscv/rvv/base/pr111720-10.c @@ -15,4 +15,4 @@ vbool4_t test () { } =20 /* { dg-final { scan-assembler-not {vle[0-9]+\.v\s+v[0-9]+,\s*[0-9]+\(sp\)= } } } */ -/* { dg-final { scan-assembler-not {vs[0-9]+r\.v\s+v[0-9]+,\s*[0-9]+\(sp\)= } } } */ +/* { dg-final { scan-assembler-times {vs[0-9]+r\.v\s+v[0-9]+,\s*[0-9]+\(sp= \)} 1 } } */ --=20 2.34.1