diff options
Diffstat (limited to 'Zend/zend_vm_execute.h')
-rw-r--r-- | Zend/zend_vm_execute.h | 299 |
1 files changed, 171 insertions, 128 deletions
diff --git a/Zend/zend_vm_execute.h b/Zend/zend_vm_execute.h index 803414ac9d..83eb35f610 100644 --- a/Zend/zend_vm_execute.h +++ b/Zend/zend_vm_execute.h @@ -21821,6 +21821,24 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_YIELD_SPEC_VAR_UNUSED_HANDLER( ZEND_VM_RETURN(); } +static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_MAKE_REF_SPEC_VAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) +{ + USE_OPLINE + zval *op1 = EX_VAR(opline->op1.var); + + if (EXPECTED(Z_TYPE_P(op1) == IS_INDIRECT)) { + op1 = Z_INDIRECT_P(op1); + if (EXPECTED(!Z_ISREF_P(op1))) { + ZVAL_MAKE_REF(op1); + } + GC_REFCOUNT(Z_REF_P(op1))++; + ZVAL_REF(EX_VAR(opline->result.var), Z_REF_P(op1)); + } else { + ZVAL_COPY_VALUE(EX_VAR(opline->result.var), op1); + } + ZEND_VM_NEXT_OPCODE(); +} + static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_IDENTICAL_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) { USE_OPLINE @@ -58465,6 +58483,31 @@ void zend_init_opcodes_handlers(void) ZEND_NULL_HANDLER, ZEND_NULL_HANDLER, ZEND_NULL_HANDLER, + ZEND_NULL_HANDLER, + ZEND_NULL_HANDLER, + ZEND_NULL_HANDLER, + ZEND_NULL_HANDLER, + ZEND_NULL_HANDLER, + ZEND_NULL_HANDLER, + ZEND_NULL_HANDLER, + ZEND_NULL_HANDLER, + ZEND_NULL_HANDLER, + ZEND_NULL_HANDLER, + ZEND_NULL_HANDLER, + ZEND_NULL_HANDLER, + ZEND_NULL_HANDLER, + ZEND_MAKE_REF_SPEC_VAR_UNUSED_HANDLER, + ZEND_NULL_HANDLER, + ZEND_NULL_HANDLER, + ZEND_NULL_HANDLER, + ZEND_NULL_HANDLER, + ZEND_NULL_HANDLER, + ZEND_NULL_HANDLER, + ZEND_NULL_HANDLER, + ZEND_NULL_HANDLER, + ZEND_NULL_HANDLER, + ZEND_NULL_HANDLER, + ZEND_NULL_HANDLER, ZEND_BOOL_SPEC_CONST_HANDLER, ZEND_BOOL_SPEC_TMPVAR_HANDLER, ZEND_BOOL_SPEC_TMPVAR_HANDLER, @@ -61597,36 +61640,35 @@ void zend_init_opcodes_handlers(void) 1433 | SPEC_RULE_OP1 | SPEC_RULE_OP2, 1458 | SPEC_RULE_OP1 | SPEC_RULE_OP2, 1483 | SPEC_RULE_OP1 | SPEC_RULE_QUICK_ARG, - 4571, - 1493 | SPEC_RULE_OP1, - 1498 | SPEC_RULE_OP1 | SPEC_RULE_OP2, + 1493 | SPEC_RULE_OP1 | SPEC_RULE_OP2, + 1518 | SPEC_RULE_OP1, 1523 | SPEC_RULE_OP1 | SPEC_RULE_OP2, 1548 | SPEC_RULE_OP1 | SPEC_RULE_OP2, 1573 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 1598, - 1599 | SPEC_RULE_OP1, - 1604 | SPEC_RULE_OP2, - 1609 | SPEC_RULE_RETVAL, - 1611 | SPEC_RULE_OP2, - 1616 | SPEC_RULE_OP1, - 1621, - 1622 | SPEC_RULE_OP2, - 1627 | SPEC_RULE_OP1, - 1632 | SPEC_RULE_OP1 | SPEC_RULE_QUICK_ARG, - 1642 | SPEC_RULE_OP1, - 1647 | SPEC_RULE_OP1, - 1652 | SPEC_RULE_OP2, - 1657 | SPEC_RULE_OP1, - 1662 | SPEC_RULE_OP1 | SPEC_RULE_OP2, + 1598 | SPEC_RULE_OP1 | SPEC_RULE_OP2, + 1623, + 1624 | SPEC_RULE_OP1, + 1629 | SPEC_RULE_OP2, + 1634 | SPEC_RULE_RETVAL, + 1636 | SPEC_RULE_OP2, + 1641 | SPEC_RULE_OP1, + 1646, + 1647 | SPEC_RULE_OP2, + 1652 | SPEC_RULE_OP1, + 1657 | SPEC_RULE_OP1 | SPEC_RULE_QUICK_ARG, + 1667 | SPEC_RULE_OP1, + 1672 | SPEC_RULE_OP1, + 1677 | SPEC_RULE_OP2, + 1682 | SPEC_RULE_OP1, 1687 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 1712 | SPEC_RULE_OP1, - 1717 | SPEC_RULE_OP1 | SPEC_RULE_OP2, + 1712 | SPEC_RULE_OP1 | SPEC_RULE_OP2, + 1737 | SPEC_RULE_OP1, 1742 | SPEC_RULE_OP1 | SPEC_RULE_OP2, 1767 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 1792 | SPEC_RULE_OP1, - 1797 | SPEC_RULE_OP1, - 1802 | SPEC_RULE_OP1, - 1807 | SPEC_RULE_OP1 | SPEC_RULE_OP2, + 1792 | SPEC_RULE_OP1 | SPEC_RULE_OP2, + 1817 | SPEC_RULE_OP1, + 1822 | SPEC_RULE_OP1, + 1827 | SPEC_RULE_OP1, 1832 | SPEC_RULE_OP1 | SPEC_RULE_OP2, 1857 | SPEC_RULE_OP1 | SPEC_RULE_OP2, 1882 | SPEC_RULE_OP1 | SPEC_RULE_OP2, @@ -61646,80 +61688,80 @@ void zend_init_opcodes_handlers(void) 2232 | SPEC_RULE_OP1 | SPEC_RULE_OP2, 2257 | SPEC_RULE_OP1 | SPEC_RULE_OP2, 2282 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 4571, - 2307, - 2308, - 2309, - 2310, - 2311, - 2312 | SPEC_RULE_OP1, - 2317 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 2342 | SPEC_RULE_OP1, - 2347 | SPEC_RULE_OP2, - 2352 | SPEC_RULE_OP1, - 2357 | SPEC_RULE_OP1, - 2362 | SPEC_RULE_OP1 | SPEC_RULE_OP2, + 2307 | SPEC_RULE_OP1 | SPEC_RULE_OP2, + 4596, + 2332, + 2333, + 2334, + 2335, + 2336, + 2337 | SPEC_RULE_OP1, + 2342 | SPEC_RULE_OP1 | SPEC_RULE_OP2, + 2367 | SPEC_RULE_OP1, + 2372 | SPEC_RULE_OP2, + 2377 | SPEC_RULE_OP1, + 2382 | SPEC_RULE_OP1, 2387 | SPEC_RULE_OP1 | SPEC_RULE_OP2, 2412 | SPEC_RULE_OP1 | SPEC_RULE_OP2, 2437 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 2462 | SPEC_RULE_OP1 | SPEC_RULE_QUICK_ARG, - 2472 | SPEC_RULE_OP1, - 2477 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 2502, - 2503 | SPEC_RULE_OP1, - 2508 | SPEC_RULE_OP1, - 2513 | SPEC_RULE_OP1, - 2518 | SPEC_RULE_OP1, - 2523 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 2548 | SPEC_RULE_OP1, - 2553 | SPEC_RULE_OP1, - 2558 | SPEC_RULE_OP1, - 2563 | SPEC_RULE_OP2, - 2568 | SPEC_RULE_RETVAL, - 2570 | SPEC_RULE_RETVAL, - 2572 | SPEC_RULE_RETVAL, - 2574 | SPEC_RULE_OP1 | SPEC_RULE_OP2, + 2462 | SPEC_RULE_OP1 | SPEC_RULE_OP2, + 2487 | SPEC_RULE_OP1 | SPEC_RULE_QUICK_ARG, + 2497 | SPEC_RULE_OP1, + 2502 | SPEC_RULE_OP1 | SPEC_RULE_OP2, + 2527, + 2528 | SPEC_RULE_OP1, + 2533 | SPEC_RULE_OP1, + 2538 | SPEC_RULE_OP1, + 2543 | SPEC_RULE_OP1, + 2548 | SPEC_RULE_OP1 | SPEC_RULE_OP2, + 2573 | SPEC_RULE_OP1, + 2578 | SPEC_RULE_OP1, + 2583 | SPEC_RULE_OP1, + 2588 | SPEC_RULE_OP2, + 2593 | SPEC_RULE_RETVAL, + 2595 | SPEC_RULE_RETVAL, + 2597 | SPEC_RULE_RETVAL, 2599 | SPEC_RULE_OP1 | SPEC_RULE_OP2, 2624 | SPEC_RULE_OP1 | SPEC_RULE_OP2, 2649 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 2674 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_OP_DATA, - 2799, - 2800 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 2825, - 2826 | SPEC_RULE_OP2, - 2831, - 2832 | SPEC_RULE_OP1, - 2837 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 2862 | SPEC_RULE_OP2, - 2867 | SPEC_RULE_OP2, - 2872, - 2873 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_OP_DATA, - 2998 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 3023, - 3024, - 3025, - 3026 | SPEC_RULE_OP1, - 3031 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 3056, - 3057, - 3058 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 3083, - 3084, - 3085, - 3086 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 3111 | SPEC_RULE_OP1, - 3116, - 3117, - 3118, - 3119, - 3120 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 3145 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_DIM_OBJ, - 3220 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 3245 | SPEC_RULE_OP1, - 3250 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 3275, - 3276 | SPEC_RULE_OP2, - 3281 | SPEC_RULE_OP1 | SPEC_RULE_OP2, + 2674 | SPEC_RULE_OP1 | SPEC_RULE_OP2, + 2699 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_OP_DATA, + 2824, + 2825 | SPEC_RULE_OP1 | SPEC_RULE_OP2, + 2850, + 2851 | SPEC_RULE_OP2, + 2856, + 2857 | SPEC_RULE_OP1, + 2862 | SPEC_RULE_OP1 | SPEC_RULE_OP2, + 2887 | SPEC_RULE_OP2, + 2892 | SPEC_RULE_OP2, + 2897, + 2898 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_OP_DATA, + 3023 | SPEC_RULE_OP1 | SPEC_RULE_OP2, + 3048, + 3049, + 3050, + 3051 | SPEC_RULE_OP1, + 3056 | SPEC_RULE_OP1 | SPEC_RULE_OP2, + 3081, + 3082, + 3083 | SPEC_RULE_OP1 | SPEC_RULE_OP2, + 3108, + 3109, + 3110, + 3111 | SPEC_RULE_OP1 | SPEC_RULE_OP2, + 3136 | SPEC_RULE_OP1, + 3141, + 3142, + 3143, + 3144, + 3145 | SPEC_RULE_OP1 | SPEC_RULE_OP2, + 3170 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_DIM_OBJ, + 3245 | SPEC_RULE_OP1 | SPEC_RULE_OP2, + 3270 | SPEC_RULE_OP1, + 3275 | SPEC_RULE_OP1 | SPEC_RULE_OP2, + 3300, + 3301 | SPEC_RULE_OP2, 3306 | SPEC_RULE_OP1 | SPEC_RULE_OP2, 3331 | SPEC_RULE_OP1 | SPEC_RULE_OP2, 3356 | SPEC_RULE_OP1 | SPEC_RULE_OP2, @@ -61731,9 +61773,10 @@ void zend_init_opcodes_handlers(void) 3506 | SPEC_RULE_OP1 | SPEC_RULE_OP2, 3531 | SPEC_RULE_OP1 | SPEC_RULE_OP2, 3556 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 4571, 3581 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 4571 + 4596, + 3606 | SPEC_RULE_OP1 | SPEC_RULE_OP2, + 4596 }; zend_opcode_handlers = labels; zend_handlers_count = sizeof(labels) / sizeof(void*); @@ -61840,7 +61883,7 @@ ZEND_API void zend_vm_set_opcode_handler_ex(zend_op* op, uint32_t op1_info, uint if (op->op1_type == IS_CONST && op->op2_type == IS_CONST) { break; } - spec = 3606 | SPEC_RULE_OP1 | SPEC_RULE_OP2; + spec = 3631 | SPEC_RULE_OP1 | SPEC_RULE_OP2; if (op->op1_type > op->op2_type) { zend_swap_operands(op); } @@ -61848,7 +61891,7 @@ ZEND_API void zend_vm_set_opcode_handler_ex(zend_op* op, uint32_t op1_info, uint if (op->op1_type == IS_CONST && op->op2_type == IS_CONST) { break; } - spec = 3631 | SPEC_RULE_OP1 | SPEC_RULE_OP2; + spec = 3656 | SPEC_RULE_OP1 | SPEC_RULE_OP2; if (op->op1_type > op->op2_type) { zend_swap_operands(op); } @@ -61856,7 +61899,7 @@ ZEND_API void zend_vm_set_opcode_handler_ex(zend_op* op, uint32_t op1_info, uint if (op->op1_type == IS_CONST && op->op2_type == IS_CONST) { break; } - spec = 3656 | SPEC_RULE_OP1 | SPEC_RULE_OP2; + spec = 3681 | SPEC_RULE_OP1 | SPEC_RULE_OP2; if (op->op1_type > op->op2_type) { zend_swap_operands(op); } @@ -61867,17 +61910,17 @@ ZEND_API void zend_vm_set_opcode_handler_ex(zend_op* op, uint32_t op1_info, uint if (op->op1_type == IS_CONST && op->op2_type == IS_CONST) { break; } - spec = 3681 | SPEC_RULE_OP1 | SPEC_RULE_OP2; + spec = 3706 | SPEC_RULE_OP1 | SPEC_RULE_OP2; } else if ((op1_info == MAY_BE_LONG && op2_info == MAY_BE_LONG)) { if (op->op1_type == IS_CONST && op->op2_type == IS_CONST) { break; } - spec = 3706 | SPEC_RULE_OP1 | SPEC_RULE_OP2; + spec = 3731 | SPEC_RULE_OP1 | SPEC_RULE_OP2; } else if ((op1_info == MAY_BE_DOUBLE && op2_info == MAY_BE_DOUBLE)) { if (op->op1_type == IS_CONST && op->op2_type == IS_CONST) { break; } - spec = 3731 | SPEC_RULE_OP1 | SPEC_RULE_OP2; + spec = 3756 | SPEC_RULE_OP1 | SPEC_RULE_OP2; } break; case ZEND_MUL: @@ -61885,7 +61928,7 @@ ZEND_API void zend_vm_set_opcode_handler_ex(zend_op* op, uint32_t op1_info, uint if (op->op1_type == IS_CONST && op->op2_type == IS_CONST) { break; } - spec = 3756 | SPEC_RULE_OP1 | SPEC_RULE_OP2; + spec = 3781 | SPEC_RULE_OP1 | SPEC_RULE_OP2; if (op->op1_type > op->op2_type) { zend_swap_operands(op); } @@ -61893,7 +61936,7 @@ ZEND_API void zend_vm_set_opcode_handler_ex(zend_op* op, uint32_t op1_info, uint if (op->op1_type == IS_CONST && op->op2_type == IS_CONST) { break; } - spec = 3781 | SPEC_RULE_OP1 | SPEC_RULE_OP2; + spec = 3806 | SPEC_RULE_OP1 | SPEC_RULE_OP2; if (op->op1_type > op->op2_type) { zend_swap_operands(op); } @@ -61901,7 +61944,7 @@ ZEND_API void zend_vm_set_opcode_handler_ex(zend_op* op, uint32_t op1_info, uint if (op->op1_type == IS_CONST && op->op2_type == IS_CONST) { break; } - spec = 3806 | SPEC_RULE_OP1 | SPEC_RULE_OP2; + spec = 3831 | SPEC_RULE_OP1 | SPEC_RULE_OP2; if (op->op1_type > op->op2_type) { zend_swap_operands(op); } @@ -61912,7 +61955,7 @@ ZEND_API void zend_vm_set_opcode_handler_ex(zend_op* op, uint32_t op1_info, uint if (op->op1_type == IS_CONST && op->op2_type == IS_CONST) { break; } - spec = 3831 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_SMART_BRANCH; + spec = 3856 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_SMART_BRANCH; if (op->op1_type > op->op2_type) { zend_swap_operands(op); } @@ -61920,7 +61963,7 @@ ZEND_API void zend_vm_set_opcode_handler_ex(zend_op* op, uint32_t op1_info, uint if (op->op1_type == IS_CONST && op->op2_type == IS_CONST) { break; } - spec = 3906 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_SMART_BRANCH; + spec = 3931 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_SMART_BRANCH; if (op->op1_type > op->op2_type) { zend_swap_operands(op); } @@ -61931,7 +61974,7 @@ ZEND_API void zend_vm_set_opcode_handler_ex(zend_op* op, uint32_t op1_info, uint if (op->op1_type == IS_CONST && op->op2_type == IS_CONST) { break; } - spec = 3981 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_SMART_BRANCH; + spec = 4006 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_SMART_BRANCH; if (op->op1_type > op->op2_type) { zend_swap_operands(op); } @@ -61939,7 +61982,7 @@ ZEND_API void zend_vm_set_opcode_handler_ex(zend_op* op, uint32_t op1_info, uint if (op->op1_type == IS_CONST && op->op2_type == IS_CONST) { break; } - spec = 4056 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_SMART_BRANCH; + spec = 4081 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_SMART_BRANCH; if (op->op1_type > op->op2_type) { zend_swap_operands(op); } @@ -61950,12 +61993,12 @@ ZEND_API void zend_vm_set_opcode_handler_ex(zend_op* op, uint32_t op1_info, uint if (op->op1_type == IS_CONST && op->op2_type == IS_CONST) { break; } - spec = 4131 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_SMART_BRANCH; + spec = 4156 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_SMART_BRANCH; } else if ((op1_info == MAY_BE_DOUBLE && op2_info == MAY_BE_DOUBLE)) { if (op->op1_type == IS_CONST && op->op2_type == IS_CONST) { break; } - spec = 4206 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_SMART_BRANCH; + spec = 4231 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_SMART_BRANCH; } break; case ZEND_IS_SMALLER_OR_EQUAL: @@ -61963,70 +62006,70 @@ ZEND_API void zend_vm_set_opcode_handler_ex(zend_op* op, uint32_t op1_info, uint if (op->op1_type == IS_CONST && op->op2_type == IS_CONST) { break; } - spec = 4281 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_SMART_BRANCH; + spec = 4306 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_SMART_BRANCH; } else if ((op1_info == MAY_BE_DOUBLE && op2_info == MAY_BE_DOUBLE)) { if (op->op1_type == IS_CONST && op->op2_type == IS_CONST) { break; } - spec = 4356 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_SMART_BRANCH; + spec = 4381 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_SMART_BRANCH; } break; case ZEND_QM_ASSIGN: if ((op1_info == MAY_BE_DOUBLE)) { - spec = 4521 | SPEC_RULE_OP1; + spec = 4546 | SPEC_RULE_OP1; } else if ((!(op1_info & ((MAY_BE_ANY|MAY_BE_UNDEF)-(MAY_BE_NULL|MAY_BE_FALSE|MAY_BE_TRUE|MAY_BE_LONG|MAY_BE_DOUBLE))))) { - spec = 4526 | SPEC_RULE_OP1; + spec = 4551 | SPEC_RULE_OP1; } break; case ZEND_PRE_INC: if ((res_info == MAY_BE_LONG && op1_info == MAY_BE_LONG)) { - spec = 4431 | SPEC_RULE_OP1 | SPEC_RULE_RETVAL; + spec = 4456 | SPEC_RULE_OP1 | SPEC_RULE_RETVAL; } else if ((op1_info == MAY_BE_LONG)) { - spec = 4441 | SPEC_RULE_OP1 | SPEC_RULE_RETVAL; + spec = 4466 | SPEC_RULE_OP1 | SPEC_RULE_RETVAL; } else if ((op1_info == (MAY_BE_LONG|MAY_BE_DOUBLE))) { - spec = 4451 | SPEC_RULE_OP1 | SPEC_RULE_RETVAL; + spec = 4476 | SPEC_RULE_OP1 | SPEC_RULE_RETVAL; } break; case ZEND_PRE_DEC: if ((res_info == MAY_BE_LONG && op1_info == MAY_BE_LONG)) { - spec = 4461 | SPEC_RULE_OP1 | SPEC_RULE_RETVAL; + spec = 4486 | SPEC_RULE_OP1 | SPEC_RULE_RETVAL; } else if ((op1_info == MAY_BE_LONG)) { - spec = 4471 | SPEC_RULE_OP1 | SPEC_RULE_RETVAL; + spec = 4496 | SPEC_RULE_OP1 | SPEC_RULE_RETVAL; } else if ((op1_info == (MAY_BE_LONG|MAY_BE_DOUBLE))) { - spec = 4481 | SPEC_RULE_OP1 | SPEC_RULE_RETVAL; + spec = 4506 | SPEC_RULE_OP1 | SPEC_RULE_RETVAL; } break; case ZEND_POST_INC: if ((res_info == MAY_BE_LONG && op1_info == MAY_BE_LONG)) { - spec = 4491 | SPEC_RULE_OP1; + spec = 4516 | SPEC_RULE_OP1; } else if ((op1_info == MAY_BE_LONG)) { - spec = 4496 | SPEC_RULE_OP1; + spec = 4521 | SPEC_RULE_OP1; } else if ((op1_info == (MAY_BE_LONG|MAY_BE_DOUBLE))) { - spec = 4501 | SPEC_RULE_OP1; + spec = 4526 | SPEC_RULE_OP1; } break; case ZEND_POST_DEC: if ((res_info == MAY_BE_LONG && op1_info == MAY_BE_LONG)) { - spec = 4506 | SPEC_RULE_OP1; + spec = 4531 | SPEC_RULE_OP1; } else if ((op1_info == MAY_BE_LONG)) { - spec = 4511 | SPEC_RULE_OP1; + spec = 4536 | SPEC_RULE_OP1; } else if ((op1_info == (MAY_BE_LONG|MAY_BE_DOUBLE))) { - spec = 4516 | SPEC_RULE_OP1; + spec = 4541 | SPEC_RULE_OP1; } break; case ZEND_SEND_VAR_EX: if ((op1_info & (MAY_BE_UNDEF|MAY_BE_REF)) == 0) { - spec = 4561 | SPEC_RULE_OP1 | SPEC_RULE_QUICK_ARG; + spec = 4586 | SPEC_RULE_OP1 | SPEC_RULE_QUICK_ARG; } break; case ZEND_FETCH_DIM_R: if ((!(op2_info & (MAY_BE_UNDEF|MAY_BE_NULL|MAY_BE_STRING|MAY_BE_ARRAY|MAY_BE_OBJECT|MAY_BE_RESOURCE|MAY_BE_REF)))) { - spec = 4531 | SPEC_RULE_OP1 | SPEC_RULE_OP2; + spec = 4556 | SPEC_RULE_OP1 | SPEC_RULE_OP2; } break; case ZEND_SEND_VAR: if ((op1_info & (MAY_BE_UNDEF|MAY_BE_REF)) == 0) { - spec = 4556 | SPEC_RULE_OP1; + spec = 4581 | SPEC_RULE_OP1; } break; default: |