| 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 #include <limits> | 5 #include <limits> |
| 6 | 6 |
| 7 #include "test/cctest/cctest.h" | 7 #include "test/cctest/cctest.h" |
| 8 #include "test/cctest/compiler/codegen-tester.h" | 8 #include "test/cctest/compiler/codegen-tester.h" |
| 9 #include "test/cctest/compiler/graph-builder-tester.h" | 9 #include "test/cctest/compiler/graph-builder-tester.h" |
| 10 #include "test/cctest/compiler/value-helper.h" | 10 #include "test/cctest/compiler/value-helper.h" |
| (...skipping 515 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 526 RepresentationChangerTester r; | 526 RepresentationChangerTester r; |
| 527 | 527 |
| 528 CheckChange(IrOpcode::kChangeTaggedToInt32, MachineRepresentation::kTagged, | 528 CheckChange(IrOpcode::kChangeTaggedToInt32, MachineRepresentation::kTagged, |
| 529 Type::Signed32(), MachineRepresentation::kWord32); | 529 Type::Signed32(), MachineRepresentation::kWord32); |
| 530 CheckChange(IrOpcode::kChangeTaggedToUint32, MachineRepresentation::kTagged, | 530 CheckChange(IrOpcode::kChangeTaggedToUint32, MachineRepresentation::kTagged, |
| 531 Type::Unsigned32(), MachineRepresentation::kWord32); | 531 Type::Unsigned32(), MachineRepresentation::kWord32); |
| 532 CheckChange(IrOpcode::kChangeInt32ToFloat64, MachineRepresentation::kWord32, | 532 CheckChange(IrOpcode::kChangeInt32ToFloat64, MachineRepresentation::kWord32, |
| 533 Type::None(), MachineRepresentation::kFloat64); | 533 Type::None(), MachineRepresentation::kFloat64); |
| 534 CheckChange(IrOpcode::kChangeFloat64ToInt32, MachineRepresentation::kFloat64, | 534 CheckChange(IrOpcode::kChangeFloat64ToInt32, MachineRepresentation::kFloat64, |
| 535 Type::Signed32(), MachineRepresentation::kWord32); | 535 Type::Signed32(), MachineRepresentation::kWord32); |
| 536 CheckChange(IrOpcode::kTruncateFloat64ToInt32, | 536 CheckChange(IrOpcode::kTruncateFloat64ToWord32, |
| 537 MachineRepresentation::kFloat64, Type::Number(), | 537 MachineRepresentation::kFloat64, Type::Number(), |
| 538 MachineRepresentation::kWord32); | 538 MachineRepresentation::kWord32); |
| 539 | 539 |
| 540 CheckTwoChanges(IrOpcode::kChangeInt32ToFloat64, | 540 CheckTwoChanges(IrOpcode::kChangeInt32ToFloat64, |
| 541 IrOpcode::kTruncateFloat64ToFloat32, | 541 IrOpcode::kTruncateFloat64ToFloat32, |
| 542 MachineRepresentation::kWord32, Type::None(), | 542 MachineRepresentation::kWord32, Type::None(), |
| 543 MachineRepresentation::kFloat32); | 543 MachineRepresentation::kFloat32); |
| 544 CheckTwoChanges(IrOpcode::kChangeFloat32ToFloat64, | 544 CheckTwoChanges(IrOpcode::kChangeFloat32ToFloat64, |
| 545 IrOpcode::kTruncateFloat64ToInt32, | 545 IrOpcode::kTruncateFloat64ToWord32, |
| 546 MachineRepresentation::kFloat32, Type::Number(), | 546 MachineRepresentation::kFloat32, Type::Number(), |
| 547 MachineRepresentation::kWord32); | 547 MachineRepresentation::kWord32); |
| 548 } | 548 } |
| 549 | 549 |
| 550 | 550 |
| 551 TEST(Nops) { | 551 TEST(Nops) { |
| 552 RepresentationChangerTester r; | 552 RepresentationChangerTester r; |
| 553 | 553 |
| 554 // X -> X is always a nop for any single representation X. | 554 // X -> X is always a nop for any single representation X. |
| 555 for (size_t i = 0; i < arraysize(kMachineTypes); i++) { | 555 for (size_t i = 0; i < arraysize(kMachineTypes); i++) { |
| (...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 641 MachineRepresentation::kWord64); | 641 MachineRepresentation::kWord64); |
| 642 r.CheckTypeError(MachineRepresentation::kWord32, Type::Signed32(), | 642 r.CheckTypeError(MachineRepresentation::kWord32, Type::Signed32(), |
| 643 MachineRepresentation::kWord64); | 643 MachineRepresentation::kWord64); |
| 644 r.CheckTypeError(MachineRepresentation::kWord32, Type::Unsigned32(), | 644 r.CheckTypeError(MachineRepresentation::kWord32, Type::Unsigned32(), |
| 645 MachineRepresentation::kWord64); | 645 MachineRepresentation::kWord64); |
| 646 } | 646 } |
| 647 | 647 |
| 648 } // namespace compiler | 648 } // namespace compiler |
| 649 } // namespace internal | 649 } // namespace internal |
| 650 } // namespace v8 | 650 } // namespace v8 |
| OLD | NEW |