v8
V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.
Loading...
Searching...
No Matches
builtins-lazy-gen.h
Go to the documentation of this file.
1
// Copyright 2018 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_BUILTINS_BUILTINS_LAZY_GEN_H_
6
#define V8_BUILTINS_BUILTINS_LAZY_GEN_H_
7
8
#include "
src/codegen/code-stub-assembler.h
"
9
10
namespace
v8
{
11
namespace
internal
{
12
13
class
LazyBuiltinsAssembler
:
public
CodeStubAssembler
{
14
public
:
15
using
Descriptor
=
JSTrampolineDescriptor
;
16
17
explicit
LazyBuiltinsAssembler
(
compiler::CodeAssemblerState
* state)
18
:
CodeStubAssembler
(state) {}
19
20
void
GenerateTailCallToJSCode
(
TNode<Code>
code,
TNode<JSFunction>
function);
21
22
void
GenerateTailCallToReturnedCode
(
Runtime::FunctionId
function_id,
23
TNode<JSFunction>
function);
24
#ifdef V8_ENABLE_LEAPTIERING
25
template
<
typename
Function>
26
void
TieringBuiltinImpl(
const
Function
& Impl);
27
28
#else
29
void
TailCallRuntimeIfStateEquals
(
TNode<Uint32T>
state,
30
TieringState
expected_state,
31
Runtime::FunctionId
function_id,
32
TNode<JSFunction>
function);
33
34
void
MaybeTailCallOptimizedCodeSlot
(
TNode<JSFunction>
function,
35
TNode<FeedbackVector>
feedback_vector);
36
#endif
// V8_ENABLE_LEAPTIERING
37
38
void
CompileLazy
(
TNode<JSFunction>
function);
39
};
40
41
}
// namespace internal
42
}
// namespace v8
43
44
#endif
// V8_BUILTINS_BUILTINS_LAZY_GEN_H_
v8::Function
Definition
v8-function.h:27
v8::internal::CodeStubAssembler
Definition
code-stub-assembler.h:69
v8::internal::JSTrampolineDescriptor
Definition
interface-descriptors.h:893
v8::internal::LazyBuiltinsAssembler
Definition
builtins-lazy-gen.h:13
v8::internal::LazyBuiltinsAssembler::GenerateTailCallToJSCode
void GenerateTailCallToJSCode(TNode< Code > code, TNode< JSFunction > function)
Definition
builtins-lazy-gen.cc:19
v8::internal::LazyBuiltinsAssembler::GenerateTailCallToReturnedCode
void GenerateTailCallToReturnedCode(Runtime::FunctionId function_id, TNode< JSFunction > function)
Definition
builtins-lazy-gen.cc:34
v8::internal::LazyBuiltinsAssembler::CompileLazy
void CompileLazy(TNode< JSFunction > function)
Definition
builtins-lazy-gen.cc:107
v8::internal::LazyBuiltinsAssembler::MaybeTailCallOptimizedCodeSlot
void MaybeTailCallOptimizedCodeSlot(TNode< JSFunction > function, TNode< FeedbackVector > feedback_vector)
Definition
builtins-lazy-gen.cc:43
v8::internal::LazyBuiltinsAssembler::TailCallRuntimeIfStateEquals
void TailCallRuntimeIfStateEquals(TNode< Uint32T > state, TieringState expected_state, Runtime::FunctionId function_id, TNode< JSFunction > function)
v8::internal::LazyBuiltinsAssembler::LazyBuiltinsAssembler
LazyBuiltinsAssembler(compiler::CodeAssemblerState *state)
Definition
builtins-lazy-gen.h:17
v8::internal::Runtime::FunctionId
FunctionId
Definition
runtime.h:900
v8::internal::TNode
Definition
tnode.h:391
v8::internal::compiler::CodeAssemblerState
Definition
code-assembler.h:1852
code-stub-assembler.h
v8::internal::TieringState
TieringState
Definition
globals.h:2499
v8::internal::internal
internal
Definition
wasm-objects-inl.h:458
v8
Definition
api-arguments-inl.h:19
src
builtins
builtins-lazy-gen.h
Generated on Sun Apr 6 2025 21:08:50 for v8 by
1.12.0