#include <deoptimizer.h>
|
static bool | DeoptExitIsInsideOsrLoop (Isolate *isolate, Tagged< JSFunction > function, BytecodeOffset deopt_exit_offset, BytecodeOffset osr_offset) |
|
static DeoptInfo | GetDeoptInfo (Tagged< Code > code, Address from) |
|
static const char * | MessageFor (DeoptimizeKind kind) |
|
static Deoptimizer * | New (Address raw_function, DeoptimizeKind kind, Address from, int fp_to_sp_delta, Isolate *isolate) |
|
static Deoptimizer * | Grab (Isolate *isolate) |
|
static size_t | DeleteForWasm (Isolate *isolate) |
|
static DeoptimizedFrameInfo * | DebuggerInspectableFrame (JavaScriptFrame *frame, int jsframe_index, Isolate *isolate) |
|
static void | DeoptimizeFunction (Tagged< JSFunction > function, LazyDeoptimizeReason reason, Tagged< Code > code={}) |
|
static V8_EXPORT_PRIVATE void | DeoptimizeAll (Isolate *isolate) |
|
static void | DeoptimizeMarkedCode (Isolate *isolate) |
|
static void | DeoptimizeAllOptimizedCodeWithFunction (Isolate *isolate, DirectHandle< SharedFunctionInfo > function) |
|
static Address | EnsureValidReturnAddress (Isolate *isolate, Address address) |
|
static void | ComputeOutputFrames (Deoptimizer *deoptimizer) |
|
static V8_EXPORT_PRIVATE Builtin | GetDeoptimizationEntry (DeoptimizeKind kind) |
|
static int | input_offset () |
|
static int | output_count_offset () |
|
static int | output_offset () |
|
static int | caller_frame_top_offset () |
|
static void | TraceMarkForDeoptimization (Isolate *isolate, Tagged< Code > code, LazyDeoptimizeReason reason) |
|
static void | TraceEvictFromOptimizedCodeCache (Isolate *isolate, Tagged< SharedFunctionInfo > sfi, const char *reason) |
|
static void | PatchToJump (Address pc, Address new_pc) |
|
static void * | operator new (size_t size) |
|
static void | operator delete (void *p) |
|
|
void | QueueValueForMaterialization (Address output_address, Tagged< Object > obj, const TranslatedFrame::iterator &iterator) |
|
void | QueueFeedbackVectorForMaterialization (Address output_address, const TranslatedFrame::iterator &iterator) |
|
| Deoptimizer (Isolate *isolate, Tagged< JSFunction > function, DeoptimizeKind kind, Address from, int fp_to_sp_delta) |
|
void | DeleteFrameDescriptions () |
|
void | DoComputeOutputFrames () |
|
void | DoComputeUnoptimizedFrame (TranslatedFrame *translated_frame, int frame_index, bool goto_catch_handler) |
|
void | DoComputeInlinedExtraArguments (TranslatedFrame *translated_frame, int frame_index) |
|
void | DoComputeConstructCreateStubFrame (TranslatedFrame *translated_frame, int frame_index) |
|
void | DoComputeConstructInvokeStubFrame (TranslatedFrame *translated_frame, int frame_index) |
|
void | DoComputeBuiltinContinuation (TranslatedFrame *translated_frame, int frame_index, BuiltinContinuationMode mode) |
|
unsigned | ComputeInputFrameAboveFpFixedSize () const |
|
unsigned | ComputeInputFrameSize () const |
|
bool | tracing_enabled () const |
|
bool | verbose_tracing_enabled () const |
|
CodeTracer::Scope * | trace_scope () const |
|
CodeTracer::Scope * | verbose_trace_scope () const |
|
void | TraceDeoptBegin (int optimization_id, BytecodeOffset bytecode_offset) |
|
void | TraceDeoptEnd (double deopt_duration) |
|
bool | is_restart_frame () const |
|
Definition at line 36 of file deoptimizer.h.
◆ ~Deoptimizer()
v8::internal::Deoptimizer::~Deoptimizer |
( |
| ) |
|
◆ Deoptimizer()
◆ bytecode_offset_in_outermost_frame()
BytecodeOffset v8::internal::Deoptimizer::bytecode_offset_in_outermost_frame |
( |
| ) |
const |
|
inline |
◆ caller_frame_top_offset()
static int v8::internal::Deoptimizer::caller_frame_top_offset |
( |
| ) |
|
|
inlinestatic |
◆ compiled_code()
◆ ComputeIncomingArgumentSize()
unsigned v8::internal::Deoptimizer::ComputeIncomingArgumentSize |
( |
Tagged< Code > | code | ) |
|
|
staticprivate |
◆ ComputeInputFrameAboveFpFixedSize()
unsigned v8::internal::Deoptimizer::ComputeInputFrameAboveFpFixedSize |
( |
| ) |
const |
|
private |
◆ ComputeInputFrameSize()
unsigned v8::internal::Deoptimizer::ComputeInputFrameSize |
( |
| ) |
const |
|
private |
◆ ComputeOutputFrames()
void v8::internal::Deoptimizer::ComputeOutputFrames |
( |
Deoptimizer * | deoptimizer | ) |
|
|
static |
◆ DebuggerInspectableFrame()
◆ DeleteForWasm()
size_t v8::internal::Deoptimizer::DeleteForWasm |
( |
Isolate * | isolate | ) |
|
|
static |
◆ DeleteFrameDescriptions()
void v8::internal::Deoptimizer::DeleteFrameDescriptions |
( |
| ) |
|
|
private |
◆ deopt_kind()
◆ DeoptExitIsInsideOsrLoop()
◆ DeoptimizeAll()
void v8::internal::Deoptimizer::DeoptimizeAll |
( |
Isolate * | isolate | ) |
|
|
static |
◆ DeoptimizeAllOptimizedCodeWithFunction()
◆ DeoptimizeFunction()
◆ DeoptimizeMarkedCode()
void v8::internal::Deoptimizer::DeoptimizeMarkedCode |
( |
Isolate * | isolate | ) |
|
|
static |
◆ DoComputeBuiltinContinuation()
◆ DoComputeConstructCreateStubFrame()
void v8::internal::Deoptimizer::DoComputeConstructCreateStubFrame |
( |
TranslatedFrame * | translated_frame, |
|
|
int | frame_index ) |
|
private |
◆ DoComputeConstructInvokeStubFrame()
void v8::internal::Deoptimizer::DoComputeConstructInvokeStubFrame |
( |
TranslatedFrame * | translated_frame, |
|
|
int | frame_index ) |
|
private |
◆ DoComputeInlinedExtraArguments()
void v8::internal::Deoptimizer::DoComputeInlinedExtraArguments |
( |
TranslatedFrame * | translated_frame, |
|
|
int | frame_index ) |
|
private |
◆ DoComputeOutputFrames()
void v8::internal::Deoptimizer::DoComputeOutputFrames |
( |
| ) |
|
|
private |
◆ DoComputeUnoptimizedFrame()
void v8::internal::Deoptimizer::DoComputeUnoptimizedFrame |
( |
TranslatedFrame * | translated_frame, |
|
|
int | frame_index, |
|
|
bool | goto_catch_handler ) |
|
private |
◆ EnsureValidReturnAddress()
◆ function()
◆ GetDeoptimizationEntry()
◆ GetDeoptInfo() [1/2]
DeoptInfo v8::internal::Deoptimizer::GetDeoptInfo |
( |
| ) |
const |
|
inline |
◆ GetDeoptInfo() [2/2]
◆ Grab()
◆ input_offset()
static int v8::internal::Deoptimizer::input_offset |
( |
| ) |
|
|
inlinestatic |
◆ is_restart_frame()
bool v8::internal::Deoptimizer::is_restart_frame |
( |
| ) |
const |
|
inlineprivate |
◆ isolate()
Isolate * v8::internal::Deoptimizer::isolate |
( |
| ) |
const |
|
inline |
◆ MaterializeHeapObjects()
void v8::internal::Deoptimizer::MaterializeHeapObjects |
( |
| ) |
|
◆ MessageFor()
const char * v8::internal::Deoptimizer::MessageFor |
( |
DeoptimizeKind | kind | ) |
|
|
static |
◆ New()
◆ output_count()
int v8::internal::Deoptimizer::output_count |
( |
| ) |
const |
|
inline |
◆ output_count_offset()
static int v8::internal::Deoptimizer::output_count_offset |
( |
| ) |
|
|
inlinestatic |
◆ output_offset()
static int v8::internal::Deoptimizer::output_offset |
( |
| ) |
|
|
inlinestatic |
◆ PatchToJump()
void v8::internal::Deoptimizer::PatchToJump |
( |
Address | pc, |
|
|
Address | new_pc ) |
|
static |
◆ QueueFeedbackVectorForMaterialization()
◆ QueueValueForMaterialization()
◆ trace_scope()
◆ TraceDeoptAll()
void v8::internal::Deoptimizer::TraceDeoptAll |
( |
Isolate * | isolate | ) |
|
|
staticprivate |
◆ TraceDeoptBegin()
void v8::internal::Deoptimizer::TraceDeoptBegin |
( |
int | optimization_id, |
|
|
BytecodeOffset | bytecode_offset ) |
|
private |
◆ TraceDeoptEnd()
void v8::internal::Deoptimizer::TraceDeoptEnd |
( |
double | deopt_duration | ) |
|
|
private |
◆ TraceEvictFromOptimizedCodeCache()
◆ TraceMarkForDeoptimization()
◆ tracing_enabled()
bool v8::internal::Deoptimizer::tracing_enabled |
( |
| ) |
const |
|
inlineprivate |
◆ TrampolineForBuiltinContinuation()
◆ verbose_trace_scope()
◆ verbose_tracing_enabled()
bool v8::internal::Deoptimizer::verbose_tracing_enabled |
( |
| ) |
const |
|
inlineprivate |
◆ DeoptimizedFrameInfo
◆ FrameDescription
◆ FrameWriter
◆ actual_argument_count_
int v8::internal::Deoptimizer::actual_argument_count_ |
|
private |
◆ bytecode_offset_in_outermost_frame_
◆ caller_constant_pool_
intptr_t v8::internal::Deoptimizer::caller_constant_pool_ |
|
private |
◆ caller_fp_
intptr_t v8::internal::Deoptimizer::caller_fp_ |
|
private |
◆ caller_frame_top_
intptr_t v8::internal::Deoptimizer::caller_frame_top_ |
|
private |
◆ caller_pc_
intptr_t v8::internal::Deoptimizer::caller_pc_ |
|
private |
◆ catch_handler_data_
int v8::internal::Deoptimizer::catch_handler_data_ |
|
private |
◆ catch_handler_pc_offset_
int v8::internal::Deoptimizer::catch_handler_pc_offset_ |
|
private |
◆ compiled_code_
Tagged<Code> v8::internal::Deoptimizer::compiled_code_ |
|
private |
◆ deopt_exit_index_
unsigned v8::internal::Deoptimizer::deopt_exit_index_ |
|
private |
◆ deopt_kind_
◆ deoptimizing_throw_
bool v8::internal::Deoptimizer::deoptimizing_throw_ |
|
private |
◆ feedback_vector_to_materialize_
std::vector<ValueToMaterialize> v8::internal::Deoptimizer::feedback_vector_to_materialize_ |
|
private |
◆ fp_to_sp_delta_
int v8::internal::Deoptimizer::fp_to_sp_delta_ |
|
private |
◆ from_
Address v8::internal::Deoptimizer::from_ |
|
private |
◆ function_
◆ input_
◆ isolate_
Isolate* v8::internal::Deoptimizer::isolate_ |
|
private |
◆ kAdaptShadowStackOffsetToSubtract
const int v8::internal::Deoptimizer::kAdaptShadowStackOffsetToSubtract = 0 |
|
static |
◆ kEagerDeoptExitSize
const int v8::internal::Deoptimizer::kEagerDeoptExitSize = 2 * kInstrSize |
|
static |
◆ kFixedExitSizeMarker
unsigned v8::internal::Deoptimizer::kFixedExitSizeMarker = kMaxUInt32 |
|
staticconstexpr |
◆ kLazyDeoptExitSize
const int v8::internal::Deoptimizer::kLazyDeoptExitSize = 2 * kInstrSize |
|
static |
◆ kMaxNumberOfEntries
int v8::internal::Deoptimizer::kMaxNumberOfEntries = 16384 |
|
staticconstexpr |
◆ output_
◆ output_count_
int v8::internal::Deoptimizer::output_count_ |
|
private |
◆ restart_frame_index_
int v8::internal::Deoptimizer::restart_frame_index_ |
|
private |
◆ stack_fp_
intptr_t v8::internal::Deoptimizer::stack_fp_ |
|
private |
◆ trace_scope_
◆ translated_state_
◆ values_to_materialize_
The documentation for this class was generated from the following files: