v8
V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.
Loading...
Searching...
No Matches
csa-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/csa-optimize-phase.h
"
6
7
#include "
src/compiler/js-heap-broker.h
"
8
#include "
src/compiler/turboshaft/branch-elimination-reducer.h
"
9
#include "
src/compiler/turboshaft/dead-code-elimination-reducer.h
"
10
#include "
src/compiler/turboshaft/late-escape-analysis-reducer.h
"
11
#include "
src/compiler/turboshaft/late-load-elimination-reducer.h
"
12
#include "
src/compiler/turboshaft/loop-unrolling-reducer.h
"
13
#include "
src/compiler/turboshaft/machine-lowering-reducer-inl.h
"
14
#include "
src/compiler/turboshaft/machine-optimization-reducer.h
"
15
#include "
src/compiler/turboshaft/memory-optimization-reducer.h
"
16
#include "
src/compiler/turboshaft/pretenuring-propagation-reducer.h
"
17
#include "
src/compiler/turboshaft/required-optimization-reducer.h
"
18
#include "
src/compiler/turboshaft/value-numbering-reducer.h
"
19
#include "
src/compiler/turboshaft/variable-reducer.h
"
20
#include "
src/numbers/conversions-inl.h
"
21
#include "
src/roots/roots-inl.h
"
22
23
namespace
v8::internal::compiler::turboshaft
{
24
25
void
CsaEarlyMachineOptimizationPhase::Run
(
PipelineData
* data,
26
Zone
* temp_zone) {
27
CopyingPhase<MachineOptimizationReducer, ValueNumberingReducer>::Run
(
28
data, temp_zone);
29
}
30
31
void
CsaLoadEliminationPhase::Run
(
PipelineData
* data,
Zone
* temp_zone) {
32
CopyingPhase
<
LateLoadEliminationReducer
,
MachineOptimizationReducer
,
33
ValueNumberingReducer
>
::Run
(data, temp_zone);
34
}
35
36
void
CsaLateEscapeAnalysisPhase::Run
(
PipelineData
* data,
Zone
* temp_zone) {
37
CopyingPhase
<
LateEscapeAnalysisReducer
,
MachineOptimizationReducer
,
38
ValueNumberingReducer
>
::Run
(data, temp_zone);
39
}
40
41
void
CsaBranchEliminationPhase::Run
(
PipelineData
* data,
Zone
* temp_zone) {
42
CopyingPhase
<
MachineOptimizationReducer
,
BranchEliminationReducer
,
43
ValueNumberingReducer
>
::Run
(data, temp_zone);
44
}
45
46
void
CsaOptimizePhase::Run
(
PipelineData
* data,
Zone
* temp_zone) {
47
UnparkedScopeIfNeeded
scope(data->broker(),
48
v8_flags
.turboshaft_trace_reduction);
49
50
CopyingPhase
<
PretenuringPropagationReducer
,
MachineOptimizationReducer
,
51
MemoryOptimizationReducer
,
52
ValueNumberingReducer
>
::Run
(data, temp_zone);
53
}
54
55
}
// namespace v8::internal::compiler::turboshaft
branch-elimination-reducer.h
v8::internal::Zone
Definition
zone.h:43
v8::internal::compiler::UnparkedScopeIfNeeded
Definition
js-heap-broker.h:548
v8::internal::compiler::turboshaft::BranchEliminationReducer
Definition
branch-elimination-reducer.h:26
v8::internal::compiler::turboshaft::CopyingPhase
Definition
copying-phase.h:1065
v8::internal::compiler::turboshaft::CopyingPhase::Run
static void Run(PipelineData *data, Zone *phase_zone)
Definition
copying-phase.h:1067
v8::internal::compiler::turboshaft::LateEscapeAnalysisReducer
Definition
late-escape-analysis-reducer.h:47
v8::internal::compiler::turboshaft::LateLoadEliminationReducer
Definition
late-load-elimination-reducer.h:778
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::ValueNumberingReducer
Definition
value-numbering-reducer.h:107
conversions-inl.h
csa-optimize-phase.h
dead-code-elimination-reducer.h
js-heap-broker.h
late-escape-analysis-reducer.h
late-load-elimination-reducer.h
loop-unrolling-reducer.h
machine-lowering-reducer-inl.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
pretenuring-propagation-reducer.h
required-optimization-reducer.h
roots-inl.h
v8::internal::compiler::turboshaft::CsaBranchEliminationPhase::Run
void Run(PipelineData *data, Zone *temp_zone)
Definition
csa-optimize-phase.cc:41
v8::internal::compiler::turboshaft::CsaEarlyMachineOptimizationPhase::Run
void Run(PipelineData *data, Zone *temp_zone)
Definition
csa-optimize-phase.cc:25
v8::internal::compiler::turboshaft::CsaLateEscapeAnalysisPhase::Run
void Run(PipelineData *data, Zone *temp_zone)
Definition
csa-optimize-phase.cc:36
v8::internal::compiler::turboshaft::CsaLoadEliminationPhase::Run
void Run(PipelineData *data, Zone *temp_zone)
Definition
csa-optimize-phase.cc:31
v8::internal::compiler::turboshaft::CsaOptimizePhase::Run
void Run(PipelineData *data, Zone *temp_zone)
Definition
csa-optimize-phase.cc:46
value-numbering-reducer.h
variable-reducer.h
src
compiler
turboshaft
csa-optimize-phase.cc
Generated on Sun Apr 6 2025 21:08:52 for v8 by
1.12.0