Index: src/ia32/lithium-codegen-ia32.cc |
diff --git a/src/ia32/lithium-codegen-ia32.cc b/src/ia32/lithium-codegen-ia32.cc |
index 093dbce589a33118fac1beac02ba4b9fba291ea3..95ad5e0665db740cd1260e55a5d5d1312c199ae4 100644 |
--- a/src/ia32/lithium-codegen-ia32.cc |
+++ b/src/ia32/lithium-codegen-ia32.cc |
@@ -3034,6 +3034,14 @@ void LCodeGen::DoMathLog(LUnaryMathOperation* instr) { |
} |
+void LCodeGen::DoMathTan(LUnaryMathOperation* instr) { |
+ ASSERT(ToDoubleRegister(instr->result()).is(xmm1)); |
+ TranscendentalCacheStub stub(TranscendentalCache::TAN, |
+ TranscendentalCacheStub::UNTAGGED); |
+ CallCode(stub.GetCode(), RelocInfo::CODE_TARGET, instr); |
+} |
+ |
+ |
void LCodeGen::DoMathCos(LUnaryMathOperation* instr) { |
ASSERT(ToDoubleRegister(instr->result()).is(xmm1)); |
TranscendentalCacheStub stub(TranscendentalCache::COS, |
@@ -3073,6 +3081,9 @@ void LCodeGen::DoUnaryMathOperation(LUnaryMathOperation* instr) { |
case kMathSin: |
DoMathSin(instr); |
break; |
+ case kMathTan: |
+ DoMathTan(instr); |
+ break; |
case kMathLog: |
DoMathLog(instr); |
break; |