@@ -519,7 +519,7 @@ ZEND_VM_HELPER(zend_is_equal_helper, ANY, ANY, zval *op_1, zval *op_2)
519
519
}
520
520
}
521
521
522
- ZEND_VM_COLD_CONSTCONST_HANDLER (18 , ZEND_IS_EQUAL , CONST |TMPVAR |CV , CONST |TMPVAR |CV , SPEC (COMMUTATIVE ))
522
+ ZEND_VM_COLD_CONSTCONST_HANDLER (18 , ZEND_IS_EQUAL , CONST |TMPVAR |CV , CONST |TMPVAR |CV , SPEC (SMART_BRANCH , COMMUTATIVE ))
523
523
{
524
524
USE_OPLINE
525
525
zend_free_op free_op1 , free_op2 ;
@@ -614,7 +614,7 @@ ZEND_VM_HELPER(zend_is_not_equal_helper, ANY, ANY, zval *op_1, zval *op_2)
614
614
}
615
615
}
616
616
617
- ZEND_VM_COLD_CONSTCONST_HANDLER (19 , ZEND_IS_NOT_EQUAL , CONST |TMPVAR |CV , CONST |TMPVAR |CV , SPEC (COMMUTATIVE ))
617
+ ZEND_VM_COLD_CONSTCONST_HANDLER (19 , ZEND_IS_NOT_EQUAL , CONST |TMPVAR |CV , CONST |TMPVAR |CV , SPEC (SMART_BRANCH , COMMUTATIVE ))
618
618
{
619
619
USE_OPLINE
620
620
zend_free_op free_op1 , free_op2 ;
@@ -709,7 +709,7 @@ ZEND_VM_HELPER(zend_is_smaller_helper, ANY, ANY, zval *op_1, zval *op_2)
709
709
}
710
710
}
711
711
712
- ZEND_VM_COLD_CONSTCONST_HANDLER (20 , ZEND_IS_SMALLER , CONST |TMPVARCV , CONST |TMPVARCV )
712
+ ZEND_VM_HOT_NOCONSTCONST_HANDLER (20 , ZEND_IS_SMALLER , CONST |TMPVARCV , CONST |TMPVARCV , SPEC ( SMART_BRANCH ) )
713
713
{
714
714
USE_OPLINE
715
715
zend_free_op free_op1 , free_op2 ;
@@ -789,7 +789,7 @@ ZEND_VM_HELPER(zend_is_smaller_or_equal_helper, ANY, ANY, zval *op_1, zval *op_2
789
789
}
790
790
}
791
791
792
- ZEND_VM_COLD_CONSTCONST_HANDLER (21 , ZEND_IS_SMALLER_OR_EQUAL , CONST |TMPVARCV , CONST |TMPVARCV )
792
+ ZEND_VM_HOT_NOCONSTCONST_HANDLER (21 , ZEND_IS_SMALLER_OR_EQUAL , CONST |TMPVARCV , CONST |TMPVARCV , SPEC ( SMART_BRANCH ) )
793
793
{
794
794
USE_OPLINE
795
795
zend_free_op free_op1 , free_op2 ;
@@ -9096,6 +9096,17 @@ ZEND_VM_HOT_TYPE_SPEC_HANDLER(ZEND_POST_DEC, (op1_info == MAY_BE_LONG), ZEND_POS
9096
9096
ZEND_VM_NEXT_OPCODE ();
9097
9097
}
9098
9098
9099
+ ZEND_VM_HOT_TYPE_SPEC_HANDLER (ZEND_QM_ASSIGN , (op1_info == MAY_BE_LONG ), ZEND_QM_ASSIGN_LONG , CONST |TMPVARCV , ANY )
9100
+ {
9101
+ USE_OPLINE
9102
+ zend_free_op free_op1 ;
9103
+ zval * value ;
9104
+
9105
+ value = GET_OP1_ZVAL_PTR_UNDEF (BP_VAR_R );
9106
+ ZVAL_LONG (EX_VAR (opline -> result .var ), Z_LVAL_P (value ));
9107
+ ZEND_VM_NEXT_OPCODE ();
9108
+ }
9109
+
9099
9110
ZEND_VM_HOT_TYPE_SPEC_HANDLER (ZEND_QM_ASSIGN , (op1_info == MAY_BE_DOUBLE ), ZEND_QM_ASSIGN_DOUBLE , CONST |TMPVARCV , ANY )
9100
9111
{
9101
9112
USE_OPLINE
0 commit comments