v8
V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.
Loading...
Searching...
No Matches
phase.h File Reference
Include dependency graph for phase.h:

Go to the source code of this file.

Classes

struct  v8::internal::compiler::turboshaft::HasProperRunMethod< Phase >
 
struct  v8::internal::compiler::turboshaft::detail::produces_printable_graph_impl< typename, typename >
 
struct  v8::internal::compiler::turboshaft::detail::produces_printable_graph_impl< P, std::void_t< decltype(P::kOutputIsTraceableGraph)> >
 
struct  v8::internal::compiler::turboshaft::detail::ComponentWithZone< ZoneName >
 
struct  v8::internal::compiler::turboshaft::detail::BuiltinComponent
 
struct  v8::internal::compiler::turboshaft::detail::GraphComponent
 
struct  v8::internal::compiler::turboshaft::detail::CodegenComponent
 
struct  v8::internal::compiler::turboshaft::detail::InstructionComponent
 
struct  v8::internal::compiler::turboshaft::detail::RegisterComponent
 
struct  v8::internal::compiler::turboshaft::produces_printable_graph< P >
 
class  v8::internal::compiler::turboshaft::PipelineData
 

Namespaces

namespace  v8
 
namespace  v8::internal
 
namespace  v8::internal::compiler
 
namespace  v8::internal::compiler::turboshaft
 
namespace  v8::internal::compiler::turboshaft::detail
 

Concepts

concept  v8::internal::compiler::turboshaft::TurboshaftPhase
 
concept  v8::internal::compiler::turboshaft::TurbofanPhase
 
concept  v8::internal::compiler::turboshaft::CompilerPhase
 

Macros

#define DECL_TURBOSHAFT_PHASE_CONSTANTS_IMPL(Name, CallStatsName)
 
#define DECL_TURBOSHAFT_PHASE_CONSTANTS(Name)
 
#define DECL_TURBOSHAFT_PHASE_CONSTANTS_WITH_LEGACY_NAME(Name)
 
#define DECL_TURBOSHAFT_MAIN_THREAD_PIPELINE_PHASE_CONSTANTS_WITH_LEGACY_NAME(Name)
 

Enumerations

enum class  v8::internal::compiler::turboshaft::TurboshaftPipelineKind {
  v8::internal::compiler::turboshaft::kJS , v8::internal::compiler::turboshaft::kWasm , v8::internal::compiler::turboshaft::kCSA , v8::internal::compiler::turboshaft::kTSABuiltin ,
  v8::internal::compiler::turboshaft::kJSToWasm
}
 

Functions

void v8::internal::compiler::turboshaft::PrintTurboshaftGraph (PipelineData *data, Zone *temp_zone, CodeTracer *code_tracer, const char *phase_name)
 
void v8::internal::compiler::turboshaft::PrintTurboshaftGraphForTurbolizer (std::ofstream &stream, const Graph &graph, const char *phase_name, NodeOriginTable *node_origins, Zone *temp_zone)
 

Macro Definition Documentation

◆ DECL_TURBOSHAFT_MAIN_THREAD_PIPELINE_PHASE_CONSTANTS_WITH_LEGACY_NAME

#define DECL_TURBOSHAFT_MAIN_THREAD_PIPELINE_PHASE_CONSTANTS_WITH_LEGACY_NAME ( Name)
Value:
DECL_PIPELINE_PHASE_CONSTANTS_HELPER(Name, PhaseKind::kTurboshaft, \
RuntimeCallStats::kExact) \
static constexpr char kPhaseName[] = "V8.TF" #Name; \
static void AssertTurboshaftPhase() { \
static_assert(TurboshaftPhase<Name##Phase>); \
}
#define DECL_PIPELINE_PHASE_CONSTANTS_HELPER(Name, Kind, Mode)
Definition phase.h:19

Definition at line 44 of file phase.h.

◆ DECL_TURBOSHAFT_PHASE_CONSTANTS

#define DECL_TURBOSHAFT_PHASE_CONSTANTS ( Name)
Value:
DECL_TURBOSHAFT_PHASE_CONSTANTS_IMPL(Name, Turboshaft##Name)
#define DECL_TURBOSHAFT_PHASE_CONSTANTS_IMPL(Name, CallStatsName)
Definition phase.h:31

Definition at line 39 of file phase.h.

◆ DECL_TURBOSHAFT_PHASE_CONSTANTS_IMPL

#define DECL_TURBOSHAFT_PHASE_CONSTANTS_IMPL ( Name,
CallStatsName )
Value:
DECL_PIPELINE_PHASE_CONSTANTS_HELPER(CallStatsName, PhaseKind::kTurboshaft, \
RuntimeCallStats::kThreadSpecific) \
static constexpr char kPhaseName[] = "V8.TF" #CallStatsName; \
static void AssertTurboshaftPhase() { \
static_assert(TurboshaftPhase<Name##Phase>); \
}

Definition at line 31 of file phase.h.

◆ DECL_TURBOSHAFT_PHASE_CONSTANTS_WITH_LEGACY_NAME

#define DECL_TURBOSHAFT_PHASE_CONSTANTS_WITH_LEGACY_NAME ( Name)
Value:

Definition at line 41 of file phase.h.