Changeset 204823 in webkit


Ignore:
Timestamp:
Aug 23, 2016, 5:30:41 AM (9 years ago)
Author:
Carlos Garcia Campos
Message:

Merge r203446 - JSC JIT Broken on ARMv7 Traditional (without Thumb2)
https://bugs.webkit.org/show_bug.cgi?id=159880

Reviewed by Carlos Garcia Campos.

  • Source/cmake/OptionsCommon.cmake: Use the BFD linker on ARM traditional because of a gold linker bug.
Location:
releases/WebKitGTK/webkit-2.12
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • releases/WebKitGTK/webkit-2.12/ChangeLog

    r201326 r204823  
     12016-07-20  Csaba Osztrogonác  <ossy@webkit.org>
     2
     3        JSC JIT Broken on ARMv7 Traditional (without Thumb2)
     4        https://bugs.webkit.org/show_bug.cgi?id=159880
     5
     6        Reviewed by Carlos Garcia Campos.
     7
     8        * Source/cmake/OptionsCommon.cmake: Use the BFD linker on ARM traditional because of a gold linker bug.
     9
    1102016-05-24  Carlos Garcia Campos  <cgarcia@igalia.com>
    211
  • releases/WebKitGTK/webkit-2.12/Source/cmake/OptionsCommon.cmake

    r196749 r204823  
    6969EXPOSE_VARIABLE_TO_BUILD(WTF_CPU_ARM64_CORTEXA53)
    7070
     71set(ARM_TRADITIONAL_DETECTED FALSE)
     72if (WTF_CPU_ARM)
     73    set(ARM_THUMB2_TEST_SOURCE
     74    "
     75    #if !defined(thumb2) && !defined(__thumb2__)
     76    #error \"Thumb2 instruction set isn't available\"
     77    #endif
     78    int main() {}
     79   ")
     80
     81    include(CheckCXXSourceCompiles)
     82    CHECK_CXX_SOURCE_COMPILES("${ARM_THUMB2_TEST_SOURCE}" ARM_THUMB2_DETECTED)
     83    if (NOT ARM_THUMB2_DETECTED)
     84        set(ARM_TRADITIONAL_DETECTED TRUE)
     85        # See https://bugs.webkit.org/show_bug.cgi?id=159880#c4 for details.
     86        message(STATUS "Disabling GNU gold linker, because it doesn't support ARM instruction set properly.")
     87    endif ()
     88endif ()
     89
    7190# Use ld.gold if it is available and isn't disabled explicitly
    7291include(CMakeDependentOption)
    7392CMAKE_DEPENDENT_OPTION(USE_LD_GOLD "Use GNU gold linker" ON
    74                        "NOT CXX_ACCEPTS_MFIX_CORTEX_A53_835769" OFF)
     93                       "NOT CXX_ACCEPTS_MFIX_CORTEX_A53_835769;NOT ARM_TRADITIONAL_DETECTED" OFF)
    7594if (USE_LD_GOLD)
    7695    execute_process(COMMAND ${CMAKE_C_COMPILER} -fuse-ld=gold -Wl,--version ERROR_QUIET OUTPUT_VARIABLE LD_VERSION)
Note: See TracChangeset for help on using the changeset viewer.