5#ifndef V8_COMPILER_TURBOSHAFT_REGISTER_ALLOCATION_PHASE_H_
6#define V8_COMPILER_TURBOSHAFT_REGISTER_ALLOCATION_PHASE_H_
59template <
typename RegAllocator>
65 RegAllocator allocator(data->register_allocation_data(),
67 allocator.AllocateRegisters();
71template <
typename RegAllocator>
77 RegAllocator allocator(data->register_allocation_data(),
79 allocator.AllocateRegisters();
83template <
typename RegAllocator>
89 RegAllocator allocator(data->register_allocation_data(),
91 allocator.AllocateRegisters();
161 move_optimizer.
Run();
170#if V8_ENABLE_WEBASSEMBLY
171 const bool is_wasm_to_js =
172 data->info()->code_kind() == CodeKind::WASM_TO_JS_FUNCTION ||
173 data->info()->builtin() == Builtin::kWasmToJsWrapperCSA;
175 const bool is_wasm_to_js =
false;
208 static constexpr bool kOutputIsTraceableGraph =
false;
MaybeHandle< Code > FinalizeCode()
void MeetRegisterConstraints()
static bool ComputeForwarding(Zone *local_zone, ZoneVector< RpoNumber > *result, InstructionSequence *code, bool frame_at_start)
static void ApplyForwarding(Zone *local_zone, ZoneVector< RpoNumber > const &forwarding, InstructionSequence *code)
void ResolveControlFlow(Zone *local_zone)
void ConnectRanges(Zone *local_zone)
void DecideSpillingMode()
void PopulateReferenceMaps()
ZoneVector< RpoNumber > & result
#define DCHECK_NOT_NULL(val)
void Run(PipelineData *data, Zone *temp_zone)
static constexpr bool kOutputIsTraceableGraph
static constexpr bool kOutputIsTraceableGraph
void Run(PipelineData *data, Zone *temp_zone)
static constexpr bool kOutputIsTraceableGraph
void Run(PipelineData *data, Zone *temp_zone)
void Run(PipelineData *data, Zone *temp_zone)
static constexpr bool kOutputIsTraceableGraph
static constexpr bool kOutputIsTraceableGraph
void Run(PipelineData *data, Zone *temp_zone)
static constexpr bool kOutputIsTraceableGraph
void Run(PipelineData *data, Zone *temp_zone)
void Run(PipelineData *data, Zone *temp_zone)
static constexpr bool kOutputIsTraceableGraph
void Run(PipelineData *data, Zone *temp_zone)
static constexpr bool kOutputIsTraceableGraph
static constexpr bool kOutputIsTraceableGraph
void Run(PipelineData *data, Zone *temp_zone)
void Run(PipelineData *data, Zone *temp_zone)
static constexpr bool kOutputIsTraceableGraph
DECL_TURBOSHAFT_MAIN_THREAD_PIPELINE_PHASE_CONSTANTS_WITH_LEGACY_NAME(FinalizeCode) static const expr bool kOutputIsTraceableGraph
void Run(PipelineData *data, Zone *temp_zone)
void Run(PipelineData *data, Zone *temp_zone)
static constexpr bool kOutputIsTraceableGraph
static constexpr bool kOutputIsTraceableGraph
void Run(PipelineData *data, Zone *temp_zone, bool frame_at_start)
static constexpr bool kOutputIsTraceableGraph
void Run(PipelineData *data, Zone *temp_zone)
void Run(PipelineData *data, Zone *temp_zone)
static constexpr bool kOutputIsTraceableGraph
void Run(PipelineData *data, Zone *temp_zone)
static constexpr bool kOutputIsTraceableGraph
void Run(PipelineData *data, Zone *temp_zone)
static constexpr bool kOutputIsTraceableGraph
static constexpr bool kOutputIsTraceableGraph
void Run(PipelineData *data, Zone *temp_zone)
#define DECL_TURBOSHAFT_PHASE_CONSTANTS_WITH_LEGACY_NAME(Name)