v8
V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.
Loading...
Searching...
No Matches
v8::internal::OptimizedCompilationJob Class Referenceabstract

#include <compiler.h>

Inheritance diagram for v8::internal::OptimizedCompilationJob:
Collaboration diagram for v8::internal::OptimizedCompilationJob:

Public Member Functions

 OptimizedCompilationJob (const char *compiler_name, State initial_state)
 
V8_EXPORT_PRIVATE V8_WARN_UNUSED_RESULT Status PrepareJob (Isolate *isolate)
 
V8_EXPORT_PRIVATE V8_WARN_UNUSED_RESULT Status ExecuteJob (RuntimeCallStats *stats, LocalIsolate *local_isolate=nullptr)
 
V8_EXPORT_PRIVATE V8_WARN_UNUSED_RESULT Status FinalizeJob (Isolate *isolate)
 
const char * compiler_name () const
 
double prepare_in_ms () const
 
double execute_in_ms () const
 
double finalize_in_ms () const
 
V8_WARN_UNUSED_RESULT base::TimeDelta ElapsedTime () const
 
- Public Member Functions inherited from v8::internal::CompilationJob
 CompilationJob (State initial_state)
 
virtual ~CompilationJob ()=default
 
State state () const
 

Protected Member Functions

virtual Status PrepareJobImpl (Isolate *isolate)=0
 
virtual Status ExecuteJobImpl (RuntimeCallStats *stats, LocalIsolate *local_heap)=0
 
virtual Status FinalizeJobImpl (Isolate *isolate)=0
 
GlobalHandleVector< MapCollectRetainedMaps (Isolate *isolate, DirectHandle< Code > code)
 
void RegisterWeakObjectsInOptimizedCode (Isolate *isolate, DirectHandle< NativeContext > context, DirectHandle< Code > code, GlobalHandleVector< Map > maps)
 
- Protected Member Functions inherited from v8::internal::CompilationJob
V8_WARN_UNUSED_RESULT Status UpdateState (Status status, State next_state)
 

Protected Attributes

base::TimeDelta time_taken_to_prepare_
 
base::TimeDelta time_taken_to_execute_
 
base::TimeDelta time_taken_to_finalize_
 
base::ElapsedTimer timer_
 

Private Attributes

const char *const compiler_name_
 

Additional Inherited Members

- Public Types inherited from v8::internal::CompilationJob
enum  Status { SUCCEEDED , FAILED , RETRY_ON_MAIN_THREAD }
 
enum class  State {
  kReadyToPrepare , kReadyToExecute , kReadyToFinalize , kSucceeded ,
  kFailed
}
 

Detailed Description

Definition at line 404 of file compiler.h.

Constructor & Destructor Documentation

◆ OptimizedCompilationJob()

v8::internal::OptimizedCompilationJob::OptimizedCompilationJob ( const char * compiler_name,
State initial_state )
inline

Definition at line 406 of file compiler.h.

Here is the call graph for this function:

Member Function Documentation

◆ CollectRetainedMaps()

GlobalHandleVector< Map > v8::internal::OptimizedCompilationJob::CollectRetainedMaps ( Isolate * isolate,
DirectHandle< Code > code )
protected

Definition at line 484 of file compiler.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ compiler_name()

const char * v8::internal::OptimizedCompilationJob::compiler_name ( ) const
inline

Definition at line 421 of file compiler.h.

◆ ElapsedTime()

V8_WARN_UNUSED_RESULT base::TimeDelta v8::internal::OptimizedCompilationJob::ElapsedTime ( ) const
inline

Definition at line 433 of file compiler.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ execute_in_ms()

double v8::internal::OptimizedCompilationJob::execute_in_ms ( ) const
inline

Definition at line 426 of file compiler.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ExecuteJob()

CompilationJob::Status v8::internal::OptimizedCompilationJob::ExecuteJob ( RuntimeCallStats * stats,
LocalIsolate * local_isolate = nullptr )

Definition at line 463 of file compiler.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ExecuteJobImpl()

virtual Status v8::internal::OptimizedCompilationJob::ExecuteJobImpl ( RuntimeCallStats * stats,
LocalIsolate * local_heap )
protectedpure virtual

Implemented in v8::internal::compiler::CodeAssemblerTurboshaftCompilationJob, and v8::internal::compiler::PipelineCompilationJob.

Here is the caller graph for this function:

◆ finalize_in_ms()

double v8::internal::OptimizedCompilationJob::finalize_in_ms ( ) const
inline

Definition at line 429 of file compiler.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FinalizeJob()

CompilationJob::Status v8::internal::OptimizedCompilationJob::FinalizeJob ( Isolate * isolate)

Definition at line 474 of file compiler.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FinalizeJobImpl()

virtual Status v8::internal::OptimizedCompilationJob::FinalizeJobImpl ( Isolate * isolate)
protectedpure virtual

Implemented in v8::internal::compiler::CodeAssemblerCompilationJob, and v8::internal::compiler::PipelineCompilationJob.

Here is the caller graph for this function:

◆ prepare_in_ms()

double v8::internal::OptimizedCompilationJob::prepare_in_ms ( ) const
inline

Definition at line 423 of file compiler.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ PrepareJob()

CompilationJob::Status v8::internal::OptimizedCompilationJob::PrepareJob ( Isolate * isolate)

Definition at line 453 of file compiler.cc.

Here is the call graph for this function:

◆ PrepareJobImpl()

virtual Status v8::internal::OptimizedCompilationJob::PrepareJobImpl ( Isolate * isolate)
protectedpure virtual

Implemented in v8::internal::compiler::CodeAssemblerCompilationJob, and v8::internal::compiler::PipelineCompilationJob.

Here is the caller graph for this function:

◆ RegisterWeakObjectsInOptimizedCode()

void v8::internal::OptimizedCompilationJob::RegisterWeakObjectsInOptimizedCode ( Isolate * isolate,
DirectHandle< NativeContext > context,
DirectHandle< Code > code,
GlobalHandleVector< Map > maps )
protected

Definition at line 504 of file compiler.cc.

Here is the caller graph for this function:

Member Data Documentation

◆ compiler_name_

const char* const v8::internal::OptimizedCompilationJob::compiler_name_
private

Definition at line 459 of file compiler.h.

◆ time_taken_to_execute_

base::TimeDelta v8::internal::OptimizedCompilationJob::time_taken_to_execute_
protected

Definition at line 453 of file compiler.h.

◆ time_taken_to_finalize_

base::TimeDelta v8::internal::OptimizedCompilationJob::time_taken_to_finalize_
protected

Definition at line 454 of file compiler.h.

◆ time_taken_to_prepare_

base::TimeDelta v8::internal::OptimizedCompilationJob::time_taken_to_prepare_
protected

Definition at line 452 of file compiler.h.

◆ timer_

base::ElapsedTimer v8::internal::OptimizedCompilationJob::timer_
protected

Definition at line 456 of file compiler.h.


The documentation for this class was generated from the following files: