OLD | NEW |
1 // Copyright 2014 the V8 project authors. All rights reserved. | 1 // Copyright 2014 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef V8_CCTEST_COMPILER_GRAPH_BUILDER_TESTER_H_ | 5 #ifndef V8_CCTEST_COMPILER_GRAPH_BUILDER_TESTER_H_ |
6 #define V8_CCTEST_COMPILER_GRAPH_BUILDER_TESTER_H_ | 6 #define V8_CCTEST_COMPILER_GRAPH_BUILDER_TESTER_H_ |
7 | 7 |
8 #include "src/v8.h" | 8 #include "src/v8.h" |
9 #include "test/cctest/cctest.h" | 9 #include "test/cctest/cctest.h" |
10 | 10 |
11 #include "src/compiler/common-operator.h" | 11 #include "src/compiler/common-operator.h" |
12 #include "src/compiler/graph-builder.h" | 12 #include "src/compiler/graph-builder.h" |
13 #include "src/compiler/machine-operator.h" | 13 #include "src/compiler/machine-operator.h" |
14 #include "src/compiler/simplified-operator.h" | 14 #include "src/compiler/simplified-operator.h" |
15 #include "test/cctest/compiler/call-tester.h" | 15 #include "test/cctest/compiler/call-tester.h" |
16 #include "test/cctest/compiler/simplified-graph-builder.h" | 16 #include "test/cctest/compiler/simplified-graph-builder.h" |
17 | 17 |
18 namespace v8 { | 18 namespace v8 { |
19 namespace internal { | 19 namespace internal { |
20 namespace compiler { | 20 namespace compiler { |
21 | 21 |
22 // A class that just passes node creation on to the Graph. | |
23 class DirectGraphBuilder : public GraphBuilder { | |
24 public: | |
25 DirectGraphBuilder(Isolate* isolate, Graph* graph) | |
26 : GraphBuilder(isolate, graph) {} | |
27 virtual ~DirectGraphBuilder() {} | |
28 | |
29 protected: | |
30 virtual Node* MakeNode(const Operator* op, int value_input_count, | |
31 Node** value_inputs, bool incomplete) final { | |
32 return graph()->NewNode(op, value_input_count, value_inputs, incomplete); | |
33 } | |
34 }; | |
35 | |
36 | |
37 class MachineCallHelper : public CallHelper { | 22 class MachineCallHelper : public CallHelper { |
38 public: | 23 public: |
39 MachineCallHelper(Isolate* isolate, MachineSignature* machine_sig); | 24 MachineCallHelper(Isolate* isolate, MachineSignature* machine_sig); |
40 | 25 |
41 Node* Parameter(size_t index); | 26 Node* Parameter(size_t index); |
42 | 27 |
43 void GenerateCode() { Generate(); } | 28 void GenerateCode() { Generate(); } |
44 | 29 |
45 protected: | 30 protected: |
46 virtual byte* Generate(); | 31 virtual byte* Generate(); |
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
101 } | 86 } |
102 virtual ~GraphBuilderTester() {} | 87 virtual ~GraphBuilderTester() {} |
103 | 88 |
104 Factory* factory() const { return isolate()->factory(); } | 89 Factory* factory() const { return isolate()->factory(); } |
105 }; | 90 }; |
106 } // namespace compiler | 91 } // namespace compiler |
107 } // namespace internal | 92 } // namespace internal |
108 } // namespace v8 | 93 } // namespace v8 |
109 | 94 |
110 #endif // V8_CCTEST_COMPILER_GRAPH_BUILDER_TESTER_H_ | 95 #endif // V8_CCTEST_COMPILER_GRAPH_BUILDER_TESTER_H_ |
OLD | NEW |