webkit2gtk: update to 2.28.3.
[ci skip]
This commit is contained in:
parent
a1f454a333
commit
97afccadc1
2 changed files with 3 additions and 67 deletions
|
@ -1,64 +0,0 @@
|
|||
From ed5a63c21c4faa0f5a17ebd7a0ccd135b8a880a2 Mon Sep 17 00:00:00 2001
|
||||
From: Daniel Kolesa <daniel@octaforge.org>
|
||||
Date: Thu, 7 May 2020 19:39:34 +0200
|
||||
Subject: [PATCH] Fix gcSafeMemcpy on non-x86_64/aarch64 64-bit architectures
|
||||
|
||||
The problem at hand here is that the control flow is wrong. As
|
||||
it was, we'd do something like:
|
||||
|
||||
```
|
||||
if (bytes <= smallCutoff) {
|
||||
slow path
|
||||
} else if (aarch64 || bytes <= mediumCutoff) {
|
||||
either x86_64 path, aarch64 path or slow path
|
||||
} else {
|
||||
assert(x86_64)
|
||||
do x86_64 path, or nothing on other archs
|
||||
}
|
||||
```
|
||||
|
||||
That means everything on non-x86_64/aarch64 that tried to memcpy
|
||||
more than mediumCutoff would end up doing nothing.
|
||||
|
||||
Fix the code so that slow path is taken automatically always
|
||||
if running non-x86_64/aarch64 architectures. Remove the #else
|
||||
in the mediumCutoff branch as that is now never taken.
|
||||
---
|
||||
Source/JavaScriptCore/ChangeLog | 16 ++++++++++++++++
|
||||
Source/JavaScriptCore/heap/GCMemoryOperations.h | 6 ++----
|
||||
2 files changed, 18 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/Source/JavaScriptCore/heap/GCMemoryOperations.h b/Source/JavaScriptCore/heap/GCMemoryOperations.h
|
||||
index f2b9e385bc9..ff66071db20 100644
|
||||
--- Source/JavaScriptCore/heap/GCMemoryOperations.h
|
||||
+++ Source/JavaScriptCore/heap/GCMemoryOperations.h
|
||||
@@ -53,7 +53,7 @@ ALWAYS_INLINE void gcSafeMemcpy(T* dst, T* src, size_t bytes)
|
||||
bitwise_cast<volatile uint64_t*>(dst)[i] = bitwise_cast<volatile uint64_t*>(src)[i];
|
||||
};
|
||||
|
||||
-#if COMPILER(GCC_COMPATIBLE) && USE(JSVALUE64)
|
||||
+#if COMPILER(GCC_COMPATIBLE) && (CPU(X86_64) || CPU(ARM64))
|
||||
if (bytes <= smallCutoff)
|
||||
slowPathForwardMemcpy();
|
||||
else if (isARM64() || bytes <= mediumCutoff) {
|
||||
@@ -121,8 +121,6 @@ ALWAYS_INLINE void gcSafeMemcpy(T* dst, T* src, size_t bytes)
|
||||
:
|
||||
: "d0", "d1", "memory"
|
||||
);
|
||||
-#else
|
||||
- slowPathForwardMemcpy();
|
||||
#endif // CPU(X86_64)
|
||||
} else {
|
||||
RELEASE_ASSERT(isX86_64());
|
||||
@@ -139,7 +137,7 @@ ALWAYS_INLINE void gcSafeMemcpy(T* dst, T* src, size_t bytes)
|
||||
}
|
||||
#else
|
||||
slowPathForwardMemcpy();
|
||||
-#endif // COMPILER(GCC_COMPATIBLE)
|
||||
+#endif // COMPILER(GCC_COMPATIBLE) && (CPU(X86_64) || CPU(ARM64))
|
||||
#else
|
||||
memcpy(dst, src, bytes);
|
||||
#endif // USE(JSVALUE64)
|
||||
--
|
||||
2.26.2
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
# Template file for 'webkit2gtk'
|
||||
pkgname=webkit2gtk
|
||||
version=2.28.2
|
||||
revision=2
|
||||
version=2.28.3
|
||||
revision=1
|
||||
wrksrc="webkitgtk-${version}"
|
||||
build_style=cmake
|
||||
build_helper="gir"
|
||||
|
@ -38,7 +38,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
|
|||
license="LGPL-2.1-or-later, BSD-2-Clause"
|
||||
homepage="https://webkitgtk.org/"
|
||||
distfiles="${homepage}/releases/webkitgtk-${version}.tar.xz"
|
||||
checksum=b9d23525cfd8d22c37b5d964a9fe9a8ce7583042a2f8d3922e71e6bbc68c30bd
|
||||
checksum=f0898ac072c220e13a4aee819408421a6cb56a6eb89170ceafe52468b0903522
|
||||
|
||||
build_options="gir wayland x11 bubblewrap jit sampling_profiler minibrowser"
|
||||
build_options_default="gir wayland x11 bubblewrap minibrowser"
|
||||
|
|
Loading…
Add table
Reference in a new issue