diff options
author | A. Wilcox <AWilcox@Wilcox-Tech.com> | 2022-06-12 03:35:39 -0500 |
---|---|---|
committer | Zach van Rijn <me@zv.io> | 2022-10-21 18:34:01 -0500 |
commit | 741941bfad1b5a071bba76fd1e3a4df0e2ed5d95 (patch) | |
tree | 3bae0971eca983f8696b7ab1ad8218cf87e1ddf5 /user/qt5-qtwebkit/ppc64-llint.patch | |
parent | 3506160b155883cbcbbd8a1b2fc4adda77eaa571 (diff) | |
download | packages-741941bfad1b5a071bba76fd1e3a4df0e2ed5d95.tar.gz packages-741941bfad1b5a071bba76fd1e3a4df0e2ed5d95.tar.bz2 packages-741941bfad1b5a071bba76fd1e3a4df0e2ed5d95.tar.xz packages-741941bfad1b5a071bba76fd1e3a4df0e2ed5d95.zip |
user/qt5-qtwebkit: Update snapshot
Fixes: #644
Diffstat (limited to 'user/qt5-qtwebkit/ppc64-llint.patch')
-rw-r--r-- | user/qt5-qtwebkit/ppc64-llint.patch | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/user/qt5-qtwebkit/ppc64-llint.patch b/user/qt5-qtwebkit/ppc64-llint.patch new file mode 100644 index 000000000..802c00ae6 --- /dev/null +++ b/user/qt5-qtwebkit/ppc64-llint.patch @@ -0,0 +1,28 @@ +Description: fix JSCore segmentation fault on 64-bit big endian systems + In CodeBlock.cpp the code preparing the operands of op_get_from_scope writes + the property offset as pointer size (hence 64 bit) value: + . + 2141: instructions[i + 6].u.pointer = reinterpret_cast<void*>(op.operand); + . + while the same slot is accessed later by the jitted code as 32 bit integer: + . + macro getProperty(slow) + loadisFromInstruction(6, t1) + . + This fails on big endian targets since the integer access takes the higher + part of the 64 bit value. +Origin: backport, https://github.com/webkit/webkit/commit/3fdde71c7d95d758 +Reviewed-by: Frank Heimes <frank.heimes@canonical.com> +Last-Update: 2021-11-24 + +--- a/Source/JavaScriptCore/llint/LowLevelInterpreter64.asm ++++ b/Source/JavaScriptCore/llint/LowLevelInterpreter64.asm +@@ -2020,7 +2020,7 @@ macro loadWithStructureCheck(operand, sl + end + + macro getProperty(slow) +- loadisFromInstruction(6, t1) ++ loadpFromInstruction(6, t1) + loadPropertyAtVariableOffset(t1, t0, t2, slow) + valueProfile(t2, 7, t0) + loadisFromInstruction(1, t0) |