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/compiler/instruction-selector.h" | 8 #include "src/compiler/instruction-selector.h" |
9 #include "src/compiler/pipeline.h" | 9 #include "src/compiler/pipeline.h" |
10 #include "src/compiler/raw-machine-assembler.h" | 10 #include "src/compiler/raw-machine-assembler.h" |
(...skipping 351 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
362 // A helper class for testing code sequences that take two int parameters and | 362 // A helper class for testing code sequences that take two int parameters and |
363 // return an int value. | 363 // return an int value. |
364 class Int32BinopTester : public BinopTester<int32_t, USE_RETURN_REGISTER> { | 364 class Int32BinopTester : public BinopTester<int32_t, USE_RETURN_REGISTER> { |
365 public: | 365 public: |
366 explicit Int32BinopTester(RawMachineAssemblerTester<int32_t>* tester) | 366 explicit Int32BinopTester(RawMachineAssemblerTester<int32_t>* tester) |
367 : BinopTester<int32_t, USE_RETURN_REGISTER>(tester, | 367 : BinopTester<int32_t, USE_RETURN_REGISTER>(tester, |
368 MachineType::Int32()) {} | 368 MachineType::Int32()) {} |
369 }; | 369 }; |
370 | 370 |
371 | 371 |
| 372 // A helper class for testing code sequences that take two int parameters and |
| 373 // return an int value. |
| 374 class Int64BinopTester : public BinopTester<int64_t, USE_RETURN_REGISTER> { |
| 375 public: |
| 376 explicit Int64BinopTester(RawMachineAssemblerTester<int32_t>* tester) |
| 377 : BinopTester<int64_t, USE_RETURN_REGISTER>(tester, |
| 378 MachineType::Int64()) {} |
| 379 }; |
| 380 |
| 381 |
372 // A helper class for testing code sequences that take two uint parameters and | 382 // A helper class for testing code sequences that take two uint parameters and |
373 // return an uint value. | 383 // return an uint value. |
374 class Uint32BinopTester : public BinopTester<uint32_t, USE_RETURN_REGISTER> { | 384 class Uint32BinopTester : public BinopTester<uint32_t, USE_RETURN_REGISTER> { |
375 public: | 385 public: |
376 explicit Uint32BinopTester(RawMachineAssemblerTester<int32_t>* tester) | 386 explicit Uint32BinopTester(RawMachineAssemblerTester<int32_t>* tester) |
377 : BinopTester<uint32_t, USE_RETURN_REGISTER>(tester, | 387 : BinopTester<uint32_t, USE_RETURN_REGISTER>(tester, |
378 MachineType::Uint32()) {} | 388 MachineType::Uint32()) {} |
379 | 389 |
380 uint32_t call(uint32_t a0, uint32_t a1) { | 390 uint32_t call(uint32_t a0, uint32_t a1) { |
381 p0 = a0; | 391 p0 = a0; |
(...skipping 161 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
543 } else { | 553 } else { |
544 CHECK_EQ(x, y); | 554 CHECK_EQ(x, y); |
545 } | 555 } |
546 } | 556 } |
547 | 557 |
548 } // namespace compiler | 558 } // namespace compiler |
549 } // namespace internal | 559 } // namespace internal |
550 } // namespace v8 | 560 } // namespace v8 |
551 | 561 |
552 #endif // V8_CCTEST_COMPILER_CODEGEN_TESTER_H_ | 562 #endif // V8_CCTEST_COMPILER_CODEGEN_TESTER_H_ |
OLD | NEW |