From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id E875DC3DA5D for ; Thu, 25 Jul 2024 09:13:43 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 481A66B007B; Thu, 25 Jul 2024 05:13:43 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 431CC6B0082; Thu, 25 Jul 2024 05:13:43 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 2F97C6B0083; Thu, 25 Jul 2024 05:13:43 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id 118BA6B007B for ; Thu, 25 Jul 2024 05:13:43 -0400 (EDT) Received: from smtpin05.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id 895791C28FE for ; Thu, 25 Jul 2024 09:13:42 +0000 (UTC) X-FDA: 82377712284.05.45B347F Received: from eu-smtp-delivery-151.mimecast.com (eu-smtp-delivery-151.mimecast.com [185.58.86.151]) by imf26.hostedemail.com (Postfix) with ESMTP id 28FF6140025 for ; Thu, 25 Jul 2024 09:13:39 +0000 (UTC) Authentication-Results: imf26.hostedemail.com; dkim=none; dmarc=pass (policy=none) header.from=aculab.com; spf=pass (imf26.hostedemail.com: domain of david.laight@aculab.com designates 185.58.86.151 as permitted sender) smtp.mailfrom=david.laight@aculab.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1721898780; a=rsa-sha256; cv=none; b=0f1xxIsYuEV0s7yU85MadvSYPeQOoCko69L7FB/7rRY9aceicnmoatauLqNP41aTpNJlhk famRd9Tb95JhM4JyjjmPakhuDRzRWoyZbaBnumVLr8q/TvKrsIAm0y9JnjvKJdZ1kL2WHG Cv3hCYPBXhBLCOOz1Lvf/KdZwssauTI= ARC-Authentication-Results: i=1; imf26.hostedemail.com; dkim=none; dmarc=pass (policy=none) header.from=aculab.com; spf=pass (imf26.hostedemail.com: domain of david.laight@aculab.com designates 185.58.86.151 as permitted sender) smtp.mailfrom=david.laight@aculab.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1721898780; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=/LgfRLyLSfCDGXIy5FhfwmzXLJbJUQSCIjaFmiKliXw=; b=hslmKHpGfhZExN9k8l+wdvlweOBCXKWNFd77XcbNEr/oiS95zgXFtHUd0IefcasyqB68kw e5VxfAfx0y2JOykZwq9FJBEieBc/7xhmkXR+2lVguoZ5y4hXYf2gbTPZsFAfAX2Wp8bePF 1G5uFKTtWhtdjxevU/0IzjVBN/EywsA= Received: from AcuMS.aculab.com (156.67.243.121 [156.67.243.121]) by relay.mimecast.com with ESMTP with both STARTTLS and AUTH (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id uk-mta-253-uHipkxBVP7SWuPIbzBzFtA-1; Thu, 25 Jul 2024 10:13:36 +0100 X-MC-Unique: uHipkxBVP7SWuPIbzBzFtA-1 Received: from AcuMS.Aculab.com (10.202.163.6) by AcuMS.aculab.com (10.202.163.6) with Microsoft SMTP Server (TLS) id 15.0.1497.48; Thu, 25 Jul 2024 10:12:57 +0100 Received: from AcuMS.Aculab.com ([::1]) by AcuMS.aculab.com ([::1]) with mapi id 15.00.1497.048; Thu, 25 Jul 2024 10:12:57 +0100 From: David Laight To: 'Arnd Bergmann' , "'linux-kernel@vger.kernel.org'" , Linus Torvalds CC: Matthew Wilcox , Christoph Hellwig , Andrew Morton , "Andy Shevchenko" , Dan Carpenter , "Jason A . Donenfeld" , "'pedro.falcato@gmail.com'" , Mateusz Guzik , "'linux-mm@kvack.org'" Subject: RE: [PATCH 3/7] compiler.h: Add __if_constexpr(expr, if_const, if_not_const) Thread-Topic: [PATCH 3/7] compiler.h: Add __if_constexpr(expr, if_const, if_not_const) Thread-Index: Adrd1gZ7oS190yPcQj+hKNIa4uSuaQAEQPEAACLTNbA= Date: Thu, 25 Jul 2024 09:12:57 +0000 Message-ID: <3d6217d937994620a5de0d8967f518c0@AcuMS.aculab.com> References: <23bdb6fc8d884ceebeb6e8b8653b8cfe@AcuMS.aculab.com> <9751d18defea406fa698630637d8e7db@AcuMS.aculab.com> <24be8665-4717-4ee2-8a81-80fed5181736@app.fastmail.com> In-Reply-To: <24be8665-4717-4ee2-8a81-80fed5181736@app.fastmail.com> Accept-Language: en-GB, en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-exchange-transport-fromentityheader: Hosted x-originating-ip: [10.202.205.107] MIME-Version: 1.0 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: aculab.com Content-Language: en-US Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Rspamd-Server: rspam12 X-Rspamd-Queue-Id: 28FF6140025 X-Stat-Signature: 1nogj6ytnjw84975muxzenc3pkjpfcq7 X-Rspam-User: X-HE-Tag: 1721898819-521340 X-HE-Meta: U2FsdGVkX1+rG6wHDCAgolkA1NoRrI4LPLf6A5uwwK2CpXgAXUTmQX5m3/AevnbWNz0U4IG691/3MpSerLJNrJJjisHXtgCRfd+vW4vZqhXobRvvKA6AvzFHWlJh3dhlctxEIDDlPeuuTY2QJbIbYhrE9jN/rT0bgqonAqR7Ffiy3bTjseVrnPTH3wacY70ozsQPuA8I/vLCYuOQgZTwTECV0v+s8bvMglLXDDehVNvshgmtoXQnFJANp7btS1BpMmFas74SbY3rCBYSvP1OT5DRqpGqjAyseITO6gKOLKSgCKQmQvqBiro1U53GdhN5nYDVtp6ThiNFZY5M3ILhTHYt0hfbi3jkTmHYI3zc14wKGQazxZbuUWtj92vJQOV5PeJzP83qOlUIrZuwR5+G+dFOINNtzcWGnvIy8ouBBRVpCBUocuqPeWp87MMtEqBasqknT03q8f0+eRdjRbY9++ZcJw+cL13L7JlWm/63QZDvStYg5Pqi5N+4/12joYxwlcjNQA6RyVHo5+6hwdw61O/5t35ym5nm1MLT8WEBrBI2BsIcYyOcazixcPcKatThkrAP4/i9mcWbfHlUPea6JmbJSp4X30gQa6q1VMUEpw9gbXhnbD9hgYsnLhjDMRCccO9+uVMjK4Pg8PIC3My5KEdHLnURvgFcD6tXsK4HchCQY7tRF7PWDiJNuf7Qrq1WByZm+zuNctTlCnKymL5Lw1k7tEmJdj/IQk8fQqr315fCIabUaghq7fN3qKjeGc/AMiFs2QNPLz9eb9T4BChsUjZNRaIrmN8NVFkkk3z46ROSdmVbXCoSWFPytA+1lUT8YkAza/3r81gQbyDHOJ2F98ExVI/I8ZUMPpf0+tmpwbPPhbP9l7K8O1VjTZKxH4jVEgLL/GjPfiTvcVauCUnRaqBGR5nVDN4mqcbS9Sslp2j8wJWWOVOT8a20pNBwQHAauuFKj0rEJENxrUoMzqA shhKw9WQ pvusAjuRL/FONHDCnRlxML5NZvbziJvHMN6N0wAXef3Rc8CqQg7fYgefARjtUSN8jL93p1IL9NUYpsuzdc/i9bxf29vA7gHvR/Hc06mPcj0Un15UDrLblvXsYaFV8l7broQ8AItvA+/gPLFL0p+g41lyO2VTyLtqxMSIzuODbJ9GDZ5mLCzA7QZCaM5soC/Pbfl248GTy3BTMJ+RhiZHkhuYx0jKjzpj7AZhReCTTghLJ9Ag7aFCQww4JfeAjmvkT6f0G/0iZkBJvo6CvSBqI81mPvYx5ahwhKKSWST/prim4GTo4PoyMMQffjRXOIefH778zDpXOQrsT5lifxLPVrPhtZidFHlUKL/5DR45rz5miR4ZnV0DwqyvFKpuAjJkwwCDs6f4bQh3xfC8= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: From: Arnd Bergmann > Sent: 24 July 2024 18:32 >=20 > On Wed, Jul 24, 2024, at 16:29, David Laight wrote: >=20 > > +#define __if_constexpr(expr, if_const, if_not_const)=09=09\ > > +=09_Generic(0 ? ((void *)((long)(expr) * 0l)) : (char *)0,=09\ > > +=09=09char *: (if_const),=09=09=09=09\ > > +=09=09void *: (if_not_const)) > > + > > -#define __is_constexpr(x) \ > > -=09(sizeof(int) =3D=3D sizeof(*(8 ? ((void *)((long)(x) * 0l)) : (int = *)8))) > > +#define __is_constexpr(expr) __if_constexpr((expr), 1, 0) >=20 > I don't immediately see anything wrong with this, but I'm > still scared of any change to it, especially if this is > meant to go straight into mainline. Well it would be -rc1 (or maybe -rc2). > Would it be possible to do patch 4/7 without the new > __if_constexpr() and instead still using __builtin_choose_expr()? The safer option would be to add __if_constexpr() but leave the change to __is_constexpr() for 'next'. =09David >=20 > Arnd - Registered Address Lakeside, Bramley Road, Mount Farm, Milton Keynes, MK1 1= PT, UK Registration No: 1397386 (Wales)