22#ifdef V8_USE_EXTERNAL_STARTUP_DATA
35 ClearStartupData(data);
38void FreeStartupData() {
39 DeleteStartupData(&g_snapshot);
44 ClearStartupData(startup_data);
50 PrintF(stderr,
"Failed to open startup resource '%s'.\n", blob_file);
54 fseek(file, 0, SEEK_END);
55 startup_data->
raw_size =
static_cast<int>(ftell(file));
59 int read_size =
static_cast<int>(fread(
const_cast<char*
>(startup_data->
data),
63 if (startup_data->
raw_size == read_size) {
64 (*setter_fn)(startup_data);
66 PrintF(stderr,
"Corrupted startup resource '%s'.\n", blob_file);
70void LoadFromFile(
const char* snapshot_blob) {
72 atexit(&FreeStartupData);
79#ifdef V8_USE_EXTERNAL_STARTUP_DATA
80 const char* snapshot_name =
"snapshot_blob.bin";
81 std::unique_ptr<char[]> snapshot =
83 LoadFromFile(snapshot.get());
88#ifdef V8_USE_EXTERNAL_STARTUP_DATA
89 LoadFromFile(snapshot_blob);
static void SetSnapshotDataBlob(StartupData *startup_blob)
std::unique_ptr< char[]> RelativePath(const char *exec_path, const char *name)
FILE * Fopen(const char *filename, const char *mode)
void PrintF(const char *format,...)
void InitializeExternalStartupData(const char *directory_path)
void InitializeExternalStartupDataFromFile(const char *snapshot_blob)
i::Address Load(i::Address address)