Package: webkitgtk / 2.4.9-1~deb8u1

fix-arm64-build.patch Patch series | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
From: Iain Lane <iain.lane@canonical.com>
Description: Fix arm64 build
 Add AArch64 support in Platform.h
 Don't use COMPARE_AND_SWAP on arm64; it produces invalid asm.
 Fix some other areas where disabling JIT doesn't work.
Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=752735
Forwarded: no
Index: webkitgtk/Source/WTF/wtf/Platform.h
===================================================================
--- webkitgtk.orig/Source/WTF/wtf/Platform.h
+++ webkitgtk/Source/WTF/wtf/Platform.h
@@ -194,6 +194,14 @@
 #define WTF_CPU_ARM64 1
 #endif
 
+/* CPU(ARM64) - AArch64 */
+#if defined(__aarch64__)
+#define WTF_CPU_ARM64 1
+#if defined(__AARCH64BE__)
+#define WTF_CPU_BIG_ENDIAN 1
+#endif
+#endif
+
 /* CPU(ARM) - ARM, any version*/
 #define WTF_ARM_ARCH_AT_LEAST(N) (CPU(ARM) && WTF_ARM_ARCH_VERSION >= N)
 
@@ -978,7 +986,7 @@
 #define WTF_USE_IMLANG_FONT_LINK2 1
 #endif
 
-#if !defined(ENABLE_COMPARE_AND_SWAP) && (OS(WINDOWS) || (COMPILER(GCC) && (CPU(X86) || CPU(X86_64) || CPU(ARM_THUMB2) || CPU(ARM64))))
+#if !defined(ENABLE_COMPARE_AND_SWAP) && (OS(WINDOWS) || (COMPILER(GCC) && (CPU(X86) || CPU(X86_64) || CPU(ARM_THUMB2))))
 #define ENABLE_COMPARE_AND_SWAP 1
 #endif
 
Index: webkitgtk/Source/WebCore/platform/graphics/transforms/TransformationMatrix.cpp
===================================================================
--- webkitgtk.orig/Source/WebCore/platform/graphics/transforms/TransformationMatrix.cpp
+++ webkitgtk/Source/WebCore/platform/graphics/transforms/TransformationMatrix.cpp
@@ -1035,7 +1035,7 @@ TransformationMatrix TransformationMatri
 // this = mat * this.
 TransformationMatrix& TransformationMatrix::multiply(const TransformationMatrix& mat)
 {
-#if CPU(ARM64)
+#if CPU(ARM64) && PLATFORM(IOS)
     double* leftMatrix = &(m_matrix[0][0]);
     const double* rightMatrix = &(mat.m_matrix[0][0]);
     asm volatile (