Index: src/compiler/graph.h |
diff --git a/src/compiler/graph.h b/src/compiler/graph.h |
index 1e861c7b151e1bc6c18d8caddb455f599006d154..aa056c5a421547db9a8c2e59137534dc9a3ef7b3 100644 |
--- a/src/compiler/graph.h |
+++ b/src/compiler/graph.h |
@@ -66,43 +66,12 @@ class V8_EXPORT_PRIVATE Graph final : public NON_EXPORTED_BASE(ZoneObject) { |
Node* NewNode(const Operator* op) { |
return NewNode(op, 0, static_cast<Node* const*>(nullptr)); |
} |
- Node* NewNode(const Operator* op, Node* n1) { return NewNode(op, 1, &n1); } |
- Node* NewNode(const Operator* op, Node* n1, Node* n2) { |
- Node* nodes[] = {n1, n2}; |
- return NewNode(op, arraysize(nodes), nodes); |
- } |
- Node* NewNode(const Operator* op, Node* n1, Node* n2, Node* n3) { |
- Node* nodes[] = {n1, n2, n3}; |
- return NewNode(op, arraysize(nodes), nodes); |
- } |
- Node* NewNode(const Operator* op, Node* n1, Node* n2, Node* n3, Node* n4) { |
- Node* nodes[] = {n1, n2, n3, n4}; |
- return NewNode(op, arraysize(nodes), nodes); |
- } |
- Node* NewNode(const Operator* op, Node* n1, Node* n2, Node* n3, Node* n4, |
- Node* n5) { |
- Node* nodes[] = {n1, n2, n3, n4, n5}; |
- return NewNode(op, arraysize(nodes), nodes); |
- } |
- Node* NewNode(const Operator* op, Node* n1, Node* n2, Node* n3, Node* n4, |
- Node* n5, Node* n6) { |
- Node* nodes[] = {n1, n2, n3, n4, n5, n6}; |
- return NewNode(op, arraysize(nodes), nodes); |
- } |
- Node* NewNode(const Operator* op, Node* n1, Node* n2, Node* n3, Node* n4, |
- Node* n5, Node* n6, Node* n7) { |
- Node* nodes[] = {n1, n2, n3, n4, n5, n6, n7}; |
- return NewNode(op, arraysize(nodes), nodes); |
- } |
- Node* NewNode(const Operator* op, Node* n1, Node* n2, Node* n3, Node* n4, |
- Node* n5, Node* n6, Node* n7, Node* n8) { |
- Node* nodes[] = {n1, n2, n3, n4, n5, n6, n7, n8}; |
- return NewNode(op, arraysize(nodes), nodes); |
- } |
- Node* NewNode(const Operator* op, Node* n1, Node* n2, Node* n3, Node* n4, |
- Node* n5, Node* n6, Node* n7, Node* n8, Node* n9) { |
- Node* nodes[] = {n1, n2, n3, n4, n5, n6, n7, n8, n9}; |
- return NewNode(op, arraysize(nodes), nodes); |
+ Node* NewNode(const Operator* op, Node* n) { return NewNode(op, 1, &n); } |
titzer
2017/01/25 09:47:25
This is a nice simplification, but IIRC there was
bbudge
2017/01/26 02:04:43
Agreed. Changed to explicit overloads up to 17 par
|
+ // Factories for nodes with more than one input. |
+ template <typename... Nodes> |
+ Node* NewNode(const Operator* op, Nodes*... nodes) { |
+ Node* arr[] = {nodes...}; |
+ return NewNode(op, arraysize(arr), arr); |
} |
// Clone the {node}, and assign a new node id to the copy. |