From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by sourceware.org (Postfix) with ESMTPS id D1C713858D1E for ; Tue, 31 Jan 2023 08:12:06 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org D1C713858D1E Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=intel.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=intel.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1675152726; x=1706688726; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=tNtP9guFQL77CQPsnQgy5JQI3mKP4hyQbhvolWm9arg=; b=J3jrTo79MwvNDpiJ/0JC+jPGjoO3uf0nfDgpDfNuyTjrnVmsDs1LLfdM WH4FBEPVPhx9Cu/qsqRrPobYrxRk1WKH5QFD4hYJnlVu0v8iUEKjNlHcl lGqUv4XER71/sZ5fCUMdz+6/VEO4HbnjF+5/y/Mo4hrReQ/VbmClowX2K nhcNf4kyi9jE7ocjWoSQ+b/6TkTu1ERj37607Hz4FzOB/6OaKBo3nbNZ+ /034gYWbJ669B9hA4jrndz8brwvjuDuorG9+bFciQO+3/iX9df1Ut3mom TQgu6E41UYjNGDtTgQc+nMnTSFMumfOwIivWjQte7G74fKU9jeZFt//N7 Q==; X-IronPort-AV: E=McAfee;i="6500,9779,10606"; a="315742587" X-IronPort-AV: E=Sophos;i="5.97,259,1669104000"; d="scan'208";a="315742587" Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by orsmga101.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 31 Jan 2023 00:12:03 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10606"; a="807011841" X-IronPort-AV: E=Sophos;i="5.97,259,1669104000"; d="scan'208";a="807011841" Received: from fmsmsx603.amr.corp.intel.com ([10.18.126.83]) by fmsmga001.fm.intel.com with ESMTP; 31 Jan 2023 00:12:03 -0800 Received: from fmsmsx611.amr.corp.intel.com (10.18.126.91) 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.16; Tue, 31 Jan 2023 00:12:02 -0800 Received: from fmsmsx602.amr.corp.intel.com (10.18.126.82) by fmsmsx611.amr.corp.intel.com (10.18.126.91) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.16; Tue, 31 Jan 2023 00:12:02 -0800 Received: from fmsedg601.ED.cps.intel.com (10.1.192.135) 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.16 via Frontend Transport; Tue, 31 Jan 2023 00:12:02 -0800 Received: from NAM12-BN8-obe.outbound.protection.outlook.com (104.47.55.177) 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.16; Tue, 31 Jan 2023 00:12:02 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=XKukcgW/4i6HDbkM8tafzhp2R9ZIa4hAAG21cagqV0mMmk9N+nxlyWoLT7zwqvecE7Fuyj9ZwUwKRJbafQL8PoR1ncyiVsC+pME2fUh31HTNfTQ2GBjU9Ijde0Uf0Bg7xOubmWZRgdJpD2WN56aC0T18SUolOXl8UFoU0CFgOlHHpctDevxBwdjpSYfQSJr2ObVg5c4gM9ruXhpGUBW8bvsJaMDjRrtrCaEHmCgPSxH959Iyxoy57OSmNCqiWyQ/P+KKJLzZYz63O6XAb6cAAzefpct+z/ywhFMaISshP3pPjpsMymyg3owgxXo4i+2DrfR5fXAEhWSPL3MMIY1cvg== 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=f/k1OQgPkTasq4slz9Cwg2Pzx8NENPf8QRC92NZzqEc=; b=Jbfyqm62pUwzkLi3GkhCNkY03ALuyiegdyaQgLEbb+bV08bvVS2woSoxBCv5AnOeE3P5I/pGEG0B+2MqQZCfaHQ83jcEscHC63lu7wyDPC6ZvyLfOBpInAx4SqnD58JTcQMXMUnK1dOQUSrtmVtBc4vwszA6U9TxEGDnqe0n4+KIXoXqfF5eslhW/3fDvnA85g0bWU0Ab3EtFWjkq10xbSc90zZF7pULK/i15j4TB8gSVarTxPhpPV0xv0izxnzawofUyDyLg7usJneANRXRjreNHvgTcvQFrhV5/bvq5LmOY0b9trt0l2653vVrSR7yAaRvWKSTzvemfcyzAX1syA== 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 SA1PR11MB6757.namprd11.prod.outlook.com (2603:10b6:806:25c::13) by DM4PR11MB5534.namprd11.prod.outlook.com (2603:10b6:5:391::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6043.38; Tue, 31 Jan 2023 08:12:00 +0000 Received: from SA1PR11MB6757.namprd11.prod.outlook.com ([fe80::55f9:d4e5:fd58:3b32]) by SA1PR11MB6757.namprd11.prod.outlook.com ([fe80::55f9:d4e5:fd58:3b32%3]) with mapi id 15.20.6043.036; Tue, 31 Jan 2023 08:12:00 +0000 From: "Liu, Hongtao" To: Jakub Jelinek , Uros Bizjak CC: "gcc-patches@gcc.gnu.org" Subject: RE: [PATCH] i386: Fix up -Wuninitialized warnings in avx512erintrin.h [PR105593] Thread-Topic: [PATCH] i386: Fix up -Wuninitialized warnings in avx512erintrin.h [PR105593] Thread-Index: AQHZNUttYqbrZYN0dk6Oy95Znud7I664LL/A Date: Tue, 31 Jan 2023 08:12:00 +0000 Message-ID: References: In-Reply-To: Accept-Language: zh-CN, 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: SA1PR11MB6757:EE_|DM4PR11MB5534:EE_ x-ms-office365-filtering-correlation-id: eac41c02-67c0-4cf9-2586-08db0362d410 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: W7vLNkCZ3Xspz3EYfJhKwQzEm8NZPQR+WnN9YEccH6Q2ULeuFLeXDa1yhgE71NGvuiQTzDDOEmiKvunTD31pghzme7tohwzpHDYqyOfgSpgA+lzQL4UvfqpqOpkw26ow2Rb7exVzgidq9HHh6JYAMl2f9hI0CoYJnrh4Fzb4VV+GRAaRsq2B8DSS9kH5K2txR+i79+aBJRrIHytsVLg5LPevMiBzzv6R0da0rk5mC5lYSLmIP+ng9/wbGvQLaTB7+Lt9Hzeye7BLfSFoI8aDt/IX8ugTh+FsAZSu4tVPUCS2lN6vb19cXQpVVi0wyP+TrrZUpSjzVXpaqG+1QdKFXGV2pFVx2Ysk3C6HK2jtOgUt3GVd4cigVoPrg8geqmiCQ+jr9adBjYt4/IzrVPoXG6x14IifyjJAgEC5hGX4fhr2OFC6YZnNgABC69awAeijPL9fU7IHkAv5TioSGjAmSFwKD1vT+CP9hvPd5CaKDLjjg+BOFArc8AcFV6v2/THN47NRb3Gy2Dowq5RE4sf6oDGcLDpofkNbe/LEA9KwK+1RM0FgM0b8QA3zDvQLMRxIy+p7BdnG9dYYoBpAr8TJyBGBdQSQTy3HzQ3WDpVjl/xMXBvHk36H8oBl1Tw3saooVKPUSQlgSm0gDnFeG4yMsV+7/WgMqa40b5b2lLZR8JURCmjGwFBJORTmqfA5qRgU+XTLI9cxSPaa8uP5xvdLMiTsTEOVnUve73i77mD3wn0= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SA1PR11MB6757.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230025)(346002)(396003)(366004)(39860400002)(376002)(136003)(451199018)(84970400001)(83380400001)(2906002)(478600001)(71200400001)(110136005)(86362001)(82960400001)(38070700005)(33656002)(38100700002)(5660300002)(7696005)(6506007)(53546011)(76116006)(66556008)(66476007)(64756008)(8676002)(66946007)(66446008)(316002)(41300700001)(8936002)(52536014)(4326008)(55016003)(186003)(26005)(9686003)(122000001);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?Q37cjBxznm+3HwAZ9Hj10OqT8dT0r30y7Jgyb26JfB6MKgrPe5ocnwcrQKnV?= =?us-ascii?Q?FNLMmTRQRAqq9uEJ8mYc5P5pNusAvcEMH1pdHJxgy5uCcfqPVr6RogD3NkWz?= =?us-ascii?Q?aZhHeZpWgHpuc/d8yhOgAEiVCCu5LpmEEI8ou467aB8eBywbQzx305I7ng+S?= =?us-ascii?Q?S0dGfnfU2719vGygcDwuZ+a6AOpMi9l9T4by3mdojJuaOw5vhhdnhBFDMtRh?= =?us-ascii?Q?9C6AvBvcG8vfKtt4suEOVszOvzlOkAAmPRJO94x6qpRKl2lNc9VLXbluBjdC?= =?us-ascii?Q?nLUg24+NYbRaP/yff2ajurmRQ7ypjmnYniWju0VXhPMzZ25utn9AiSPgVYim?= =?us-ascii?Q?jy4nBfej1kRZwEGEI9ljrrZvFJzv8NTA/xHv1I5QVatagxdj3a/oQ+36uxrz?= =?us-ascii?Q?YtHPaxo40Y+eNV6wMjnIyrpzHuMyNFHz4GP/P72U3XdEPLBxZA8WDWDdZERz?= =?us-ascii?Q?7PMGAIGULBKGA+NyQkQ4wf5lONivnkGknMDevsR4vem49oArl0U2OVAyf+Xn?= =?us-ascii?Q?G927ZEi82qkeBc4eGc62JE5PhwdWjmsSh5G4U2/b6ORkiIbhHVW5j83kUK9D?= =?us-ascii?Q?FcPBOEV0tsJrvhe3WGQHv3owJrUiEWrcYudwofYxJQdrTvB7jU4Y0b9TeOAZ?= =?us-ascii?Q?KyxPhxWhcDttTdHwMZqzsx2L78aCrqDK9DNgiVoXX3BYsqe0V6j06VzhoZz3?= =?us-ascii?Q?cfXfcOkSpDuqUfBQkqntkgXfAl5EC53ggPFnKFCY30vRG1FV4awuNOFDly2H?= =?us-ascii?Q?nCgDpi91bGI+ZauBLDNHBoID84A+pnWks5b/Y+rc04PzZWptVFEs7FjYbcrP?= =?us-ascii?Q?tW+4MQtBQsWLuxT8VuR6JW9k0nNoc1q8jpUsS0OjGXJPt+NR/dC7pD2IGNI8?= =?us-ascii?Q?lzVwoaAaOaTnCfFnxD34qdgHZKQLfduk9/Ygez13xcYh4mCwEFEk17gk2n78?= =?us-ascii?Q?n7bp6fvL9fGLEe+nKY9yuefLy7kieX0xTcEyDXchD60RFqRlgmmtS1vRMmH4?= =?us-ascii?Q?eta9R7Xwdqmfw9o5joMytFFM/VbjEnfQaDyXwB5+I5ckqqhaKP5w/vrRQbq/?= =?us-ascii?Q?nA1sQj5/1etwJdilhPFBYWOtqb62ETIWiMq/5kQ/mWf4E53ILhcsEv1oZwT3?= =?us-ascii?Q?Rzua4ct4JK2LZpFG0Tcp5M8PMFuEKLFyjU1ucRx3vztzDvRDr/043IVfHUDF?= =?us-ascii?Q?RaF6ge/sG6iZS8vjaFixXI+QAHzLIuRo46uNEH6BGvy9tYK6wLlc7oBPsBdB?= =?us-ascii?Q?V8g436+zjh8l3a1nefcbo0xMZ851PHzdg43nRS3HAStBgk0dHKzdRJI5i5jl?= =?us-ascii?Q?dSJFdxrpvt4fr/ZuiXa5tYYzTT4r28X9L8cYmV8CsjM+CageS5MLiCgrzSiF?= =?us-ascii?Q?XVeiU9BwKBT/YafLSu4QoHFQMN0/4/enGPypfoOtfKJGhxoiIoD0UojPGndV?= =?us-ascii?Q?3263NNSUklbz9TSjvJcwvQylKvdhuFopv/yacuQ+F5MRdcWTfblll1EsVmtl?= =?us-ascii?Q?v8H3ErYF9wMdxHKq/RRi1OC4xumo+h2iyoy1+isQsQfmbkgFN1KNdfKiC5SG?= =?us-ascii?Q?3pNIGhy2YaUNGY1XUcm6k4xsE33jSwfcXWjVb/sr?= 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: SA1PR11MB6757.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: eac41c02-67c0-4cf9-2586-08db0362d410 X-MS-Exchange-CrossTenant-originalarrivaltime: 31 Jan 2023 08:12:00.2407 (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: rpcZ9/G4T8saQN3FJ9WVTYhdhtSVSrIGyI6lI+Okc3EXMeI5uNIMkq9AXB6UWqY76uXZVYfYFAtagCUu4gya6w== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR11MB5534 X-OriginatorOrg: intel.com X-Spam-Status: No, score=-6.8 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,KAM_SHORT,RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL,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: > -----Original Message----- > From: Jakub Jelinek > Sent: Tuesday, January 31, 2023 4:09 PM > To: Liu, Hongtao ; Uros Bizjak > Cc: gcc-patches@gcc.gnu.org > Subject: [PATCH] i386: Fix up -Wuninitialized warnings in avx512erintrin.= h > [PR105593] >=20 > Hi! >=20 > As reported in the PR, there are some -Wuninitialized warnings in > avx512erintrin.h. One can see that by compiling sse-23.c testcase with - > Wuninitialized (or when actually using those intrinsics). > Those 6 spots use an uninitialized variable and pass it as one of the arg= ument > to a builtin with constant mask -1, because there is no unmasked builtin.= It is > true that expansion of those builtins into RTL will see mask is all ones = and > ignore the unneeded argument, but -Wuninitialized is diagnosed on GIMPLE > and on GIMPLE these builtins are just builtin calls. > avx512fintrin.h and other headers use in these cases the _mm*_undefined_* > () intrinsics, like: > return (__m512i) __builtin_ia32_psrav8di_mask ((__v8di) __X, > (__v8di) __Y, > (__v8di) > _mm512_undefined_epi32 (= ), > (__mmask8) -1); etc. and= the following patch does > the same for avx512erintrin.h. > With the recent changes in C++ FE and the _mm*_undefined_* intrinsics, we > don't emit -Wuninitialized warnings for those (previously we didn't just = in C > due to self-initialization). Of course we could also just self-initializ= e these > uninitialized vars and add the #pragma GCC diagnostic dances around it, b= ut > using the intrinsics is consistent with the rest and IMHO cleaner. >=20 > Bootstrapped/regtested on x86_64-linux and i686-linux, ok for trunk? Ok, thanks. >=20 > 2023-01-31 Jakub Jelinek >=20 > PR c++/105593 > * config/i386/avx512erintrin.h (_mm512_exp2a23_round_pd, > _mm512_exp2a23_round_ps, _mm512_rcp28_round_pd, > _mm512_rcp28_round_ps, > _mm512_rsqrt28_round_pd, _mm512_rsqrt28_round_ps): Use > _mm512_undefined_pd () or _mm512_undefined_ps () instead of > using > uninitialized automatic variable __W. >=20 > * gcc.target/i386/sse-23.c: Add -Wuninitialized to dg-options. >=20 > --- gcc/config/i386/avx512erintrin.h.jj 2023-01-16 11:52:15.944736113 > +0100 > +++ gcc/config/i386/avx512erintrin.h 2023-01-30 20:53:08.057769691 > +0100 > @@ -51,9 +51,8 @@ extern __inline __m512d __attribute__ > ((__gnu_inline__, __always_inline__, __artificial__)) > _mm512_exp2a23_round_pd (__m512d __A, int __R) { > - __m512d __W; > return (__m512d) __builtin_ia32_exp2pd_mask ((__v8df) __A, > - (__v8df) __W, > + (__v8df) _mm512_undefined_pd > (), > (__mmask8) -1, __R); > } >=20 > @@ -79,9 +78,8 @@ extern __inline __m512 __attribute__ > ((__gnu_inline__, __always_inline__, __artificial__)) > _mm512_exp2a23_round_ps (__m512 __A, int __R) { > - __m512 __W; > return (__m512) __builtin_ia32_exp2ps_mask ((__v16sf) __A, > - (__v16sf) __W, > + (__v16sf) _mm512_undefined_ps > (), > (__mmask16) -1, __R); > } >=20 > @@ -107,9 +105,8 @@ extern __inline __m512d __attribute__ > ((__gnu_inline__, __always_inline__, __artificial__)) > _mm512_rcp28_round_pd (__m512d __A, int __R) { > - __m512d __W; > return (__m512d) __builtin_ia32_rcp28pd_mask ((__v8df) __A, > - (__v8df) __W, > + (__v8df) > _mm512_undefined_pd (), > (__mmask8) -1, __R); > } >=20 > @@ -135,9 +132,8 @@ extern __inline __m512 __attribute__ > ((__gnu_inline__, __always_inline__, __artificial__)) > _mm512_rcp28_round_ps (__m512 __A, int __R) { > - __m512 __W; > return (__m512) __builtin_ia32_rcp28ps_mask ((__v16sf) __A, > - (__v16sf) __W, > + (__v16sf) _mm512_undefined_ps > (), > (__mmask16) -1, __R); > } >=20 > @@ -229,9 +225,8 @@ extern __inline __m512d __attribute__ > ((__gnu_inline__, __always_inline__, __artificial__)) > _mm512_rsqrt28_round_pd (__m512d __A, int __R) { > - __m512d __W; > return (__m512d) __builtin_ia32_rsqrt28pd_mask ((__v8df) __A, > - (__v8df) __W, > + (__v8df) > _mm512_undefined_pd (), > (__mmask8) -1, __R); > } >=20 > @@ -257,9 +252,8 @@ extern __inline __m512 __attribute__ > ((__gnu_inline__, __always_inline__, __artificial__)) > _mm512_rsqrt28_round_ps (__m512 __A, int __R) { > - __m512 __W; > return (__m512) __builtin_ia32_rsqrt28ps_mask ((__v16sf) __A, > - (__v16sf) __W, > + (__v16sf) > _mm512_undefined_ps (), > (__mmask16) -1, __R); > } >=20 > --- gcc/testsuite/gcc.target/i386/sse-23.c.jj 2022-11-07 > 10:30:42.831628746 +0100 > +++ gcc/testsuite/gcc.target/i386/sse-23.c 2023-01-30 > 20:48:28.858838817 +0100 > @@ -1,5 +1,5 @@ > /* { dg-do compile } */ > -/* { dg-options "-O2 -Werror-implicit-function-declaration -march=3Dk8" = } */ > +/* { dg-options "-O2 -Werror-implicit-function-declaration > +-Wuninitialized -march=3Dk8" } */ > /* { dg-add-options bind_pic_locally } */ >=20 > #include >=20 > Jakub