| 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/bits.h" | 5 #include "src/base/bits.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 | 8 |
| 9 namespace v8 { | 9 namespace v8 { |
| 10 namespace internal { | 10 namespace internal { |
| (...skipping 391 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 402 g.UseFixed(node->InputAt(1), f14))->MarkAsCall(); | 402 g.UseFixed(node->InputAt(1), f14))->MarkAsCall(); |
| 403 } | 403 } |
| 404 | 404 |
| 405 | 405 |
| 406 void InstructionSelector::VisitFloat64Sqrt(Node* node) { | 406 void InstructionSelector::VisitFloat64Sqrt(Node* node) { |
| 407 MipsOperandGenerator g(this); | 407 MipsOperandGenerator g(this); |
| 408 Emit(kMipsSqrtD, g.DefineAsRegister(node), g.UseRegister(node->InputAt(0))); | 408 Emit(kMipsSqrtD, g.DefineAsRegister(node), g.UseRegister(node->InputAt(0))); |
| 409 } | 409 } |
| 410 | 410 |
| 411 | 411 |
| 412 void InstructionSelector::VisitFloat64Floor(Node* node) { UNREACHABLE(); } |
| 413 |
| 414 |
| 415 void InstructionSelector::VisitFloat64Ceil(Node* node) { UNREACHABLE(); } |
| 416 |
| 417 |
| 418 void InstructionSelector::VisitFloat64RoundTruncate(Node* node) { |
| 419 UNREACHABLE(); |
| 420 } |
| 421 |
| 422 |
| 423 void InstructionSelector::VisitFloat64RoundTiesAway(Node* node) { |
| 424 UNREACHABLE(); |
| 425 } |
| 426 |
| 427 |
| 412 void InstructionSelector::VisitCall(Node* node) { | 428 void InstructionSelector::VisitCall(Node* node) { |
| 413 MipsOperandGenerator g(this); | 429 MipsOperandGenerator g(this); |
| 414 CallDescriptor* descriptor = OpParameter<CallDescriptor*>(node); | 430 CallDescriptor* descriptor = OpParameter<CallDescriptor*>(node); |
| 415 | 431 |
| 416 FrameStateDescriptor* frame_state_descriptor = NULL; | 432 FrameStateDescriptor* frame_state_descriptor = NULL; |
| 417 if (descriptor->NeedsFrameState()) { | 433 if (descriptor->NeedsFrameState()) { |
| 418 frame_state_descriptor = | 434 frame_state_descriptor = |
| 419 GetFrameStateDescriptor(node->InputAt(descriptor->InputCount())); | 435 GetFrameStateDescriptor(node->InputAt(descriptor->InputCount())); |
| 420 } | 436 } |
| 421 | 437 |
| (...skipping 231 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 653 InstructionSelector::SupportedMachineOperatorFlags() { | 669 InstructionSelector::SupportedMachineOperatorFlags() { |
| 654 return MachineOperatorBuilder::kInt32DivIsSafe | | 670 return MachineOperatorBuilder::kInt32DivIsSafe | |
| 655 MachineOperatorBuilder::kInt32ModIsSafe | | 671 MachineOperatorBuilder::kInt32ModIsSafe | |
| 656 MachineOperatorBuilder::kUint32DivIsSafe | | 672 MachineOperatorBuilder::kUint32DivIsSafe | |
| 657 MachineOperatorBuilder::kUint32ModIsSafe; | 673 MachineOperatorBuilder::kUint32ModIsSafe; |
| 658 } | 674 } |
| 659 | 675 |
| 660 } // namespace compiler | 676 } // namespace compiler |
| 661 } // namespace internal | 677 } // namespace internal |
| 662 } // namespace v8 | 678 } // namespace v8 |
| OLD | NEW |