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

Side by Side Diff: src/compiler/representation-change.cc

Issue 2103733003: [turbofan] Introduce Float64Pow and NumberPow operators. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: REBASE on ARM64 bug fix. Created 4 years, 5 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/raw-machine-assembler.h ('k') | src/compiler/simplified-lowering.cc » ('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 2015 the V8 project authors. All rights reserved. 1 // Copyright 2015 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/representation-change.h" 5 #include "src/compiler/representation-change.h"
6 6
7 #include <sstream> 7 #include <sstream>
8 8
9 #include "src/base/bits.h" 9 #include "src/base/bits.h"
10 #include "src/code-factory.h" 10 #include "src/code-factory.h"
(...skipping 675 matching lines...) Expand 10 before | Expand all | Expand 10 after
686 return machine()->Float64LessThan(); 686 return machine()->Float64LessThan();
687 case IrOpcode::kNumberLessThanOrEqual: 687 case IrOpcode::kNumberLessThanOrEqual:
688 case IrOpcode::kSpeculativeNumberLessThanOrEqual: 688 case IrOpcode::kSpeculativeNumberLessThanOrEqual:
689 return machine()->Float64LessThanOrEqual(); 689 return machine()->Float64LessThanOrEqual();
690 case IrOpcode::kNumberAbs: 690 case IrOpcode::kNumberAbs:
691 return machine()->Float64Abs(); 691 return machine()->Float64Abs();
692 case IrOpcode::kNumberAtan: 692 case IrOpcode::kNumberAtan:
693 return machine()->Float64Atan(); 693 return machine()->Float64Atan();
694 case IrOpcode::kNumberAtan2: 694 case IrOpcode::kNumberAtan2:
695 return machine()->Float64Atan2(); 695 return machine()->Float64Atan2();
696 case IrOpcode::kNumberCbrt:
697 return machine()->Float64Cbrt();
696 case IrOpcode::kNumberCos: 698 case IrOpcode::kNumberCos:
697 return machine()->Float64Cos(); 699 return machine()->Float64Cos();
698 case IrOpcode::kNumberExp: 700 case IrOpcode::kNumberExp:
699 return machine()->Float64Exp(); 701 return machine()->Float64Exp();
702 case IrOpcode::kNumberExpm1:
703 return machine()->Float64Expm1();
700 case IrOpcode::kNumberFround: 704 case IrOpcode::kNumberFround:
701 return machine()->TruncateFloat64ToFloat32(); 705 return machine()->TruncateFloat64ToFloat32();
702 case IrOpcode::kNumberAtanh: 706 case IrOpcode::kNumberAtanh:
703 return machine()->Float64Atanh(); 707 return machine()->Float64Atanh();
704 case IrOpcode::kNumberLog: 708 case IrOpcode::kNumberLog:
705 return machine()->Float64Log(); 709 return machine()->Float64Log();
706 case IrOpcode::kNumberLog1p: 710 case IrOpcode::kNumberLog1p:
707 return machine()->Float64Log1p(); 711 return machine()->Float64Log1p();
708 case IrOpcode::kNumberLog2: 712 case IrOpcode::kNumberLog2:
709 return machine()->Float64Log2(); 713 return machine()->Float64Log2();
710 case IrOpcode::kNumberLog10: 714 case IrOpcode::kNumberLog10:
711 return machine()->Float64Log10(); 715 return machine()->Float64Log10();
716 case IrOpcode::kNumberPow:
717 return machine()->Float64Pow();
712 case IrOpcode::kNumberSin: 718 case IrOpcode::kNumberSin:
713 return machine()->Float64Sin(); 719 return machine()->Float64Sin();
720 case IrOpcode::kNumberSqrt:
721 return machine()->Float64Sqrt();
714 case IrOpcode::kNumberTan: 722 case IrOpcode::kNumberTan:
715 return machine()->Float64Tan(); 723 return machine()->Float64Tan();
716 case IrOpcode::kNumberSqrt:
717 return machine()->Float64Sqrt();
718 case IrOpcode::kNumberCbrt:
719 return machine()->Float64Cbrt();
720 case IrOpcode::kNumberExpm1:
721 return machine()->Float64Expm1();
722 case IrOpcode::kNumberSilenceNaN: 724 case IrOpcode::kNumberSilenceNaN:
723 return machine()->Float64SilenceNaN(); 725 return machine()->Float64SilenceNaN();
724 default: 726 default:
725 UNREACHABLE(); 727 UNREACHABLE();
726 return nullptr; 728 return nullptr;
727 } 729 }
728 } 730 }
729 731
730 732
731 Node* RepresentationChanger::TypeError(Node* node, 733 Node* RepresentationChanger::TypeError(Node* node,
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after
770 } 772 }
771 773
772 Node* RepresentationChanger::InsertChangeTaggedToFloat64(Node* node) { 774 Node* RepresentationChanger::InsertChangeTaggedToFloat64(Node* node) {
773 return jsgraph()->graph()->NewNode(simplified()->ChangeTaggedToFloat64(), 775 return jsgraph()->graph()->NewNode(simplified()->ChangeTaggedToFloat64(),
774 node); 776 node);
775 } 777 }
776 778
777 } // namespace compiler 779 } // namespace compiler
778 } // namespace internal 780 } // namespace internal
779 } // namespace v8 781 } // namespace v8
OLDNEW
« no previous file with comments | « src/compiler/raw-machine-assembler.h ('k') | src/compiler/simplified-lowering.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698