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

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

Issue 2065503002: [builtins] Introduce proper Float64Atan and Float64Atan2 operators. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: [WIP] Fix GCC/Win32. Created 4 years, 6 months 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/x64/code-generator-x64.cc ('k') | src/counters.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 <algorithm> 5 #include <algorithm>
6 6
7 #include "src/base/adapters.h" 7 #include "src/base/adapters.h"
8 #include "src/compiler/instruction-selector-impl.h" 8 #include "src/compiler/instruction-selector-impl.h"
9 #include "src/compiler/node-matchers.h" 9 #include "src/compiler/node-matchers.h"
10 #include "src/compiler/node-properties.h" 10 #include "src/compiler/node-properties.h"
(...skipping 1390 matching lines...) Expand 10 before | Expand all | Expand 10 after
1401 1401
1402 1402
1403 void InstructionSelector::VisitFloat64RoundTiesEven(Node* node) { 1403 void InstructionSelector::VisitFloat64RoundTiesEven(Node* node) {
1404 VisitRR(this, node, kSSEFloat64Round | MiscField::encode(kRoundToNearest)); 1404 VisitRR(this, node, kSSEFloat64Round | MiscField::encode(kRoundToNearest));
1405 } 1405 }
1406 1406
1407 void InstructionSelector::VisitFloat32Neg(Node* node) { UNREACHABLE(); } 1407 void InstructionSelector::VisitFloat32Neg(Node* node) { UNREACHABLE(); }
1408 1408
1409 void InstructionSelector::VisitFloat64Neg(Node* node) { UNREACHABLE(); } 1409 void InstructionSelector::VisitFloat64Neg(Node* node) { UNREACHABLE(); }
1410 1410
1411 void InstructionSelector::VisitFloat64Ieee754Binop(Node* node,
1412 InstructionCode opcode) {
1413 X64OperandGenerator g(this);
1414 Emit(opcode, g.DefineAsFixed(node, xmm0), g.UseFixed(node->InputAt(0), xmm0),
1415 g.UseFixed(node->InputAt(1), xmm1))
1416 ->MarkAsCall();
1417 }
1418
1411 void InstructionSelector::VisitFloat64Ieee754Unop(Node* node, 1419 void InstructionSelector::VisitFloat64Ieee754Unop(Node* node,
1412 InstructionCode opcode) { 1420 InstructionCode opcode) {
1413 X64OperandGenerator g(this); 1421 X64OperandGenerator g(this);
1414 Emit(opcode, g.DefineAsFixed(node, xmm0), g.UseFixed(node->InputAt(0), xmm0)) 1422 Emit(opcode, g.DefineAsFixed(node, xmm0), g.UseFixed(node->InputAt(0), xmm0))
1415 ->MarkAsCall(); 1423 ->MarkAsCall();
1416 } 1424 }
1417 1425
1418 void InstructionSelector::EmitPrepareArguments( 1426 void InstructionSelector::EmitPrepareArguments(
1419 ZoneVector<PushParameter>* arguments, const CallDescriptor* descriptor, 1427 ZoneVector<PushParameter>* arguments, const CallDescriptor* descriptor,
1420 Node* node) { 1428 Node* node) {
(...skipping 701 matching lines...) Expand 10 before | Expand all | Expand 10 after
2122 // static 2130 // static
2123 MachineOperatorBuilder::AlignmentRequirements 2131 MachineOperatorBuilder::AlignmentRequirements
2124 InstructionSelector::AlignmentRequirements() { 2132 InstructionSelector::AlignmentRequirements() {
2125 return MachineOperatorBuilder::AlignmentRequirements:: 2133 return MachineOperatorBuilder::AlignmentRequirements::
2126 FullUnalignedAccessSupport(); 2134 FullUnalignedAccessSupport();
2127 } 2135 }
2128 2136
2129 } // namespace compiler 2137 } // namespace compiler
2130 } // namespace internal 2138 } // namespace internal
2131 } // namespace v8 2139 } // namespace v8
OLDNEW
« no previous file with comments | « src/compiler/x64/code-generator-x64.cc ('k') | src/counters.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698