# Patch for opcode caches

- Thread: https://externals.io/message/36090
- Original archive: https://news-web.php.net/php.internals/36090
- Started by Dmitry Stogov on 2008-03-11T08:20:51+00:00
- Messages: 1
- Reply by email to internals@lists.php.net
- More for agents: search with https://externals.io/search.md?q={query} · JSON API at https://externals.io/api · documentation at https://externals.io/llms.txt

---

## #36090 — Dmitry Stogov — 2008-03-11T08:20:51+00:00

URL: https://externals.io/message/36090#36090

Hi Marcus,

I've just rechecked the "-e" option, and it works fine for me.
I'm wonderwed why (and how) it didn't work for you.

I hope I already answered your questions and you see the needness of
this patch.
So I hope you agree that I'll commit it tomorrow (with comments about
compiler options)

Thanks. Dmitry.

> -----Original Message-----
> From: Dmitry Stogov 
> Sent: Monday, March 10, 2008 3:48 PM
> To: 'Marcus Boerger'
> Cc: Andi Gutmans; Stas Malyshev; 'phpxcache'; 
> 'internals@lists.php.net'
> Subject: RE: [PHP-DEV] Patch for opcode caches
> 
> 
> Hi Marcus,
> 
> > […]
> 
> It was tested at least with Zend products and xcache.
> 
> > […]
> 
> It is not a good argument to hide this from APC, eAccelerator 
> and xcache.
> 
> > […]
> more bugs.
> 
> You will able to test it with "make test" and new versions of 
> APC/eAccelerator/XCache ... At least I tested it in this way 
> without problems
> 
> > […]
> do here and
> > […]
> 
> This is the description of the problem 
> http://www.mail-archive.com/internals@lists.php.net/msg32601.html
> It is well known to all opcode cache weiters, but it is not 
> possible to solve it 100% correctly without ZE modification
> 
> > […]
> 
> As I remember opcode cache was planned as a part of PHP-6, 
> probably there we will able to follow your suggestion, but 
> for now I don't see any reason to make PHP slowdown (without caches).
> 
> Thank you for patch review
> 
> 1) CG(extended_info) was a boolean falg, CG(compiler_options) 
> is a bitset one bit of which represents old CG(extended_info)
> 
> 2) Changes related to ZEND_ACC_IMPLEMENT_INTERFACES  fix 
> unnecessary zend_verify_abstarct_class() calls. (For some 
> reason it might be called twice for the same class)
> 
> 3)  ZEND_COMPILE_OPTION_... is to long, but I can accept this 
> and of couse I'll add comments as you requested.
> 
> 4) zend_vm_opcodes.h is autogenerated file, zend_vm_gen.php 
> chenged the indents  :)
> 
> 5) I'll recheck the -e option. Probably I missied something there.
> 
> Thanks. Dmitry.
> 
> > […]
> ct_pass_ref_default;
> > […]
> ZEND_ACC_EXPLICIT_ABSTRACT_CLASS;
> > […]
> TSRMLS_CC);
> > […]
> flag tells 
> > […]
> interfaces.
> > […]
> +----------------------------------------------------------------
> > […]
> 'f': /* parse
> > […]
> you did and 
> > […]
