Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:80347 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 24253 invoked from network); 11 Jan 2015 03:06:27 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 11 Jan 2015 03:06:27 -0000 Authentication-Results: pb1.pair.com smtp.mail=pierre.php@gmail.com; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=pierre.php@gmail.com; sender-id=pass Received-SPF: pass (pb1.pair.com: domain gmail.com designates 209.85.215.52 as permitted sender) X-PHP-List-Original-Sender: pierre.php@gmail.com X-Host-Fingerprint: 209.85.215.52 mail-la0-f52.google.com Received: from [209.85.215.52] ([209.85.215.52:39858] helo=mail-la0-f52.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id AF/3B-48183-1B8E1B45 for ; Sat, 10 Jan 2015 22:06:26 -0500 Received: by mail-la0-f52.google.com with SMTP id hs14so20290969lab.11 for ; Sat, 10 Jan 2015 19:06:22 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type:content-transfer-encoding; bh=gw9hNUQd6tuiWDVt4skL31Bqag2qZEf2d3Dp+/N3lwY=; b=fUxo0nefUGUtfTUGd89C9jTxsAMryfLInCQYkiYHCKHFLWkSUhYf91zdeJnAz0gPVw 7WW6hFzH1zSTkEXFj+sgdtqJV96kwjj3nN6UriCWX/pS+Ay1/HL3bNH1NvAJsW/psgl8 khl7vYi2lE4RzJGfqMTgMVjcfJ42D/pOwT+LN/W+LdbIuJYox2/gANOw15IuxHDXmaBF c7lXpdZaqlnxsZXY2htfF1aQfefRAH9cSNzixVez7sjPR1swqAx0+hoZL6Za7cFHz2Ar df28dIbwhUPe5keYh77iiBzJ1HLFQveL9G6JENxXFm02JijzisdmF4IzAATy4xyeULrR zg3w== MIME-Version: 1.0 X-Received: by 10.152.44.129 with SMTP id e1mr29936211lam.43.1420945582079; Sat, 10 Jan 2015 19:06:22 -0800 (PST) Received: by 10.112.154.133 with HTTP; Sat, 10 Jan 2015 19:06:21 -0800 (PST) In-Reply-To: <000a01d02cf8$ab090130$011b0390$@tekwire.net> References: <001501d02ccc$574a6bf0$05df43d0$@tekwire.net> <000a01d02cf8$ab090130$011b0390$@tekwire.net> Date: Sat, 10 Jan 2015 19:06:21 -0800 Message-ID: To: =?UTF-8?Q?Fran=C3=A7ois_Laupretre?= , Derick Rethans , Dmitry Stogov , Laruence Cc: PHP internals , Benjamin Eberlei Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Subject: Re: [PHP-DEV] [RFC] Extension Prepend Files From: pierre.php@gmail.com (Pierre Joye) On Sat, Jan 10, 2015 at 9:12 AM, Fran=C3=A7ois Laupretre wrote: > De : Pierre Joye [mailto:pierre.php@gmail.com] > >> Opcache is why I think we should have a list registered names. A simple = hash exists and the cache will know what to do. > > Sorry, I am not sure I understand how the opcode cache, as it exists now,= can understand this. Do you mean that opcode cache code would need to be m= odified ? Yes and no. Yes if we want them to do not even try to update files that are statically built in extensions. And yes, if we want that (for whatever reasons I cannot think about right now). > Anyway, that's the occasion to ask this : do we consider opcache the only= supported opcode cache in the future or do we still support APC and other = alternative opcode caches. I'd like to know if we are free to improve the w= ay opcode cache communicates with the core, or if we must keep BC. That's PHP7, we can and have already broke BC internally. Patch now in my fork (finally got a faster connection): https://github.com/pierrejoye/php-src/compare/php:master...master Date use as example. Key are two parts: . the configure script to create the static data (could actually be used for any binary data btw) . the zend_execute_string call, which could happen anywhere where it could be done, RINIT making more sense right now As Sara pointed out , persistent opcode would be way better but as far as I remember it is something very tricky to do (due to how the address and offset are stored), maybe it changed now for 7, I did not check that part. In any case the exec_string and the binary to C scripts will be helpful there too. Cheers, --=20 Pierre @pierrejoye | http://www.libgd.org