Title: [203446] trunk
- Revision
- 203446
- Author
- o...@webkit.org
- Date
- 2016-07-20 00:30:51 -0700 (Wed, 20 Jul 2016)
Log Message
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.
Modified Paths
Diff
Modified: trunk/ChangeLog (203445 => 203446)
--- trunk/ChangeLog 2016-07-20 06:23:13 UTC (rev 203445)
+++ trunk/ChangeLog 2016-07-20 07:30:51 UTC (rev 203446)
@@ -1,3 +1,12 @@
+2016-07-20 Csaba Osztrogonác <o...@webkit.org>
+
+ 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.
+
2016-07-18 Alexey Proskuryakov <a...@apple.com>
"make ARCHS=x86_64" fails to build
Modified: trunk/Source/cmake/OptionsCommon.cmake (203445 => 203446)
--- trunk/Source/cmake/OptionsCommon.cmake 2016-07-20 06:23:13 UTC (rev 203445)
+++ trunk/Source/cmake/OptionsCommon.cmake 2016-07-20 07:30:51 UTC (rev 203446)
@@ -69,10 +69,29 @@
EXPOSE_VARIABLE_TO_BUILD(WTF_CPU_ARM64_CORTEXA53)
+set(ARM_TRADITIONAL_DETECTED FALSE)
+if (WTF_CPU_ARM)
+ set(ARM_THUMB2_TEST_SOURCE
+ "
+ #if !defined(thumb2) && !defined(__thumb2__)
+ #error \"Thumb2 instruction set isn't available\"
+ #endif
+ int main() {}
+ ")
+
+ include(CheckCXXSourceCompiles)
+ CHECK_CXX_SOURCE_COMPILES("${ARM_THUMB2_TEST_SOURCE}" ARM_THUMB2_DETECTED)
+ if (NOT ARM_THUMB2_DETECTED)
+ set(ARM_TRADITIONAL_DETECTED TRUE)
+ # See https://bugs.webkit.org/show_bug.cgi?id=159880#c4 for details.
+ message(STATUS "Disabling GNU gold linker, because it doesn't support ARM instruction set properly.")
+ endif ()
+endif ()
+
# Use ld.gold if it is available and isn't disabled explicitly
include(CMakeDependentOption)
CMAKE_DEPENDENT_OPTION(USE_LD_GOLD "Use GNU gold linker" ON
- "NOT CXX_ACCEPTS_MFIX_CORTEX_A53_835769" OFF)
+ "NOT CXX_ACCEPTS_MFIX_CORTEX_A53_835769;NOT ARM_TRADITIONAL_DETECTED" OFF)
if (USE_LD_GOLD)
execute_process(COMMAND ${CMAKE_C_COMPILER} -fuse-ld=gold -Wl,--version ERROR_QUIET OUTPUT_VARIABLE LD_VERSION)
if ("${LD_VERSION}" MATCHES "GNU gold")
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes