]> granicus.if.org Git - php/commitdiff
Use EX_NUM_TO_VAR() in more places
authorNikita Popov <nikita.ppv@gmail.com>
Thu, 27 Feb 2020 12:13:01 +0000 (13:13 +0100)
committerNikita Popov <nikita.ppv@gmail.com>
Thu, 27 Feb 2020 12:13:24 +0000 (13:13 +0100)
Not sure why I missed these before.

Zend/zend_compile.c
Zend/zend_opcode.c
ext/opcache/Optimizer/dce.c

index 7ec740ae4e161124fbb1d4677fa413c4223f9c63..ae1fc8a7c0762c0207cae62fe243bb26ef73c74f 100644 (file)
@@ -505,7 +505,7 @@ static int lookup_cv(zend_string *name) /* {{{ */{
        while (i < op_array->last_var) {
                if (ZSTR_H(op_array->vars[i]) == hash_value
                 && zend_string_equals(op_array->vars[i], name)) {
-                       return (int)(zend_intptr_t)ZEND_CALL_VAR_NUM(NULL, i);
+                       return EX_NUM_TO_VAR(i);
                }
                i++;
        }
@@ -517,7 +517,7 @@ static int lookup_cv(zend_string *name) /* {{{ */{
        }
 
        op_array->vars[i] = zend_string_copy(name);
-       return (int)(zend_intptr_t)ZEND_CALL_VAR_NUM(NULL, i);
+       return EX_NUM_TO_VAR(i);
 }
 /* }}} */
 
index 4ebe92fa9511d3c8cca2dff895ddf19086fef8ba..345e8cce42ea94f8f72790856f606a858a23a8b0 100644 (file)
@@ -593,7 +593,7 @@ static void emit_live_range_raw(
 
        ZEND_ASSERT(start < end);
        range = &op_array->live_range[op_array->last_live_range - 1];
-       range->var = (uint32_t) (intptr_t) ZEND_CALL_VAR_NUM(NULL, op_array->last_var + var_num);
+       range->var = EX_NUM_TO_VAR(op_array->last_var + var_num);
        range->var |= kind;
        range->start = start;
        range->end = end;
@@ -698,8 +698,7 @@ static void emit_live_range(
                        /* COPY_TMP has a split live-range: One from the definition until the use in
                         * "null" branch, and another from the start of the "non-null" branch to the
                         * FREE opcode. */
-                       uint32_t rt_var_num =
-                               (uint32_t) (intptr_t) ZEND_CALL_VAR_NUM(NULL, op_array->last_var + var_num);
+                       uint32_t rt_var_num = EX_NUM_TO_VAR(op_array->last_var + var_num);
                        zend_op *block_start_op = use_opline;
 
                        if (needs_live_range && !needs_live_range(op_array, orig_def_opline)) {
index ea81687bf43a18ab642bfa092759c8921aeb2415..d5a7f5a192f7467fd38c65e48f7472a11bb09c11 100644 (file)
@@ -416,7 +416,7 @@ static zend_bool dce_instr(context *ctx, zend_op *opline, zend_ssa_op *ssa_op) {
 
        if (free_var >= 0) {
                opline->opcode = ZEND_FREE;
-               opline->op1.var = (uintptr_t) ZEND_CALL_VAR_NUM(NULL, ssa->vars[free_var].var);
+               opline->op1.var = EX_NUM_TO_VAR(ssa->vars[free_var].var);
                opline->op1_type = free_var_type;
 
                ssa_op->op1_use = free_var;