From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on2079.outbound.protection.outlook.com [40.107.21.79]) by sourceware.org (Postfix) with ESMTPS id 33A023832D20 for ; Mon, 28 Nov 2022 16:06:23 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 33A023832D20 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-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=nWGdDV+aVW6BqVOWakA49CThgrJML/G8NxA1/1m3VqFqIswSJ16OVz9mF8Nl2yct8SCfqARiCaMI2nMwx0yKTY19JAoaPBaXFKluyNdxnHUFHG8KcsCxVfi73EpjKUX8O6KicNvs1SwLoszGgGtOSItZxpzzCq7C6+rjRKhzEyEmsLdPLdl7a2DIU+iOh7L/Lx2o6RfYluYKCmCrARpuFZYZujHnPE8rvSLyegB5RNl2PSElH0Kpk+KnZzDbCmzOFrF009uw9kEGQbMNYF3gz68fDacsflyv2n4Hr9fFbEe2THDmcWaAh8U2RWC0ukLThKPR9EqEdQPcjq/115CcVg== 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=O4mQzxkVSN7EiCiaiz6mikAn9IS6vxDrB3ropi3cma0=; b=OkS+nb9bVQ+XFEYJSrpJ7gC/LiZ/DPU6MXp3J0f73fIQ6H+A9s7HzGcd6j11FrduvP4RsoNuPpLk4nDtX0YSlYl9lrK/+UdIQJSyq0goSqODL06l2DP/u1QrDRQlSxTHSbB+UH8Pblw055yRZQ4WaDWR3E1/mNHqkHsRMeL+hlx2JCT3ooFVu6kK3x6dckCtE+eU/2TIgnZe8h4NMPiNBiihp7XoguBPaFtIUVTrSzfnQLSm+me1GZlouU0QG0j42praziMwOdE/flLd0C9X1fdtwwOUVsfxc6Fh7chl8VY1Z96RT35Z3zgYrQOS0p5+IwKrRa0LM0ng6jYb/KabyQ== 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=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=O4mQzxkVSN7EiCiaiz6mikAn9IS6vxDrB3ropi3cma0=; b=vgHUdYMThzX3VTM8c4lgykpiifFiiHLiUOoFjAfrpAIYMbp6gG2HZADFbKsR8EjXeO1+Ok6h6sAWjwY76+QhbSGsKuMeJhDD/fsq++1vGK862n8G++n2MFwXeL2/m6EAz9xPcSZZ3IrqDl9hrzaOSL/mFBA01qqcYFORFytcAaU= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; Received: from PAXPR08MB7201.eurprd08.prod.outlook.com (2603:10a6:102:20b::17) by AM8PR08MB5713.eurprd08.prod.outlook.com (2603:10a6:20b:1dc::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5880.8; Mon, 28 Nov 2022 16:06:16 +0000 Received: from PAXPR08MB7201.eurprd08.prod.outlook.com ([fe80::40bc:b698:5059:f02]) by PAXPR08MB7201.eurprd08.prod.outlook.com ([fe80::40bc:b698:5059:f02%4]) with mapi id 15.20.5880.008; Mon, 28 Nov 2022 16:06:16 +0000 Date: Mon, 28 Nov 2022 16:06:08 +0000 From: Alex Coplan To: Richard Biener Cc: Vaseeharan Vinayagamoorthy , "gcc-patches@gcc.gnu.org" Subject: Re: [PATCH] tree-optimization/107672 - avoid vector mode type_for_mode call Message-ID: References: <20221122084850.B6CA313B01@imap2.suse-dmz.suse.de> Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: X-ClientProxiedBy: LO4P123CA0194.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:1a4::19) To PAXPR08MB7201.eurprd08.prod.outlook.com (2603:10a6:102:20b::17) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: PAXPR08MB7201:EE_|AM8PR08MB5713:EE_ X-MS-Office365-Filtering-Correlation-Id: 1cd98d93-9619-48ff-39ce-08dad15a7a91 NoDisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: hUkCOptVNbBOviyaI66C4melf+DGCOBOXCOeZiLIiNB553dv286a0+sC/B25yN2SYW8HPbn60k2OOCAtWohMVGnWxzeuIS0HnmHIe5ZOARCpfj3dQ8yMdHkjNnbjYD2gzWAe/sAt/JAYOSWwYOLPy2a3kPrV+WTpYcO2+n+PDsc/0S6T71QIOBQDCD/s3E0TRn2/B4WFQQBqhXGC07Z9HeDZ/2v+/uatzbcQ/E4J7Ymg/5aV/WAdac9QZMO5JSqaJHyuetQS5GNeJLkPO0++93bUaO4SuwQ5E1QWnJg+w3oTp453D30JuviijV//tOwyvxczdlEDg13X9yrVNRzfJCYjxTM/Xte1CbZ6B4JEmB9Ig2R5RxtzDtAHt7vbJnz+mDRDh13w6aw6j5jCIGjf7lG1LjRSJSxpo0lt1zNJ/zuf6GzjB8esfgz5SulxmbWGf3aUpbqZj9Cquh5EcbwharEZjxlp3kKmDGnnhhGitturF1EqiNLioIvruHig2IRRLLtRJATvzXfhZJTqhM0wxMQGNaPbVg63B/+5SphpC0I/7TpJZqUQm6MaKCEnDwir4jly9HrQRCr8Gnjvud4BhzJd/MkGSwr6wSyiO86oLmCS/NIiXM0LWWhem/U2W/+O8puPTmIJHXVYQtZGvw73lhbuYJIHWsJQloUyBFSe2mMsKwu3t+4zkAFnr+h9nttqH0M27La15nGdePrOR7x6IQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:fr;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PAXPR08MB7201.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230022)(4636009)(136003)(376002)(366004)(346002)(39860400002)(396003)(451199015)(6666004)(83380400001)(53546011)(6512007)(2906002)(6506007)(26005)(6486002)(966005)(38100700002)(86362001)(5660300002)(567974003)(44832011)(6916009)(54906003)(316002)(478600001)(66946007)(8676002)(66476007)(8936002)(66556008)(186003)(2616005)(41300700001)(4326008)(36756003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?UU9ZeDVhS0g3Q3l1UC9MNUQydlg1SzIwSm5VZGNqRWJkbWJTek5PUVRvN1JP?= =?utf-8?B?L0hzUG53OTF5V0tBdTd4eUdkejIwOVJtS2RMcEpJM3JRRGR3Y2ZTSDVHTEsr?= =?utf-8?B?Z3RQVmIwczhoaGxuZWZZbjFEdDdQOFZURlUrWkRJbU5YTUlhTU5iOXY2Vy9x?= =?utf-8?B?QlBNSnNZNEFLQVJVWGRsemJvdUdDaGFnTjBoelkxUW5yWmZkVDIyb2pGSEtR?= =?utf-8?B?WXZoeGJKVUZwMzZSM2k0aFdvOTM4Szg4U3Z4WVF0U1BwQUMzc05CMStIYThH?= =?utf-8?B?Yjd5T1lnSy9DQnRTSkJtUW9DdEtIbnBBME9vYld2cWw5TThoanRwUmt3SW1E?= =?utf-8?B?dTMzWjFtYmJlam85QU9yZlZFNGJnU1NPR3AybldwOUd3RzM0L2hNZkRFaXha?= =?utf-8?B?TWlLMFdvWHp1dWtjazB0WGg1enZCY011V1l5UXpkSG0wV0pDWW1mVEtQUVhp?= =?utf-8?B?c3M4c21XQmJYR2orZTNjeFRBb1JVbFQvbWJFeTFhdlJveXZDZHFHbTh5MkVa?= =?utf-8?B?VHJKWDl3Mk9LNTFyeVNHTTdIeUI4bnR4Ri9xZyt0UjUwRldXRjYrelQwYkg0?= =?utf-8?B?eUdCU2hXS092RG14NVZUWVY2TitPaFZOaGxCcGJtM25jTHlIcmlPUG54TTh0?= =?utf-8?B?N1I2b2NkZHlhOWJscjF0T1NrS0NGeW9IY3hMUFhrKzNsRGp3eFpFaVN4L3Bv?= =?utf-8?B?RkdMMDFZWTJ1TEg5Y05QaUErNEQ3enZYL2VBRTdBcTVjNE1lUGdnMklXVkQz?= =?utf-8?B?YTJVemRtdVUxUkxBdWRORWJUNVNzeFdOVFQ2N0l5bXk4R2RuS2dvSVFqR01S?= =?utf-8?B?LzB2TUNkeEhzd2JtZTRwYmEvcG9DQnZRUldKOTNjdFRLdXAxSzltRTFMQW52?= =?utf-8?B?MjlBb0J4UXBZTkVPbGNHVFJSVzFva3pWMUNHb2lMMFhPK203WEpuM3Nwemk1?= =?utf-8?B?YlVvWW5iVlYwbkNTTFFJNmwrVmVXNnB0aG1QMlpxcFd0aE9vR2xONEk4WEJm?= =?utf-8?B?UVZDU21JeXRXR0pyclZDTkhuTTM1dllkQzd2RUJ4enlFdlhyRDVDckRWQmdl?= =?utf-8?B?MFkzd0NVWlVQaUNEQTB1TVpSQVlyaEdNbWpBUEc5WFNuRkJwSzZPUHlzMkpP?= =?utf-8?B?M2pzNk1GZ01tUzB6QlFzT0tvRXkrR3RiVUtDb2JBdldkUXNnWHNYZzMvd1pv?= =?utf-8?B?bVVUYnk3WlU5MWdQSUJ2ZmFZVlNkNTRpTVdaTkg5QkNSd2EvU3VybFBFN3FL?= =?utf-8?B?QXFVcjltbGRBQVN5NWNuU09GdHZxeXZFMHN4QVpiU01SN2l0bURXWFYxWm9B?= =?utf-8?B?eXZEeFk4Vk5ISjRVS3RxMkdnZkpCRUhnY29hMDFoVVc1V0JOT0R6L0d0SW9r?= =?utf-8?B?SkJIZXlBbmk3cG1kd25BWEQ2b0pzYndNeU9qREk3WWR4ZTh3dTVGRTJhTEVT?= =?utf-8?B?ZU9YMEhGR1VQcjBZN1lUei9SK1hXQkJUU3ZlZS9mU3M5bFBlRWplc2h2SkJ6?= =?utf-8?B?dDFkek1KSDl5VlUzeEsyN3cvallRRkNydEhEWjZvdE5SVzFpYUFZT09ialVl?= =?utf-8?B?WnpVZ3hPR1hsMVhUV0JPSVRya3JTMThUZGZpWkxNN3FZeHl5Y3EvcVFNa1ho?= =?utf-8?B?dGFoL1JzVjVNV3V4MFVQUGlQdXZTcHJlRkw4VzhLSXZ4V0oyMHh6aGhFU0Zp?= =?utf-8?B?aHpEYTRyS05rNTlEQThiYzVPdXRSaUVvVExHNHo2SE9LZEF3R2pYVUtuWUUx?= =?utf-8?B?OXRPSUdSNkZaazV4THJiYkMyUVFMbzRiWW1CRnc3NjYrUUhQazA1bWhjbmFN?= =?utf-8?B?L3VwSkpRMmV0QlF6OUZHRWs5cWRkcmpNcm13TFp6Rk0rT3FoRCtDb3RES2c5?= =?utf-8?B?TXFnUjZ6dHlsUS9DZTF0TkJXZEVVZyt3N1U0OVZ6aVZ2WVRTQVp6L3BDeHRY?= =?utf-8?B?RWZWLzVDTkdWMUN4Qms1dVl0UWhXeTZPelg2Y0pONTNoa21SamF4cUYvQ3FT?= =?utf-8?B?NUU2bEQyLy9ycUZsaDZKdVZIMUxWaFlnV0VHOHFWcEE3N2RjaVQvM3hwODhY?= =?utf-8?B?UEtOTXZpMjZiSnpLQW8xcXp5TzRzVXdNVUNoaTdFMXlKVWRSQzJKbE5ycEJM?= =?utf-8?Q?1292WWNjs8zrxV8QFYrXtNx+P?= X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-Network-Message-Id: 1cd98d93-9619-48ff-39ce-08dad15a7a91 X-MS-Exchange-CrossTenant-AuthSource: PAXPR08MB7201.eurprd08.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Nov 2022 16:06:16.4007 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: XF/NBjBgHkzRLTl8fdGJxlHaz7EV6t+CU0E1CjRDxe7WDKPrqk9DrKrck6d5X/XFbn+USTDbNnX+rsH5lh+gng== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR08MB5713 X-Spam-Status: No, score=-9.6 required=5.0 tests=BAYES_00,BODY_8BITS,DKIM_SIGNED,DKIM_VALID,FORGED_SPF_HELO,GIT_PATCH_0,KAM_ASCII_DIVIDERS,KAM_DMARC_NONE,KAM_SHORT,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_PASS,SPF_NONE,TXREP,WEIRD_PORT 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: Hi Richard, On 25/11/2022 21:08, Richard Biener via Gcc-patches wrote: > > > On Fri, 25 Nov 2022, Vaseeharan Vinayagamoorthy wrote: > > > Hi, > > > > I am seeing an internal compiler error, related to this patch: > > Can you please open a bugzilla for this and attach preprocessed > source so I can reproduce the ICE with a cc1 cross compiler? I've raised a PR for this with a reduced testcase here: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107896 Thanks, Alex > > Thanks, > Richard. > > > > > during GIMPLE pass: slp > > > > options-save.cc: In function 'void cl_optimization_restore(gcc_options*, > > gcc_options*, cl_optimization*)': > > > > options-save.cc:1292:1: internal compiler error: in > > supportable_widening_operation, at tree-vect-stmts.cc:12199 > > > > � > > > > �1292 | cl_optimization_restore (struct gcc_options *opts, struct > > gcc_options *opts_set, > > > > �| ^~~~~~~~~~~~~~~~~~~~~~~ > > > > /�/src/gcc/gcc/profile-count.cc: In member function 'int > > profile_count::to_cgraph_frequency(profile_count) const': > > > > /�/src/gcc/gcc/profile-count.cc:308:1: note: parameter passing for argument > > of type 'profile_count' changed in GCC 9.1 > > > > �308 | profile_count::to_cgraph_frequency (profile_count entry_bb_count) > > const > > > > �| ^~~~~~~~~~~~~ > > > > /�/src/gcc/gcc/profile-count.cc: In member function 'sreal > > profile_count::to_sreal_scale(profile_count, bool*) const': > > > > /�/src/gcc/gcc/profile-count.cc:326:1: note: parameter passing for argument > > of type 'profile_count' changed in GCC 9.1 > > > > �326 | profile_count::to_sreal_scale (profile_count in, bool *known) const > > > > �| ^~~~~~~~~~~~~ > > > > 0x2195bdd supportable_widening_operation(vec_info*, tree_code, > > _stmt_vec_info*, tree_node*, tree_node*, tree_code*, tree_code*, int*, > > vec*) > > > > �/�/src/gcc/gcc/tree-vect-stmts.cc:12199 > > > > 0x2180493 vectorizable_conversion > > > > �/�/src/gcc/gcc/tree-vect-stmts.cc:5064 > > > > 0x2192fdd vect_analyze_stmt(vec_info*, _stmt_vec_info*, bool*, _slp_tree*, > > _slp_instance*, vec*) > > > > �/�/src/gcc/gcc/tree-vect-stmts.cc:11256 > > > > � > > > > /�/src/gcc/gcc/profile-count.cc: In member function 'profile_count > > profile_count::combine_with_ipa_count(profile_count)': > > > > /�/src/gcc/gcc/profile-count.cc:398:1: note: parameter passing for argument > > of type 'profile_count' changed in GCC 9.1 > > > > �398 | profile_count::combine_with_ipa_count (profile_count ipa) > > > > �| ^~~~~~~~~~~~~ > > > > 0x14f95d1 vect_slp_analyze_node_operations_1 > > > > �/�/src/gcc/gcc/tree-vect-slp.cc:5958 > > > > 0x14f9c19 vect_slp_analyze_node_operations > > > > �/�/src/gcc/gcc/tree-vect-slp.cc:6147 > > > > 0x14f9b4d vect_slp_analyze_node_operations > > > > �/�/src/gcc/gcc/tree-vect-slp.cc:6126 > > > > 0x14fa439 vect_slp_analyze_operations(vec_info*) > > > > �/�/src/gcc/gcc/tree-vect-slp.cc:6387 > > > > 0x14fd423 vect_slp_analyze_bb_1 > > > > �/�/src/gcc/gcc/tree-vect-slp.cc:7372 > > > > 0x14fd599 vect_slp_region > > > > �/�/src/gcc/gcc/tree-vect-slp.cc:7419 > > > > 0x14fe0d1 vect_slp_bbs > > > > �/�/src/gcc/gcc/tree-vect-slp.cc:7610 > > > > 0x14fe46f vect_slp_function(function*) > > > > �/�/src/gcc/gcc/tree-vect-slp.cc:7698 > > > > 0x151a109 execute > > > > �/�/src/gcc/gcc/tree-vectorizer.cc:1532 > > > > Please submit a full bug report, with preprocessed source (by using > > -freport-bug). > > > > Please include the complete backtrace with any bug report. > > > > See for instructions. > > > > Makefile:1146: recipe for target 'options-save.o' failed > > > > make[3]: *** [options-save.o] Error 1 > > > > > > > > That happens when building the�arm-none-linux-gnueabihf toolchain natively > > with glibc bootstrap: > > Build:arm-none-linux-gnueabihf > > Host:arm-none-linux-gnueabihf > > Target: arm-none-linux-gnueabihf > > > > The compiler being used to build the toolchain is gcc 7.5.0. > > > > > > Kind regards > > Vasee > > > > ____________________________________________________________________________ > > From: Gcc-patches on > > behalf of Richard Biener via Gcc-patches > > Sent: 22 November 2022 08:48 > > To: gcc-patches@gcc.gnu.org > > Subject: [PATCH] tree-optimization/107672 - avoid vector mode type_for_mode > > call � > > The following avoids using type_for_mode on vector modes which might > > not work for all frontends.� Instead we look for the inner mode > > type and use build_vector_type_for_mode instead. > > > > Bootstrapped and tested on x86_64-unknown-linux-gnu, pushed. > > > > ������� PR tree-optimization/107672 > > ������� * tree-vect-stmts.cc (supportable_widening_operation): Avoid > > ������� type_for_mode on vector modes. > > --- > > �gcc/tree-vect-stmts.cc | 12 +++++++++--- > > �1 file changed, 9 insertions(+), 3 deletions(-) > > > > diff --git a/gcc/tree-vect-stmts.cc b/gcc/tree-vect-stmts.cc > > index bc0ef136f19..b35b986889d 100644 > > --- a/gcc/tree-vect-stmts.cc > > +++ b/gcc/tree-vect-stmts.cc > > @@ -12195,9 +12195,15 @@ supportable_widening_operation (vec_info *vinfo, > > �������� intermediate_type > > ���������� = vect_halve_mask_nunits (prev_type, intermediate_mode); > > ������ else > > -������ intermediate_type > > -�������� = lang_hooks.types.type_for_mode (intermediate_mode, > > -������������������������������������������ TYPE_UNSIGNED (prev_type)); > > +������ { > > +�������� gcc_assert (VECTOR_MODE_P (intermediate_mode)); > > +�������� tree intermediate_element_type > > +���������� = lang_hooks.types.type_for_mode (GET_MODE_INNER > > (intermediate_mode), > > +�������������������������������������������� TYPE_UNSIGNED (prev_type)); > > +�������� intermediate_type > > +���������� = build_vector_type_for_mode (intermediate_element_type, > > +���������������������������������������� intermediate_mode); > > +������ } > > � > > ������ if (VECTOR_BOOLEAN_TYPE_P (intermediate_type) > > ���������� && VECTOR_BOOLEAN_TYPE_P (prev_type) > > -- > > 2.35.3 > > > > -- Alex