diff mbox series

webkitgtk: Workaround for clang compiler segfault

Message ID 20240112172139.2929419-1-raj.khem@gmail.com
State Accepted, archived
Commit a61205f364c2e9f40736c081bbae0b045e317093
Headers show
Series webkitgtk: Workaround for clang compiler segfault | expand

Commit Message

Khem Raj Jan. 12, 2024, 5:21 p.m. UTC
This is a compiler crash which is under works upstream, until its fixed
lets disable musttail calls on clang+arm

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../webkit/webkitgtk/no-musttail-arm.patch    | 21 +++++++++++++++++++
 meta/recipes-sato/webkit/webkitgtk_2.42.2.bb  |  1 +
 2 files changed, 22 insertions(+)
 create mode 100644 meta/recipes-sato/webkit/webkitgtk/no-musttail-arm.patch
diff mbox series

Patch

diff --git a/meta/recipes-sato/webkit/webkitgtk/no-musttail-arm.patch b/meta/recipes-sato/webkit/webkitgtk/no-musttail-arm.patch
new file mode 100644
index 00000000000..a6d67c1d703
--- /dev/null
+++ b/meta/recipes-sato/webkit/webkitgtk/no-musttail-arm.patch
@@ -0,0 +1,21 @@ 
+clang/arm: Do not use MUST_TAIL_CALL
+
+This causes clang-17 to crash see [1]
+this code is new in webkit 2.42[2] thats why we do not see the crash in older webkit
+
+[1] https://github.com/llvm/llvm-project/issues/67767
+[2] https://github.com/WebKit/WebKit/commit/4d816460b765acd8aef90ab474615850b91ecc35
+
+Upstream-Status: Inappropriate [work around to avoid clang compiler crash]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+--- a/Source/WTF/wtf/Compiler.h
++++ b/Source/WTF/wtf/Compiler.h
+@@ -284,7 +284,7 @@
+ /* MUST_TAIL_CALL */
+ 
+ #if !defined(MUST_TAIL_CALL) && defined(__cplusplus) && defined(__has_cpp_attribute)
+-#if __has_cpp_attribute(clang::musttail)
++#if __has_cpp_attribute(clang::musttail) && !defined(__arm__)
+ #define MUST_TAIL_CALL [[clang::musttail]]
+ #endif
+ #endif
diff --git a/meta/recipes-sato/webkit/webkitgtk_2.42.2.bb b/meta/recipes-sato/webkit/webkitgtk_2.42.2.bb
index 2ba60eb65ba..997aa5575b0 100644
--- a/meta/recipes-sato/webkit/webkitgtk_2.42.2.bb
+++ b/meta/recipes-sato/webkit/webkitgtk_2.42.2.bb
@@ -14,6 +14,7 @@  SRC_URI = "https://www.webkitgtk.org/releases/${BPN}-${PV}.tar.xz \
            file://reproducibility.patch \
            file://0d3344e17d258106617b0e6d783d073b188a2548.patch \
            file://0001-CMake-Add-a-variable-to-control-macro-__PAS_ALWAYS_I.patch \
+           file://no-musttail-arm.patch \
            "
 SRC_URI[sha256sum] = "5720aa3e8627f1b9f63252187d4df0f8233ae71d697b1796ebfbe5ca750bd118"