v8
V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.
Loading...
Searching...
No Matches
v8::internal::compiler::turboshaft::BlockInstrumentationReducer< Next > Class Template Reference

#include <block-instrumentation-reducer.h>

Inheritance diagram for v8::internal::compiler::turboshaft::BlockInstrumentationReducer< Next >:
Collaboration diagram for v8::internal::compiler::turboshaft::BlockInstrumentationReducer< Next >:

Public Types

using Adapter = UniformReducerAdapter<BlockInstrumentationReducer, Next>
 

Public Member Functions

 BlockInstrumentationReducer ()
 
void Bind (Block *new_block)
 
template<Opcode opcode, typename Continuation , typename... Args>
OpIndex ReduceOperation (Args... args)
 
V< Object > REDUCE Parameter (int32_t parameter_index, RegisterRepresentation rep, const char *debug_name)
 
V< Any > REDUCE CatchBlockBegin ()
 
V< Any > REDUCE DidntThrow (V< Any > throwing_operation, bool has_catch_block, const base::Vector< const RegisterRepresentation > *results_rep, OpEffects throwing_op_effects)
 
V< Word32LoadCounterValue (int block_number)
 
void StoreCounterValue (int block_number, V< Word32 > value)
 
void EmitBlockInstrumentation (int block_number)
 
V< None > REDUCE_INPUT_GRAPH Branch (V< None > ig_index, const BranchOp &branch)
 
- Public Member Functions inherited from v8::internal::compiler::turboshaft::UniformReducerAdapter< BlockInstrumentationReducer, Next >
auto ReduceOperation (Args... args)
 
auto ReduceInputGraphOperation (OpIndex ig_index, const Op &operation)
 

Private Attributes

Isolateisolate_ = __ data() -> isolate()
 
BasicBlockProfilerDatadata_ = __ data() -> info()->profiler_data()
 
const bool on_heap_counters_
 
size_t operations_emitted_in_current_block_ = 0
 
Handle< HeapObjectcounters_array_handle_
 

Detailed Description

template<typename Next>
class v8::internal::compiler::turboshaft::BlockInstrumentationReducer< Next >

Definition at line 23 of file block-instrumentation-reducer.h.

Member Typedef Documentation

◆ Adapter

Constructor & Destructor Documentation

◆ BlockInstrumentationReducer()

template<typename Next >
v8::internal::compiler::turboshaft::BlockInstrumentationReducer< Next >::BlockInstrumentationReducer ( )
inline

Definition at line 29 of file block-instrumentation-reducer.h.

Here is the call graph for this function:

Member Function Documentation

◆ Bind()

template<typename Next >
void v8::internal::compiler::turboshaft::BlockInstrumentationReducer< Next >::Bind ( Block * new_block)
inline

Definition at line 36 of file block-instrumentation-reducer.h.

Here is the call graph for this function:

◆ Branch()

template<typename Next >
V< None > REDUCE_INPUT_GRAPH v8::internal::compiler::turboshaft::BlockInstrumentationReducer< Next >::Branch ( V< None > ig_index,
const BranchOp & branch )
inline

Definition at line 154 of file block-instrumentation-reducer.h.

Here is the call graph for this function:

◆ CatchBlockBegin()

template<typename Next >
V< Any > REDUCE v8::internal::compiler::turboshaft::BlockInstrumentationReducer< Next >::CatchBlockBegin ( )
inline

Definition at line 71 of file block-instrumentation-reducer.h.

◆ DidntThrow()

template<typename Next >
V< Any > REDUCE v8::internal::compiler::turboshaft::BlockInstrumentationReducer< Next >::DidntThrow ( V< Any > throwing_operation,
bool has_catch_block,
const base::Vector< const RegisterRepresentation > * results_rep,
OpEffects throwing_op_effects )
inline

Definition at line 77 of file block-instrumentation-reducer.h.

◆ EmitBlockInstrumentation()

template<typename Next >
void v8::internal::compiler::turboshaft::BlockInstrumentationReducer< Next >::EmitBlockInstrumentation ( int block_number)
inline

Definition at line 136 of file block-instrumentation-reducer.h.

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

◆ LoadCounterValue()

template<typename Next >
V< Word32 > v8::internal::compiler::turboshaft::BlockInstrumentationReducer< Next >::LoadCounterValue ( int block_number)
inline

Definition at line 87 of file block-instrumentation-reducer.h.

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

◆ Parameter()

template<typename Next >
V< Object > REDUCE v8::internal::compiler::turboshaft::BlockInstrumentationReducer< Next >::Parameter ( int32_t parameter_index,
RegisterRepresentation rep,
const char * debug_name )
inline

Definition at line 63 of file block-instrumentation-reducer.h.

◆ ReduceOperation()

template<typename Next >
template<Opcode opcode, typename Continuation , typename... Args>
OpIndex v8::internal::compiler::turboshaft::BlockInstrumentationReducer< Next >::ReduceOperation ( Args... args)
inline

Definition at line 47 of file block-instrumentation-reducer.h.

Here is the call graph for this function:

◆ StoreCounterValue()

template<typename Next >
void v8::internal::compiler::turboshaft::BlockInstrumentationReducer< Next >::StoreCounterValue ( int block_number,
V< Word32 > value )
inline

Definition at line 111 of file block-instrumentation-reducer.h.

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

Member Data Documentation

◆ counters_array_handle_

template<typename Next >
Handle<HeapObject> v8::internal::compiler::turboshaft::BlockInstrumentationReducer< Next >::counters_array_handle_
private

Definition at line 167 of file block-instrumentation-reducer.h.

◆ data_

template<typename Next >
BasicBlockProfilerData* v8::internal::compiler::turboshaft::BlockInstrumentationReducer< Next >::data_ = __ data() -> info()->profiler_data()
private

Definition at line 163 of file block-instrumentation-reducer.h.

◆ isolate_

template<typename Next >
Isolate* v8::internal::compiler::turboshaft::BlockInstrumentationReducer< Next >::isolate_ = __ data() -> isolate()
private

Definition at line 162 of file block-instrumentation-reducer.h.

◆ on_heap_counters_

◆ operations_emitted_in_current_block_

template<typename Next >
size_t v8::internal::compiler::turboshaft::BlockInstrumentationReducer< Next >::operations_emitted_in_current_block_ = 0
private

Definition at line 166 of file block-instrumentation-reducer.h.


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