v8
V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.
Loading...
Searching...
No Matches
wasm-escape-analysis.h
Go to the documentation of this file.
1// Copyright 2021 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#ifndef V8_COMPILER_WASM_ESCAPE_ANALYSIS_H_
6#define V8_COMPILER_WASM_ESCAPE_ANALYSIS_H_
7
8#if !V8_ENABLE_WEBASSEMBLY
9#error This header should only be included if WebAssembly is enabled.
10#endif // !V8_ENABLE_WEBASSEMBLY
11
13
14namespace v8 {
15namespace internal {
16namespace compiler {
17
18class MachineGraph;
19
20// Eliminate allocated objects with no uses other than as store targets.
21// Future work: Also exclude phis and renamings from uses.
22class WasmEscapeAnalysis final : public AdvancedReducer {
23 public:
25 : AdvancedReducer(editor), mcgraph_(mcgraph) {}
26
27 const char* reducer_name() const override { return "WasmEscapeAnalysis"; }
28
29 Reduction Reduce(Node* node) final;
30
31 private:
34};
35
36} // namespace compiler
37} // namespace internal
38} // namespace v8
39
40#endif // V8_COMPILER_WASM_ESCAPE_ANALYSIS_H_
WasmEscapeAnalysis(Editor *editor, MachineGraph *mcgraph)