uint zend_accel_script_persist_calc(zend_persistent_script *new_persistent_script, char *key, unsigned int key_length) { new_persistent_script->mem = NULL; new_persistent_script->size = 0; new_persistent_script->arena_mem = NULL; new_persistent_script->arena_size = 0; ZCG(current_persistent_script) = new_persistent_script; ADD_DUP_SIZE(new_persistent_script, sizeof(zend_persistent_script)); if (key) { ADD_DUP_SIZE(key, key_length + 1); } ADD_STRING(new_persistent_script->full_path); #ifdef __SSE2__ /* Align size to 64-byte boundary */ new_persistent_script->size = (new_persistent_script->size + 63) & ~63; #endif zend_accel_persist_class_table_calc(&new_persistent_script->class_table); zend_hash_persist_calc(&new_persistent_script->function_table, zend_persist_op_array_calc); zend_persist_op_array_calc_ex(&new_persistent_script->main_op_array); #ifdef __SSE2__ /* Align size to 64-byte boundary */ new_persistent_script->arena_size = (new_persistent_script->arena_size + 63) & ~63; #endif new_persistent_script->size += new_persistent_script->arena_size; ZCG(current_persistent_script) = NULL; return new_persistent_script->size; }
uint zend_accel_script_persist_calc(zend_persistent_script *new_persistent_script, char *key, unsigned int key_length) { new_persistent_script->mem = NULL; new_persistent_script->size = 0; new_persistent_script->arena_mem = NULL; new_persistent_script->arena_size = 0; ZCG(current_persistent_script) = new_persistent_script; ADD_DUP_SIZE(new_persistent_script, sizeof(zend_persistent_script)); ADD_DUP_SIZE(key, key_length + 1); ADD_STRING(new_persistent_script->full_path); zend_accel_persist_class_table_calc(&new_persistent_script->class_table); zend_hash_persist_calc(&new_persistent_script->function_table, zend_persist_op_array_calc); zend_persist_op_array_calc_ex(&new_persistent_script->main_op_array); new_persistent_script->size += new_persistent_script->arena_size; ZCG(current_persistent_script) = NULL; return new_persistent_script->size; }