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

Side by Side Diff: src/crankshaft/arm64/lithium-arm64.h

Issue 2077533002: [builtins] Introduce proper Float64Exp operator. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: REBASE. Import tests from Raymond. 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
OLDNEW
1 // Copyright 2013 the V8 project authors. All rights reserved. 1 // Copyright 2013 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 #ifndef V8_CRANKSHAFT_ARM64_LITHIUM_ARM64_H_ 5 #ifndef V8_CRANKSHAFT_ARM64_LITHIUM_ARM64_H_
6 #define V8_CRANKSHAFT_ARM64_LITHIUM_ARM64_H_ 6 #define V8_CRANKSHAFT_ARM64_LITHIUM_ARM64_H_
7 7
8 #include "src/crankshaft/hydrogen.h" 8 #include "src/crankshaft/hydrogen.h"
9 #include "src/crankshaft/lithium.h" 9 #include "src/crankshaft/lithium.h"
10 #include "src/crankshaft/lithium-allocator.h" 10 #include "src/crankshaft/lithium-allocator.h"
(...skipping 1745 matching lines...) Expand 10 before | Expand all | Expand 10 after
1756 LOperand* context() { return inputs_[0]; } 1756 LOperand* context() { return inputs_[0]; }
1757 LOperand* value() { return inputs_[1]; } 1757 LOperand* value() { return inputs_[1]; }
1758 LOperand* temp1() { return temps_[0]; } 1758 LOperand* temp1() { return temps_[0]; }
1759 LOperand* temp2() { return temps_[1]; } 1759 LOperand* temp2() { return temps_[1]; }
1760 LOperand* temp3() { return temps_[2]; } 1760 LOperand* temp3() { return temps_[2]; }
1761 1761
1762 DECLARE_CONCRETE_INSTRUCTION(MathAbsTagged, "math-abs-tagged") 1762 DECLARE_CONCRETE_INSTRUCTION(MathAbsTagged, "math-abs-tagged")
1763 DECLARE_HYDROGEN_ACCESSOR(UnaryMathOperation) 1763 DECLARE_HYDROGEN_ACCESSOR(UnaryMathOperation)
1764 }; 1764 };
1765 1765
1766 1766 class LMathExp final : public LUnaryMathOperation<0> {
1767 class LMathExp final : public LUnaryMathOperation<4> {
1768 public: 1767 public:
1769 LMathExp(LOperand* value, 1768 explicit LMathExp(LOperand* value) : LUnaryMathOperation<0>(value) {}
1770 LOperand* double_temp1,
1771 LOperand* temp1,
1772 LOperand* temp2,
1773 LOperand* temp3)
1774 : LUnaryMathOperation<4>(value) {
1775 temps_[0] = double_temp1;
1776 temps_[1] = temp1;
1777 temps_[2] = temp2;
1778 temps_[3] = temp3;
1779 ExternalReference::InitializeMathExpData();
1780 }
1781
1782 LOperand* double_temp1() { return temps_[0]; }
1783 LOperand* temp1() { return temps_[1]; }
1784 LOperand* temp2() { return temps_[2]; }
1785 LOperand* temp3() { return temps_[3]; }
1786 1769
1787 DECLARE_CONCRETE_INSTRUCTION(MathExp, "math-exp") 1770 DECLARE_CONCRETE_INSTRUCTION(MathExp, "math-exp")
1788 }; 1771 };
1789 1772
1790 1773
1791 // Math.floor with a double result. 1774 // Math.floor with a double result.
1792 class LMathFloorD final : public LUnaryMathOperation<0> { 1775 class LMathFloorD final : public LUnaryMathOperation<0> {
1793 public: 1776 public:
1794 explicit LMathFloorD(LOperand* value) : LUnaryMathOperation<0>(value) { } 1777 explicit LMathFloorD(LOperand* value) : LUnaryMathOperation<0>(value) { }
1795 DECLARE_CONCRETE_INSTRUCTION(MathFloorD, "math-floor-d") 1778 DECLARE_CONCRETE_INSTRUCTION(MathFloorD, "math-floor-d")
(...skipping 1228 matching lines...) Expand 10 before | Expand all | Expand 10 after
3024 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder); 3007 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder);
3025 }; 3008 };
3026 3009
3027 #undef DECLARE_HYDROGEN_ACCESSOR 3010 #undef DECLARE_HYDROGEN_ACCESSOR
3028 #undef DECLARE_CONCRETE_INSTRUCTION 3011 #undef DECLARE_CONCRETE_INSTRUCTION
3029 3012
3030 } // namespace internal 3013 } // namespace internal
3031 } // namespace v8 3014 } // namespace v8
3032 3015
3033 #endif // V8_CRANKSHAFT_ARM64_LITHIUM_ARM64_H_ 3016 #endif // V8_CRANKSHAFT_ARM64_LITHIUM_ARM64_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698