Changeset 1213 for trunk


Ignore:
Timestamp:
2012-12-19T09:42:53+01:00 (16 months ago)
Author:
moo
Message:

add support for PHP_5_5

Location:
trunk
Files:
1 added
9 edited

Legend:

Unmodified
Added
Removed
  • trunk/ChangeLog

    r1208 r1213  
     13.1.0 2012-??-?? 
     2ChangeLog 
     3======== 
     4 * adds support for PHP_5_5 
     5 
    163.0.1 2012-??-?? 
    27ChangeLog 
  • trunk/NEWS

    r1208 r1213  
     13.1.1 2012-??-?? 
     2======== 
     3 * adds support for PHP_5_5 
     4 
    153.0.1 2012-??-?? 
    2 ChangeLog 
    36======== 
    47 * bug fixes 
  • trunk/devel/prepare.mak

    r1197 r1213  
    2121    xcache/xc_const_string_opcodes_php5.0.h \ 
    2222    xcache/xc_const_string_opcodes_php5.1.h \ 
     23    xcache/xc_const_string_opcodes_php5.2.h \ 
    2324    xcache/xc_const_string_opcodes_php5.3.h \ 
    2425    xcache/xc_const_string_opcodes_php5.4.h \ 
     26    xcache/xc_const_string_opcodes_php5.5.h \ 
    2527    xcache/xc_const_string_opcodes_php6.x.h 
    2628 
     
    6163endif 
    6264 
     65ifeq (${PHP5_2_DIR},) 
     66xcache/xc_const_string_opcodes_php5.2.h: dummy 
     67    @echo "Skipped $@: PHP_5_2_DIR not set" 
     68else 
     69xcache/xc_const_string_opcodes_php5.2.h: ${PHP5_2_DIR}/Zend/zend_vm_def.h 
     70    $(AWK) -f ./devel/gen_const_string_opcodes.awk < "$<" > "$@.tmp" 
     71    mv "$@.tmp" "$@" 
     72endif 
     73 
    6374ifeq (${PHP5_3_DIR},) 
    6475xcache/xc_const_string_opcodes_php5.3.h: dummy 
     
    7586else 
    7687xcache/xc_const_string_opcodes_php5.4.h: ${PHP5_4_DIR}/Zend/zend_vm_def.h 
     88    $(AWK) -f ./devel/gen_const_string_opcodes.awk < "$<" > "$@.tmp" 
     89    mv "$@.tmp" "$@" 
     90endif 
     91 
     92ifeq (${PHP5_5_DIR},) 
     93xcache/xc_const_string_opcodes_php5.5.h: dummy 
     94    @echo "Skipped $@: PHP_5_5_DIR not set" 
     95else 
     96xcache/xc_const_string_opcodes_php5.5.h: ${PHP5_5_DIR}/Zend/zend_vm_def.h 
    7797    $(AWK) -f ./devel/gen_const_string_opcodes.awk < "$<" > "$@.tmp" 
    7898    mv "$@.tmp" "$@" 
  • trunk/mod_optimizer/xc_optimizer.c

    r1208 r1213  
    165165#endif 
    166166    case ZEND_RETURN: 
     167#ifdef ZEND_FAST_RET 
     168    case ZEND_FAST_RET: 
     169#endif 
     170#ifdef ZEND_GENERATOR_RETURN 
     171    case ZEND_GENERATOR_RETURN: 
     172#endif 
    167173    case ZEND_EXIT: 
    168174        return SUCCESS; /* no fall */ 
    169175 
     176#ifdef ZEND_GOTO 
     177    case ZEND_GOTO: 
     178#endif 
    170179    case ZEND_JMP: 
     180#ifdef ZEND_FAST_CALL 
     181    case ZEND_FAST_CALL: 
     182#endif 
    171183        fi->jmpout_op1 = Z_OP(opline->op1).opline_num; 
    172184        return SUCCESS; /* no fall */ 
  • trunk/processor/processor.m4

    r1201 r1213  
    4949    PROCESS(zend_uint, try_op) 
    5050    PROCESS(zend_uint, catch_op) 
     51#ifdef ZEND_ENGINE_2_5 
     52    PROCESS(zend_uint, finally_op) 
     53    PROCESS(zend_uint, finally_end) 
     54#endif 
    5155') 
    5256dnl }}} 
     
    654658#endif 
    655659            case ZEND_JMP: 
     660#ifdef ZEND_FAST_CALL 
     661            case ZEND_FAST_CALL: 
     662#endif 
    656663#ifdef ZEND_ENGINE_2 
    657664                assert(Z_OP(src->op1).jmp_addr >= processor->active_op_array_src->opcodes && Z_OP(src->op1).jmp_addr - processor->active_op_array_src->opcodes < processor->active_op_array_src->last); 
     
    762769#endif 
    763770                    case ZEND_JMP: 
     771#ifdef ZEND_FAST_CALL 
     772                    case ZEND_FAST_CALL: 
     773#endif 
    764774#ifdef ZEND_ENGINE_2 
    765775                        Z_OP(opline->op1).jmp_addr = &dst->opcodes[Z_OP(opline->op1).jmp_addr - src->opcodes]; 
     
    874884    PROCESS(zend_uint, T) 
    875885 
     886#ifdef ZEND_ENGINE_2_4 
     887    PROCESS(zend_uint, nested_calls) 
     888    PROCESS(zend_uint, used_stack) 
     889#endif 
     890 
    876891    STRUCT_ARRAY(last_brk_cont_t, last_brk_cont, zend_brk_cont_element, brk_cont_array) 
    877892    PROCESS(last_brk_cont_t, last_brk_cont) 
     
    886901    STRUCT_ARRAY(int, last_try_catch, zend_try_catch_element, try_catch_array) 
    887902    PROCESS(int, last_try_catch) 
     903#endif 
     904#ifdef ZEND_ENGINE_2_5 
     905    PROCESS(zend_bool, has_finally_block) 
    888906#endif 
    889907 
  • trunk/xcache/xc_compatibility.h

    r1151 r1213  
    1111 */ 
    1212 
    13 #if !defined(ZEND_ENGINE_2_4) && (PHP_MAJOR_VERSION == 5 && PHP_MINOR_VERSION >= 4 || PHP_MAJOR_VERSION > 5) 
     13#if !defined(ZEND_ENGINE_2_5) && (PHP_MAJOR_VERSION == 5 && PHP_MINOR_VERSION >= 5 || PHP_MAJOR_VERSION > 6) 
     14#   define ZEND_ENGINE_2_5 
     15#endif 
     16#if !defined(ZEND_ENGINE_2_4) && (PHP_MAJOR_VERSION == 5 && PHP_MINOR_VERSION == 4 || defined(ZEND_ENGINE_2_5)) 
    1417#   define ZEND_ENGINE_2_4 
    1518#endif 
  • trunk/xcache/xc_const_string.c

    r1095 r1213  
    6464#if PHP_MAJOR_VERSION >= 6 
    6565#   include "xc_const_string_opcodes_php6.x.h" 
     66#elif defined(ZEND_ENGINE_2_5) 
     67#   include "xc_const_string_opcodes_php5.5.h" 
    6668#elif defined(ZEND_ENGINE_2_4) 
    6769#   include "xc_const_string_opcodes_php5.4.h" 
  • trunk/xcache/xc_opcode_spec_def.h

    r982 r1213  
    238238    OPSPEC(    UNUSED,        STD,    JMPADDR,        TMP) /* 152 JMP_SET                        */ 
    239239    OPSPEC(    UNUSED,        STD,        STD,        TMP) /* 153 DECLARE_LAMBDA_FUNCTION        */ 
    240 #  ifdef ZEND_ENGINE_2_4 
     240# endif 
     241# ifdef ZEND_ENGINE_2_4 
    241242    OPSPEC(    UNUSED,     UNUSED,     UNUSED,     UNUSED) /* 154 ADD_TRAIT                      */ 
    242243    OPSPEC(    UNUSED,     UNUSED,     UNUSED,     UNUSED) /* 155 BIND_TRAITS                    */ 
     
    244245    OPSPEC(    UNUSED,     UNUSED,     UNUSED,     UNUSED) /* 157 QM_ASSIGN_VAR                  */ 
    245246    OPSPEC(    UNUSED,     UNUSED,     UNUSED,     UNUSED) /* 158 JMP_SET_VAR                    */ 
    246 #  endif 
    247 # else 
    248     OPSPEC(    UNUSED,     UNUSED,     UNUSED,     UNUSED) /* 151 UNDEF                          */ 
    249     OPSPEC(    UNUSED,     UNUSED,     UNUSED,     UNUSED) /* 152 UNDEF                          */ 
    250     OPSPEC(    UNUSED,     UNUSED,     UNUSED,     UNUSED) /* 153 UNDEF                          */ 
     247# endif 
     248# ifdef ZEND_ENGINE_2_5 
     249    OPSPEC(    UNUSED,     UNUSED,     UNUSED,     UNUSED) /* 159 DISCARD_EXCEPTION              */ 
     250    OPSPEC(    UNUSED,        STD,        STD,     UNUSED) /* 160 YIELD                          */ 
     251    OPSPEC(    UNUSED,        STD,     UNUSED,     UNUSED) /* 161 GENERATOR_RETURN               */ 
     252    OPSPEC(    UNUSED,    JMPADDR,     UNUSED,     UNUSED) /* 162 FAST_CALL                      */ 
     253    OPSPEC(    UNUSED,     UNUSED,     UNUSED,     UNUSED) /* 163 FAST_RET                       */ 
    251254# endif 
    252255#else 
  • trunk/xcache/xc_utils.c

    r1208 r1213  
    152152#endif 
    153153            case ZEND_JMP: 
     154#ifdef ZEND_FAST_CALL 
     155            case ZEND_FAST_CALL: 
     156#endif 
    154157                assert(Z_OP(opline->op1).jmp_addr >= op_array->opcodes && (zend_uint) (Z_OP(opline->op1).jmp_addr - op_array->opcodes) < op_array->last); 
    155158                Z_OP(opline->op1).opline_num = Z_OP(opline->op1).jmp_addr - op_array->opcodes; 
     
    239242#endif 
    240243            case ZEND_JMP: 
     244#ifdef ZEND_FAST_CALL 
     245            case ZEND_FAST_CALL: 
     246#endif 
    241247                assert(Z_OP(opline->op1).opline_num < op_array->last); 
    242248                Z_OP(opline->op1).jmp_addr = op_array->opcodes + Z_OP(opline->op1).opline_num; 
     
    347353#endif 
    348354            case ZEND_JMP: 
     355#ifdef ZEND_FAST_CALL 
     356            case ZEND_FAST_CALL: 
     357#endif 
    349358                next = begin + Z_OP(opline->op1).opline_num; 
    350359                break; 
Note: See TracChangeset for help on using the changeset viewer.