If the FTL is build-time enabled then it should be run-time enabled.
Rubber stamped by Geoffrey Garen.
Source/JavaScriptCore:
* runtime/Options.cpp:
(JSC::recomputeDependentOptions):
* runtime/Options.h:
Source/WebKit2:
* Shared/WebProcessCreationParameters.cpp:
(WebKit::WebProcessCreationParameters::WebProcessCreationParameters):
(WebKit::WebProcessCreationParameters::encode):
(WebKit::WebProcessCreationParameters::decode):
* Shared/WebProcessCreationParameters.h:
* UIProcess/mac/WebContextMac.mm:
(WebKit::registerUserDefaultsIfNeeded):
(WebKit::WebContext::platformInitializeWebProcess):
* WebProcess/cocoa/WebProcessCocoa.mm:
(WebKit::WebProcess::platformInitializeWebProcess):
Tools:
* Scripts/run-jsc-stress-tests:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@165249 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/Source/JavaScriptCore/ChangeLog b/Source/JavaScriptCore/ChangeLog
index f6c724f..b66c9d6 100644
--- a/Source/JavaScriptCore/ChangeLog
+++ b/Source/JavaScriptCore/ChangeLog
@@ -1,3 +1,13 @@
+2014-03-06 Filip Pizlo <fpizlo@apple.com>
+
+ If the FTL is build-time enabled then it should be run-time enabled.
+
+ Rubber stamped by Geoffrey Garen.
+
+ * runtime/Options.cpp:
+ (JSC::recomputeDependentOptions):
+ * runtime/Options.h:
+
2014-03-06 Joseph Pecoraro <pecoraro@apple.com>
[OS X] Web Inspector: Allow Apps using JavaScriptCore to access "com.apple.webinspector" mach port
diff --git a/Source/JavaScriptCore/runtime/Options.cpp b/Source/JavaScriptCore/runtime/Options.cpp
index a24ebb6e..cffb193 100644
--- a/Source/JavaScriptCore/runtime/Options.cpp
+++ b/Source/JavaScriptCore/runtime/Options.cpp
@@ -182,6 +182,7 @@
#if !ENABLE(JIT)
Options::useJIT() = false;
Options::useDFGJIT() = false;
+ Options::useFTLJIT() = false;
#endif
#if !ENABLE(YARR_JIT)
Options::useRegExpJIT() = false;
@@ -189,6 +190,13 @@
#if !ENABLE(CONCURRENT_JIT)
Options::enableConcurrentJIT() = false;
#endif
+#if !ENABLE(DFG_JIT)
+ Options::useDFGJIT() = false;
+ Options::useFTLJIT() = false;
+#endif
+#if !ENABLE(FTL_JIT)
+ Options::useFTLJIT() = false;
+#endif
if (Options::showDisassembly()
|| Options::showDFGDisassembly()
diff --git a/Source/JavaScriptCore/runtime/Options.h b/Source/JavaScriptCore/runtime/Options.h
index 8964c03..658b1db 100644
--- a/Source/JavaScriptCore/runtime/Options.h
+++ b/Source/JavaScriptCore/runtime/Options.h
@@ -140,7 +140,7 @@
v(bool, enableOSREntryToDFG, true) \
v(bool, enableOSREntryToFTL, true) \
\
- v(bool, useFTLJIT, false) \
+ v(bool, useFTLJIT, true) \
v(bool, enableExperimentalFTLCoverage, false) \
v(bool, useFTLTBAA, true) \
v(bool, enableLLVMFastISel, false) \
diff --git a/Source/WebKit2/ChangeLog b/Source/WebKit2/ChangeLog
index 7f17c6d..2f65efe 100644
--- a/Source/WebKit2/ChangeLog
+++ b/Source/WebKit2/ChangeLog
@@ -1,3 +1,20 @@
+2014-03-06 Filip Pizlo <fpizlo@apple.com>
+
+ If the FTL is build-time enabled then it should be run-time enabled.
+
+ Rubber stamped by Geoffrey Garen.
+
+ * Shared/WebProcessCreationParameters.cpp:
+ (WebKit::WebProcessCreationParameters::WebProcessCreationParameters):
+ (WebKit::WebProcessCreationParameters::encode):
+ (WebKit::WebProcessCreationParameters::decode):
+ * Shared/WebProcessCreationParameters.h:
+ * UIProcess/mac/WebContextMac.mm:
+ (WebKit::registerUserDefaultsIfNeeded):
+ (WebKit::WebContext::platformInitializeWebProcess):
+ * WebProcess/cocoa/WebProcessCocoa.mm:
+ (WebKit::WebProcess::platformInitializeWebProcess):
+
2014-03-06 Hyowon Kim <hw1008.kim@samsung.com>
[EFL] Move EvasGL classes from WebKit to WebCore namespace.
diff --git a/Source/WebKit2/Shared/WebProcessCreationParameters.cpp b/Source/WebKit2/Shared/WebProcessCreationParameters.cpp
index 6ba51b5..ab89c22 100644
--- a/Source/WebKit2/Shared/WebProcessCreationParameters.cpp
+++ b/Source/WebKit2/Shared/WebProcessCreationParameters.cpp
@@ -41,7 +41,6 @@
, shouldForceScreenFontSubstitution(false)
, shouldEnableKerningAndLigaturesByDefault(false)
, shouldEnableJIT(false)
- , shouldEnableFTL(false)
#endif
#if ENABLE(NETWORK_PROCESS)
, usesNetworkProcess(false)
@@ -111,7 +110,6 @@
encoder << shouldForceScreenFontSubstitution;
encoder << shouldEnableKerningAndLigaturesByDefault;
encoder << shouldEnableJIT;
- encoder << shouldEnableFTL;
#endif
#if ENABLE(NOTIFICATIONS) || ENABLE(LEGACY_NOTIFICATIONS)
@@ -237,8 +235,6 @@
return false;
if (!decoder.decode(parameters.shouldEnableJIT))
return false;
- if (!decoder.decode(parameters.shouldEnableFTL))
- return false;
#endif
#if ENABLE(NOTIFICATIONS) || ENABLE(LEGACY_NOTIFICATIONS)
diff --git a/Source/WebKit2/Shared/WebProcessCreationParameters.h b/Source/WebKit2/Shared/WebProcessCreationParameters.h
index 17324b4..975c942 100644
--- a/Source/WebKit2/Shared/WebProcessCreationParameters.h
+++ b/Source/WebKit2/Shared/WebProcessCreationParameters.h
@@ -132,7 +132,6 @@
bool shouldForceScreenFontSubstitution;
bool shouldEnableKerningAndLigaturesByDefault;
bool shouldEnableJIT;
- bool shouldEnableFTL;
#endif // PLATFORM(COCOA)
#if ENABLE(NOTIFICATIONS) || ENABLE(LEGACY_NOTIFICATIONS)
diff --git a/Source/WebKit2/UIProcess/mac/WebContextMac.mm b/Source/WebKit2/UIProcess/mac/WebContextMac.mm
index 0a47190..aed8b66 100644
--- a/Source/WebKit2/UIProcess/mac/WebContextMac.mm
+++ b/Source/WebKit2/UIProcess/mac/WebContextMac.mm
@@ -67,7 +67,6 @@
NSString *WebKitLocalCacheDefaultsKey = @"WebKitLocalCache";
NSString *WebStorageDirectoryDefaultsKey = @"WebKitLocalStorageDatabasePathPreferenceKey";
NSString *WebKitKerningAndLigaturesEnabledByDefaultDefaultsKey = @"WebKitKerningAndLigaturesEnabledByDefault";
-NSString *WebKitJSCFTLEnabledDefaultsKey = @"WebKitJSCFTLEnabledDefaultsKey";
NSString *WebKitJSCJITEnabledDefaultsKey = @"WebKitJSCJITEnabledDefaultsKey";
#if !PLATFORM(IOS)
@@ -100,7 +99,6 @@
#if PLATFORM(IOS) || __MAC_OS_X_VERSION_MIN_REQUIRED >= 1090
[registrationDictionary setObject:[NSNumber numberWithBool:YES] forKey:WebKitKerningAndLigaturesEnabledByDefaultDefaultsKey];
- [registrationDictionary setObject:[NSNumber numberWithBool:NO] forKey:WebKitJSCFTLEnabledDefaultsKey];
#endif
[[NSUserDefaults standardUserDefaults] registerDefaults:registrationDictionary];
@@ -159,7 +157,6 @@
#endif
parameters.shouldEnableKerningAndLigaturesByDefault = [[NSUserDefaults standardUserDefaults] boolForKey:WebKitKerningAndLigaturesEnabledByDefaultDefaultsKey];
parameters.shouldEnableJIT = [[NSUserDefaults standardUserDefaults] boolForKey:WebKitJSCJITEnabledDefaultsKey];
- parameters.shouldEnableFTL = [[NSUserDefaults standardUserDefaults] boolForKey:WebKitJSCFTLEnabledDefaultsKey];
#if HAVE(HOSTED_CORE_ANIMATION)
#if !PLATFORM(IOS)
diff --git a/Source/WebKit2/WebProcess/cocoa/WebProcessCocoa.mm b/Source/WebKit2/WebProcess/cocoa/WebProcessCocoa.mm
index bc51606..40d04fe 100644
--- a/Source/WebKit2/WebProcess/cocoa/WebProcessCocoa.mm
+++ b/Source/WebKit2/WebProcess/cocoa/WebProcessCocoa.mm
@@ -180,9 +180,6 @@
if (!JSC::Options::useJITWasOverridden())
JSC::Options::useJIT() = parameters.shouldEnableJIT;
- if (!JSC::Options::useFTLJITWasOverridden())
- JSC::Options::useFTLJIT() = parameters.shouldEnableFTL;
-
setEnhancedAccessibility(parameters.accessibilityEnhancedUserInterfaceEnabled);
#if USE(APPKIT)
diff --git a/Tools/ChangeLog b/Tools/ChangeLog
index 7143dbb..08646a4 100644
--- a/Tools/ChangeLog
+++ b/Tools/ChangeLog
@@ -1,3 +1,11 @@
+2014-03-06 Filip Pizlo <fpizlo@apple.com>
+
+ If the FTL is build-time enabled then it should be run-time enabled.
+
+ Rubber stamped by Geoffrey Garen.
+
+ * Scripts/run-jsc-stress-tests:
+
2014-03-06 Mark Hahnenberg <mhahnenberg@apple.com>
detectFailures in run-jsc-stress-tests can report everything was ok if too many tests fail
diff --git a/Tools/Scripts/run-jsc-stress-tests b/Tools/Scripts/run-jsc-stress-tests
index a73cce9..2ce6e7a 100755
--- a/Tools/Scripts/run-jsc-stress-tests
+++ b/Tools/Scripts/run-jsc-stress-tests
@@ -180,6 +180,8 @@
EAGER_OPTIONS = ["--thresholdForJITAfterWarmUp=10", "--thresholdForJITSoon=10", "--thresholdForOptimizeAfterWarmUp=20", "--thresholdForOptimizeAfterLongWarmUp=20", "--thresholdForOptimizeSoon=20", "--thresholdForFTLOptimizeAfterWarmUp=20", "--thresholdForFTLOptimizeSoon=20"]
+NO_FTL_OPTIONS = ["--useFTLJIT=false"]
+
FTL_OPTIONS = ["--useFTLJIT=true", "--enableExperimentalFTLCoverage=true"]
$runlist = []
@@ -514,7 +516,7 @@
end
def run(kind, *options)
- addRunCommand(kind, [pathToVM.to_s] + options + [$benchmark.to_s], silentOutputHandler, simpleErrorHandler)
+ addRunCommand(kind, [pathToVM.to_s] + NO_FTL_OPTIONS + options + [$benchmark.to_s], silentOutputHandler, simpleErrorHandler)
end
def runDefault