#include <string-builder-optimizer.h>
|
| Status | GetStatus (Node *node) const |
| |
| void | SetStatus (Node *node, State state, int id=kInvalidId) |
| |
| void | UpdateStatus (Node *node, State state) |
| |
| bool | IsLoopPhi (Node *node) const |
| |
| bool | LoopContains (Node *loop_phi, Node *node) |
| |
| int | GetStringBuilderIdForConcat (Node *node) |
| |
| void | ReplaceConcatInputIfNeeded (Node *node, int input_idx) |
| |
| bool | CheckNodeUses (Node *node, Node *concat_child, Status status) |
| |
| bool | CheckPreviousNodeUses (Node *child, Status status, int input_if_loop_phi=0) |
| |
| int | GetPhiPredecessorsCommonId (Node *node) |
| |
| void | FinalizeStringBuilders () |
| |
| void | VisitNode (Node *node, BasicBlock *block) |
| |
| void | VisitGraph () |
| |
Definition at line 214 of file string-builder-optimizer.h.
◆ State
| Enumerator |
|---|
| kUnvisited | |
| kBeginStringBuilder | |
| kInStringBuilder | |
| kPendingPhi | |
| kConfirmedInStringBuilder | |
| kEndStringBuilder | |
| kEndStringBuilderLoopPhi | |
| kInvalid | |
| kNumberOfState | |
Definition at line 268 of file string-builder-optimizer.h.
◆ StringBuilderOptimizer()
◆ BlockShouldFinalizeStringBuilders()
| bool v8::internal::compiler::StringBuilderOptimizer::BlockShouldFinalizeStringBuilders |
( |
BasicBlock * | block | ) |
|
◆ broker()
| JSHeapBroker * v8::internal::compiler::StringBuilderOptimizer::broker |
( |
| ) |
const |
|
inline |
◆ CheckNodeUses()
| bool v8::internal::compiler::StringBuilderOptimizer::CheckNodeUses |
( |
Node * | node, |
|
|
Node * | concat_child, |
|
|
Status | status ) |
|
private |
◆ CheckPreviousNodeUses()
| bool v8::internal::compiler::StringBuilderOptimizer::CheckPreviousNodeUses |
( |
Node * | child, |
|
|
Status | status, |
|
|
int | input_if_loop_phi = 0 ) |
|
private |
◆ ConcatIsInStringBuilder()
| bool v8::internal::compiler::StringBuilderOptimizer::ConcatIsInStringBuilder |
( |
Node * | node | ) |
|
◆ FinalizeStringBuilders()
| void v8::internal::compiler::StringBuilderOptimizer::FinalizeStringBuilders |
( |
| ) |
|
|
private |
◆ GetOneOrTwoByte()
◆ GetPhiPredecessorsCommonId()
| int v8::internal::compiler::StringBuilderOptimizer::GetPhiPredecessorsCommonId |
( |
Node * | node | ) |
|
|
private |
◆ GetStatus()
| Status v8::internal::compiler::StringBuilderOptimizer::GetStatus |
( |
Node * | node | ) |
const |
|
inlineprivate |
◆ GetStringBuilderIdForConcat()
| int v8::internal::compiler::StringBuilderOptimizer::GetStringBuilderIdForConcat |
( |
Node * | node | ) |
|
|
private |
◆ GetStringBuildersToFinalize()
◆ graph()
| TFGraph * v8::internal::compiler::StringBuilderOptimizer::graph |
( |
| ) |
const |
|
inline |
◆ IsFirstConcatInStringBuilder()
| bool v8::internal::compiler::StringBuilderOptimizer::IsFirstConcatInStringBuilder |
( |
Node * | node | ) |
|
◆ IsLoopPhi()
| bool v8::internal::compiler::StringBuilderOptimizer::IsLoopPhi |
( |
Node * | node | ) |
const |
|
inlineprivate |
◆ IsNonLoopPhiStringBuilderEnd()
| bool v8::internal::compiler::StringBuilderOptimizer::IsNonLoopPhiStringBuilderEnd |
( |
Node * | node | ) |
|
◆ IsStringBuilderConcatInput()
| bool v8::internal::compiler::StringBuilderOptimizer::IsStringBuilderConcatInput |
( |
Node * | node | ) |
|
◆ IsStringBuilderEnd()
| bool v8::internal::compiler::StringBuilderOptimizer::IsStringBuilderEnd |
( |
Node * | node | ) |
|
◆ jsgraph()
| JSGraph * v8::internal::compiler::StringBuilderOptimizer::jsgraph |
( |
| ) |
const |
|
inline |
◆ LoopContains()
| bool v8::internal::compiler::StringBuilderOptimizer::LoopContains |
( |
Node * | loop_phi, |
|
|
Node * | node ) |
|
inlineprivate |
◆ ReplaceConcatInputIfNeeded()
| void v8::internal::compiler::StringBuilderOptimizer::ReplaceConcatInputIfNeeded |
( |
Node * | node, |
|
|
int | input_idx ) |
|
private |
◆ Run()
| void v8::internal::compiler::StringBuilderOptimizer::Run |
( |
| ) |
|
◆ schedule()
| Schedule * v8::internal::compiler::StringBuilderOptimizer::schedule |
( |
| ) |
const |
|
inline |
◆ SetStatus()
| void v8::internal::compiler::StringBuilderOptimizer::SetStatus |
( |
Node * | node, |
|
|
State | state, |
|
|
int | id = kInvalidId ) |
|
inlineprivate |
◆ temp_zone()
| Zone * v8::internal::compiler::StringBuilderOptimizer::temp_zone |
( |
| ) |
const |
|
inline |
◆ UpdateStatus()
| void v8::internal::compiler::StringBuilderOptimizer::UpdateStatus |
( |
Node * | node, |
|
|
State | state ) |
|
inlineprivate |
◆ VisitGraph()
| void v8::internal::compiler::StringBuilderOptimizer::VisitGraph |
( |
| ) |
|
|
private |
◆ VisitNode()
| void v8::internal::compiler::StringBuilderOptimizer::VisitNode |
( |
Node * | node, |
|
|
BasicBlock * | block ) |
|
private |
◆ blocks_to_trimmings_map_
◆ broker_
| JSHeapBroker* v8::internal::compiler::StringBuilderOptimizer::broker_ |
|
private |
◆ jsgraph_
| JSGraph* v8::internal::compiler::StringBuilderOptimizer::jsgraph_ |
|
private |
◆ kAllowAnyStringOnTheRhs
| bool v8::internal::compiler::StringBuilderOptimizer::kAllowAnyStringOnTheRhs = false |
|
staticconstexprprivate |
◆ kInvalidId
| int v8::internal::compiler::StringBuilderOptimizer::kInvalidId = -1 |
|
staticconstexprprivate |
◆ kInvalidStringBuilder
| const StringBuilder v8::internal::compiler::StringBuilderOptimizer::kInvalidStringBuilder |
|
private |
◆ loop_headers_
◆ schedule_
| Schedule* v8::internal::compiler::StringBuilderOptimizer::schedule_ |
|
private |
◆ status_
◆ string_builder_count_
| unsigned int v8::internal::compiler::StringBuilderOptimizer::string_builder_count_ = 0 |
|
private |
◆ string_builders_
◆ temp_zone_
| Zone* v8::internal::compiler::StringBuilderOptimizer::temp_zone_ |
|
private |
The documentation for this class was generated from the following files: