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); |