TypedValue* fg_mssql_free_result(HPHP::VM::ActRec *ar) { TypedValue rv; long long count = ar->numArgs(); TypedValue* args UNUSED = ((TypedValue*)ar) - 1; if (count <= 1LL) { Variant defVal0; fh_mssql_free_result((&(rv)), (count > 0) ? (args-0) : (TypedValue*)(&defVal0)); if (rv.m_type == KindOfUninit) rv.m_type = KindOfNull; frame_free_locals_no_this_inl(ar, 1); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; } else { throw_toomany_arguments_nr("mssql_free_result", 1, 1); } rv.m_data.num = 0LL; rv._count = 0; rv.m_type = KindOfNull; frame_free_locals_no_this_inl(ar, 1); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; return &ar->m_r; }
TypedValue* fg_furchash_hphp_ext_supported(HPHP::VM::ActRec *ar) { TypedValue rv; int64_t count = ar->numArgs(); TypedValue* args UNUSED = ((TypedValue*)ar) - 1; if (count == 0LL) { rv._count = 0; rv.m_type = KindOfBoolean; rv.m_data.num = (fh_furchash_hphp_ext_supported()) ? 1LL : 0LL; frame_free_locals_no_this_inl(ar, 0); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; } else { throw_toomany_arguments_nr("furchash_hphp_ext_supported", 0, 1); } rv.m_data.num = 0LL; rv._count = 0; rv.m_type = KindOfNull; frame_free_locals_no_this_inl(ar, 0); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; return &ar->m_r; }
TypedValue* fg_apd_continue(HPHP::VM::ActRec *ar) { TypedValue rv; long long count = ar->numArgs(); TypedValue* args UNUSED = ((TypedValue*)ar) - 1; if (count == 0LL) { rv._count = 0; rv.m_type = KindOfBoolean; rv.m_data.num = (fh_apd_continue()) ? 1LL : 0LL; frame_free_locals_no_this_inl(ar, 0); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; } else { throw_toomany_arguments_nr("apd_continue", 0, 1); } rv.m_data.num = 0LL; rv._count = 0; rv.m_type = KindOfNull; frame_free_locals_no_this_inl(ar, 0); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; return &ar->m_r; }
TypedValue* fg_hphp_get_class_constant(HPHP::VM::ActRec *ar) { EXCEPTION_GATE_ENTER(); TypedValue rv; long long count = ar->numArgs(); TypedValue* args UNUSED = ((TypedValue*)ar) - 1; if (count == 2LL) { fh_hphp_get_class_constant((&(rv)), (args-0), (args-1)); if (rv.m_type == KindOfUninit) rv.m_type = KindOfNull; frame_free_locals_no_this_inl(ar, 2); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; } else { throw_wrong_arguments_nr("hphp_get_class_constant", count, 2, 2, 1); } rv.m_data.num = 0LL; rv._count = 0; rv.m_type = KindOfNull; frame_free_locals_no_this_inl(ar, 2); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; EXCEPTION_GATE_RETURN(&ar->m_r); }
TypedValue* fg_hphp_instruction_counter(HPHP::VM::ActRec *ar) { TypedValue rv; long long count = ar->numArgs(); TypedValue* args UNUSED = ((TypedValue*)ar) - 1; if (count == 0LL) { rv._count = 0; rv.m_type = KindOfInt64; rv.m_data.num = (long long)fh_hphp_instruction_counter(); frame_free_locals_no_this_inl(ar, 0); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; } else { throw_toomany_arguments_nr("hphp_instruction_counter", 0, 1); } rv.m_data.num = 0LL; rv._count = 0; rv.m_type = KindOfNull; frame_free_locals_no_this_inl(ar, 0); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; return &ar->m_r; }
TypedValue* fg_spl_autoload_unregister(HPHP::VM::ActRec *ar) { TypedValue rv; int64_t count = ar->numArgs(); TypedValue* args UNUSED = ((TypedValue*)ar) - 1; if (count == 1LL) { rv._count = 0; rv.m_type = KindOfBoolean; rv.m_data.num = (fh_spl_autoload_unregister((args-0))) ? 1LL : 0LL; frame_free_locals_no_this_inl(ar, 1); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; } else { throw_wrong_arguments_nr("spl_autoload_unregister", count, 1, 1, 1); } rv.m_data.num = 0LL; rv._count = 0; rv.m_type = KindOfNull; frame_free_locals_no_this_inl(ar, 1); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; return &ar->m_r; }
TypedValue* fg_hphp_get_hardware_counters(HPHP::VM::ActRec *ar) { EXCEPTION_GATE_ENTER(); TypedValue rv; long long count = ar->numArgs(); TypedValue* args UNUSED = ((TypedValue*)ar) - 1; if (count == 0LL) { fh_hphp_get_hardware_counters((&(rv))); if (rv.m_type == KindOfUninit) rv.m_type = KindOfNull; frame_free_locals_no_this_inl(ar, 0); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; } else { throw_toomany_arguments_nr("hphp_get_hardware_counters", 0, 1); } rv.m_data.num = 0LL; rv._count = 0; rv.m_type = KindOfNull; frame_free_locals_no_this_inl(ar, 0); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; EXCEPTION_GATE_RETURN(&ar->m_r); }
TypedValue* fg_fb_setprofile(HPHP::VM::ActRec *ar) { TypedValue rv; int64_t count = ar->numArgs(); TypedValue* args UNUSED = ((TypedValue*)ar) - 1; if (count == 1LL) { rv.m_data.num = 0LL; rv._count = 0; rv.m_type = KindOfNull; fh_fb_setprofile((args-0)); frame_free_locals_no_this_inl(ar, 1); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; } else { throw_wrong_arguments_nr("fb_setprofile", count, 1, 1, 1); } rv.m_data.num = 0LL; rv._count = 0; rv.m_type = KindOfNull; frame_free_locals_no_this_inl(ar, 1); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; return &ar->m_r; }
TypedValue* fg_asio_exit_context(HPHP::VM::ActRec *ar) { TypedValue rv; int64_t count = ar->numArgs(); TypedValue* args UNUSED = ((TypedValue*)ar) - 1; if (count == 0LL) { rv.m_data.num = 0LL; rv._count = 0; rv.m_type = KindOfNull; fh_asio_exit_context(); frame_free_locals_no_this_inl(ar, 0); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; } else { throw_toomany_arguments_nr("asio_exit_context", 0, 1); } rv.m_data.num = 0LL; rv._count = 0; rv.m_type = KindOfNull; frame_free_locals_no_this_inl(ar, 0); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; return &ar->m_r; }
TypedValue* fg_mssql_close(HPHP::VM::ActRec *ar) { TypedValue rv; long long count = ar->numArgs(); TypedValue* args UNUSED = ((TypedValue*)ar) - 1; if (count <= 1LL) { rv._count = 0; rv.m_type = KindOfBoolean; Variant defVal0; rv.m_data.num = (fh_mssql_close((count > 0) ? (args-0) : (TypedValue*)(&defVal0))) ? 1LL : 0LL; frame_free_locals_no_this_inl(ar, 1); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; } else { throw_toomany_arguments_nr("mssql_close", 1, 1); } rv.m_data.num = 0LL; rv._count = 0; rv.m_type = KindOfNull; frame_free_locals_no_this_inl(ar, 1); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; return &ar->m_r; }
TypedValue* fg_pcntl_fork(HPHP::VM::ActRec *ar) { EXCEPTION_GATE_ENTER(); TypedValue rv; long long count = ar->numArgs(); TypedValue* args UNUSED = ((TypedValue*)ar) - 1; if (count == 0LL) { rv._count = 0; rv.m_type = KindOfInt64; rv.m_data.num = (long long)fh_pcntl_fork(); frame_free_locals_no_this_inl(ar, 0); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; } else { throw_toomany_arguments_nr("pcntl_fork", 0, 1); } rv.m_data.num = 0LL; rv._count = 0; rv.m_type = KindOfNull; frame_free_locals_no_this_inl(ar, 0); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; EXCEPTION_GATE_RETURN(&ar->m_r); }
TypedValue* tg_12DateTimeZone_listIdentifiers(HPHP::VM::ActRec *ar) { TypedValue rv; long long count = ar->numArgs(); TypedValue* args UNUSED = ((TypedValue*)ar) - 1; if (count == 0LL) { rv._count = 0; rv.m_type = KindOfArray; th_12DateTimeZone_listIdentifiers((Value*)(&(rv)), ("DateTimeZone")); if (rv.m_data.num == 0LL) rv.m_type = KindOfNull; frame_free_locals_no_this_inl(ar, 0); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; } else { throw_toomany_arguments_nr("DateTimeZone::listIdentifiers", 0, 1); } rv.m_data.num = 0LL; rv._count = 0; rv.m_type = KindOfNull; frame_free_locals_no_this_inl(ar, 0); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; return &ar->m_r; }
TypedValue* fg_posix_isatty(HPHP::VM::ActRec *ar) { EXCEPTION_GATE_ENTER(); TypedValue rv; long long count = ar->numArgs(); TypedValue* args UNUSED = ((TypedValue*)ar) - 1; if (count == 1LL) { rv._count = 0; rv.m_type = KindOfBoolean; rv.m_data.num = (fh_posix_isatty((args-0))) ? 1LL : 0LL; frame_free_locals_no_this_inl(ar, 1); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; } else { throw_wrong_arguments_nr("posix_isatty", count, 1, 1, 1); } rv.m_data.num = 0LL; rv._count = 0; rv.m_type = KindOfNull; frame_free_locals_no_this_inl(ar, 1); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; EXCEPTION_GATE_RETURN(&ar->m_r); }
TypedValue* fg_hphp_get_status(HPHP::VM::ActRec *ar) { TypedValue rv; int64_t count = ar->numArgs(); TypedValue* args UNUSED = ((TypedValue*)ar) - 1; if (count == 0LL) { rv._count = 0; rv.m_type = KindOfArray; fh_hphp_get_status((Value*)(&(rv))); if (rv.m_data.num == 0LL) rv.m_type = KindOfNull; frame_free_locals_no_this_inl(ar, 0); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; } else { throw_toomany_arguments_nr("hphp_get_status", 0, 1); } rv.m_data.num = 0LL; rv._count = 0; rv.m_type = KindOfNull; frame_free_locals_no_this_inl(ar, 0); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; return &ar->m_r; }
TypedValue* fg_restore_exception_handler(HPHP::VM::ActRec *ar) { EXCEPTION_GATE_ENTER(); TypedValue rv; long long count = ar->numArgs(); TypedValue* args UNUSED = ((TypedValue*)ar) - 1; if (count == 0LL) { rv._count = 0; rv.m_type = KindOfBoolean; rv.m_data.num = (fh_restore_exception_handler()) ? 1LL : 0LL; frame_free_locals_no_this_inl(ar, 0); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; } else { throw_toomany_arguments_nr("restore_exception_handler", 0, 1); } rv.m_data.num = 0LL; rv._count = 0; rv.m_type = KindOfNull; frame_free_locals_no_this_inl(ar, 0); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; EXCEPTION_GATE_RETURN(&ar->m_r); }
TypedValue* fg_get_class_methods(HPHP::VM::ActRec *ar) { TypedValue rv; long long count = ar->numArgs(); TypedValue* args UNUSED = ((TypedValue*)ar) - 1; if (count == 1LL) { rv._count = 0; rv.m_type = KindOfArray; fh_get_class_methods((Value*)(&(rv)), (args-0)); if (rv.m_data.num == 0LL) rv.m_type = KindOfNull; frame_free_locals_no_this_inl(ar, 1); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; } else { throw_wrong_arguments_nr("get_class_methods", count, 1, 1, 1); } rv.m_data.num = 0LL; rv._count = 0; rv.m_type = KindOfNull; frame_free_locals_no_this_inl(ar, 1); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; return &ar->m_r; }
TypedValue* fg_var_dump(HPHP::VM::ActRec *ar) { EXCEPTION_GATE_ENTER(); TypedValue rv; long long count = ar->numArgs(); TypedValue* args UNUSED = ((TypedValue*)ar) - 1; if (count >= 1LL) { rv.m_data.num = 0LL; rv._count = 0; rv.m_type = KindOfNull; Array extraArgs; { ArrayInit ai(count-1, false); for (long long i = 1; i < count; ++i) { TypedValue* extraArg = ar->getExtraArg(i-1); if (tvIsStronglyBound(extraArg)) { ai.setRef(i-1, tvAsVariant(extraArg)); } else { ai.set(i-1, tvAsVariant(extraArg)); } } extraArgs = ai.create(); } fh_var_dump((count), (args-0), (Value*)(&extraArgs)); frame_free_locals_no_this_inl(ar, 1); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; } else { throw_missing_arguments_nr("var_dump", count+1, 1); } rv.m_data.num = 0LL; rv._count = 0; rv.m_type = KindOfNull; frame_free_locals_no_this_inl(ar, 1); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; EXCEPTION_GATE_RETURN(&ar->m_r); }
TypedValue* fg_error_reporting(HPHP::VM::ActRec *ar) { EXCEPTION_GATE_ENTER(); TypedValue rv; long long count = ar->numArgs(); TypedValue* args UNUSED = ((TypedValue*)ar) - 1; if (count <= 1LL) { rv._count = 0; rv.m_type = KindOfInt64; Variant defVal0; rv.m_data.num = (long long)fh_error_reporting((count > 0) ? (args-0) : (TypedValue*)(&defVal0)); frame_free_locals_no_this_inl(ar, 1); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; } else { throw_toomany_arguments_nr("error_reporting", 1, 1); } rv.m_data.num = 0LL; rv._count = 0; rv.m_type = KindOfNull; frame_free_locals_no_this_inl(ar, 1); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; EXCEPTION_GATE_RETURN(&ar->m_r); }
TypedValue* fg_error_get_last(HPHP::VM::ActRec *ar) { EXCEPTION_GATE_ENTER(); TypedValue rv; long long count = ar->numArgs(); TypedValue* args UNUSED = ((TypedValue*)ar) - 1; if (count == 0LL) { rv._count = 0; rv.m_type = KindOfArray; fh_error_get_last((Value*)(&(rv))); if (rv.m_data.num == 0LL) rv.m_type = KindOfNull; frame_free_locals_no_this_inl(ar, 0); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; } else { throw_toomany_arguments_nr("error_get_last", 0, 1); } rv.m_data.num = 0LL; rv._count = 0; rv.m_type = KindOfNull; frame_free_locals_no_this_inl(ar, 0); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; EXCEPTION_GATE_RETURN(&ar->m_r); }
TypedValue* fg_gettype(HPHP::VM::ActRec *ar) { EXCEPTION_GATE_ENTER(); TypedValue rv; long long count = ar->numArgs(); TypedValue* args UNUSED = ((TypedValue*)ar) - 1; if (count == 1LL) { rv._count = 0; rv.m_type = KindOfString; fh_gettype((Value*)(&(rv)), (args-0)); if (rv.m_data.num == 0LL) rv.m_type = KindOfNull; frame_free_locals_no_this_inl(ar, 1); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; } else { throw_wrong_arguments_nr("gettype", count, 1, 1, 1); } rv.m_data.num = 0LL; rv._count = 0; rv.m_type = KindOfNull; frame_free_locals_no_this_inl(ar, 1); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; EXCEPTION_GATE_RETURN(&ar->m_r); }
TypedValue* methodWrapper(ActRec* ar) { auto func = ar->m_func; auto numArgs = func->numParams(); auto numNonDefault = ar->numArgs(); bool isStatic = func->isStatic(); assert(!func->hasVariadicCaptureParam()); TypedValue* args = ((TypedValue*)ar) - 1; TypedValue rv; rv.m_type = KindOfNull; if (LIKELY(numNonDefault == numArgs) || LIKELY(nativeWrapperCheckArgs(ar))) { if (coerceFCallArgs(args, numArgs, numNonDefault, func)) { // Prepend a context arg for methods // KindOfClass when it's being called statically Foo::bar() // KindOfObject when it's being called on an instance $foo->bar() TypedValue ctx; if (ar->hasThis()) { if (isStatic) { throw_instance_method_fatal(getInvokeName(ar)->data()); } ctx.m_type = KindOfObject; ctx.m_data.pobj = ar->getThis(); } else { if (!isStatic) { throw_instance_method_fatal(getInvokeName(ar)->data()); } ctx.m_type = KindOfClass; ctx.m_data.pcls = const_cast<Class*>(ar->getClass()); } callFunc(func, &ctx, args, numArgs, rv); } else if (func->attrs() & AttrParamCoerceModeFalse) { rv.m_type = KindOfBoolean; rv.m_data.num = 0; } } assert(rv.m_type != KindOfUninit); if (isStatic) { frame_free_locals_no_this_inl(ar, func->numLocals(), &rv); } else { frame_free_locals_inl(ar, func->numLocals(), &rv); } tvCopy(rv, ar->m_r); return &ar->m_r; }
TypedValue* fg_posix_isatty(ActRec* ar) { TypedValue rvSpace; TypedValue* rv = &rvSpace; int32_t count = ar->numArgs(); TypedValue* args UNUSED = ((TypedValue*)ar) - 1; if (count == 1) { rv->m_type = KindOfBoolean; rv->m_data.num = (fh_posix_isatty((args-0))) ? 1LL : 0LL; } else { throw_wrong_arguments_nr("posix_isatty", count, 1, 1, 1); rv->m_data.num = 0LL; rv->m_type = KindOfNull; } frame_free_locals_no_this_inl(ar, 1); memcpy(&ar->m_r, rv, sizeof(TypedValue)); return &ar->m_r; }
TypedValue* fg_apd_continue(ActRec* ar) { TypedValue rvSpace; TypedValue* rv = &rvSpace; int32_t count = ar->numArgs(); TypedValue* args UNUSED = ((TypedValue*)ar) - 1; if (count == 0) { rv->m_type = KindOfBoolean; rv->m_data.num = (fh_apd_continue()) ? 1LL : 0LL; } else { throw_toomany_arguments_nr("apd_continue", 0, 1); rv->m_data.num = 0LL; rv->m_type = KindOfNull; } frame_free_locals_no_this_inl(ar, 0); memcpy(&ar->m_r, rv, sizeof(TypedValue)); return &ar->m_r; }
TypedValue* fg_func_num_args(ActRec* ar) { TypedValue rvSpace; TypedValue* rv = &rvSpace; int32_t count = ar->numArgs(); TypedValue* args UNUSED = ((TypedValue*)ar) - 1; if (count == 0) { rv->m_type = KindOfInt64; rv->m_data.num = (int64_t)fh_func_num_args(); } else { throw_toomany_arguments_nr("func_num_args", 0, 1); rv->m_data.num = 0LL; rv->m_type = KindOfNull; } frame_free_locals_no_this_inl(ar, 0); memcpy(&ar->m_r, rv, sizeof(TypedValue)); return &ar->m_r; }
TypedValue* fg_asio_set_on_started_callback(ActRec* ar) { TypedValue rvSpace; TypedValue* rv = &rvSpace; int32_t count = ar->numArgs(); TypedValue* args UNUSED = ((TypedValue*)ar) - 1; if (count == 1) { rv->m_type = KindOfNull; fh_asio_set_on_started_callback((args-0)); } else { throw_wrong_arguments_nr("asio_set_on_started_callback", count, 1, 1, 1); rv->m_data.num = 0LL; rv->m_type = KindOfNull; } frame_free_locals_no_this_inl(ar, 1); memcpy(&ar->m_r, rv, sizeof(TypedValue)); return &ar->m_r; }
TypedValue* fg_hphp_service_thread_started(ActRec* ar) { TypedValue rvSpace; TypedValue* rv = &rvSpace; int32_t count = ar->numArgs(); TypedValue* args UNUSED = ((TypedValue*)ar) - 1; if (count == 0) { rv->m_type = KindOfNull; fh_hphp_service_thread_started(); } else { throw_toomany_arguments_nr("hphp_service_thread_started", 0, 1); rv->m_data.num = 0LL; rv->m_type = KindOfNull; } frame_free_locals_no_this_inl(ar, 0); memcpy(&ar->m_r, rv, sizeof(TypedValue)); return &ar->m_r; }
TypedValue* fg_get_called_class(ActRec* ar) { TypedValue rvSpace; TypedValue* rv = &rvSpace; int32_t count = ar->numArgs(); TypedValue* args UNUSED = ((TypedValue*)ar) - 1; if (count == 0) { fh_get_called_class(rv); if (rv->m_type == KindOfUninit) rv->m_type = KindOfNull; } else { throw_toomany_arguments_nr("get_called_class", 0, 1); rv->m_data.num = 0LL; rv->m_type = KindOfNull; } frame_free_locals_no_this_inl(ar, 0); memcpy(&ar->m_r, rv, sizeof(TypedValue)); return &ar->m_r; }
TypedValue* fg_exit(ActRec* ar) { TypedValue rvSpace; TypedValue* rv = &rvSpace; int32_t count = ar->numArgs(); TypedValue* args UNUSED = ((TypedValue*)ar) - 1; if (count <= 1) { fh_exit(rv, (count > 0) ? (args-0) : (TypedValue*)(&null_variant)); if (rv->m_type == KindOfUninit) rv->m_type = KindOfNull; } else { throw_toomany_arguments_nr("exit", 1, 1); rv->m_data.num = 0LL; rv->m_type = KindOfNull; } frame_free_locals_no_this_inl(ar, 1); memcpy(&ar->m_r, rv, sizeof(TypedValue)); return &ar->m_r; }
TypedValue* fg_unregister_tick_function(ActRec* ar) { TypedValue rvSpace; TypedValue* rv = &rvSpace; int32_t count = ar->numArgs(); TypedValue* args UNUSED = ((TypedValue*)ar) - 1; if (count == 1) { rv->m_type = KindOfNull; fh_unregister_tick_function((args-0)); } else { throw_wrong_arguments_nr("unregister_tick_function", count, 1, 1, 1); rv->m_data.num = 0LL; rv->m_type = KindOfNull; } frame_free_locals_no_this_inl(ar, 1); memcpy(&ar->m_r, rv, sizeof(TypedValue)); return &ar->m_r; }
TypedValue* fg_hphp_process_abort(ActRec* ar) { TypedValue rvSpace; TypedValue* rv = &rvSpace; int32_t count = ar->numArgs(); TypedValue* args UNUSED = ((TypedValue*)ar) - 1; if (count == 1) { fh_hphp_process_abort(rv, (args-0)); if (rv->m_type == KindOfUninit) rv->m_type = KindOfNull; } else { throw_wrong_arguments_nr("hphp_process_abort", count, 1, 1, 1); rv->m_data.num = 0LL; rv->m_type = KindOfNull; } frame_free_locals_no_this_inl(ar, 1); memcpy(&ar->m_r, rv, sizeof(TypedValue)); return &ar->m_r; }