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
9
10namespace v8 {
11namespace internal {
12
14 public:
16
19
21
23 TNode<JSFunction> function);
24#ifdef V8_ENABLE_LEAPTIERING
25 template <typename Function>
26 void TieringBuiltinImpl(const Function& Impl);
27
28#else
30 TieringState expected_state,
31 Runtime::FunctionId function_id,
32 TNode<JSFunction> function);
33
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_
void GenerateTailCallToJSCode(TNode< Code > code, TNode< JSFunction > function)
void GenerateTailCallToReturnedCode(Runtime::FunctionId function_id, TNode< JSFunction > function)
void CompileLazy(TNode< JSFunction > function)
void MaybeTailCallOptimizedCodeSlot(TNode< JSFunction > function, TNode< FeedbackVector > feedback_vector)
void TailCallRuntimeIfStateEquals(TNode< Uint32T > state, TieringState expected_state, Runtime::FunctionId function_id, TNode< JSFunction > function)
LazyBuiltinsAssembler(compiler::CodeAssemblerState *state)