Changeset 128065 in webkit


Ignore:
Timestamp:
Sep 10, 2012 9:06:32 AM (12 years ago)
Author:
commit-queue@webkit.org
Message:

[CMake][EFL] Enable the LLInt
https://bugs.webkit.org/show_bug.cgi?id=92682

Patch by Thiago Marcos P. Santos <thiago.santos@intel.com> on 2012-09-10
Reviewed by Csaba Osztrogonác.

.:

Added LLInt to CMake buildsystem and enabled it by default on EFL.
Note that Ruby is not enforced: a secondary check is done when LLInt
is enabled on the JSC's CMakeLists.txt.

  • CMakeLists.txt:
  • Source/cmake/OptionsEfl.cmake:
  • Source/cmake/WebKitFeatures.cmake:
  • Source/cmakeconfig.h.cmake:

Source/JavaScriptCore:

Generate the headers needed by LLint when LLint is enabled.

  • CMakeLists.txt:
Location:
trunk
Files:
7 edited

Legend:

Unmodified
Added
Removed
  • trunk/CMakeLists.txt

    r125228 r128065  
    6767FIND_PACKAGE(Perl REQUIRED)
    6868FIND_PACKAGE(PythonInterp REQUIRED)
     69FIND_PACKAGE(Ruby)
    6970
    7071# -----------------------------------------------------------------------------
  • trunk/ChangeLog

    r127943 r128065  
     12012-09-10  Thiago Marcos P. Santos  <thiago.santos@intel.com>
     2
     3        [CMake][EFL] Enable the LLInt
     4        https://bugs.webkit.org/show_bug.cgi?id=92682
     5
     6        Reviewed by Csaba Osztrogonác.
     7
     8        Added LLInt to CMake buildsystem and enabled it by default on EFL.
     9        Note that Ruby is not enforced: a secondary check is done when LLInt
     10        is enabled on the JSC's CMakeLists.txt.
     11
     12        * CMakeLists.txt:
     13        * Source/cmake/OptionsEfl.cmake:
     14        * Source/cmake/WebKitFeatures.cmake:
     15        * Source/cmakeconfig.h.cmake:
     16
    1172012-09-07  Simon Fraser  <simon.fraser@apple.com>
    218
  • trunk/Source/JavaScriptCore/CMakeLists.txt

    r127202 r128065  
    292292)
    293293
     294IF (ENABLE_LLINT)
     295    # We cannot check for RUBY_FOUND because it is set only when the full package is installed and
     296    # the only thing we need is the interpreter. Unlike Python, cmake does not provide a macro
     297    # for finding the only Ruby interpreter.
     298    IF (NOT RUBY_EXECUTABLE)
     299        MESSAGE(FATAL_ERROR "The Ruby interpreter is needed to generate LLInt files.")
     300    ENDIF ()
     301
     302    SET(LLINT_ASM
     303        llint/LowLevelInterpreter.asm
     304        llint/LowLevelInterpreter32_64.asm
     305        llint/LowLevelInterpreter64.asm
     306    )
     307
     308    SET(OFFLINE_ASM
     309        offlineasm/armv7.rb
     310        offlineasm/ast.rb
     311        offlineasm/backends.rb
     312        offlineasm/cloop.rb
     313        offlineasm/config.rb
     314        offlineasm/instructions.rb
     315        offlineasm/offsets.rb
     316        offlineasm/opt.rb
     317        offlineasm/parser.rb
     318        offlineasm/registers.rb
     319        offlineasm/self_hash.rb
     320        offlineasm/settings.rb
     321        offlineasm/transform.rb
     322        offlineasm/x86.rb
     323    )
     324
     325    ADD_CUSTOM_COMMAND(
     326        OUTPUT ${DERIVED_SOURCES_JAVASCRIPTCORE_DIR}/LLIntDesiredOffsets.h
     327        MAIN_DEPENDENCY ${JAVASCRIPTCORE_DIR}/offlineasm/generate_offset_extractor.rb
     328        DEPENDS ${LLINT_ASM} ${OFFLINE_ASM}
     329        COMMAND ${RUBY_EXECUTABLE} ${JAVASCRIPTCORE_DIR}/offlineasm/generate_offset_extractor.rb ${JAVASCRIPTCORE_DIR}/llint/LowLevelInterpreter.asm ${DERIVED_SOURCES_JAVASCRIPTCORE_DIR}/LLIntDesiredOffsets.h
     330        VERBATIM)
     331
     332    ADD_SOURCE_DEPENDENCIES(${JAVASCRIPTCORE_DIR}/llint/LLIntOffsetsExtractor.cpp ${DERIVED_SOURCES_JAVASCRIPTCORE_DIR}/LLIntDesiredOffsets.h)
     333    ADD_EXECUTABLE(LLIntOffsetsExtractor ${JAVASCRIPTCORE_DIR}/llint/LLIntOffsetsExtractor.cpp)
     334
     335    ADD_CUSTOM_COMMAND(
     336        OUTPUT ${DERIVED_SOURCES_JAVASCRIPTCORE_DIR}/LLIntAssembly.h
     337        MAIN_DEPENDENCY ${JAVASCRIPTCORE_DIR}/offlineasm/asm.rb
     338        DEPENDS LLIntOffsetsExtractor ${LLINT_ASM} ${OFFLINE_ASM}
     339        COMMAND ${RUBY_EXECUTABLE} ${JAVASCRIPTCORE_DIR}/offlineasm/asm.rb ${JAVASCRIPTCORE_DIR}/llint/LowLevelInterpreter.asm $<TARGET_FILE:LLIntOffsetsExtractor> ${DERIVED_SOURCES_JAVASCRIPTCORE_DIR}/LLIntAssembly.h
     340        VERBATIM)
     341
     342    ADD_SOURCE_DEPENDENCIES(${JAVASCRIPTCORE_DIR}/llint/LowLevelInterpreter.cpp ${DERIVED_SOURCES_JAVASCRIPTCORE_DIR}/LLIntAssembly.h)
     343    LIST(APPEND JavaScriptCore_SOURCES
     344        llint/LLIntCLoop.cpp
     345        llint/LLIntData.cpp
     346        llint/LLIntEntrypoints.cpp
     347        llint/LLIntExceptions.cpp
     348        llint/LLIntSlowPaths.cpp
     349        llint/LLIntThunks.cpp
     350        llint/LowLevelInterpreter.cpp
     351    )
     352ENDIF ()
    294353
    295354# GENERATOR 1-A: LUT creator
  • trunk/Source/JavaScriptCore/ChangeLog

    r128037 r128065  
     12012-09-10  Thiago Marcos P. Santos  <thiago.santos@intel.com>
     2
     3        [CMake][EFL] Enable the LLInt
     4        https://bugs.webkit.org/show_bug.cgi?id=92682
     5
     6        Reviewed by Csaba Osztrogonác.
     7
     8        Generate the headers needed by LLint when LLint is enabled.
     9
     10        * CMakeLists.txt:
     11
    1122012-09-10  Carlos Garcia Campos  <cgarcia@igalia.com>
    213
  • trunk/Source/cmake/OptionsEfl.cmake

    r127462 r128065  
    7070WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_LEGACY_WEBKIT_BLOB_BUILDER ON)
    7171WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_LINK_PREFETCH ON)
     72WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_LLINT ON)
    7273WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_MEDIA_CAPTURE ON)
    7374WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_MEMORY_SAMPLER ON)
  • trunk/Source/cmake/WebKitFeatures.cmake

    r127318 r128065  
    7272    WEBKIT_OPTION_DEFINE(ENABLE_LINK_PREFETCH "Toggle pre fetching support" OFF)
    7373    WEBKIT_OPTION_DEFINE(ENABLE_LINK_PRERENDER "Toggle pre rendering support" OFF)
     74    WEBKIT_OPTION_DEFINE(ENABLE_LLINT "Enable JSC Low Level Interpreter" OFF)
    7475    WEBKIT_OPTION_DEFINE(ENABLE_MATHML "Toggle MathML support" ON)
    7576    WEBKIT_OPTION_DEFINE(ENABLE_MEDIA_CAPTURE "Toggle Media Capture support" OFF)
  • trunk/Source/cmakeconfig.h.cmake

    r127451 r128065  
    6464#cmakedefine01 ENABLE_LINK_PREFETCH
    6565#cmakedefine01 ENABLE_LINK_PRERENDER
     66#cmakedefine01 ENABLE_LLINT
    6667#cmakedefine01 ENABLE_MATHML
    6768#cmakedefine01 ENABLE_MEDIA_CAPTURE
Note: See TracChangeset for help on using the changeset viewer.