Comment #2 on issue 2234 by [email protected]: Math.sin(0) is sometimes
incorrect on ARM
http://code.google.com/p/v8/issues/detail?id=2234
FWIW, This patch works around the problem for me.
diff --git a/android/jni/utils/v8/src/arm/code-stubs-arm.cc
b/android/jni/utils/v8/src/arm/code-stubs-arm.cc
index f772db9..e139c0f 100644
--- a/android/jni/utils/v8/src/arm/code-stubs-arm.cc
+++ b/android/jni/utils/v8/src/arm/code-stubs-arm.cc
@@ -3249,6 +3249,10 @@ void
TranscendentalCacheStub::Generate(MacroAssembler* masm) {
__ vmov(r2, r3, d2);
}
__ bind(&loaded);
+
+ // skip the cache
+ __ b(&invalid_cache);
+
// r2 = low 32 bits of double value
// r3 = high 32 bits of double value
// Compute hash (the shifts are arithmetic):
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev