Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:127728 X-Original-To: internals@lists.php.net Delivered-To: internals@lists.php.net Received: from php-smtp4.php.net (php-smtp4.php.net [45.112.84.5]) by lists.php.net (Postfix) with ESMTPS id 6812F1A00BC for ; Fri, 20 Jun 2025 07:12:34 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=php.net; s=mail; t=1750403436; bh=qfE4i7e6FaDu+e1q83k55GBulwM32Gs0LwiUa9fQjjc=; h=Date:Subject:To:References:From:In-Reply-To:From; b=e67U+yYfR+9Hvp+26RlgqyY+XXXBFzRfoB23YtQGwbAeD8T/gyI1F53LiUWYHXl6+ 40lTwo5d7wq8WVEH3xixketTvm1cLf6NjFvq6AYrz/iPkNPc+LrKoFdX2quhZAW9r4 X+FzR17KiT2vPVJx7/uN7DI329L8ETttE10lle3D/7mX0zzmoD09d60j56x84NqOpw SXIp2TRiKcw4sKqtgmcxRI03uut/mQtordL+kvJiLixmLyt9lyMFoh5i20dC2URPb7 /VE/No0gXptVw43gINrft7AicWpQql4D5LiIQ9arh/TzeFmVAKsISfSGt0D947JSZM pqRenGvFqCLgw== Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id 9246C180051 for ; Fri, 20 Jun 2025 07:10:35 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 4.0.1 (2024-03-25) on php-smtp4.php.net X-Spam-Level: X-Spam-Status: No, score=0.3 required=5.0 tests=BAYES_50,DKIM_INVALID, DKIM_SIGNED,DMARC_MISSING,HTML_MESSAGE,RCVD_IN_DNSWL_LOW,SPF_HELO_NONE, SPF_PASS autolearn=no autolearn_force=no version=4.0.1 X-Spam-Virus: Error (Cannot connect to unix socket '/var/run/clamav/clamd.ctl': connect: Connection refused) X-Envelope-From: Received: from wp160.webpack.hosteurope.de (wp160.webpack.hosteurope.de [80.237.132.167]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (prime256v1) server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by php-smtp4.php.net (Postfix) with ESMTPS for ; Fri, 20 Jun 2025 07:10:34 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=mabe.berlin ; s=he194859; h=Content-Type:In-Reply-To:From:References:To:Subject: MIME-Version:Date:Message-ID:From:Sender:Reply-To:Subject:Date:Message-ID:To: Cc:MIME-Version:Content-Type:Content-Transfer-Encoding:Content-ID: Content-Description:In-Reply-To:References; bh=OsmYKjBQwdzXMxeeMPiaScxlk9LcY8hoKuPHdT3gdMQ=; t=1750403552; x=1750835552; b=VyZAhbw61OEYB3td5ByEIh4LyjtdP1Wjt0rASvqkB+yfQwSGn3678sOOpFvhG4spkqipwcfJcSY cFCIri0GlEL0nZMmgph1jTvfyxQ4UR6F1zKD0c8OYUjcXfZPXEU/oZXuFx+NXTtvgvYzkqGIuzttx 57hLZqikGWNFyH1VOyFAXR4vCzkQaU7TeZuZPeU+1INSPu3Hs25bK0hGLFgMt5KFyq/am9XxI5MvF IJNtsm9oL6ACBl09r1kqW2VZaBqemgEMRWp8H0ued/m3lmhye8V6ifyHMkvjIVTVt2EHXpfS98Byy p49uXeHPFgVu5dVV3FB1Q65R/gDurckcOEcw==; Received: from [2a02:8109:b300:8f00:af78:9fdc:fa7b:87cf]; authenticated by wp160.webpack.hosteurope.de running ExIM with esmtpsa (TLS1.3:ECDHE_X25519__RSA_PSS_RSAE_SHA256__AES_128_GCM:128) id 1uSVvK-005l5E-2R; Fri, 20 Jun 2025 09:12:30 +0200 Message-ID: Date: Fri, 20 Jun 2025 09:12:31 +0200 Precedence: bulk list-help: list-post: List-Id: internals.lists.php.net x-ms-reactions: disallow MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PHP-DEV] [RFC] Drop support for 32bit builds To: internals@lists.php.net References: <73D7B135-ABF8-4EFC-BF16-EA26A5BD1B7A@cmpct.info> Content-Language: en-US Autocrypt: addr=marc@mabe.berlin; keydata= xsBNBFby8roBCAD4qHjbk9+V3SmB5DfpkTtX58jYJ9VXVfF54MDoI0fQiYvKyrrghfO78alH c12RsEZxLH2F5kEfu8WO4wA4apg2gBnRRxqPj7krsct1ySOAdMrRVp8Wtaeaznpdcn2gJZyA MSI6LTzebT25N77ksvSrUi1BuCKyOa7SmYff3xGgOwYsHQlT5opMNGPCVegiPmO/K37anwts gj6L7RVtjXtp2Z3wAs6r3EmO318PL48xDLUgYMvEFAPJglth5FGH2En6n6HFIhxh43LqXQiN eHVjLjS2y8huNBswwc9ZVxk3ip5z/GCmpWnNkgGBOSJ7loJRsq2tOaU6yU8KWb5rhOoFABEB AAHNIU1hcmMgQmVubmV3aXR6IDxtYXJjQG1hYmUuYmVybGluPsLAeAQTAQIAIgUCVvLyugIb AwYLCQgHAwIGFQgCCQoLBBYCAwECHgECF4AACgkQOTar91O8iM6jzggAwvV6MqU/hcAI6ldp xVjucGz2J9cAWtva8GL+rm9zvEs7EENtamehJiZob/CTw50WiI/zsJzPblktpT0D2AFBEp9k P5/8CmCpZzxYPsxnLtsFM52fOBpO+aP0PSStBpJjndjBH7HPqKcTCXM3ZM+SL6lyRweAJR7G +JXIZbuUrbjB2lbGx3itNZ6TeXqqnE6KTXNKLEbNHfVdzE4sPDkmuZRo/M2h+gmeS1iQb29W BmhvL6czugCQI9rYl7C4Nci9wPii1lTYyfCWQfQKID4/F2HiOv+N/vDMCK1xV8TUeCy8w4X+ nYj+wDog046ki9lUM60oPij6WoSJLqfsXr1kNc7ATQRW8vK6AQgAq7QYLB1Dz+8RSi5AGJP1 tOFQXtcxyOhNVQZsI1mCQiHay4wteQ+5m4EOUuR+FrFIlnbSrPdTkKD2wvQDHVqpZivThBpJ vara/ick0wi2R3dasu1sPMu1P6h1EwUsydhviNJB07aLfPAWD6eoqmGTd8236znIIq7mbnNp OnxIQxviTyELUekrNw38uQtVzR6XZv9PAThA2o1J1JZID7QUpKcNyo9ebYlwxyS+xzhA4DLD qfD6O5sKoKvxEf2fIZeP0ETPpHNYk0WiWnmNoPy8eEY07LriYALVidBwPBcxus0wGoKf8Nun y2aE13SHmj0ioBI1bXMGJx3hEbvzXK6WrwARAQABwsBfBBgBAgAJBQJW8vK6AhsMAAoJEDk2 q/dTvIjOkowIAI70P8U4j3eqyK/7x1bnCZZRcpwZ1aH+LR1yMKTINo9NDqlOBWQTLT69YMfV 4UN+nTSiD/uLw1fSeLSzBwpoalCMLPVOX/d3Mq5JtL5cKtWUTIVf3Vb7VbN4Rvb8HgWjeSnM 1PiG9yQBmLKI68sG/gdgvA/xANdUatkDgG0yj8PCdt+Vy4EblXbIAXZXJ6eRugSKowTjst7i HXKOJxivomHFcmqmkiqjwGTGx/jrhbDtEpPDRk+U9W45D4CbUcyPR6lMSrje5JPGQDv/45M5 wPe286YelBjnb0cWRJpA7GZCWDKZOsQ2H6cCRBi8i4m+vfRk7GLA536XnmvWxKFVP9U= In-Reply-To: <73D7B135-ABF8-4EFC-BF16-EA26A5BD1B7A@cmpct.info> Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------nemaHA29Pc5re0guKBbp5Rr1" X-bounce-key: webpack.hosteurope.de;marc@mabe.berlin;1750403552;f7143df3; X-HE-SMSGID: 1uSVvK-005l5E-2R From: marc@mabe.berlin (Marc Bennewitz) This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------nemaHA29Pc5re0guKBbp5Rr1 Content-Type: multipart/mixed; boundary="------------fdWmHpmNQUpPpLxq59Y9e6nN"; protected-headers="v1" From: Marc Bennewitz To: internals@lists.php.net Message-ID: Subject: Re: [PHP-DEV] [RFC] Drop support for 32bit builds References: <73D7B135-ABF8-4EFC-BF16-EA26A5BD1B7A@cmpct.info> In-Reply-To: <73D7B135-ABF8-4EFC-BF16-EA26A5BD1B7A@cmpct.info> --------------fdWmHpmNQUpPpLxq59Y9e6nN Content-Type: multipart/mixed; boundary="------------OvzHWbce82xx9CrfxXES5eAZ" --------------OvzHWbce82xx9CrfxXES5eAZ Content-Type: multipart/alternative; boundary="------------OCcobxiDNAsM0350PgaE4Szu" --------------OCcobxiDNAsM0350PgaE4Szu Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 DQpPbiAxOS4wNi4yNSAxODowOCwgQ2FsdmluIEJ1Y2tsZXkgd3JvdGU6DQo+IEkgdGhpbmsg dGhlIGJpZ2dlc3QgYXJndW1lbnRzIGFnYWluc3QgdGhpcyB3b3VsZCBiZToNCj4NCj4gLSBl bWJlZGRlZCBzeXN0ZW1zOyB0aGluayBvZiBQSFAgaW4gdXNlIGZvciBpLmUuIHJvdXRlciB3 ZWIgVUlzLiBXaGlsZSBJDQo+IHN1c3BlY3QgYSBsb3Qgb2YgdGhlc2UgYXJlIGdvaW5nIHRv IGJlIGkuZS4gQUFyY2g2NC9SVjY0IGluIHRoZSBmdXR1cmUsDQo+IHRoZXJlIG1pZ2h0IGJl IGEgbG9uZyB0YWlsIG9mIGV4aXN0aW5nIHN5c3RlbXMuIE9mIGNvdXJzZSwgaG93IG1hbnkN Cj4gd291bGQgdXBncmFkZSB0byBQSFAgOT8NCg0KV2hpbGUgbmV3IGRlcGxveW1lbnRzIHRy ZW5kIHRvd2FyZCA2NC1iaXQgKGUuZy4gQUFyY2g2NCksIHRoZXJlJ3MgDQpkZWZpbml0ZWx5 IGEgbG9uZyBsaXN0IG9mIGRldmljZXMg4oCUIHBhcnRpY3VsYXJseSBpbiBsZWdhY3kgZW52 aXJvbm1lbnRzIA0K4oCUIHN0aWxsIHJ1bm5pbmcgMzItYml0IHN5c3RlbXMuIEJ1dCByZWFs aXN0aWNhbGx5LCBob3cgbWFueSBvZiB0aGVzZSANCndpbGwgZXZlciB1cGdyYWRlIHRvIFBI UCA5PyBQcm9iYWJseSB2ZXJ5IGZldy4gVGhlc2Ugc3lzdGVtcyBvZnRlbiBzdGF5IA0KbG9j a2VkIHRvIHdoYXRldmVyIHZlcnNpb24gd2FzIG9yaWdpbmFsbHkgc2hpcHBlZCwgYW5kIHRo ZWlyIHZlbmRvcnMgYXJlIA0KdW5saWtlbHkgdG8gaW52ZXN0IGluIG1ham9yIHZlcnNpb24g YnVtcHMuDQoNCj4gLSBXZWJBc3NlbWJseTsgSSBkb24ndCBrbm93IGhvdyB3aWRlc3ByZWFk IHRoZSBNZW1vcnk2NCBwcm9wb3NhbCBpcyB5ZXQuDQo+IFdlJ3JlIHVzaW5nIFdlYkFzc2Vt Ymx5IGluIHRoZSBkb2NzIHBhZ2VzIGZvciBydW5uYWJsZSBleGFtcGxlcy4NCg0KSSBkb24n dCBrbm93IGVpdGhlci4gQ2hhdEdQVCB0ZWxscyA6DQoNCiA+IFRoZSBNZW1vcnk2NCBwcm9w b3NhbCB3YXMgKmZvcm1hbGx5IHN0YW5kYXJkaXplZCAoUGhhc2UgNCkqIGluIA0KTm92ZW1i ZXLigK8yMDI0LCBiYWNrZWQgYnkgc3Ryb25nIHZvdGVzIGFuZCBlbmRvcnNlbWVudCBmcm9t IHRoZSBXQVNNIA0KQ29tbXVuaXR5IEdyb3VwLg0KPg0KID4gSXQncyBlbmFibGVkIGJ5IGRl ZmF1bHQgaW4gKkZpcmVmb3ggMTM0KiBhbmQgKkNocm9tZSAxMzMrKiwgd2l0aCANCipTYWZh cmkqIHN0aWxsIHdvcmtpbmcgb24gaW1wbGVtZW50YXRpb24uDQogPg0KID4gTWFqb3IgcnVu dGltZXMgbGlrZSAqVjgqLCAqV2FzbXRpbWUqLCAqV2FzbWVyKiwgKldBU00yQyogc3VwcG9y dCBNZW1vcnk2NA0KID4NCiA+IFRvb2xjaGFpbnMgaW5jbHVkaW5nICpMTFZNKiwgKkVtc2Ny aXB0ZW4qLCAqQmluYXJ5ZW4qLCAqV0FCVCogc3VwcG9ydCANCml0OyAqV0FTSeKAkVNESyog aGFzIHBhdGNoZXMgaW4gcHJvZ3Jlc3MNCg0KDQo+IEFuZCBzb21lIG5pY2hlIGNhc2VzIGxp a2UgaS5lLiBpU0ggKHdoaWNoIGVtdWxhdGVzIHg4Ni0zMiBvbiBpT1MpLg0KDQpUaGlzIHNl ZW1zIHRvIGJlIGZvciB2ZXJ5IG5pY2hlIHByb2plY3RzIGluIGl0c2VsZiBhbHJlYWR5IGFu ZCBydW5uaW5nIA0KUEhQIHdpdGhpbiBzdWNoIGlzIGV2ZW4gbW9yZSBuaWNoZSAtIGlmIHBy ZXNlbnQgYXQgYWxsIChvdXRzaWRlIG9mIA0KImJlY2F1c2UgSSBjYW4iIHJlYXNvbnMpLg0K DQo+IFRoZSBvdGhlciBvcHRpb25zIGluY2x1ZGUgbWFraW5nIHplbmRfbG9uZyBhbHdheXMg NjQtYml0IGFuZCBhY2NlcHQgdGhlDQo+IHBlcmZvcm1hbmNlIHBlbmFsdHkgZm9yIDMyLWJp dCwgb3IgbWFraW5nIDMyLWJpdCBiZXN0LWVmZm9ydCByYXRoZXIgdGhhbg0KPiBwcm92aWRp bmcgYW55IGd1YXJhbnRlZXMuDQoNCklzIGludDY0X3QgKHNpemUgb2YgbG9uZyBsb25nIDgp IGF2YWlsYWJsZSBvbiBhbGwgc3lzdGVtcyAobGlrZSANCldlYkFzc2VtYmx5KT8NCg0KVGhl IGRvd25zaWRlIGhlcmUsIHBsZWFzZSBjb3JyZWN0IG1lIGlmIEknbSB3cm9uZywgaXMgdGhh dCB0aGlzIA0KaW5jcmVhc2VzIGNvbXBsZXhpdHkgaW5zdGVhZCBvZiByZWR1Y2luZyBpdCBm b3IgaG93IG11Y2ggdmFsdWU/DQoNCg== --------------OCcobxiDNAsM0350PgaE4Szu Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable


On 19.06.25 18:08, Calvin Buckley wrote:
I think the biggest argument=
s against this would be:

- embedded systems; think of PHP in use for i.e. router web UIs. While I
suspect a lot of these are going to be i.e. AArch64/RV64 in the future,
there might be a long tail of existing systems. Of course, how many
would upgrade to PHP 9?

While new deployments trend toward 64-bit (e.g. AArch64), there's definitely a long list of devices =E2=80=94 particularly in legacy environments =E2=80=94 still running 32-bit systems. But realistica= lly, how many of these will ever upgrade to PHP 9? Probably very few. These systems often stay locked to whatever version was originally shipped, and their vendors are unlikely to invest in major version bumps.

- WebAssembly; I don't know how widespread the Memory64 proposal is yet.
We're using WebAssembly in the docs pages for runnable examples.

I don't know either. ChatGPT tells :

> The Memory64 proposal was f= ormally standardized (Phase 4) in November=E2=80=AF2024, backe= d by strong votes and endorsement from the WASM Community Group= =2E
>
> It's enabled by default in Firefox 134 and Chrome= 133+
, with Safari still working on implementation.
>
> Major runtimes like = V8, Wasmtime, Wasmer, WASM2C support Memory6= 4
>
> Toolchains including LLVM, Emscripten, Binaryen, WABT support it; WASI=E2=80=91SDK has p= atches in progress


And some niche cases like i.e. iSH (which emulates x86-32 on iOS).

This seems to be for very niche projects in itself already and running PHP within such is even more niche - if present at all (out= side of "because I can" reasons).

The other options include making zend_long always 64-bit and accept the
performance penalty for 32-bit, or making 32-bit best-effort rather than
providing any guarantees.

Is int64_t (size of long long 8) available on all systems (like WebAssembly)?

The downside here, please correct me if I'm wrong, is that this increases complexity instead of reducing it for how much value?

= --------------OCcobxiDNAsM0350PgaE4Szu-- --------------OvzHWbce82xx9CrfxXES5eAZ Content-Type: application/pgp-keys; name="OpenPGP_0x3936ABF753BC88CE.asc" Content-Disposition: attachment; filename="OpenPGP_0x3936ABF753BC88CE.asc" Content-Description: OpenPGP public key Content-Transfer-Encoding: quoted-printable -----BEGIN PGP PUBLIC KEY BLOCK----- xsBNBFby8roBCAD4qHjbk9+V3SmB5DfpkTtX58jYJ9VXVfF54MDoI0fQiYvKyrrg hfO78alHc12RsEZxLH2F5kEfu8WO4wA4apg2gBnRRxqPj7krsct1ySOAdMrRVp8W taeaznpdcn2gJZyAMSI6LTzebT25N77ksvSrUi1BuCKyOa7SmYff3xGgOwYsHQlT 5opMNGPCVegiPmO/K37anwtsgj6L7RVtjXtp2Z3wAs6r3EmO318PL48xDLUgYMvE FAPJglth5FGH2En6n6HFIhxh43LqXQiNeHVjLjS2y8huNBswwc9ZVxk3ip5z/GCm pWnNkgGBOSJ7loJRsq2tOaU6yU8KWb5rhOoFABEBAAHNIU1hcmMgQmVubmV3aXR6 IDxtYXJjQG1hYmUuYmVybGluPsLAeAQTAQIAIgUCVvLyugIbAwYLCQgHAwIGFQgC CQoLBBYCAwECHgECF4AACgkQOTar91O8iM6jzggAwvV6MqU/hcAI6ldpxVjucGz2 J9cAWtva8GL+rm9zvEs7EENtamehJiZob/CTw50WiI/zsJzPblktpT0D2AFBEp9k P5/8CmCpZzxYPsxnLtsFM52fOBpO+aP0PSStBpJjndjBH7HPqKcTCXM3ZM+SL6ly RweAJR7G+JXIZbuUrbjB2lbGx3itNZ6TeXqqnE6KTXNKLEbNHfVdzE4sPDkmuZRo /M2h+gmeS1iQb29WBmhvL6czugCQI9rYl7C4Nci9wPii1lTYyfCWQfQKID4/F2Hi Ov+N/vDMCK1xV8TUeCy8w4X+nYj+wDog046ki9lUM60oPij6WoSJLqfsXr1kNc7A TQRW8vK6AQgAq7QYLB1Dz+8RSi5AGJP1tOFQXtcxyOhNVQZsI1mCQiHay4wteQ+5 m4EOUuR+FrFIlnbSrPdTkKD2wvQDHVqpZivThBpJvara/ick0wi2R3dasu1sPMu1 P6h1EwUsydhviNJB07aLfPAWD6eoqmGTd8236znIIq7mbnNpOnxIQxviTyELUekr Nw38uQtVzR6XZv9PAThA2o1J1JZID7QUpKcNyo9ebYlwxyS+xzhA4DLDqfD6O5sK oKvxEf2fIZeP0ETPpHNYk0WiWnmNoPy8eEY07LriYALVidBwPBcxus0wGoKf8Nun y2aE13SHmj0ioBI1bXMGJx3hEbvzXK6WrwARAQABwsBfBBgBAgAJBQJW8vK6AhsM AAoJEDk2q/dTvIjOkowIAI70P8U4j3eqyK/7x1bnCZZRcpwZ1aH+LR1yMKTINo9N DqlOBWQTLT69YMfV4UN+nTSiD/uLw1fSeLSzBwpoalCMLPVOX/d3Mq5JtL5cKtWU TIVf3Vb7VbN4Rvb8HgWjeSnM1PiG9yQBmLKI68sG/gdgvA/xANdUatkDgG0yj8PC dt+Vy4EblXbIAXZXJ6eRugSKowTjst7iHXKOJxivomHFcmqmkiqjwGTGx/jrhbDt EpPDRk+U9W45D4CbUcyPR6lMSrje5JPGQDv/45M5wPe286YelBjnb0cWRJpA7GZC WDKZOsQ2H6cCRBi8i4m+vfRk7GLA536XnmvWxKFVP9U=3D =3Doi2m -----END PGP PUBLIC KEY BLOCK----- --------------OvzHWbce82xx9CrfxXES5eAZ-- --------------fdWmHpmNQUpPpLxq59Y9e6nN-- --------------nemaHA29Pc5re0guKBbp5Rr1 Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature.asc" -----BEGIN PGP SIGNATURE----- wsB5BAABCAAjFiEENJIbKB0SAX2RmUKbOTar91O8iM4FAmhVCd8FAwAAAAAACgkQOTar91O8iM74 gAf9FMxcU5x567j/Ht3mIgd/rspDSxVkmgkbHJ3s5Vpw5GYVDC0VChp1C9085Nl0pO6eik/ntBAL SHVyEIi5l3S0MihPz4C4oVpafvH1pp2zns60s6mNm91r24tLh/Kc42BkhLmFkvVjVfpusMZFuz0c fW1EJsGV/AC1y92i2IfUmOYdaFqG1nr7XUc8N3vBnojV04RZM+RPs/5QPbGweE1OT2Y/2wMjJCd0 YK8ComsB8p9EqeQvmnU7JWsm/mfjGFEpaoSM/KQCMTjdNAGFeQVrbyocT38uSTvCilEwRsmP5DO7 MhA2rG0qzuw41EKtFBbT26EKuBzDvLp3l3leHKEd+Q== =YJOu -----END PGP SIGNATURE----- --------------nemaHA29Pc5re0guKBbp5Rr1--