// Copyright 2017 the V8 project authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef V8_COMPILER_ESCAPE_ANALYSIS_REDUCER_H_ #define V8_COMPILER_ESCAPE_ANALYSIS_REDUCER_H_ #include "src/base/compiler-specific.h" #include "src/common/globals.h" #include "src/compiler/escape-analysis.h" #include "src/compiler/graph-reducer.h" namespace v8 { namespace internal { namespace compiler { class Deduplicator; class JSGraph; // Perform hash-consing when creating or mutating nodes. Used to avoid duplicate // nodes when creating ObjectState, StateValues and FrameState nodes class NodeHashCache { … }; // Modify the graph according to the information computed in the previous phase. class V8_EXPORT_PRIVATE EscapeAnalysisReducer final : public NON_EXPORTED_BASE(AdvancedReducer) { … }; } // namespace compiler } // namespace internal } // namespace v8 #endif // V8_COMPILER_ESCAPE_ANALYSIS_REDUCER_H_