Title: [129760] trunk/Source
Revision
129760
Author
[email protected]
Date
2012-09-27 06:28:34 -0700 (Thu, 27 Sep 2012)

Log Message

[Qt] Enable the LLInt on Linux
https://bugs.webkit.org/show_bug.cgi?id=95749

Patch by Csaba Osztrogonác  <[email protected]>, Tor Arne Vestbø <[email protected]> on 2012-09-27
Reviewed by Simon Hausmann.

Source/_javascript_Core:

* DerivedSources.pri:
* _javascript_Core.pro:
* LLIntOffsetsExtractor.pro: Added.
* Target.pri:

Source/WTF:

* wtf/Platform.h:

Modified Paths

Added Paths

Diff

Modified: trunk/Source/_javascript_Core/ChangeLog (129759 => 129760)


--- trunk/Source/_javascript_Core/ChangeLog	2012-09-27 13:17:18 UTC (rev 129759)
+++ trunk/Source/_javascript_Core/ChangeLog	2012-09-27 13:28:34 UTC (rev 129760)
@@ -1,3 +1,15 @@
+2012-09-27  Csaba Osztrogonác  <[email protected]>, Tor Arne Vestbø  <[email protected]>
+
+        [Qt] Enable the LLInt on Linux
+        https://bugs.webkit.org/show_bug.cgi?id=95749
+
+        Reviewed by Simon Hausmann.
+
+        * DerivedSources.pri:
+        * _javascript_Core.pro:
+        * LLIntOffsetsExtractor.pro: Added.
+        * Target.pri:
+
 2012-09-27  Patrick Gansterer  <[email protected]>
 
         [CMake] Fix build with static _javascript_Core library

Modified: trunk/Source/_javascript_Core/DerivedSources.pri (129759 => 129760)


--- trunk/Source/_javascript_Core/DerivedSources.pri	2012-09-27 13:17:18 UTC (rev 129759)
+++ trunk/Source/_javascript_Core/DerivedSources.pri	2012-09-27 13:28:34 UTC (rev 129760)
@@ -33,6 +33,9 @@
 JIT_STUB_FILES += \
     jit/JITStubs.cpp
 
+LLINT_FILES = \
+    llint/LowLevelInterpreter.asm
+
 # GENERATOR 1-A: LUT creator
 lut.output = ${QMAKE_FILE_BASE}.lut.h
 lut.input = LUT_FILES
@@ -80,3 +83,12 @@
 klgen.input = KEYWORDLUT_FILES
 klgen.commands = python $$klgen.script ${QMAKE_FILE_NAME} > ${QMAKE_FILE_OUT}
 GENERATORS += klgen
+
+linux-*:!equals(QT_ARCH, "arm") {
+    #GENERATOR: LLInt
+    llint.output = LLIntAssembly.h
+    llint.script = $$PWD/offlineasm/asm.rb
+    llint.input = LLINT_FILES
+    llint.commands = ruby $$llint.script ${QMAKE_FILE_NAME} LLIntOffsetsExtractor ${QMAKE_FILE_OUT}
+    GENERATORS += llint
+}

Modified: trunk/Source/_javascript_Core/_javascript_Core.pro (129759 => 129760)


--- trunk/Source/_javascript_Core/_javascript_Core.pro	2012-09-27 13:17:18 UTC (rev 129759)
+++ trunk/Source/_javascript_Core/_javascript_Core.pro	2012-09-27 13:28:34 UTC (rev 129760)
@@ -7,11 +7,18 @@
 TEMPLATE = subdirs
 CONFIG += ordered
 
+linux-*:!equals(QT_ARCH, "arm") {
+    LLIntOffsetsExtractor.file = LLIntOffsetsExtractor.pro
+    LLIntOffsetsExtractor.makefile = Makefile.LLIntOffsetsExtractor
+    SUBDIRS += LLIntOffsetsExtractor
+}
+
 derived_sources.file = DerivedSources.pri
 target.file = Target.pri
 
 SUBDIRS += derived_sources target
 
+linux-*:!equals(QT_ARCH, "arm"):addStrictSubdirOrderBetween(LLIntOffsetsExtractor, derived_sources)
 addStrictSubdirOrderBetween(derived_sources, target)
 
 jsc.file = jsc.pro

Added: trunk/Source/_javascript_Core/LLIntOffsetsExtractor.pro (0 => 129760)


--- trunk/Source/_javascript_Core/LLIntOffsetsExtractor.pro	                        (rev 0)
+++ trunk/Source/_javascript_Core/LLIntOffsetsExtractor.pro	2012-09-27 13:28:34 UTC (rev 129760)
@@ -0,0 +1,36 @@
+# -------------------------------------------------------------------
+# Project file for the LLIntOffsetsExtractor binary, used to generate
+# derived sources for _javascript_Core.
+#
+# See 'Tools/qmake/README' for an overview of the build system
+# -------------------------------------------------------------------
+
+TEMPLATE = app
+TARGET = LLIntOffsetsExtractor
+DESTDIR = $$OUT_PWD
+
+QT = core # Needed for qglobal.h
+
+defineTest(addIncludePaths) {
+    # Just needed for include paths
+    include(../WTF/WTF.pri)
+    include(_javascript_Core.pri)
+
+    export(INCLUDEPATH)
+}
+
+addIncludePaths()
+
+INPUT_FILES = $$PWD/llint/LowLevelInterpreter.asm
+llint.output = LLIntDesiredOffsets.h
+llint.script = $$PWD/offlineasm/generate_offset_extractor.rb
+llint.input = INPUT_FILES
+llint.commands = ruby $$llint.script ${QMAKE_FILE_NAME} ${QMAKE_FILE_OUT}
+llint.CONFIG += no_link
+QMAKE_EXTRA_COMPILERS += llint
+
+# Compilation of this file will automatically depend on LLIntDesiredOffsets.h
+# due to qmake scanning the source file for header dependencies.
+SOURCES = llint/LLIntOffsetsExtractor.cpp
+
+mac: LIBS_PRIVATE += -framework AppKit

Modified: trunk/Source/_javascript_Core/Target.pri (129759 => 129760)


--- trunk/Source/_javascript_Core/Target.pri	2012-09-27 13:17:18 UTC (rev 129759)
+++ trunk/Source/_javascript_Core/Target.pri	2012-09-27 13:28:34 UTC (rev 129760)
@@ -156,6 +156,13 @@
     jit/JITStubs.cpp \
     jit/JumpReplacementWatchpoint.cpp \
     jit/ThunkGenerators.cpp \
+    llint/LLIntCLoop.cpp \
+    llint/LLIntData.cpp \
+    llint/LLIntEntrypoints.cpp \
+    llint/LLIntExceptions.cpp \
+    llint/LLIntSlowPaths.cpp \
+    llint/LLIntThunks.cpp \
+    llint/LowLevelInterpreter.cpp \
     parser/Lexer.cpp \
     parser/Nodes.cpp \
     parser/ParserArena.cpp \

Modified: trunk/Source/WTF/ChangeLog (129759 => 129760)


--- trunk/Source/WTF/ChangeLog	2012-09-27 13:17:18 UTC (rev 129759)
+++ trunk/Source/WTF/ChangeLog	2012-09-27 13:28:34 UTC (rev 129760)
@@ -1,3 +1,12 @@
+2012-09-27  Csaba Osztrogonác  <[email protected]>, Tor Arne Vestbø  <[email protected]>
+
+        [Qt] Enable the LLInt on Linux
+        https://bugs.webkit.org/show_bug.cgi?id=95749
+
+        Reviewed by Simon Hausmann.
+
+        * wtf/Platform.h:
+
 2012-09-26  Cosmin Truta  <[email protected]>
 
         [BlackBerry] Allow denormal floats in ARM VFP

Modified: trunk/Source/WTF/wtf/Platform.h (129759 => 129760)


--- trunk/Source/WTF/wtf/Platform.h	2012-09-27 13:17:18 UTC (rev 129759)
+++ trunk/Source/WTF/wtf/Platform.h	2012-09-27 13:28:34 UTC (rev 129760)
@@ -907,7 +907,7 @@
 #if !defined(ENABLE_LLINT) \
     && ENABLE(JIT) \
     && (OS(DARWIN) || OS(LINUX)) \
-    && (PLATFORM(MAC) || PLATFORM(IOS) || PLATFORM(GTK)) \
+    && (PLATFORM(MAC) || PLATFORM(IOS) || PLATFORM(GTK) || (PLATFORM(QT) && OS(LINUX))) \
     && (CPU(X86) || CPU(X86_64) || CPU(ARM_THUMB2))
 #define ENABLE_LLINT 1
 #endif
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to