/
githubmirror
/
node
Обзор
Документация
Войти
/
githubmirror
/
node
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
deps/v8/src/wasm/pgo.h
52 строки
2 KB
Michaël Zasso
deps: update V8 to 13.6.233.8
02 май 2025, 16:06
Не верифицирован
02 май 2025, 16:06
918fe04
Код
Авторство
О чём код?
// Copyright 2022 the V8 project authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef V8_WASM_PGO_H_ #define V8_WASM_PGO_H_ #if !V8_ENABLE_WEBASSEMBLY #error This header should only be included if WebAssembly is enabled. #endif // !V8_ENABLE_WEBASSEMBLY #include <vector> #include "src/base/vector.h" namespace v8::internal::wasm { struct WasmModule; class ProfileInformation { public: ProfileInformation(std::vector<uint32_t> executed_functions, std::vector<uint32_t> tiered_up_functions) : executed_functions_(std::move(executed_functions)), tiered_up_functions_(std::move(tiered_up_functions)) {} // Disallow copying (not needed, so most probably a bug). ProfileInformation(const ProfileInformation&) = delete; ProfileInformation& operator=(const ProfileInformation&) = delete; base::Vector<const uint32_t> executed_functions() const { return base::VectorOf(executed_functions_); } base::Vector<const uint32_t> tiered_up_functions() const { return base::VectorOf(tiered_up_functions_); } private: const std::vector<uint32_t> executed_functions_; const std::vector<uint32_t> tiered_up_functions_; }; void DumpProfileToFile(const WasmModule* module, base::Vector<const uint8_t> wire_bytes, std::atomic<uint32_t>* tiering_budget_array); V8_WARN_UNUSED_RESULT std::unique_ptr<ProfileInformation> LoadProfileFromFile( const WasmModule* module, base::Vector<const uint8_t> wire_bytes); } // namespace v8::internal::wasm #endif // V8_WASM_PGO_H_