summaryrefslogtreecommitdiff
path: root/deps/v8/src/compiler/backend/bitcast-elider.h
diff options
context:
space:
mode:
Diffstat (limited to 'deps/v8/src/compiler/backend/bitcast-elider.h')
-rw-r--r--deps/v8/src/compiler/backend/bitcast-elider.h9
1 files changed, 6 insertions, 3 deletions
diff --git a/deps/v8/src/compiler/backend/bitcast-elider.h b/deps/v8/src/compiler/backend/bitcast-elider.h
index b20d127a98..cc6b3653e6 100644
--- a/deps/v8/src/compiler/backend/bitcast-elider.h
+++ b/deps/v8/src/compiler/backend/bitcast-elider.h
@@ -15,16 +15,18 @@ namespace compiler {
class Graph;
-// Elide all the Bitcast nodes which are required by MachineGraphVerifier. This
-// avoid generating redundant move instructions in instruction selection phase.
+// Elide all the Bitcast and TruncateInt64ToInt32 nodes which are required by
+// MachineGraphVerifier. This avoid generating redundant move instructions in
+// instruction selection phase.
class BitcastElider {
public:
- BitcastElider(Zone* zone, Graph* graph);
+ BitcastElider(Zone* zone, Graph* graph, bool is_builtin);
~BitcastElider() = default;
void Reduce();
void Enqueue(Node* node);
+ void Revisit(Node* node);
void VisitNode(Node* node);
void ProcessGraph();
@@ -32,6 +34,7 @@ class BitcastElider {
Graph* const graph_;
ZoneQueue<Node*> to_visit_;
NodeMarker<bool> seen_;
+ bool is_builtin_;
};
} // namespace compiler