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/compiler/instruction-selector.h" | 5 #include "src/compiler/instruction-selector.h" |
6 | 6 |
7 #include <limits> | 7 #include <limits> |
8 | 8 |
9 #include "src/base/adapters.h" | 9 #include "src/base/adapters.h" |
10 #include "src/compiler/instruction-selector-impl.h" | 10 #include "src/compiler/instruction-selector-impl.h" |
(...skipping 692 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
703 case IrOpcode::kChangeInt32ToInt64: | 703 case IrOpcode::kChangeInt32ToInt64: |
704 return MarkAsWord64(node), VisitChangeInt32ToInt64(node); | 704 return MarkAsWord64(node), VisitChangeInt32ToInt64(node); |
705 case IrOpcode::kChangeUint32ToUint64: | 705 case IrOpcode::kChangeUint32ToUint64: |
706 return MarkAsWord64(node), VisitChangeUint32ToUint64(node); | 706 return MarkAsWord64(node), VisitChangeUint32ToUint64(node); |
707 case IrOpcode::kTruncateFloat64ToFloat32: | 707 case IrOpcode::kTruncateFloat64ToFloat32: |
708 return MarkAsFloat32(node), VisitTruncateFloat64ToFloat32(node); | 708 return MarkAsFloat32(node), VisitTruncateFloat64ToFloat32(node); |
709 case IrOpcode::kTruncateFloat64ToInt32: | 709 case IrOpcode::kTruncateFloat64ToInt32: |
710 return MarkAsWord32(node), VisitTruncateFloat64ToInt32(node); | 710 return MarkAsWord32(node), VisitTruncateFloat64ToInt32(node); |
711 case IrOpcode::kTruncateInt64ToInt32: | 711 case IrOpcode::kTruncateInt64ToInt32: |
712 return MarkAsWord32(node), VisitTruncateInt64ToInt32(node); | 712 return MarkAsWord32(node), VisitTruncateInt64ToInt32(node); |
| 713 case IrOpcode::kRoundInt64ToFloat64: |
| 714 return MarkAsFloat64(node), VisitRoundInt64ToFloat64(node); |
713 case IrOpcode::kBitcastFloat32ToInt32: | 715 case IrOpcode::kBitcastFloat32ToInt32: |
714 return MarkAsWord32(node), VisitBitcastFloat32ToInt32(node); | 716 return MarkAsWord32(node), VisitBitcastFloat32ToInt32(node); |
715 case IrOpcode::kBitcastFloat64ToInt64: | 717 case IrOpcode::kBitcastFloat64ToInt64: |
716 return MarkAsWord64(node), VisitBitcastFloat64ToInt64(node); | 718 return MarkAsWord64(node), VisitBitcastFloat64ToInt64(node); |
717 case IrOpcode::kBitcastInt32ToFloat32: | 719 case IrOpcode::kBitcastInt32ToFloat32: |
718 return MarkAsFloat32(node), VisitBitcastInt32ToFloat32(node); | 720 return MarkAsFloat32(node), VisitBitcastInt32ToFloat32(node); |
719 case IrOpcode::kBitcastInt64ToFloat64: | 721 case IrOpcode::kBitcastInt64ToFloat64: |
720 return MarkAsFloat64(node), VisitBitcastInt64ToFloat64(node); | 722 return MarkAsFloat64(node), VisitBitcastInt64ToFloat64(node); |
721 case IrOpcode::kFloat32Add: | 723 case IrOpcode::kFloat32Add: |
722 return MarkAsFloat32(node), VisitFloat32Add(node); | 724 return MarkAsFloat32(node), VisitFloat32Add(node); |
(...skipping 194 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
917 void InstructionSelector::VisitChangeUint32ToUint64(Node* node) { | 919 void InstructionSelector::VisitChangeUint32ToUint64(Node* node) { |
918 UNIMPLEMENTED(); | 920 UNIMPLEMENTED(); |
919 } | 921 } |
920 | 922 |
921 | 923 |
922 void InstructionSelector::VisitTruncateInt64ToInt32(Node* node) { | 924 void InstructionSelector::VisitTruncateInt64ToInt32(Node* node) { |
923 UNIMPLEMENTED(); | 925 UNIMPLEMENTED(); |
924 } | 926 } |
925 | 927 |
926 | 928 |
| 929 void InstructionSelector::VisitRoundInt64ToFloat64(Node* node) { |
| 930 UNIMPLEMENTED(); |
| 931 } |
| 932 |
| 933 |
927 void InstructionSelector::VisitBitcastFloat64ToInt64(Node* node) { | 934 void InstructionSelector::VisitBitcastFloat64ToInt64(Node* node) { |
928 UNIMPLEMENTED(); | 935 UNIMPLEMENTED(); |
929 } | 936 } |
930 | 937 |
931 | 938 |
932 void InstructionSelector::VisitBitcastInt64ToFloat64(Node* node) { | 939 void InstructionSelector::VisitBitcastInt64ToFloat64(Node* node) { |
933 UNIMPLEMENTED(); | 940 UNIMPLEMENTED(); |
934 } | 941 } |
935 | 942 |
936 #endif // V8_TARGET_ARCH_32_BIT | 943 #endif // V8_TARGET_ARCH_32_BIT |
(...skipping 364 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1301 for (StateValuesAccess::TypedNode input_node : StateValuesAccess(stack)) { | 1308 for (StateValuesAccess::TypedNode input_node : StateValuesAccess(stack)) { |
1302 inputs->push_back(OperandForDeopt(&g, input_node.node, kind)); | 1309 inputs->push_back(OperandForDeopt(&g, input_node.node, kind)); |
1303 descriptor->SetType(value_index++, input_node.type); | 1310 descriptor->SetType(value_index++, input_node.type); |
1304 } | 1311 } |
1305 DCHECK(value_index == descriptor->GetSize()); | 1312 DCHECK(value_index == descriptor->GetSize()); |
1306 } | 1313 } |
1307 | 1314 |
1308 } // namespace compiler | 1315 } // namespace compiler |
1309 } // namespace internal | 1316 } // namespace internal |
1310 } // namespace v8 | 1317 } // namespace v8 |
OLD | NEW |