Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(205)

Side by Side Diff: src/compiler/instruction-selector.cc

Issue 1476063002: [turbofan] Implemented the TruncateFloat32ToInt64 TurboFan operator. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Increased the type of opcodes from uint8_t to uint16_t. Created 5 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « src/compiler/arm64/instruction-selector-arm64.cc ('k') | src/compiler/machine-operator.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 829 matching lines...) Expand 10 before | Expand all | Expand 10 after
840 case IrOpcode::kChangeFloat32ToFloat64: 840 case IrOpcode::kChangeFloat32ToFloat64:
841 return MarkAsFloat64(node), VisitChangeFloat32ToFloat64(node); 841 return MarkAsFloat64(node), VisitChangeFloat32ToFloat64(node);
842 case IrOpcode::kChangeInt32ToFloat64: 842 case IrOpcode::kChangeInt32ToFloat64:
843 return MarkAsFloat64(node), VisitChangeInt32ToFloat64(node); 843 return MarkAsFloat64(node), VisitChangeInt32ToFloat64(node);
844 case IrOpcode::kChangeUint32ToFloat64: 844 case IrOpcode::kChangeUint32ToFloat64:
845 return MarkAsFloat64(node), VisitChangeUint32ToFloat64(node); 845 return MarkAsFloat64(node), VisitChangeUint32ToFloat64(node);
846 case IrOpcode::kChangeFloat64ToInt32: 846 case IrOpcode::kChangeFloat64ToInt32:
847 return MarkAsWord32(node), VisitChangeFloat64ToInt32(node); 847 return MarkAsWord32(node), VisitChangeFloat64ToInt32(node);
848 case IrOpcode::kChangeFloat64ToUint32: 848 case IrOpcode::kChangeFloat64ToUint32:
849 return MarkAsWord32(node), VisitChangeFloat64ToUint32(node); 849 return MarkAsWord32(node), VisitChangeFloat64ToUint32(node);
850 case IrOpcode::kTruncateFloat32ToInt64:
851 return MarkAsWord64(node), VisitTruncateFloat32ToInt64(node);
850 case IrOpcode::kTruncateFloat64ToInt64: 852 case IrOpcode::kTruncateFloat64ToInt64:
851 return MarkAsWord64(node), VisitTruncateFloat64ToInt64(node); 853 return MarkAsWord64(node), VisitTruncateFloat64ToInt64(node);
852 case IrOpcode::kTruncateFloat64ToUint64: 854 case IrOpcode::kTruncateFloat64ToUint64:
853 return MarkAsWord64(node), VisitTruncateFloat64ToUint64(node); 855 return MarkAsWord64(node), VisitTruncateFloat64ToUint64(node);
854 case IrOpcode::kChangeInt32ToInt64: 856 case IrOpcode::kChangeInt32ToInt64:
855 return MarkAsWord64(node), VisitChangeInt32ToInt64(node); 857 return MarkAsWord64(node), VisitChangeInt32ToInt64(node);
856 case IrOpcode::kChangeUint32ToUint64: 858 case IrOpcode::kChangeUint32ToUint64:
857 return MarkAsWord64(node), VisitChangeUint32ToUint64(node); 859 return MarkAsWord64(node), VisitChangeUint32ToUint64(node);
858 case IrOpcode::kTruncateFloat64ToFloat32: 860 case IrOpcode::kTruncateFloat64ToFloat32:
859 return MarkAsFloat32(node), VisitTruncateFloat64ToFloat32(node); 861 return MarkAsFloat32(node), VisitTruncateFloat64ToFloat32(node);
(...skipping 232 matching lines...) Expand 10 before | Expand all | Expand 10 after
1092 void InstructionSelector::VisitChangeInt32ToInt64(Node* node) { 1094 void InstructionSelector::VisitChangeInt32ToInt64(Node* node) {
1093 UNIMPLEMENTED(); 1095 UNIMPLEMENTED();
1094 } 1096 }
1095 1097
1096 1098
1097 void InstructionSelector::VisitChangeUint32ToUint64(Node* node) { 1099 void InstructionSelector::VisitChangeUint32ToUint64(Node* node) {
1098 UNIMPLEMENTED(); 1100 UNIMPLEMENTED();
1099 } 1101 }
1100 1102
1101 1103
1104 void InstructionSelector::VisitTruncateFloat32ToInt64(Node* node) {
1105 UNIMPLEMENTED();
1106 }
1107
1108
1102 void InstructionSelector::VisitTruncateFloat64ToInt64(Node* node) { 1109 void InstructionSelector::VisitTruncateFloat64ToInt64(Node* node) {
1103 UNIMPLEMENTED(); 1110 UNIMPLEMENTED();
1104 } 1111 }
1105 1112
1106 1113
1107 void InstructionSelector::VisitTruncateFloat64ToUint64(Node* node) { 1114 void InstructionSelector::VisitTruncateFloat64ToUint64(Node* node) {
1108 UNIMPLEMENTED(); 1115 UNIMPLEMENTED();
1109 } 1116 }
1110 1117
1111 1118
(...skipping 351 matching lines...) Expand 10 before | Expand all | Expand 10 after
1463 return new (instruction_zone()) FrameStateDescriptor( 1470 return new (instruction_zone()) FrameStateDescriptor(
1464 instruction_zone(), state_info.type(), state_info.bailout_id(), 1471 instruction_zone(), state_info.type(), state_info.bailout_id(),
1465 state_info.state_combine(), parameters, locals, stack, 1472 state_info.state_combine(), parameters, locals, stack,
1466 state_info.shared_info(), outer_state); 1473 state_info.shared_info(), outer_state);
1467 } 1474 }
1468 1475
1469 1476
1470 } // namespace compiler 1477 } // namespace compiler
1471 } // namespace internal 1478 } // namespace internal
1472 } // namespace v8 1479 } // namespace v8
OLDNEW
« no previous file with comments | « src/compiler/arm64/instruction-selector-arm64.cc ('k') | src/compiler/machine-operator.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698