v8
V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.
Loading...
Searching...
No Matches
turbofan.h
Go to the documentation of this file.
1// Copyright 2023 the V8 project authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#ifndef V8_COMPILER_TURBOFAN_H_
6#define V8_COMPILER_TURBOFAN_H_
7
8#include <memory>
9
10// Clients of this interface shouldn't depend on compiler internals.
11// Do not include anything from src/compiler here, and keep includes minimal.
12
13#include "src/base/macros.h"
14#include "src/utils/utils.h"
15
16namespace v8 {
17namespace internal {
18
19class Isolate;
20class JSFunction;
21class TurbofanCompilationJob;
22
23namespace compiler {
24
25// Whether the given JSFunction has an associated Script.
27 kNo,
28 kYes,
29};
30
31V8_EXPORT_PRIVATE std::unique_ptr<TurbofanCompilationJob> NewCompilationJob(
32 Isolate* isolate, Handle<JSFunction> function, IsScriptAvailable has_script,
34
35} // namespace compiler
36} // namespace internal
37} // namespace v8
38
39#endif // V8_COMPILER_TURBOFAN_H_
static constexpr BytecodeOffset None()
Definition utils.h:675
std::unique_ptr< TurbofanCompilationJob > NewCompilationJob(Isolate *isolate, Handle< JSFunction > function, IsScriptAvailable has_script, BytecodeOffset osr_offset)
#define V8_EXPORT_PRIVATE
Definition macros.h:460