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

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

Issue 1512023002: [turbofan] Change TruncateFloat32ToUint64 to TryTruncateFloat32ToUint64. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Added better mips64 code. 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/opcodes.h ('k') | src/compiler/raw-machine-assembler.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/base/adapters.h" 5 #include "src/base/adapters.h"
6 #include "src/compiler/instruction-selector-impl.h" 6 #include "src/compiler/instruction-selector-impl.h"
7 #include "src/compiler/node-matchers.h" 7 #include "src/compiler/node-matchers.h"
8 #include "src/compiler/node-properties.h" 8 #include "src/compiler/node-properties.h"
9 #include "src/ppc/frames-ppc.h" 9 #include "src/ppc/frames-ppc.h"
10 10
(...skipping 931 matching lines...) Expand 10 before | Expand all | Expand 10 after
942 942
943 Node* success_output = NodeProperties::FindProjection(node, 1); 943 Node* success_output = NodeProperties::FindProjection(node, 1);
944 if (success_output) { 944 if (success_output) {
945 outputs[output_count++] = g.DefineAsRegister(success_output); 945 outputs[output_count++] = g.DefineAsRegister(success_output);
946 } 946 }
947 947
948 Emit(kPPC_DoubleToInt64, output_count, outputs, 1, inputs); 948 Emit(kPPC_DoubleToInt64, output_count, outputs, 1, inputs);
949 } 949 }
950 950
951 951
952 void InstructionSelector::VisitTruncateFloat32ToUint64(Node* node) { 952 void InstructionSelector::VisitTryTruncateFloat32ToUint64(Node* node) {
953 if (NodeProperties::FindProjection(node, 1)) {
954 // TODO(ppc): implement the second return value.
955 UNIMPLEMENTED();
956 }
953 VisitRR(this, kPPC_DoubleToUint64, node); 957 VisitRR(this, kPPC_DoubleToUint64, node);
954 } 958 }
955 959
956 960
957 void InstructionSelector::VisitTryTruncateFloat64ToUint64(Node* node) { 961 void InstructionSelector::VisitTryTruncateFloat64ToUint64(Node* node) {
958 PPCOperandGenerator g(this); 962 PPCOperandGenerator g(this);
959 963
960 InstructionOperand inputs[] = {g.UseRegister(node->InputAt(0))}; 964 InstructionOperand inputs[] = {g.UseRegister(node->InputAt(0))};
961 InstructionOperand outputs[2]; 965 InstructionOperand outputs[2];
962 size_t output_count = 0; 966 size_t output_count = 0;
(...skipping 756 matching lines...) Expand 10 before | Expand all | Expand 10 after
1719 MachineOperatorBuilder::kFloat64RoundTruncate | 1723 MachineOperatorBuilder::kFloat64RoundTruncate |
1720 MachineOperatorBuilder::kFloat64RoundTiesAway | 1724 MachineOperatorBuilder::kFloat64RoundTiesAway |
1721 MachineOperatorBuilder::kWord32Popcnt | 1725 MachineOperatorBuilder::kWord32Popcnt |
1722 MachineOperatorBuilder::kWord64Popcnt; 1726 MachineOperatorBuilder::kWord64Popcnt;
1723 // We omit kWord32ShiftIsSafe as s[rl]w use 0x3f as a mask rather than 0x1f. 1727 // We omit kWord32ShiftIsSafe as s[rl]w use 0x3f as a mask rather than 0x1f.
1724 } 1728 }
1725 1729
1726 } // namespace compiler 1730 } // namespace compiler
1727 } // namespace internal 1731 } // namespace internal
1728 } // namespace v8 1732 } // namespace v8
OLDNEW
« no previous file with comments | « src/compiler/opcodes.h ('k') | src/compiler/raw-machine-assembler.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698