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 "src/base/adapters.h" | 5 #include "src/base/adapters.h" |
6 #include "src/base/bits.h" | 6 #include "src/base/bits.h" |
7 #include "src/compiler/instruction-selector-impl.h" | 7 #include "src/compiler/instruction-selector-impl.h" |
8 #include "src/compiler/node-matchers.h" | 8 #include "src/compiler/node-matchers.h" |
9 #include "src/compiler/node-properties.h" | 9 #include "src/compiler/node-properties.h" |
10 | 10 |
(...skipping 694 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
705 void InstructionSelector::VisitChangeFloat64ToUint32(Node* node) { | 705 void InstructionSelector::VisitChangeFloat64ToUint32(Node* node) { |
706 VisitRR(this, kMips64TruncUwD, node); | 706 VisitRR(this, kMips64TruncUwD, node); |
707 } | 707 } |
708 | 708 |
709 | 709 |
710 void InstructionSelector::VisitChangeFloat64ToInt64(Node* node) { | 710 void InstructionSelector::VisitChangeFloat64ToInt64(Node* node) { |
711 VisitRR(this, kMips64TruncLD, node); | 711 VisitRR(this, kMips64TruncLD, node); |
712 } | 712 } |
713 | 713 |
714 | 714 |
| 715 void InstructionSelector::VisitTruncateFloat64ToUint64(Node* node) { |
| 716 UNIMPLEMENTED(); |
| 717 } |
| 718 |
| 719 |
715 void InstructionSelector::VisitChangeInt32ToInt64(Node* node) { | 720 void InstructionSelector::VisitChangeInt32ToInt64(Node* node) { |
716 Mips64OperandGenerator g(this); | 721 Mips64OperandGenerator g(this); |
717 Emit(kMips64Shl, g.DefineAsRegister(node), g.UseRegister(node->InputAt(0)), | 722 Emit(kMips64Shl, g.DefineAsRegister(node), g.UseRegister(node->InputAt(0)), |
718 g.TempImmediate(0)); | 723 g.TempImmediate(0)); |
719 } | 724 } |
720 | 725 |
721 | 726 |
722 void InstructionSelector::VisitChangeUint32ToUint64(Node* node) { | 727 void InstructionSelector::VisitChangeUint32ToUint64(Node* node) { |
723 Mips64OperandGenerator g(this); | 728 Mips64OperandGenerator g(this); |
724 Emit(kMips64Dext, g.DefineAsRegister(node), g.UseRegister(node->InputAt(0)), | 729 Emit(kMips64Dext, g.DefineAsRegister(node), g.UseRegister(node->InputAt(0)), |
(...skipping 833 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1558 MachineOperatorBuilder::kFloat32Max | | 1563 MachineOperatorBuilder::kFloat32Max | |
1559 MachineOperatorBuilder::kFloat64RoundDown | | 1564 MachineOperatorBuilder::kFloat64RoundDown | |
1560 MachineOperatorBuilder::kFloat64RoundUp | | 1565 MachineOperatorBuilder::kFloat64RoundUp | |
1561 MachineOperatorBuilder::kFloat64RoundTruncate | | 1566 MachineOperatorBuilder::kFloat64RoundTruncate | |
1562 MachineOperatorBuilder::kFloat64RoundTiesEven; | 1567 MachineOperatorBuilder::kFloat64RoundTiesEven; |
1563 } | 1568 } |
1564 | 1569 |
1565 } // namespace compiler | 1570 } // namespace compiler |
1566 } // namespace internal | 1571 } // namespace internal |
1567 } // namespace v8 | 1572 } // namespace v8 |
OLD | NEW |