Bug #81007 [Opn->Csd]: JIT "not supported" on 32-bit x86 -- build problem?
| From: | nikic@php.net | Date: | Wed, 05 May 2021 14:57:49 +0000 |
| Subject: | Bug #81007 [Opn->Csd]: JIT "not supported" on 32-bit x86 -- build problem? | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-233694@lists.php.net to get a copy of this message | ||
Edit report at https://bugs.php.net/bug.php?id=81007&edit=1
ID: 81007
Updated by: nikic@php.net
Reported by: php at redir dot desz dot cz
Summary: JIT "not supported" on 32-bit x86 -- build problem?
-Status: Open
+Status: Closed
Type: Bug
Package: JIT
Operating System: Linux
PHP Version: 8.0.5
-Assigned To:
+Assigned To: nikic
Block user comment: N
Private report: N
New Comment:
This should be fixed by https://github.com/php/php-src/commit/bf9dc534356ec3b372abe5f3030c3e362aa261ac,
though I haven't tested it.
Previous Comments:
------------------------------------------------------------------------
[2021-05-02 21:09:04] php at redir dot desz dot cz
Description:
------------
It may be a documentation or build problem, not sure which exactly -- my limited testing suggests
that build process mistakenly disables JIT.
https://wiki.php.net/rfc/jit states "Currently we
support x86 and x86_64 on POSIX platforms" -- I get "x86" here means 32-bit x86.
I have a 32-bit system I've built PHP 8 on (8.0.3 and 8.0.5). JIT was "unavailable"
in phpinfo(), and I've found "WARNING: JIT not supported by host architecture" in
config.log.
Checking "configure", I've found, that the test for said architecture is:
case $host_cpu in
x86*)
;;
*)
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: JIT not supported by host
architecture" >&5
$as_echo "$as_me: WARNING: JIT not supported by host architecture" >&2;}
PHP_OPCACHE_JIT=no
;;
esac
BUT $host_cpu on my system is recognized as "i686", so the "x86*" condition
never matches.
Out of curiosity, I've modified the condition to match my CPU and rebuilt PHP; now phpinfo()
reports JIT as "On", opcache_get_status() says it's "enabled" and
"on", and so far I haven't encountered a single problem running various scripts (I
haven't measured performance yet, though). So -- is there a mistake in docs, and for some
reason JIT really should not be used on 32bit systems, or a mistake in configure script?
------------------------------------------------------------------------
--
Edit this bug report at https://bugs.php.net/bug.php?id=81007&edit=1