Hi,

I'm working on call/return sequence optimization. As part of this work I'm
minimizing the size of call frame (zend_execute_data) and number of
read/write operations on call/return.

Could you please take a look into the patch that removes EX(scope)
https://gist.github.com/dstogov/5ad50d582346385d587e

All phpt tests are passed, but I'm not completely sure about one line -
https://gist.github.com/dstogov/5ad50d582346385d587e#file-ex_scope-05-diff-L193

On the other hand I can't imagine what it may break.

Matteo, can you please run your test suites with this patch.

PS: I'm also going to:
- pack EX(num_args) into reserved space of EX(This)
- try to get rid of EX(frame_info)
- try to merge EX(called_scope) and EX(This). Only one of them matters.
- try to replace zval EX(This) with a pointer to zend_object EX(object)

Thanks. Dmitry.

Reply via email to