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

Unified Diff: src/crankshaft/x64/lithium-x64.h

Issue 2073123002: [builtins] Introduce proper Float64Cos and Float64Sin. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Fix missing breaks 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « src/crankshaft/x64/lithium-codegen-x64.cc ('k') | src/crankshaft/x64/lithium-x64.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/crankshaft/x64/lithium-x64.h
diff --git a/src/crankshaft/x64/lithium-x64.h b/src/crankshaft/x64/lithium-x64.h
index 2ee0e4e6f9870eae1ba6afdcf8fdc51bd8a4289d..5388a7b24497be9a3ee3c10b95e119e0900f97ad 100644
--- a/src/crankshaft/x64/lithium-x64.h
+++ b/src/crankshaft/x64/lithium-x64.h
@@ -98,6 +98,7 @@ class LCodeGen;
V(LoadNamedGeneric) \
V(MathAbs) \
V(MathClz32) \
+ V(MathCos) \
V(MathExp) \
V(MathFloorD) \
V(MathFloorI) \
@@ -107,6 +108,7 @@ class LCodeGen;
V(MathPowHalf) \
V(MathRoundD) \
V(MathRoundI) \
+ V(MathSin) \
V(MathSqrt) \
V(MaybeGrowElements) \
V(ModByConstI) \
@@ -909,6 +911,15 @@ class LMathClz32 final : public LTemplateInstruction<1, 1, 0> {
DECLARE_CONCRETE_INSTRUCTION(MathClz32, "math-clz32")
};
+class LMathCos final : public LTemplateInstruction<1, 1, 0> {
+ public:
+ explicit LMathCos(LOperand* value) { inputs_[0] = value; }
+
+ LOperand* value() { return inputs_[0]; }
+
+ DECLARE_CONCRETE_INSTRUCTION(MathCos, "math-cos")
+};
+
class LMathExp final : public LTemplateInstruction<1, 1, 0> {
public:
explicit LMathExp(LOperand* value) { inputs_[0] = value; }
@@ -918,6 +929,14 @@ class LMathExp final : public LTemplateInstruction<1, 1, 0> {
DECLARE_CONCRETE_INSTRUCTION(MathExp, "math-exp")
};
+class LMathSin final : public LTemplateInstruction<1, 1, 0> {
+ public:
+ explicit LMathSin(LOperand* value) { inputs_[0] = value; }
+
+ LOperand* value() { return inputs_[0]; }
+
+ DECLARE_CONCRETE_INSTRUCTION(MathSin, "math-sin")
+};
class LMathSqrt final : public LTemplateInstruction<1, 1, 0> {
public:
@@ -2531,8 +2550,10 @@ class LChunkBuilder final : public LChunkBuilderBase {
LInstruction* DoMathRound(HUnaryMathOperation* instr);
LInstruction* DoMathFround(HUnaryMathOperation* instr);
LInstruction* DoMathAbs(HUnaryMathOperation* instr);
+ LInstruction* DoMathCos(HUnaryMathOperation* instr);
LInstruction* DoMathLog(HUnaryMathOperation* instr);
LInstruction* DoMathExp(HUnaryMathOperation* instr);
+ LInstruction* DoMathSin(HUnaryMathOperation* instr);
LInstruction* DoMathSqrt(HUnaryMathOperation* instr);
LInstruction* DoMathPowHalf(HUnaryMathOperation* instr);
LInstruction* DoMathClz32(HUnaryMathOperation* instr);
« no previous file with comments | « src/crankshaft/x64/lithium-codegen-x64.cc ('k') | src/crankshaft/x64/lithium-x64.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698