/* +----------------------------------------------------------------------+ | HipHop for PHP | +----------------------------------------------------------------------+ | Copyright (c) 2010- Facebook, Inc. (http://www.facebook.com) | | Copyright (c) 1997-2010 The PHP Group | +----------------------------------------------------------------------+ | This source file is subject to version 3.01 of the PHP license, | | that is bundled with this package in the file LICENSE, and is | | available through the world-wide-web at the following url: | | http://www.php.net/license/3_01.txt | | If you did not receive a copy of the PHP license and are unable to | | obtain it through the world-wide-web, please send a note to | | license@php.net so we can mail you a copy immediately. | +----------------------------------------------------------------------+ */ #include #include #include #include #include #include #include namespace HPHP { /* void HPHP::f_session_set_cookie_params(long, HPHP::String const&, HPHP::String const&, HPHP::Variant const&, HPHP::Variant const&) _ZN4HPHP27f_session_set_cookie_paramsElRKNS_6StringES2_RKNS_7VariantES5_ lifetime => rdi path => rsi domain => rdx secure => rcx httponly => r8 */ void fh_session_set_cookie_params(long lifetime, Value* path, Value* domain, TypedValue* secure, TypedValue* httponly) asm("_ZN4HPHP27f_session_set_cookie_paramsElRKNS_6StringES2_RKNS_7VariantES5_"); TypedValue * fg1_session_set_cookie_params(TypedValue* rv, HPHP::VM::ActRec* ar, int64_t count) __attribute__((noinline,cold)); TypedValue * fg1_session_set_cookie_params(TypedValue* rv, HPHP::VM::ActRec* ar, int64_t count) { TypedValue* args UNUSED = ((TypedValue*)ar) - 1; rv->m_data.num = 0LL; rv->m_type = KindOfNull; switch (count) { default: // count >= 5 case 4: case 3: if (!IS_STRING_TYPE((args-2)->m_type)) { tvCastToStringInPlace(args-2); } case 2: if (!IS_STRING_TYPE((args-1)->m_type)) { tvCastToStringInPlace(args-1); } case 1: break; } if ((args-0)->m_type != KindOfInt64) { tvCastToInt64InPlace(args-0); } Variant defVal3; Variant defVal4; fh_session_set_cookie_params((long)(args[-0].m_data.num), (count > 1) ? &args[-1].m_data : (Value*)(&null_string), (count > 2) ? &args[-2].m_data : (Value*)(&null_string), (count > 3) ? (args-3) : (TypedValue*)(&defVal3), (count > 4) ? (args-4) : (TypedValue*)(&defVal4)); return rv; } TypedValue* fg_session_set_cookie_params(HPHP::VM::ActRec *ar) { TypedValue rv; int64_t count = ar->numArgs(); TypedValue* args UNUSED = ((TypedValue*)ar) - 1; if (count >= 1LL && count <= 5LL) { if ((count <= 2 || IS_STRING_TYPE((args-2)->m_type)) && (count <= 1 || IS_STRING_TYPE((args-1)->m_type)) && (args-0)->m_type == KindOfInt64) { rv.m_data.num = 0LL; rv.m_type = KindOfNull; Variant defVal3; Variant defVal4; fh_session_set_cookie_params((long)(args[-0].m_data.num), (count > 1) ? &args[-1].m_data : (Value*)(&null_string), (count > 2) ? &args[-2].m_data : (Value*)(&null_string), (count > 3) ? (args-3) : (TypedValue*)(&defVal3), (count > 4) ? (args-4) : (TypedValue*)(&defVal4)); frame_free_locals_no_this_inl(ar, 5); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; } else { fg1_session_set_cookie_params(&rv, ar, count); frame_free_locals_no_this_inl(ar, 5); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; } } else { throw_wrong_arguments_nr("session_set_cookie_params", count, 1, 5, 1); } rv.m_data.num = 0LL; rv.m_type = KindOfNull; frame_free_locals_no_this_inl(ar, 5); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; return &ar->m_r; } /* HPHP::Array HPHP::f_session_get_cookie_params() _ZN4HPHP27f_session_get_cookie_paramsEv (return value) => rax _rv => rdi */ Value* fh_session_get_cookie_params(Value* _rv) asm("_ZN4HPHP27f_session_get_cookie_paramsEv"); TypedValue* fg_session_get_cookie_params(HPHP::VM::ActRec *ar) { TypedValue rv; int64_t count = ar->numArgs(); TypedValue* args UNUSED = ((TypedValue*)ar) - 1; if (count == 0LL) { rv.m_type = KindOfArray; fh_session_get_cookie_params((&rv.m_data)); 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("session_get_cookie_params", 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; return &ar->m_r; } /* HPHP::String HPHP::f_session_name(HPHP::String const&) _ZN4HPHP14f_session_nameERKNS_6StringE (return value) => rax _rv => rdi newname => rsi */ Value* fh_session_name(Value* _rv, Value* newname) asm("_ZN4HPHP14f_session_nameERKNS_6StringE"); TypedValue * fg1_session_name(TypedValue* rv, HPHP::VM::ActRec* ar, int64_t count) __attribute__((noinline,cold)); TypedValue * fg1_session_name(TypedValue* rv, HPHP::VM::ActRec* ar, int64_t count) { TypedValue* args UNUSED = ((TypedValue*)ar) - 1; rv->m_type = KindOfString; tvCastToStringInPlace(args-0); fh_session_name((&rv->m_data), (count > 0) ? &args[-0].m_data : (Value*)(&null_string)); if (rv->m_data.num == 0LL) rv->m_type = KindOfNull; return rv; } TypedValue* fg_session_name(HPHP::VM::ActRec *ar) { TypedValue rv; int64_t count = ar->numArgs(); TypedValue* args UNUSED = ((TypedValue*)ar) - 1; if (count <= 1LL) { if ((count <= 0 || IS_STRING_TYPE((args-0)->m_type))) { rv.m_type = KindOfString; fh_session_name((&rv.m_data), (count > 0) ? &args[-0].m_data : (Value*)(&null_string)); 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 { fg1_session_name(&rv, ar, count); frame_free_locals_no_this_inl(ar, 1); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; } } else { throw_toomany_arguments_nr("session_name", 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; return &ar->m_r; } /* HPHP::Variant HPHP::f_session_module_name(HPHP::String const&) _ZN4HPHP21f_session_module_nameERKNS_6StringE (return value) => rax _rv => rdi newname => rsi */ TypedValue* fh_session_module_name(TypedValue* _rv, Value* newname) asm("_ZN4HPHP21f_session_module_nameERKNS_6StringE"); TypedValue * fg1_session_module_name(TypedValue* rv, HPHP::VM::ActRec* ar, int64_t count) __attribute__((noinline,cold)); TypedValue * fg1_session_module_name(TypedValue* rv, HPHP::VM::ActRec* ar, int64_t count) { TypedValue* args UNUSED = ((TypedValue*)ar) - 1; tvCastToStringInPlace(args-0); fh_session_module_name((rv), (count > 0) ? &args[-0].m_data : (Value*)(&null_string)); if (rv->m_type == KindOfUninit) rv->m_type = KindOfNull; return rv; } TypedValue* fg_session_module_name(HPHP::VM::ActRec *ar) { TypedValue rv; int64_t count = ar->numArgs(); TypedValue* args UNUSED = ((TypedValue*)ar) - 1; if (count <= 1LL) { if ((count <= 0 || IS_STRING_TYPE((args-0)->m_type))) { fh_session_module_name((&(rv)), (count > 0) ? &args[-0].m_data : (Value*)(&null_string)); 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 { fg1_session_module_name(&rv, ar, count); frame_free_locals_no_this_inl(ar, 1); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; } } else { throw_toomany_arguments_nr("session_module_name", 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; return &ar->m_r; } /* bool HPHP::f_session_set_save_handler(HPHP::String const&, HPHP::String const&, HPHP::String const&, HPHP::String const&, HPHP::String const&, HPHP::String const&) _ZN4HPHP26f_session_set_save_handlerERKNS_6StringES2_S2_S2_S2_S2_ (return value) => rax open => rdi close => rsi read => rdx write => rcx destroy => r8 gc => r9 */ bool fh_session_set_save_handler(Value* open, Value* close, Value* read, Value* write, Value* destroy, Value* gc) asm("_ZN4HPHP26f_session_set_save_handlerERKNS_6StringES2_S2_S2_S2_S2_"); TypedValue * fg1_session_set_save_handler(TypedValue* rv, HPHP::VM::ActRec* ar, int64_t count) __attribute__((noinline,cold)); TypedValue * fg1_session_set_save_handler(TypedValue* rv, HPHP::VM::ActRec* ar, int64_t count) { TypedValue* args UNUSED = ((TypedValue*)ar) - 1; rv->m_type = KindOfBoolean; if (!IS_STRING_TYPE((args-5)->m_type)) { tvCastToStringInPlace(args-5); } if (!IS_STRING_TYPE((args-4)->m_type)) { tvCastToStringInPlace(args-4); } if (!IS_STRING_TYPE((args-3)->m_type)) { tvCastToStringInPlace(args-3); } if (!IS_STRING_TYPE((args-2)->m_type)) { tvCastToStringInPlace(args-2); } if (!IS_STRING_TYPE((args-1)->m_type)) { tvCastToStringInPlace(args-1); } if (!IS_STRING_TYPE((args-0)->m_type)) { tvCastToStringInPlace(args-0); } rv->m_data.num = (fh_session_set_save_handler(&args[-0].m_data, &args[-1].m_data, &args[-2].m_data, &args[-3].m_data, &args[-4].m_data, &args[-5].m_data)) ? 1LL : 0LL; return rv; } TypedValue* fg_session_set_save_handler(HPHP::VM::ActRec *ar) { TypedValue rv; int64_t count = ar->numArgs(); TypedValue* args UNUSED = ((TypedValue*)ar) - 1; if (count == 6LL) { if (IS_STRING_TYPE((args-5)->m_type) && IS_STRING_TYPE((args-4)->m_type) && IS_STRING_TYPE((args-3)->m_type) && IS_STRING_TYPE((args-2)->m_type) && IS_STRING_TYPE((args-1)->m_type) && IS_STRING_TYPE((args-0)->m_type)) { rv.m_type = KindOfBoolean; rv.m_data.num = (fh_session_set_save_handler(&args[-0].m_data, &args[-1].m_data, &args[-2].m_data, &args[-3].m_data, &args[-4].m_data, &args[-5].m_data)) ? 1LL : 0LL; frame_free_locals_no_this_inl(ar, 6); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; } else { fg1_session_set_save_handler(&rv, ar, count); frame_free_locals_no_this_inl(ar, 6); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; } } else { throw_wrong_arguments_nr("session_set_save_handler", count, 6, 6, 1); } rv.m_data.num = 0LL; rv.m_type = KindOfNull; frame_free_locals_no_this_inl(ar, 6); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; return &ar->m_r; } /* HPHP::String HPHP::f_session_save_path(HPHP::String const&) _ZN4HPHP19f_session_save_pathERKNS_6StringE (return value) => rax _rv => rdi newname => rsi */ Value* fh_session_save_path(Value* _rv, Value* newname) asm("_ZN4HPHP19f_session_save_pathERKNS_6StringE"); TypedValue * fg1_session_save_path(TypedValue* rv, HPHP::VM::ActRec* ar, int64_t count) __attribute__((noinline,cold)); TypedValue * fg1_session_save_path(TypedValue* rv, HPHP::VM::ActRec* ar, int64_t count) { TypedValue* args UNUSED = ((TypedValue*)ar) - 1; rv->m_type = KindOfString; tvCastToStringInPlace(args-0); fh_session_save_path((&rv->m_data), (count > 0) ? &args[-0].m_data : (Value*)(&null_string)); if (rv->m_data.num == 0LL) rv->m_type = KindOfNull; return rv; } TypedValue* fg_session_save_path(HPHP::VM::ActRec *ar) { TypedValue rv; int64_t count = ar->numArgs(); TypedValue* args UNUSED = ((TypedValue*)ar) - 1; if (count <= 1LL) { if ((count <= 0 || IS_STRING_TYPE((args-0)->m_type))) { rv.m_type = KindOfString; fh_session_save_path((&rv.m_data), (count > 0) ? &args[-0].m_data : (Value*)(&null_string)); 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 { fg1_session_save_path(&rv, ar, count); frame_free_locals_no_this_inl(ar, 1); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; } } else { throw_toomany_arguments_nr("session_save_path", 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; return &ar->m_r; } /* HPHP::String HPHP::f_session_id(HPHP::String const&) _ZN4HPHP12f_session_idERKNS_6StringE (return value) => rax _rv => rdi newid => rsi */ Value* fh_session_id(Value* _rv, Value* newid) asm("_ZN4HPHP12f_session_idERKNS_6StringE"); TypedValue * fg1_session_id(TypedValue* rv, HPHP::VM::ActRec* ar, int64_t count) __attribute__((noinline,cold)); TypedValue * fg1_session_id(TypedValue* rv, HPHP::VM::ActRec* ar, int64_t count) { TypedValue* args UNUSED = ((TypedValue*)ar) - 1; rv->m_type = KindOfString; tvCastToStringInPlace(args-0); fh_session_id((&rv->m_data), (count > 0) ? &args[-0].m_data : (Value*)(&null_string)); if (rv->m_data.num == 0LL) rv->m_type = KindOfNull; return rv; } TypedValue* fg_session_id(HPHP::VM::ActRec *ar) { TypedValue rv; int64_t count = ar->numArgs(); TypedValue* args UNUSED = ((TypedValue*)ar) - 1; if (count <= 1LL) { if ((count <= 0 || IS_STRING_TYPE((args-0)->m_type))) { rv.m_type = KindOfString; fh_session_id((&rv.m_data), (count > 0) ? &args[-0].m_data : (Value*)(&null_string)); 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 { fg1_session_id(&rv, ar, count); frame_free_locals_no_this_inl(ar, 1); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; } } else { throw_toomany_arguments_nr("session_id", 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; return &ar->m_r; } /* bool HPHP::f_session_regenerate_id(bool) _ZN4HPHP23f_session_regenerate_idEb (return value) => rax delete_old_session => rdi */ bool fh_session_regenerate_id(bool delete_old_session) asm("_ZN4HPHP23f_session_regenerate_idEb"); TypedValue * fg1_session_regenerate_id(TypedValue* rv, HPHP::VM::ActRec* ar, int64_t count) __attribute__((noinline,cold)); TypedValue * fg1_session_regenerate_id(TypedValue* rv, HPHP::VM::ActRec* ar, int64_t count) { TypedValue* args UNUSED = ((TypedValue*)ar) - 1; rv->m_type = KindOfBoolean; tvCastToBooleanInPlace(args-0); rv->m_data.num = (fh_session_regenerate_id((count > 0) ? (bool)(args[-0].m_data.num) : (bool)(false))) ? 1LL : 0LL; return rv; } TypedValue* fg_session_regenerate_id(HPHP::VM::ActRec *ar) { TypedValue rv; int64_t count = ar->numArgs(); TypedValue* args UNUSED = ((TypedValue*)ar) - 1; if (count <= 1LL) { if ((count <= 0 || (args-0)->m_type == KindOfBoolean)) { rv.m_type = KindOfBoolean; rv.m_data.num = (fh_session_regenerate_id((count > 0) ? (bool)(args[-0].m_data.num) : (bool)(false))) ? 1LL : 0LL; frame_free_locals_no_this_inl(ar, 1); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; } else { fg1_session_regenerate_id(&rv, ar, count); frame_free_locals_no_this_inl(ar, 1); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; } } else { throw_toomany_arguments_nr("session_regenerate_id", 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; return &ar->m_r; } /* HPHP::String HPHP::f_session_cache_limiter(HPHP::String const&) _ZN4HPHP23f_session_cache_limiterERKNS_6StringE (return value) => rax _rv => rdi new_cache_limiter => rsi */ Value* fh_session_cache_limiter(Value* _rv, Value* new_cache_limiter) asm("_ZN4HPHP23f_session_cache_limiterERKNS_6StringE"); TypedValue * fg1_session_cache_limiter(TypedValue* rv, HPHP::VM::ActRec* ar, int64_t count) __attribute__((noinline,cold)); TypedValue * fg1_session_cache_limiter(TypedValue* rv, HPHP::VM::ActRec* ar, int64_t count) { TypedValue* args UNUSED = ((TypedValue*)ar) - 1; rv->m_type = KindOfString; tvCastToStringInPlace(args-0); fh_session_cache_limiter((&rv->m_data), (count > 0) ? &args[-0].m_data : (Value*)(&null_string)); if (rv->m_data.num == 0LL) rv->m_type = KindOfNull; return rv; } TypedValue* fg_session_cache_limiter(HPHP::VM::ActRec *ar) { TypedValue rv; int64_t count = ar->numArgs(); TypedValue* args UNUSED = ((TypedValue*)ar) - 1; if (count <= 1LL) { if ((count <= 0 || IS_STRING_TYPE((args-0)->m_type))) { rv.m_type = KindOfString; fh_session_cache_limiter((&rv.m_data), (count > 0) ? &args[-0].m_data : (Value*)(&null_string)); 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 { fg1_session_cache_limiter(&rv, ar, count); frame_free_locals_no_this_inl(ar, 1); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; } } else { throw_toomany_arguments_nr("session_cache_limiter", 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; return &ar->m_r; } /* long HPHP::f_session_cache_expire(HPHP::String const&) _ZN4HPHP22f_session_cache_expireERKNS_6StringE (return value) => rax new_cache_expire => rdi */ long fh_session_cache_expire(Value* new_cache_expire) asm("_ZN4HPHP22f_session_cache_expireERKNS_6StringE"); TypedValue * fg1_session_cache_expire(TypedValue* rv, HPHP::VM::ActRec* ar, int64_t count) __attribute__((noinline,cold)); TypedValue * fg1_session_cache_expire(TypedValue* rv, HPHP::VM::ActRec* ar, int64_t count) { TypedValue* args UNUSED = ((TypedValue*)ar) - 1; rv->m_type = KindOfInt64; tvCastToStringInPlace(args-0); rv->m_data.num = (int64_t)fh_session_cache_expire((count > 0) ? &args[-0].m_data : (Value*)(&null_string)); return rv; } TypedValue* fg_session_cache_expire(HPHP::VM::ActRec *ar) { TypedValue rv; int64_t count = ar->numArgs(); TypedValue* args UNUSED = ((TypedValue*)ar) - 1; if (count <= 1LL) { if ((count <= 0 || IS_STRING_TYPE((args-0)->m_type))) { rv.m_type = KindOfInt64; rv.m_data.num = (int64_t)fh_session_cache_expire((count > 0) ? &args[-0].m_data : (Value*)(&null_string)); frame_free_locals_no_this_inl(ar, 1); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; } else { fg1_session_cache_expire(&rv, ar, count); frame_free_locals_no_this_inl(ar, 1); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; } } else { throw_toomany_arguments_nr("session_cache_expire", 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; return &ar->m_r; } /* HPHP::Variant HPHP::f_session_encode() _ZN4HPHP16f_session_encodeEv (return value) => rax _rv => rdi */ TypedValue* fh_session_encode(TypedValue* _rv) asm("_ZN4HPHP16f_session_encodeEv"); TypedValue* fg_session_encode(HPHP::VM::ActRec *ar) { TypedValue rv; int64_t count = ar->numArgs(); TypedValue* args UNUSED = ((TypedValue*)ar) - 1; if (count == 0LL) { fh_session_encode((&(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("session_encode", 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; return &ar->m_r; } /* bool HPHP::f_session_decode(HPHP::String const&) _ZN4HPHP16f_session_decodeERKNS_6StringE (return value) => rax data => rdi */ bool fh_session_decode(Value* data) asm("_ZN4HPHP16f_session_decodeERKNS_6StringE"); TypedValue * fg1_session_decode(TypedValue* rv, HPHP::VM::ActRec* ar, int64_t count) __attribute__((noinline,cold)); TypedValue * fg1_session_decode(TypedValue* rv, HPHP::VM::ActRec* ar, int64_t count) { TypedValue* args UNUSED = ((TypedValue*)ar) - 1; rv->m_type = KindOfBoolean; tvCastToStringInPlace(args-0); rv->m_data.num = (fh_session_decode(&args[-0].m_data)) ? 1LL : 0LL; return rv; } TypedValue* fg_session_decode(HPHP::VM::ActRec *ar) { TypedValue rv; int64_t count = ar->numArgs(); TypedValue* args UNUSED = ((TypedValue*)ar) - 1; if (count == 1LL) { if (IS_STRING_TYPE((args-0)->m_type)) { rv.m_type = KindOfBoolean; rv.m_data.num = (fh_session_decode(&args[-0].m_data)) ? 1LL : 0LL; frame_free_locals_no_this_inl(ar, 1); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; } else { fg1_session_decode(&rv, ar, count); frame_free_locals_no_this_inl(ar, 1); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; } } else { throw_wrong_arguments_nr("session_decode", 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; return &ar->m_r; } /* bool HPHP::f_session_start() _ZN4HPHP15f_session_startEv (return value) => rax */ bool fh_session_start() asm("_ZN4HPHP15f_session_startEv"); TypedValue* fg_session_start(HPHP::VM::ActRec *ar) { TypedValue rv; int64_t count = ar->numArgs(); TypedValue* args UNUSED = ((TypedValue*)ar) - 1; if (count == 0LL) { rv.m_type = KindOfBoolean; rv.m_data.num = (fh_session_start()) ? 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("session_start", 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; return &ar->m_r; } /* bool HPHP::f_session_destroy() _ZN4HPHP17f_session_destroyEv (return value) => rax */ bool fh_session_destroy() asm("_ZN4HPHP17f_session_destroyEv"); TypedValue* fg_session_destroy(HPHP::VM::ActRec *ar) { TypedValue rv; int64_t count = ar->numArgs(); TypedValue* args UNUSED = ((TypedValue*)ar) - 1; if (count == 0LL) { rv.m_type = KindOfBoolean; rv.m_data.num = (fh_session_destroy()) ? 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("session_destroy", 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; return &ar->m_r; } /* HPHP::Variant HPHP::f_session_unset() _ZN4HPHP15f_session_unsetEv (return value) => rax _rv => rdi */ TypedValue* fh_session_unset(TypedValue* _rv) asm("_ZN4HPHP15f_session_unsetEv"); TypedValue* fg_session_unset(HPHP::VM::ActRec *ar) { TypedValue rv; int64_t count = ar->numArgs(); TypedValue* args UNUSED = ((TypedValue*)ar) - 1; if (count == 0LL) { fh_session_unset((&(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("session_unset", 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; return &ar->m_r; } /* void HPHP::f_session_commit() _ZN4HPHP16f_session_commitEv */ void fh_session_commit() asm("_ZN4HPHP16f_session_commitEv"); TypedValue* fg_session_commit(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.m_type = KindOfNull; fh_session_commit(); frame_free_locals_no_this_inl(ar, 0); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; } else { throw_toomany_arguments_nr("session_commit", 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; return &ar->m_r; } /* void HPHP::f_session_write_close() _ZN4HPHP21f_session_write_closeEv */ void fh_session_write_close() asm("_ZN4HPHP21f_session_write_closeEv"); TypedValue* fg_session_write_close(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.m_type = KindOfNull; fh_session_write_close(); frame_free_locals_no_this_inl(ar, 0); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; } else { throw_toomany_arguments_nr("session_write_close", 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; return &ar->m_r; } /* bool HPHP::f_session_register(int, HPHP::Variant const&, HPHP::Array const&) _ZN4HPHP18f_session_registerEiRKNS_7VariantERKNS_5ArrayE (return value) => rax _argc => rdi var_names => rsi _argv => rdx */ bool fh_session_register(int64_t _argc, TypedValue* var_names, Value* _argv) asm("_ZN4HPHP18f_session_registerEiRKNS_7VariantERKNS_5ArrayE"); TypedValue* fg_session_register(HPHP::VM::ActRec *ar) { TypedValue rv; int64_t count = ar->numArgs(); TypedValue* args UNUSED = ((TypedValue*)ar) - 1; if (count >= 1LL) { rv.m_type = KindOfBoolean; Array extraArgs; { ArrayInit ai(count-1); for (int64_t 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(); } rv.m_data.num = (fh_session_register((count), (args-0), (Value*)(&extraArgs))) ? 1LL : 0LL; frame_free_locals_no_this_inl(ar, 1); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; } else { throw_missing_arguments_nr("session_register", count+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; return &ar->m_r; } /* bool HPHP::f_session_unregister(HPHP::String const&) _ZN4HPHP20f_session_unregisterERKNS_6StringE (return value) => rax varname => rdi */ bool fh_session_unregister(Value* varname) asm("_ZN4HPHP20f_session_unregisterERKNS_6StringE"); TypedValue * fg1_session_unregister(TypedValue* rv, HPHP::VM::ActRec* ar, int64_t count) __attribute__((noinline,cold)); TypedValue * fg1_session_unregister(TypedValue* rv, HPHP::VM::ActRec* ar, int64_t count) { TypedValue* args UNUSED = ((TypedValue*)ar) - 1; rv->m_type = KindOfBoolean; tvCastToStringInPlace(args-0); rv->m_data.num = (fh_session_unregister(&args[-0].m_data)) ? 1LL : 0LL; return rv; } TypedValue* fg_session_unregister(HPHP::VM::ActRec *ar) { TypedValue rv; int64_t count = ar->numArgs(); TypedValue* args UNUSED = ((TypedValue*)ar) - 1; if (count == 1LL) { if (IS_STRING_TYPE((args-0)->m_type)) { rv.m_type = KindOfBoolean; rv.m_data.num = (fh_session_unregister(&args[-0].m_data)) ? 1LL : 0LL; frame_free_locals_no_this_inl(ar, 1); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; } else { fg1_session_unregister(&rv, ar, count); frame_free_locals_no_this_inl(ar, 1); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; } } else { throw_wrong_arguments_nr("session_unregister", 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; return &ar->m_r; } /* bool HPHP::f_session_is_registered(HPHP::String const&) _ZN4HPHP23f_session_is_registeredERKNS_6StringE (return value) => rax varname => rdi */ bool fh_session_is_registered(Value* varname) asm("_ZN4HPHP23f_session_is_registeredERKNS_6StringE"); TypedValue * fg1_session_is_registered(TypedValue* rv, HPHP::VM::ActRec* ar, int64_t count) __attribute__((noinline,cold)); TypedValue * fg1_session_is_registered(TypedValue* rv, HPHP::VM::ActRec* ar, int64_t count) { TypedValue* args UNUSED = ((TypedValue*)ar) - 1; rv->m_type = KindOfBoolean; tvCastToStringInPlace(args-0); rv->m_data.num = (fh_session_is_registered(&args[-0].m_data)) ? 1LL : 0LL; return rv; } TypedValue* fg_session_is_registered(HPHP::VM::ActRec *ar) { TypedValue rv; int64_t count = ar->numArgs(); TypedValue* args UNUSED = ((TypedValue*)ar) - 1; if (count == 1LL) { if (IS_STRING_TYPE((args-0)->m_type)) { rv.m_type = KindOfBoolean; rv.m_data.num = (fh_session_is_registered(&args[-0].m_data)) ? 1LL : 0LL; frame_free_locals_no_this_inl(ar, 1); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; } else { fg1_session_is_registered(&rv, ar, count); frame_free_locals_no_this_inl(ar, 1); memcpy(&ar->m_r, &rv, sizeof(TypedValue)); return &ar->m_r; } } else { throw_wrong_arguments_nr("session_is_registered", 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; return &ar->m_r; } } // !HPHP