build-jsc --ftl-jit should work
authorfpizlo@apple.com <fpizlo@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 23 Aug 2013 19:41:54 +0000 (19:41 +0000)
committerfpizlo@apple.com <fpizlo@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 23 Aug 2013 19:41:54 +0000 (19:41 +0000)
https://bugs.webkit.org/show_bug.cgi?id=120194

Reviewed by Oliver Hunt.

Source/JavaScriptCore:

* Configurations/Base.xcconfig: CPPFLAGS should include FEATURE_DEFINES
* Configurations/JSC.xcconfig: The 'jsc' tool includes headers where field layout may depend on FEATURE_DEFINES
* Configurations/ToolExecutable.xcconfig: All other tools include headers where field layout may depend on FEATURE_DEFINES
* ftl/FTLLowerDFGToLLVM.cpp: Build fix
(JSC::FTL::LowerDFGToLLVM::compilePutStructure):
(JSC::FTL::LowerDFGToLLVM::compilePhantomPutStructure):

Source/WTF:

* wtf/LLVMHeaders.h: I don't know what went wrong here. If HAVE(LLVM), then we need those headers!

Tools:

* Scripts/build-jsc: Need to pass the feature flag to xcodebuild

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@154509 268f45cc-cd09-0410-ab3c-d52691b4dbfc

Source/JavaScriptCore/ChangeLog
Source/JavaScriptCore/Configurations/Base.xcconfig
Source/JavaScriptCore/Configurations/JSC.xcconfig
Source/JavaScriptCore/Configurations/ToolExecutable.xcconfig
Source/JavaScriptCore/ftl/FTLLowerDFGToLLVM.cpp
Source/WTF/ChangeLog
Source/WTF/wtf/LLVMHeaders.h
Tools/ChangeLog
Tools/Scripts/build-jsc

index 9259fdf..2c8e1bc 100644 (file)
@@ -1,3 +1,17 @@
+2013-08-22  Filip Pizlo  <fpizlo@apple.com>
+
+        build-jsc --ftl-jit should work
+        https://bugs.webkit.org/show_bug.cgi?id=120194
+
+        Reviewed by Oliver Hunt.
+
+        * Configurations/Base.xcconfig: CPPFLAGS should include FEATURE_DEFINES
+        * Configurations/JSC.xcconfig: The 'jsc' tool includes headers where field layout may depend on FEATURE_DEFINES
+        * Configurations/ToolExecutable.xcconfig: All other tools include headers where field layout may depend on FEATURE_DEFINES
+        * ftl/FTLLowerDFGToLLVM.cpp: Build fix
+        (JSC::FTL::LowerDFGToLLVM::compilePutStructure):
+        (JSC::FTL::LowerDFGToLLVM::compilePhantomPutStructure):
+
 2013-08-23  Oliver Hunt  <oliver@apple.com>
 
         Re-sort xcode project file
index 19a9390..f312d02 100644 (file)
@@ -43,7 +43,7 @@ GCC_MODEL_TUNING = $(GCC_MODEL_TUNING_$(PLATFORM_NAME));
 GCC_MODEL_TUNING_macosx = G5;
 GCC_OBJC_CALL_CXX_CDTORS = YES;
 GCC_PRECOMPILE_PREFIX_HEADER = YES;
-GCC_PREPROCESSOR_DEFINITIONS = $(DEBUG_DEFINES) HAVE_DTRACE=$(HAVE_DTRACE) WEBKIT_VERSION_MIN_REQUIRED=WEBKIT_VERSION_LATEST HAVE_HEADER_DETECTION_H $(GCC_PREPROCESSOR_DEFINITIONS);
+GCC_PREPROCESSOR_DEFINITIONS = $(DEBUG_DEFINES) HAVE_DTRACE=$(HAVE_DTRACE) WEBKIT_VERSION_MIN_REQUIRED=WEBKIT_VERSION_LATEST HAVE_HEADER_DETECTION_H $(FEATURE_DEFINES) $(GCC_PREPROCESSOR_DEFINITIONS);
 GCC_STRICT_ALIASING = YES;
 GCC_THREADSAFE_STATICS = NO;
 GCC_TREAT_WARNINGS_AS_ERRORS = YES;
index d596596..7746e72 100644 (file)
@@ -21,6 +21,9 @@
 // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
 // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
 
+#include "FeatureDefines.xcconfig"
+#include "Version.xcconfig"
+
 INSTALL_PATH = $(JAVASCRIPTCORE_FRAMEWORKS_DIR)/JavaScriptCore.framework/Versions/A/Resources
 PRODUCT_NAME = jsc;
 CODE_SIGN_ENTITLEMENTS = $(CODE_SIGN_ENTITLEMENTS_$(PLATFORM_NAME));
index 73c7f0c..4e45209 100644 (file)
@@ -21,6 +21,9 @@
 // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
 // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
 
+#include "FeatureDefines.xcconfig"
+#include "Version.xcconfig"
+
 INSTALL_PATH = $(INSTALL_PATH_$(PLATFORM_NAME));
 INSTALL_PATH_iphoneos = $(JAVASCRIPTCORE_FRAMEWORKS_DIR)/JavaScriptCore.framework/Resources;
 INSTALL_PATH_iphonesimulator = $(INSTALL_PATH_iphoneos);
index e377059..1692c6f 100644 (file)
@@ -1160,7 +1160,7 @@ private:
     
     void compilePutStructure()
     {
-        m_ftlState.jitCode->common.notifyCompilingStructureTransition(codeBlock(), m_node);
+        m_ftlState.jitCode->common.notifyCompilingStructureTransition(m_graph.m_plan, codeBlock(), m_node);
         
         m_out.store64(
             m_out.constIntPtr(m_node->structureTransitionData().newStructure),
@@ -1169,7 +1169,7 @@ private:
     
     void compilePhantomPutStructure()
     {
-        m_ftlState.jitCode->common.notifyCompilingStructureTransition(codeBlock(), m_node);
+        m_ftlState.jitCode->common.notifyCompilingStructureTransition(m_graph.m_plan, codeBlock(), m_node);
     }
     
     void compileGetButterfly()
index 05d9c2d..1dd6285 100644 (file)
@@ -1,3 +1,12 @@
+2013-08-22  Filip Pizlo  <fpizlo@apple.com>
+
+        build-jsc --ftl-jit should work
+        https://bugs.webkit.org/show_bug.cgi?id=120194
+
+        Reviewed by Oliver Hunt.
+
+        * wtf/LLVMHeaders.h: I don't know what went wrong here. If HAVE(LLVM), then we need those headers!
+
 2013-08-23  Brent Fulgham  <bfulgham@apple.com>
 
         [Windows] Unreviewed build correction after r154498.
index 4e03bf9..f2d1a62 100644 (file)
@@ -28,7 +28,7 @@
 
 #include <wtf/Platform.h>
 
-#if HAVE(LLVM) && ENABLE(FTL_JIT) && 0
+#if HAVE(LLVM)
 
 // It is necessary to include LLVM headers via this file, because:
 // - LLVM requires defining things that we don't normally define, and
index 951e7e8..89d3db6 100644 (file)
@@ -1,3 +1,12 @@
+2013-08-22  Filip Pizlo  <fpizlo@apple.com>
+
+        build-jsc --ftl-jit should work
+        https://bugs.webkit.org/show_bug.cgi?id=120194
+
+        Reviewed by Oliver Hunt.
+
+        * Scripts/build-jsc: Need to pass the feature flag to xcodebuild
+
 2013-08-23  Commit Queue  <commit-queue@webkit.org>
 
         Unreviewed, rolling out r153534.
index 7ad2f66..e8e809a 100755 (executable)
@@ -78,7 +78,10 @@ if (isQt()) {
 }
 
 if (isAppleMacWebKit()) {
-    $ENV{ENABLE_FTL_JIT} = 1 if $ftlJIT;
+    if ($ftlJIT) {
+        $ENV{ENABLE_FTL_JIT} = 1;
+        push @options, "ENABLE_FTL_JIT=ENABLE_FTL_JIT";
+    }
     (system("perl", "Tools/Scripts/copy-webkitlibraries-to-product-directory", productDir()) == 0) or die;
 }