summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/3rdparty/v8/src/ic.cc4
-rw-r--r--src/3rdparty/v8/src/stub-cache.cc5
2 files changed, 9 insertions, 0 deletions
diff --git a/src/3rdparty/v8/src/ic.cc b/src/3rdparty/v8/src/ic.cc
index 354ed64..fe31ef1 100644
--- a/src/3rdparty/v8/src/ic.cc
+++ b/src/3rdparty/v8/src/ic.cc
@@ -989,6 +989,10 @@ void LoadIC::UpdateCaches(LookupResult* lookup,
}
break;
case CALLBACKS: {
+#ifdef _WIN32_WCE
+ // Disable optimization for wince as the calling convention looks different.
+ return;
+#endif
Handle<Object> callback(lookup->GetCallbackObject());
if (callback->IsAccessorInfo()) {
Handle<AccessorInfo> info = Handle<AccessorInfo>::cast(callback);
diff --git a/src/3rdparty/v8/src/stub-cache.cc b/src/3rdparty/v8/src/stub-cache.cc
index 3885462..3796d2d 100644
--- a/src/3rdparty/v8/src/stub-cache.cc
+++ b/src/3rdparty/v8/src/stub-cache.cc
@@ -1477,6 +1477,7 @@ Handle<Code> CallStubCompiler::CompileCustomCall(
#undef CALL_GENERATOR_CASE
}
CallOptimization optimization(function);
+#ifndef _WIN32_WCE
ASSERT(optimization.is_simple_api_call());
return CompileFastApiCall(optimization,
object,
@@ -1484,6 +1485,10 @@ Handle<Code> CallStubCompiler::CompileCustomCall(
cell,
function,
fname);
+#else
+ // Disable optimization for wince as the calling convention looks different.
+ return Handle<Code>::null();
+#endif // _WIN32_WCE
}