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_CODEGEN_TESTER_H_ | 5 #ifndef V8_CCTEST_COMPILER_CODEGEN_TESTER_H_ |
6 #define V8_CCTEST_COMPILER_CODEGEN_TESTER_H_ | 6 #define V8_CCTEST_COMPILER_CODEGEN_TESTER_H_ |
7 | 7 |
8 #include "src/v8.h" | 8 #include "src/v8.h" |
9 | 9 |
10 #include "src/compiler/pipeline.h" | 10 #include "src/compiler/pipeline.h" |
(...skipping 224 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
235 // A helper class for testing compares. Wraps a machine opcode and provides | 235 // A helper class for testing compares. Wraps a machine opcode and provides |
236 // evaluation routines and the operators. | 236 // evaluation routines and the operators. |
237 class CompareWrapper { | 237 class CompareWrapper { |
238 public: | 238 public: |
239 explicit CompareWrapper(IrOpcode::Value op) : opcode(op) {} | 239 explicit CompareWrapper(IrOpcode::Value op) : opcode(op) {} |
240 | 240 |
241 Node* MakeNode(RawMachineAssemblerTester<int32_t>* m, Node* a, Node* b) { | 241 Node* MakeNode(RawMachineAssemblerTester<int32_t>* m, Node* a, Node* b) { |
242 return m->NewNode(op(m->machine()), a, b); | 242 return m->NewNode(op(m->machine()), a, b); |
243 } | 243 } |
244 | 244 |
245 Operator* op(MachineOperatorBuilder* machine) { | 245 const Operator* op(MachineOperatorBuilder* machine) { |
246 switch (opcode) { | 246 switch (opcode) { |
247 case IrOpcode::kWord32Equal: | 247 case IrOpcode::kWord32Equal: |
248 return machine->Word32Equal(); | 248 return machine->Word32Equal(); |
249 case IrOpcode::kInt32LessThan: | 249 case IrOpcode::kInt32LessThan: |
250 return machine->Int32LessThan(); | 250 return machine->Int32LessThan(); |
251 case IrOpcode::kInt32LessThanOrEqual: | 251 case IrOpcode::kInt32LessThanOrEqual: |
252 return machine->Int32LessThanOrEqual(); | 252 return machine->Int32LessThanOrEqual(); |
253 case IrOpcode::kUint32LessThan: | 253 case IrOpcode::kUint32LessThan: |
254 return machine->Uint32LessThan(); | 254 return machine->Uint32LessThan(); |
255 case IrOpcode::kUint32LessThanOrEqual: | 255 case IrOpcode::kUint32LessThanOrEqual: |
(...skipping 73 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
329 | 329 |
330 void Run(RawMachineAssemblerTester<int32_t>* m); | 330 void Run(RawMachineAssemblerTester<int32_t>* m); |
331 void RunLeft(RawMachineAssemblerTester<int32_t>* m); | 331 void RunLeft(RawMachineAssemblerTester<int32_t>* m); |
332 void RunRight(RawMachineAssemblerTester<int32_t>* m); | 332 void RunRight(RawMachineAssemblerTester<int32_t>* m); |
333 }; | 333 }; |
334 } // namespace compiler | 334 } // namespace compiler |
335 } // namespace internal | 335 } // namespace internal |
336 } // namespace v8 | 336 } // namespace v8 |
337 | 337 |
338 #endif // V8_CCTEST_COMPILER_CODEGEN_TESTER_H_ | 338 #endif // V8_CCTEST_COMPILER_CODEGEN_TESTER_H_ |
OLD | NEW |