Index: src/crankshaft/ppc/lithium-ppc.h |
diff --git a/src/crankshaft/ppc/lithium-ppc.h b/src/crankshaft/ppc/lithium-ppc.h |
index 9da66ad806ce45e694d3f9daab4e32b8514ec883..6fe3a1c7b36858863e0f401712e915342f560e1a 100644 |
--- a/src/crankshaft/ppc/lithium-ppc.h |
+++ b/src/crankshaft/ppc/lithium-ppc.h |
@@ -98,6 +98,8 @@ class LCodeGen; |
V(LoadNamedGeneric) \ |
V(MathAbs) \ |
V(MathClz32) \ |
+ V(MathCos) \ |
+ V(MathSin) \ |
V(MathExp) \ |
V(MathFloorD) \ |
V(MathFloorI) \ |
@@ -901,6 +903,25 @@ 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 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 LMathExp final : public LTemplateInstruction<1, 1, 0> { |
public: |
@@ -2454,6 +2475,8 @@ class LChunkBuilder final : public LChunkBuilderBase { |
LInstruction* DoMathFround(HUnaryMathOperation* instr); |
LInstruction* DoMathAbs(HUnaryMathOperation* instr); |
LInstruction* DoMathLog(HUnaryMathOperation* instr); |
+ LInstruction* DoMathCos(HUnaryMathOperation* instr); |
+ LInstruction* DoMathSin(HUnaryMathOperation* instr); |
LInstruction* DoMathExp(HUnaryMathOperation* instr); |
LInstruction* DoMathSqrt(HUnaryMathOperation* instr); |
LInstruction* DoMathPowHalf(HUnaryMathOperation* instr); |