Commit Graph

6140 Commits

Author SHA1 Message Date
Pierre Joye
aa0ed267a2 - use TSRMLS_*C instead of TSRMLS_FETCH in zend_list_insert 2010-09-16 09:13:19 +00:00
Pierre Joye
4420a91bbd - macros--; ZEND_FAST_* are now gone 2010-09-15 17:27:43 +00:00
Pierre Joye
ef53214b1c - not used anymore 2010-09-15 16:58:11 +00:00
Dmitry Stogov
e3bb93480a Regenerated 2010-09-15 07:39:57 +00:00
Dmitry Stogov
f2df6a4a3e - Improved memory usage
. zend_function.pass_rest_by_reference is replaced by
    ZEND_ACC_PASS_REST_BY_REFERENCE in zend_function.fn_flags
  . zend_function.return_reference is replaced by ZEND_ACC_RETURN_REFERENCE
    in zend_function.fn_flags
  . zend_arg_info.required_num_args removed. it was needed only for internal
    functions. Now the first arg_info for internal function (which has special
    meaning) is represented by zend_internal_function_info structure.
  . zend_op_array.size, size_var, size_literal, current_brk_cont,
    backpatch_count moved into CG(context), because they are used only during
    compilation.
  . zend_op_array.start_op is moved into EG(start_op), because it's used
    only for 'interactive' execution of single top-level op-array.
  . zend_op_array.done_pass_two is replaced by ZEND_ACC_DONE_PASS_TWO in
    zend_op_array.fn_flags.
  . op_array.vars array is trimmed (reallocated) during pass_two.
  . zend_class_entry.constants_updated is replaced by
     ZEND_ACC_CONSTANTS_UPDATED in zend_class_entry.ce_flags
  . the size of zend_class_entry is reduced by sharing the same memory space
    by different information for internal and user classes.
    See zend_class_inttry.info union.
2010-09-15 07:38:52 +00:00
Johannes Schlüter
1e1e70dc55 - Don't be silent on bailout 2010-09-14 14:26:37 +00:00
Dmitry Stogov
411f9fbe4d We don't need to preallocate a memory segment in case we don't use zend memory manager 2010-09-08 07:52:49 +00:00
Dmitry Stogov
88bf6d2e16 Fixed GC bug 2010-09-03 09:27:47 +00:00
Dmitry Stogov
caffc1c972 Preallocate zend_hash instead of allocation/deallocation it on each request 2010-08-27 06:09:18 +00:00
Dmitry Stogov
2188f26c45 Fixed bug #52614 (Memory leak when writing on uninitialized variable returned from method call) 2010-08-25 09:14:36 +00:00
Scott MacVicar
1e48c71b96 Fix a bug where two doubles are equal but the maths operation makes it appear false.
Best example with INF where equals and identical produce different results.

<?php
var_dump(INF==INF);
var_dump(INF===INF);
2010-08-22 08:01:34 +00:00
Felipe Pena
37c39519bc - Reverted unintended modification 2010-08-18 22:08:36 +00:00
Dmitry Stogov
8a6d73b084 improved performance of @ (silence) operator 2010-08-18 13:58:13 +00:00
Dmitry Stogov
42289228ff Revert unintended modification 2010-08-18 09:45:52 +00:00
Felipe Pena
f3028b9226 - Improved fix for bug #52573 2010-08-18 01:59:37 +00:00
Sascha Schumann
0cbc4a08a1 align declaration with definition
(patch by kalle)
2010-08-17 12:14:52 +00:00
Dmitry Stogov
d93cf2a2d0 Bug #52361 (Throwing an exception in a destructor causes invalid catching) 2010-08-16 09:20:46 +00:00
Dmitry Stogov
e461c22ea9 Fixed memory leaks (related to bug #52361) 2010-08-16 08:11:08 +00:00
Felipe Pena
fdb6077fda - Missing traits data initialization for internal classes (causing Reflection to crash) 2010-08-14 01:12:43 +00:00
Dmitry Stogov
f48999ca3b Optimization of ASSIGN instruction 2010-08-11 15:34:06 +00:00
Dmitry Stogov
931c2d104d In ZTS mode default properties and constants of internal classes can't be modified in place and have to be separated 2010-08-11 09:38:41 +00:00
Dmitry Stogov
7566ff38a1 Fixed support for static properties of internal classes 2010-08-11 08:34:54 +00:00
Dmitry Stogov
e0b728597b Optimization (IS_TMP_VARs don't need reference counting) 2010-08-10 15:24:19 +00:00
Dmitry Stogov
523b965cd4 Prevent generation of long strings 2010-08-10 14:44:50 +00:00
Dmitry Stogov
808fd3f1f7 Optimization 2010-08-10 14:43:17 +00:00
Felipe Pena
30470999fe - Back the free() call for __iterator_wrapper to free the ce->name, as it is a fake class 2010-08-08 22:43:14 +00:00
Felipe Pena
c6c97db78f - Fix warning because the comparsion with literal (e.g. INIT_CLASS_ENTRY(..., "Foo", ...)) 2010-08-08 20:07:23 +00:00
Felipe Pena
e10d33fe5a - Fixed bug #52539 (Calling function from rebound Closure causes crash) 2010-08-08 15:06:14 +00:00
Felipe Pena
4f07d70d4e - Fixed ZTS build (Kalle) 2010-08-05 17:09:08 +00:00
Dmitry Stogov
3cf5ab9e56 Use interned strings for class names 2010-08-05 13:10:15 +00:00
Felipe Pena
05e25f0099 - Fixed bug #52508 (newline problem with parse_ini_file+INI_SCANNER_RAW) 2010-08-01 15:26:54 +00:00
Felipe Pena
e914d90643 - Fixed bug #52484 (__set() ignores setting properties with empty names) 2010-08-01 13:27:02 +00:00
Dmitry Stogov
6443445f25 ZEND_UNSET_* don't have results 2010-07-29 09:46:59 +00:00
Dmitry Stogov
39b4a5eea7 Additional specialization 2010-07-27 09:50:35 +00:00
Dmitry Stogov
d30073a2dc Removed deprecated check 2010-07-26 12:40:32 +00:00
Dmitry Stogov
5a2ee8ecea Use proper fetch types 2010-07-19 15:04:51 +00:00
Dmitry Stogov
c1336009c2 Removed invalid checks 2010-07-19 14:34:34 +00:00
Dmitry Stogov
ca4de03eed ZEND_FETCH_*_R operations simplified and can't be used with EXT_TYPE_UNUSED flag any more. Thit is very rare and useless case. ZEND_FREE might be required after them instead. 2010-07-16 13:38:09 +00:00
Dmitry Stogov
8aad91d14a Simplified string offset reading 2010-07-16 11:44:30 +00:00
Pierre Joye
f35e10e17f - fix vc6 build 2010-07-15 00:13:20 +00:00
Dmitry Stogov
7c24be8672 Fixed incorrect reinitialization 2010-07-14 10:27:08 +00:00
Felipe Pena
25710a406d - Added EG(saved_fpu_cw_ptr) initialization 2010-07-10 13:56:33 +00:00
Dmitry Stogov
5438a9d23c Eliminated useless allocation of FPU control word on each request startup 2010-07-09 09:02:14 +00:00
Dmitry Stogov
bc1f1d25fa zend_ptr_stack allocation is delayed before the actual usage 2010-07-09 07:31:18 +00:00
Felipe Pena
b458b1a4c1 - Fix ZTS build 2010-07-08 15:22:11 +00:00
Dmitry Stogov
f0c8366a9e - use interned strings for auto globals
- $GLOBALS became a JIT autoglobal, so it's initialized only if used (this may affect opcode caches)
2010-07-08 14:05:11 +00:00
Dmitry Stogov
25d6aee4fb Removed redundant check 2010-07-07 11:44:27 +00:00
Dmitry Stogov
3ea5bc7914 Reused single segment between requests. Saved one malloc/free for each request. 2010-07-07 10:34:50 +00:00
Dmitry Stogov
d3efe97a2e Reduced initial VM stack size to fit into zend_mm segment and eliminate extra segment allocation 2010-07-07 10:30:17 +00:00
Dmitry Stogov
8054458fb8 zend_stack initialization is delayed before the actual usage 2010-07-06 16:09:43 +00:00