1
0
mirror of https://github.com/php/php-src.git synced 2026-04-25 17:08:14 +02:00
Commit Graph

443 Commits

Author SHA1 Message Date
Dmitry Stogov b287ccf508 Optimized ZEND_RETURN opcode to not allocate and copy return value if it is not
used.
2008-04-11 09:43:49 +00:00
Rasmus Lerdorf b911467d1d MFB
Here are the signal changes from the 5.3 branch that optimizes signal
handler registration and switches from longjmp to siglongjmp in order
to make signal mask handling consistent across different UNIX operating
systems.
2008-03-19 16:37:49 +00:00
Dmitry Stogov ea9305c543 Implemented concept of "delayed early binding" that allows opcode caches to perform class declaration (early and/or run-time binding) in exactly the same order as vanila php.
The following pseudo-code explains how it should be used in opcode cache.

function cache_compile_file($filename) {
        if (!is_cached($filename)) {
                ...
                orig_compiler_options = CG(compiler_optins);
                CG(compiler_options) |= ZEND_COMPILE_IGNORE_INTERNAL_CLASSES |
                                        ZEND_COMPILE_DELAYED_BINDING;
                $op_array = orig_compile_file($filename);
                CG(compiler_options) = orig_copiler_options;
                ...
        } else {
                $op_array = restore_from_cache($filename);
        }
        zend_do_delayed_early_binding($op_array);
}
2008-03-18 08:36:49 +00:00
Felipe Pena 3cbc824eb7 Better readability (USTR_BYTES) 2008-03-07 00:51:02 +00:00
Dmitry Stogov d5e54a7f27 Fixed shared memory corruption of opcode caches 2008-03-04 11:44:15 +00:00
Marcus Boerger 6b58678c63 - Add E_DEPRECATED (Lars Strojny, Felipe Pena, Marcus) 2008-02-23 17:03:53 +00:00
Marcus Boerger 8b12839a3b -Add comment that explains wh we need E_ERROR in those cases 2008-02-02 15:46:19 +00:00
Marcus Boerger f7a0a44b84 - MFB static callable message mess 2008-02-02 15:23:22 +00:00
Antony Dovgal dbd82ddf19 fix #43973 (__autoload called with wrong classname when triggered by static callback)
the issue was present only in HEAD
patch by Felipe
2008-01-30 12:30:57 +00:00
Dmitry Stogov e8ecba4872 Fixed bug #43323 (Wrong count abstract methods). (Felipe, Dmitry) 2008-01-29 11:13:52 +00:00
Dmitry Stogov 2971e13836 Changed EG(argument_stack) implementation. 2008-01-24 09:41:48 +00:00
Dmitry Stogov 6847c18150 Added garbage collector 2008-01-22 09:29:29 +00:00
Dmitry Stogov 27d1e925e2 Changed exception handling. Now each op_array doesn't contain ZEND_HANDLE_EXCEPTION opcode in the end 2008-01-21 19:41:41 +00:00
Marcus Boerger 505ffcbca8 - Fix the fix 2008-01-15 11:47:29 +00:00
Marcus Boerger 0da8866e3f - Fix memleak (found by colder) 2008-01-14 18:14:00 +00:00
Dmitry Stogov 1d9894a0c5 Added missing warning message 2008-01-10 09:38:41 +00:00
Sebastian Bergmann 9b620d50b4 Bump copyright year, 2 of 2. 2007-12-31 07:12:20 +00:00
Dmitry Stogov 1ccc6a4f10 Fixed bug #43651 (is_callable() with one or more nonconsecutive colons crashes) 2007-12-25 10:58:49 +00:00
Dmitry Stogov 31f6f1583e Fixed bug #43344 (Wrong error message for undefined namespace constant) 2007-12-07 17:12:22 +00:00
Dmitry Stogov 3f247aaf10 Fixed bug #43136 (possible crash on script execution timeout. The EG(function_state_ptr) is completely removed, EG(current_execute_data)->function_state must be used instead) 2007-11-20 09:51:44 +00:00
Dmitry Stogov 860fd6fd2b Reimplemented support for namespaces in indexes id constant arrays (removed zval.idx_type) 2007-11-02 10:11:59 +00:00
Jani Taskinen 9cc90f23b3 ws + cs + fix test 2007-11-02 00:15:13 +00:00
Yiduo (David) Wang 95da0dc570 Added macros for managing zval refcounts and is_ref statuses 2007-10-07 05:15:07 +00:00
Dmitry Stogov ce5c38af25 Fixed bug #42820 (defined() on constant with namespace prefixes tries to load class). 2007-10-03 10:33:45 +00:00
Dmitry Stogov 19d7fed62d Fixed bug #42819 (namespaces in indexes of constant arrays) 2007-10-02 08:27:19 +00:00
Dmitry Stogov f30167922a Fixed bug #42798 (__autoload() not triggered for classes used in method signature). 2007-10-01 09:33:02 +00:00
Dmitry Stogov 976afba41b Support for namespaces in dynamic calls 2007-09-28 19:51:49 +00:00
Dmitry Stogov 189ac4f201 Late Static Binding (Dmitry, Etienne Kneuss) 2007-09-26 07:16:33 +00:00
Dmitry Stogov 618644c201 - in case of ambiguity class name in namespace call __autoload() only after
checking for both (class from current namespace and internal class)
- improved class fetching performance
- fixed wrong (lowercase) name passed to __autoload() from call_user_func()
2007-09-11 11:23:12 +00:00
Johannes Schlüter 4a19c90d4f - Allow binary strings as method name in $class::$method(), fixes
tests/lang/044.phpt (Etienne Kneuss)
2007-08-30 14:48:39 +00:00
Dmitry Stogov 611abb17fc Namespace constants 2007-08-24 13:50:52 +00:00
Dmitry Stogov 046b878b5b Fixed name resolution
namespace A;
    B::foo(); // 1. this is function "foo" from namespace "B"
              // 2. this is static method "foo" of class "B" from namespace "A"
              // 3. this is static methos "boo" of internal class "B"
  namespace A;
    A::foo(); // 1. this is function "foo" from namespace "A"
              // 2. this is static method "foo" of class "A" from namespace "A"
              // 3. this is static methos "foo" of internal class "A"
2007-08-22 07:39:37 +00:00
Dmitry Stogov c7d82c75c9 Added namespace related optimizations and comments 2007-08-20 09:48:41 +00:00
Dmitry Stogov c04dc1699b Namespace support for name ambiguity between namespace and class name 2007-07-27 13:41:36 +00:00
Sara Golemon b1bc911cee Add support got zend_class_entry->get_static_method() and matching __callStatic() userspace method @doc 2007-07-21 05:27:07 +00:00
Jani Taskinen 5d0176a32b - Fix compile warnings 2007-07-21 00:34:41 +00:00
Dmitry Stogov 1f413bbc37 Namespaces 2007-07-12 09:23:48 +00:00
Antony Dovgal dd8af0654a fix folding, CS and WS 2007-07-11 11:19:58 +00:00
Dmitry Stogov a8036bf489 Unicode support 2007-06-27 11:16:21 +00:00
Dmitry Stogov 0a7462e056 Fixed bug #41633 (Crash instantiating classes with self-referencing constants) 2007-06-13 16:48:29 +00:00
Dmitry Stogov b898c98005 Fixed some class constant issues related to bug #41633 2007-06-13 14:50:33 +00:00
Antony Dovgal 52587a3d5c check if fci->object_pp points to NULL 2007-05-21 07:12:34 +00:00
Antony Dovgal c63a3187e5 fix #41421 (Uncaught exception from a stream wrapper segfaults) 2007-05-18 11:51:40 +00:00
Antony Dovgal 0e5d853a8d initialize retval_ptr_ptr before returning FAILURE
this fixes invalid read in #41209
2007-04-27 08:11:37 +00:00
Dmitry Stogov 2908322c14 WIN64 support 2007-04-16 09:43:53 +00:00
Marcus Boerger 80c2f1f92c - Improved version of ternary shortcut 2007-03-08 17:30:28 +00:00
Marcus Boerger 6b4a1666a0 - Catch empty class name error earlier 2007-03-03 13:46:19 +00:00
Dmitry Stogov d7df9badf6 Added runtime JIT auto-globals fetching and caching 2007-02-16 19:36:45 +00:00
Dmitry Stogov cb5ae2b82c Fixed bug #40236 (php -a function allocation eats memory) 2007-02-15 10:42:52 +00:00
Marcus Boerger bd7d5b527c - No reason not to pass return_value_ptr for non return-by-reference functions 2007-02-08 14:47:32 +00:00