v8
V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.
Loading...
Searching...
No Matches
optimize-phase.cc
Go to the documentation of this file.
1
// Copyright 2023 the V8 project authors. All rights reserved.
2
// Use of this source code is governed by a BSD-style license that can be
3
// found in the LICENSE file.
4
5
#include "
src/compiler/turboshaft/optimize-phase.h
"
6
7
#include "
src/compiler/js-heap-broker.h
"
8
#include "
src/compiler/turboshaft/copying-phase.h
"
9
#include "
src/compiler/turboshaft/late-escape-analysis-reducer.h
"
10
#include "
src/compiler/turboshaft/machine-optimization-reducer.h
"
11
#include "
src/compiler/turboshaft/memory-optimization-reducer.h
"
12
#include "
src/compiler/turboshaft/phase.h
"
13
#include "
src/compiler/turboshaft/pretenuring-propagation-reducer.h
"
14
#include "
src/compiler/turboshaft/required-optimization-reducer.h
"
15
#include "
src/compiler/turboshaft/structural-optimization-reducer.h
"
16
#include "
src/compiler/turboshaft/value-numbering-reducer.h
"
17
#include "
src/compiler/turboshaft/variable-reducer.h
"
18
#include "
src/numbers/conversions-inl.h
"
19
#include "
src/roots/roots-inl.h
"
20
21
namespace
v8::internal::compiler::turboshaft
{
22
23
void
OptimizePhase::Run
(
PipelineData
* data,
Zone
* temp_zone) {
24
UnparkedScopeIfNeeded
scope(data->broker(),
25
v8_flags
.turboshaft_trace_reduction);
26
turboshaft::CopyingPhase
<
turboshaft::StructuralOptimizationReducer
,
27
turboshaft::LateEscapeAnalysisReducer
,
28
turboshaft::PretenuringPropagationReducer
,
29
turboshaft::MemoryOptimizationReducer
,
30
turboshaft::MachineOptimizationReducer
,
31
turboshaft::ValueNumberingReducer
>
::Run
(data,
32
temp_zone);
33
}
34
35
}
// namespace v8::internal::compiler::turboshaft
v8::internal::Zone
Definition
zone.h:43
v8::internal::compiler::UnparkedScopeIfNeeded
Definition
js-heap-broker.h:548
v8::internal::compiler::turboshaft::CopyingPhase
Definition
copying-phase.h:1065
v8::internal::compiler::turboshaft::LateEscapeAnalysisReducer
Definition
late-escape-analysis-reducer.h:47
v8::internal::compiler::turboshaft::MachineOptimizationReducer
Definition
machine-optimization-reducer.h:181
v8::internal::compiler::turboshaft::MemoryOptimizationReducer
Definition
pretenuring-propagation-reducer.h:218
v8::internal::compiler::turboshaft::PipelineData
Definition
phase.h:177
v8::internal::compiler::turboshaft::PretenuringPropagationReducer
Definition
pretenuring-propagation-reducer.h:221
v8::internal::compiler::turboshaft::StructuralOptimizationReducer
Definition
structural-optimization-reducer.h:82
v8::internal::compiler::turboshaft::ValueNumberingReducer
Definition
value-numbering-reducer.h:107
conversions-inl.h
copying-phase.h
js-heap-broker.h
late-escape-analysis-reducer.h
machine-optimization-reducer.h
memory-optimization-reducer.h
v8::internal::compiler::turboshaft
Definition
builtins.h:33
v8::internal::v8_flags
V8_EXPORT_PRIVATE FlagValues v8_flags
optimize-phase.h
pretenuring-propagation-reducer.h
required-optimization-reducer.h
roots-inl.h
structural-optimization-reducer.h
v8::internal::compiler::turboshaft::OptimizePhase::Run
void Run(PipelineData *data, Zone *temp_zone)
Definition
optimize-phase.cc:23
phase.h
value-numbering-reducer.h
variable-reducer.h
src
compiler
turboshaft
optimize-phase.cc
Generated on Sun Apr 6 2025 21:08:52 for v8 by
1.12.0