Index: src/compiler/bytecode-graph-builder.h |
diff --git a/src/compiler/bytecode-graph-builder.h b/src/compiler/bytecode-graph-builder.h |
index 1a39ee05f221e919fdfd487f9620e7faa1e170de..f26ab210e8ce259e930ae587cb85f8582bd0455a 100644 |
--- a/src/compiler/bytecode-graph-builder.h |
+++ b/src/compiler/bytecode-graph-builder.h |
@@ -134,6 +134,10 @@ |
// to the given node and the output value produced by the node is combined. |
// Conceptually this frame state is "after" a given operation. |
void PrepareFrameState(Node* node, OutputFrameStateCombine combine); |
+ |
+ // Computes register liveness and replaces dead ones in frame states with the |
+ // undefined values. |
+ void ClearNonLiveSlotsInFrameStates(); |
void BuildCreateArguments(CreateArgumentsType type); |
Node* BuildLoadGlobal(Handle<Name> name, uint32_t feedback_slot_index, |
@@ -256,6 +260,8 @@ |
bytecode_analysis_ = bytecode_analysis; |
} |
+ LivenessAnalyzer* liveness_analyzer() { return &liveness_analyzer_; } |
+ |
bool IsLivenessAnalysisEnabled() const { |
return this->is_liveness_analysis_enabled_; |
} |
@@ -301,6 +307,9 @@ |
StateValuesCache state_values_cache_; |
+ // Analyzer of register liveness. |
+ LivenessAnalyzer liveness_analyzer_; |
+ |
// The Turbofan source position table, to be populated. |
SourcePositionTable* source_positions_; |