@@ -1093,7 +1093,7 @@ ZEND_VM_C_LABEL(assign_op_object):
1093
1093
1094
1094
FREE_OP_DATA ();
1095
1095
FREE_OP2 ();
1096
- FREE_OP1_VAR_PTR ();
1096
+ FREE_OP1 ();
1097
1097
/* assign_obj has two opcodes! */
1098
1098
ZEND_VM_NEXT_OPCODE_EX (1 , 2 );
1099
1099
}
@@ -1229,7 +1229,7 @@ ZEND_VM_C_LABEL(assign_dim_op_ret_null):
1229
1229
}
1230
1230
1231
1231
FREE_OP2 ();
1232
- FREE_OP1_VAR_PTR ();
1232
+ FREE_OP1 ();
1233
1233
ZEND_VM_NEXT_OPCODE_EX (1 , 2 );
1234
1234
}
1235
1235
@@ -1260,7 +1260,7 @@ ZEND_VM_HANDLER(26, ZEND_ASSIGN_OP, VAR|CV, CONST|TMPVAR|CV, OP)
1260
1260
}
1261
1261
1262
1262
FREE_OP2 ();
1263
- FREE_OP1_VAR_PTR ();
1263
+ FREE_OP1 ();
1264
1264
ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION ();
1265
1265
}
1266
1266
@@ -1328,7 +1328,7 @@ ZEND_VM_C_LABEL(pre_incdec_object):
1328
1328
} while (0 );
1329
1329
1330
1330
FREE_OP2 ();
1331
- FREE_OP1_VAR_PTR ();
1331
+ FREE_OP1 ();
1332
1332
ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION ();
1333
1333
}
1334
1334
@@ -1400,7 +1400,7 @@ ZEND_VM_C_LABEL(post_incdec_object):
1400
1400
} while (0 );
1401
1401
1402
1402
FREE_OP2 ();
1403
- FREE_OP1_VAR_PTR ();
1403
+ FREE_OP1 ();
1404
1404
ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION ();
1405
1405
}
1406
1406
@@ -1490,7 +1490,7 @@ ZEND_VM_HELPER(zend_pre_inc_helper, VAR|CV, ANY)
1490
1490
ZVAL_COPY (EX_VAR (opline -> result .var ), var_ptr );
1491
1491
}
1492
1492
1493
- FREE_OP1_VAR_PTR ();
1493
+ FREE_OP1 ();
1494
1494
ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION ();
1495
1495
}
1496
1496
@@ -1542,7 +1542,7 @@ ZEND_VM_HELPER(zend_pre_dec_helper, VAR|CV, ANY)
1542
1542
ZVAL_COPY (EX_VAR (opline -> result .var ), var_ptr );
1543
1543
}
1544
1544
1545
- FREE_OP1_VAR_PTR ();
1545
+ FREE_OP1 ();
1546
1546
ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION ();
1547
1547
}
1548
1548
@@ -1592,7 +1592,7 @@ ZEND_VM_HELPER(zend_post_inc_helper, VAR|CV, ANY)
1592
1592
increment_function (var_ptr );
1593
1593
} while (0 );
1594
1594
1595
- FREE_OP1_VAR_PTR ();
1595
+ FREE_OP1 ();
1596
1596
ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION ();
1597
1597
}
1598
1598
@@ -1640,7 +1640,7 @@ ZEND_VM_HELPER(zend_post_dec_helper, VAR|CV, ANY)
1640
1640
decrement_function (var_ptr );
1641
1641
} while (0 );
1642
1642
1643
- FREE_OP1_VAR_PTR ();
1643
+ FREE_OP1 ();
1644
1644
ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION ();
1645
1645
}
1646
1646
@@ -2485,7 +2485,7 @@ ZEND_VM_C_LABEL(free_and_exit_assign_obj):
2485
2485
FREE_OP_DATA ();
2486
2486
ZEND_VM_C_LABEL (exit_assign_obj ):
2487
2487
FREE_OP2 ();
2488
- FREE_OP1_VAR_PTR ();
2488
+ FREE_OP1 ();
2489
2489
/* assign_obj has two opcodes! */
2490
2490
ZEND_VM_NEXT_OPCODE_EX (1 , 2 );
2491
2491
}
@@ -2634,7 +2634,7 @@ ZEND_VM_C_LABEL(assign_dim_error):
2634
2634
if (OP2_TYPE != IS_UNUSED ) {
2635
2635
FREE_OP2 ();
2636
2636
}
2637
- FREE_OP1_VAR_PTR ();
2637
+ FREE_OP1 ();
2638
2638
/* assign_dim has two opcodes! */
2639
2639
ZEND_VM_NEXT_OPCODE_EX (1 , 2 );
2640
2640
}
@@ -2653,7 +2653,7 @@ ZEND_VM_HANDLER(22, ZEND_ASSIGN, VAR|CV, CONST|TMP|VAR|CV, SPEC(RETVAL))
2653
2653
if (UNEXPECTED (RETURN_VALUE_USED (opline ))) {
2654
2654
ZVAL_COPY (EX_VAR (opline -> result .var ), value );
2655
2655
}
2656
- FREE_OP1_VAR_PTR ();
2656
+ FREE_OP1 ();
2657
2657
/* zend_assign_to_variable() always takes care of op2, never free it! */
2658
2658
2659
2659
ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION ();
@@ -2688,8 +2688,8 @@ ZEND_VM_HANDLER(30, ZEND_ASSIGN_REF, VAR|CV, VAR|CV, SRC)
2688
2688
ZVAL_COPY (EX_VAR (opline -> result .var ), variable_ptr );
2689
2689
}
2690
2690
2691
- FREE_OP2_VAR_PTR ();
2692
- FREE_OP1_VAR_PTR ();
2691
+ FREE_OP2 ();
2692
+ FREE_OP1 ();
2693
2693
ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION ();
2694
2694
}
2695
2695
@@ -2723,9 +2723,9 @@ ZEND_VM_HANDLER(32, ZEND_ASSIGN_OBJ_REF, VAR|UNUSED|THIS|CV, CONST|TMPVAR|CV, CA
2723
2723
zend_assign_to_property_reference (container , OP1_TYPE , property , OP2_TYPE , value_ptr OPLINE_CC EXECUTE_DATA_CC );
2724
2724
}
2725
2725
2726
- FREE_OP1_VAR_PTR ();
2726
+ FREE_OP1 ();
2727
2727
FREE_OP2 ();
2728
- FREE_OP_DATA_VAR_PTR ();
2728
+ FREE_OP_DATA ();
2729
2729
ZEND_VM_NEXT_OPCODE_EX (1 , 2 );
2730
2730
}
2731
2731
@@ -2760,7 +2760,7 @@ ZEND_VM_HANDLER(33, ZEND_ASSIGN_STATIC_PROP_REF, ANY, ANY, CACHE_SLOT|SRC)
2760
2760
ZVAL_COPY (EX_VAR (opline -> result .var ), prop );
2761
2761
}
2762
2762
2763
- FREE_OP_DATA_VAR_PTR ();
2763
+ FREE_OP_DATA ();
2764
2764
ZEND_VM_NEXT_OPCODE_EX (1 , 2 );
2765
2765
}
2766
2766
@@ -4374,7 +4374,7 @@ ZEND_VM_COLD_CONST_HANDLER(111, ZEND_RETURN_BY_REF, CONST|TMP|VAR|CV, ANY, SRC,
4374
4374
if (return_value ) {
4375
4375
ZVAL_NEW_REF (return_value , retval_ptr );
4376
4376
} else {
4377
- FREE_OP1_VAR_PTR ();
4377
+ FREE_OP1 ();
4378
4378
}
4379
4379
break ;
4380
4380
}
@@ -4389,7 +4389,7 @@ ZEND_VM_COLD_CONST_HANDLER(111, ZEND_RETURN_BY_REF, CONST|TMP|VAR|CV, ANY, SRC,
4389
4389
ZVAL_REF (return_value , Z_REF_P (retval_ptr ));
4390
4390
}
4391
4391
4392
- FREE_OP1_VAR_PTR ();
4392
+ FREE_OP1 ();
4393
4393
} while (0 );
4394
4394
4395
4395
ZEND_OBSERVER_FCALL_END (execute_data , return_value );
@@ -4854,7 +4854,7 @@ ZEND_VM_HANDLER(67, ZEND_SEND_REF, VAR|CV, CONST|UNUSED|NUM)
4854
4854
}
4855
4855
ZVAL_REF (arg , Z_REF_P (varptr ));
4856
4856
4857
- FREE_OP1_VAR_PTR ();
4857
+ FREE_OP1 ();
4858
4858
ZEND_VM_NEXT_OPCODE ();
4859
4859
}
4860
4860
@@ -4891,7 +4891,7 @@ ZEND_VM_C_LABEL(send_var_by_ref):
4891
4891
}
4892
4892
ZVAL_REF (arg , Z_REF_P (varptr ));
4893
4893
4894
- FREE_OP1_VAR_PTR ();
4894
+ FREE_OP1 ();
4895
4895
ZEND_VM_NEXT_OPCODE ();
4896
4896
}
4897
4897
@@ -4984,7 +4984,7 @@ ZEND_VM_HOT_HANDLER(185, ZEND_SEND_FUNC_ARG, VAR, CONST|UNUSED|NUM)
4984
4984
}
4985
4985
ZVAL_REF (arg , Z_REF_P (varptr ));
4986
4986
4987
- FREE_OP1_VAR_PTR ();
4987
+ FREE_OP1 ();
4988
4988
ZEND_VM_NEXT_OPCODE ();
4989
4989
}
4990
4990
@@ -5910,7 +5910,7 @@ ZEND_VM_HANDLER(72, ZEND_ADD_ARRAY_ELEMENT, CONST|TMP|VAR|CV, CONST|TMPVAR|UNUSE
5910
5910
} else {
5911
5911
ZVAL_MAKE_REF_EX (expr_ptr , 2 );
5912
5912
}
5913
- FREE_OP1_VAR_PTR ();
5913
+ FREE_OP1 ();
5914
5914
} else {
5915
5915
expr_ptr = GET_OP1_ZVAL_PTR (BP_VAR_R );
5916
5916
if (OP1_TYPE == IS_TMP_VAR ) {
@@ -6496,7 +6496,7 @@ ZEND_VM_C_LABEL(num_index_dim):
6496
6496
} while (0 );
6497
6497
6498
6498
FREE_OP2 ();
6499
- FREE_OP1_VAR_PTR ();
6499
+ FREE_OP1 ();
6500
6500
ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION ();
6501
6501
}
6502
6502
@@ -6541,7 +6541,7 @@ ZEND_VM_HANDLER(76, ZEND_UNSET_OBJ, VAR|UNUSED|THIS|CV, CONST|TMPVAR|CV, CACHE_S
6541
6541
} while (0 );
6542
6542
6543
6543
FREE_OP2 ();
6544
- FREE_OP1_VAR_PTR ();
6544
+ FREE_OP1 ();
6545
6545
ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION ();
6546
6546
}
6547
6547
@@ -6650,9 +6650,7 @@ ZEND_VM_COLD_CONST_HANDLER(125, ZEND_FE_RESET_RW, CONST|TMP|VAR|CV, JMP_ADDR)
6650
6650
}
6651
6651
Z_FE_ITER_P (EX_VAR (opline -> result .var )) = zend_hash_iterator_add (Z_ARRVAL_P (array_ptr ), 0 );
6652
6652
6653
- if (OP1_TYPE == IS_VAR ) {
6654
- FREE_OP1_VAR_PTR ();
6655
- }
6653
+ FREE_OP1_IF_VAR ();
6656
6654
ZEND_VM_NEXT_OPCODE ();
6657
6655
} else if (OP1_TYPE != IS_CONST && EXPECTED (Z_TYPE_P (array_ptr ) == IS_OBJECT )) {
6658
6656
if (!Z_OBJCE_P (array_ptr )-> get_iterator ) {
@@ -6679,21 +6677,16 @@ ZEND_VM_COLD_CONST_HANDLER(125, ZEND_FE_RESET_RW, CONST|TMP|VAR|CV, JMP_ADDR)
6679
6677
properties = Z_OBJPROP_P (array_ptr );
6680
6678
if (zend_hash_num_elements (properties ) == 0 ) {
6681
6679
Z_FE_ITER_P (EX_VAR (opline -> result .var )) = (uint32_t ) -1 ;
6682
- FREE_OP1_VAR_PTR ();
6680
+ FREE_OP1_IF_VAR ();
6683
6681
ZEND_VM_JMP (OP_JMP_ADDR (opline , opline -> op2 ));
6684
6682
}
6685
6683
6686
6684
Z_FE_ITER_P (EX_VAR (opline -> result .var )) = zend_hash_iterator_add (properties , 0 );
6687
- FREE_OP1_VAR_PTR ();
6685
+ FREE_OP1_IF_VAR ();
6688
6686
ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION ();
6689
6687
} else {
6690
6688
bool is_empty = zend_fe_reset_iterator (array_ptr , 1 OPLINE_CC EXECUTE_DATA_CC );
6691
-
6692
- if (OP1_TYPE == IS_VAR ) {
6693
- FREE_OP1_VAR_PTR ();
6694
- } else {
6695
- FREE_OP1 ();
6696
- }
6689
+ FREE_OP1 ();
6697
6690
if (UNEXPECTED (EG (exception ))) {
6698
6691
HANDLE_EXCEPTION ();
6699
6692
} else if (is_empty ) {
@@ -6706,11 +6699,7 @@ ZEND_VM_COLD_CONST_HANDLER(125, ZEND_FE_RESET_RW, CONST|TMP|VAR|CV, JMP_ADDR)
6706
6699
zend_error (E_WARNING , "foreach() argument must be of type array|object, %s given" , zend_zval_type_name (array_ptr ));
6707
6700
ZVAL_UNDEF (EX_VAR (opline -> result .var ));
6708
6701
Z_FE_ITER_P (EX_VAR (opline -> result .var )) = (uint32_t )-1 ;
6709
- if (OP1_TYPE == IS_VAR ) {
6710
- FREE_OP1_VAR_PTR ();
6711
- } else {
6712
- FREE_OP1 ();
6713
- }
6702
+ FREE_OP1 ();
6714
6703
ZEND_VM_JMP (OP_JMP_ADDR (opline , opline -> op2 ));
6715
6704
}
6716
6705
}
@@ -8033,7 +8022,7 @@ ZEND_VM_HANDLER(160, ZEND_YIELD, CONST|TMP|VAR|CV|UNUSED, CONST|TMPVAR|CV|UNUSED
8033
8022
ZVAL_REF (& generator -> value , Z_REF_P (value_ptr ));
8034
8023
} while (0 );
8035
8024
8036
- FREE_OP1_VAR_PTR ();
8025
+ FREE_OP1 ();
8037
8026
}
8038
8027
} else {
8039
8028
zval * value = GET_OP1_ZVAL_PTR (BP_VAR_R );
0 commit comments