Lines Matching refs:extra_spec
676 function gen_code($f, $spec, $kind, $export, $code, $op1, $op2, $name, $extra_spec=null) { argument
787 …$kind != ZEND_VM_KIND_CALL)?("_SPEC".$prefix[$op1].$prefix[$op2].extra_spec_name($extra_spec)):""),
788 …$kind != ZEND_VM_KIND_CALL)?("_SPEC".$prefix[$op1].$prefix[$op2].extra_spec_name($extra_spec)):""),
793 $op_data_type[isset($extra_spec['OP_DATA']) ? $extra_spec['OP_DATA'] : "ANY"],
794 $op_data_get_zval_ptr[isset($extra_spec['OP_DATA']) ? $extra_spec['OP_DATA'] : "ANY"],
795 $op_data_get_zval_ptr_deref[isset($extra_spec['OP_DATA']) ? $extra_spec['OP_DATA'] : "ANY"],
796 $op_data_free_op[isset($extra_spec['OP_DATA']) ? $extra_spec['OP_DATA'] : "ANY"],
797 $op_data_free_unfetched[isset($extra_spec['OP_DATA']) ? $extra_spec['OP_DATA'] : "ANY"],
798 isset($extra_spec['RETVAL']) ? $extra_spec['RETVAL'] : "RETURN_VALUE_USED(opline)",
799 isset($extra_spec['QUICK_ARG']) ? $extra_spec['QUICK_ARG'] : "arg_num <= MAX_ARG_FLAG_NUM",
800 isset($extra_spec['SMART_BRANCH']) ?
801 ($extra_spec['SMART_BRANCH'] == 1 ?
803 : ($extra_spec['SMART_BRANCH'] == 2 ?
806 isset($extra_spec['DIM_OBJ']) ?
807 ($extra_spec['DIM_OBJ'] == 0 ? "1" : "0")
809 isset($extra_spec['DIM_OBJ']) ?
810 ($extra_spec['DIM_OBJ'] == 1 ? "1" : "0")
812 isset($extra_spec['DIM_OBJ']) ?
813 ($extra_spec['DIM_OBJ'] == 2 ? "1" : "0")
945 function gen_handler($f, $spec, $kind, $name, $op1, $op2, $use, $code, $lineno, $extra_spec = null,… argument
949 isset($extra_spec["NO_CONST_CONST"]) &&
956 isset($extra_spec["COMMUTATIVE"]) &&
963 isset($extra_spec["DIM_OBJ"]) &&
964 (($op2 == "UNUSED" && $extra_spec["DIM_OBJ"] != 1) ||
965 ($op1 == "UNUSED" && $extra_spec["DIM_OBJ"] != 2))) {
975 …ame = $name.($spec?"_SPEC":"").$prefix[$op1].$prefix[$op2].($spec?extra_spec_name($extra_spec):"");
1001 gen_code($f, $spec, $kind, 0, $code, $op1, $op2, $name, $extra_spec);
1144 return function($op1, $op2, $extra_spec = array()) use ($do, $dsc, $op_types) {
1165 $do($op1, $op2, array("OP_DATA" => $op_data) + $extra_spec);
1171 return function($op1, $op2, $extra_spec = array()) use ($do, $spec, $dsc) {
1173 $do($op1, $op2, array($spec => $val) + $extra_spec);
1177 …$generate = function ($op1, $op2, $extra_spec = array()) use ($f, $kind, $dsc, $prefix, $prolog, $…
1184 … (!isset($extra_spec["OP_DATA"]) || isset($dsc["spec"]["OP_DATA"][$extra_spec["OP_DATA"]]))) {
1186 if (isset($extra_spec["NO_CONST_CONST"]) &&
1192 } else if (isset($extra_spec["COMMUTATIVE"]) &&
1198 } else if (isset($extra_spec["DIM_OBJ"]) &&
1199 (($op2 == "UNUSED" && $extra_spec["DIM_OBJ"] != 1) ||
1200 ($op1 == "UNUSED" && $extra_spec["DIM_OBJ"] != 2))) {
1208 $spec_name = $dsc["op"]."_SPEC".$prefix[$op1].$prefix[$op2].extra_spec_name($extra_spec);
1352 function extra_spec_name($extra_spec) { argument
1356 if (isset($extra_spec["OP_DATA"])) {
1357 $s .= "_OP_DATA" . $prefix[$extra_spec["OP_DATA"]];
1359 if (isset($extra_spec["RETVAL"])) {
1360 $s .= "_RETVAL_".($extra_spec["RETVAL"] ? "USED" : "UNUSED");
1362 if (isset($extra_spec["QUICK_ARG"])) {
1363 if ($extra_spec["QUICK_ARG"]) {
1367 if (isset($extra_spec["SMART_BRANCH"])) {
1368 if ($extra_spec["SMART_BRANCH"] == 1) {
1370 } else if ($extra_spec["SMART_BRANCH"] == 2) {
1374 if (isset($extra_spec["DIM_OBJ"])) {
1375 if ($extra_spec["DIM_OBJ"] == 1) {
1377 } else if ($extra_spec["DIM_OBJ"] == 2) {
1384 function extra_spec_flags($extra_spec) { argument
1386 if (isset($extra_spec["OP_DATA"])) {
1389 if (isset($extra_spec["RETVAL"])) {
1392 if (isset($extra_spec["QUICK_ARG"])) {
1395 if (isset($extra_spec["SMART_BRANCH"])) {
1398 if (isset($extra_spec["DIM_OBJ"])) {
1457 foreach (extra_spec_handler($opcodes[$num]) as $extra_spec) {
1462 … $op2, isset($opcodes[$num]["use"]), $opcodes[$num]["code"], $lineno, $extra_spec, $switch_labels);