Accepting request 1091820 from home:Vogtinator:qt5.15

- Update to version 5.15.9+kde26:
  * qml tool: Use QCommandLineParser::process() rather than parse()
- Add patch to fix crash on aarch64 (boo#1211628, QTBUG-111935):
  * 0001-JIT-Add-missing-STORE-LOAD-_ACC-to-CreateCallContext.patch

OBS-URL: https://build.opensuse.org/request/show/1091820
OBS-URL: https://build.opensuse.org/package/show/KDE:Qt:5.15/libqt5-qtdeclarative?expand=0&rev=29
This commit is contained in:
Christophe Marin 2023-06-09 17:27:21 +00:00 committed by Git OBS Bridge
parent d455715874
commit a19c1c8572
7 changed files with 66 additions and 8 deletions

View File

@ -0,0 +1,48 @@
From cb4f59d2dfbb9def4298688ec87e6b1caf8b622f Mon Sep 17 00:00:00 2001
From: Ulf Hermann <ulf.hermann@qt.io>
Date: Wed, 15 Mar 2023 08:59:43 +0100
Subject: [PATCH] JIT: Add missing {STORE|LOAD}_ACC() to CreateCallContext
We cannot assume anything about the accumulator register after calling
PushCallContext::call(). Also add a note about not needing to re-load
the accumulator on ThrowException.
Pick-to: 6.5 6.2 5.15
Fixes: QTBUG-111935
Change-Id: I7196585e1d2697c215f4fe87d8d7ac9b98b622a3
Reviewed-by: <carl@carlschwan.eu>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
(cherry picked from commit 15ec024152a1d1d99a4934f7b2408e7af7b2552a)
---
src/qml/jit/qv4baselinejit.cpp | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/src/qml/jit/qv4baselinejit.cpp b/src/qml/jit/qv4baselinejit.cpp
index 45150cfffd..5ad53faf95 100644
--- a/src/qml/jit/qv4baselinejit.cpp
+++ b/src/qml/jit/qv4baselinejit.cpp
@@ -540,6 +540,8 @@ void BaselineJIT::generate_ThrowException()
as->passEngineAsArg(0);
BASELINEJIT_GENERATE_RUNTIME_CALL(ThrowException, CallResultDestination::Ignore);
as->gotoCatchException();
+
+ // LOAD_ACC(); <- not needed here since it would be unreachable.
}
void BaselineJIT::generate_GetException() { as->getException(); }
@@ -547,9 +549,11 @@ void BaselineJIT::generate_SetException() { as->setException(); }
void BaselineJIT::generate_CreateCallContext()
{
+ STORE_ACC();
as->prepareCallWithArgCount(1);
as->passCppFrameAsArg(0);
BASELINEJIT_GENERATE_RUNTIME_CALL(PushCallContext, CallResultDestination::Ignore);
+ LOAD_ACC();
}
void BaselineJIT::generate_PushCatchContext(int index, int name) { as->pushCatchContext(index, name); }
--
2.40.1

View File

@ -1,4 +1,4 @@
<servicedata> <servicedata>
<service name="tar_scm"> <service name="tar_scm">
<param name="url">https://invent.kde.org/qt/qt/qtdeclarative.git</param> <param name="url">https://invent.kde.org/qt/qt/qtdeclarative.git</param>
<param name="changesrevision">c21cad9f47eb7baa40341ec9b70dadb86f65a179</param></service></servicedata> <param name="changesrevision">039ce261b0f8061f8485f9c2eaf497a4d4395baa</param></service></servicedata>

View File

@ -1,3 +1,11 @@
-------------------------------------------------------------------
Wed May 24 08:00:51 UTC 2023 - Fabian Vogt <fabian@ritter-vogt.de>
- Update to version 5.15.9+kde26:
* qml tool: Use QCommandLineParser::process() rather than parse()
- Add patch to fix crash on aarch64 (boo#1211628, QTBUG-111935):
* 0001-JIT-Add-missing-STORE-LOAD-_ACC-to-CreateCallContext.patch
------------------------------------------------------------------- -------------------------------------------------------------------
Thu May 11 08:28:37 UTC 2023 - Fabian Vogt <fvogt@suse.com> Thu May 11 08:28:37 UTC 2023 - Fabian Vogt <fvogt@suse.com>

View File

@ -23,7 +23,7 @@
%define so_version 5.15.9 %define so_version 5.15.9
%define tar_version qtdeclarative-everywhere-src-%{version} %define tar_version qtdeclarative-everywhere-src-%{version}
Name: libqt5-qtdeclarative Name: libqt5-qtdeclarative
Version: 5.15.9+kde25 Version: 5.15.9+kde26
Release: 0 Release: 0
Summary: Qt 5 Declarative Library Summary: Qt 5 Declarative Library
License: LGPL-3.0-only OR (GPL-2.0-only OR GPL-3.0-or-later) License: LGPL-3.0-only OR (GPL-2.0-only OR GPL-3.0-or-later)
@ -31,6 +31,8 @@ Group: Development/Libraries/X11
URL: https://www.qt.io URL: https://www.qt.io
Source: %{tar_version}.tar.xz Source: %{tar_version}.tar.xz
Source1: baselibs.conf Source1: baselibs.conf
# https://invent.kde.org/qt/qt/qtdeclarative/-/merge_requests/49
Patch100: 0001-JIT-Add-missing-STORE-LOAD-_ACC-to-CreateCallContext.patch
# https://invent.kde.org/qt/qt/qtdeclarative/-/merge_requests/32 # https://invent.kde.org/qt/qt/qtdeclarative/-/merge_requests/32
Patch103: qtdeclarative-5.15.0-FixMaxXMaxYExtent.patch Patch103: qtdeclarative-5.15.0-FixMaxXMaxYExtent.patch
BuildRequires: fdupes BuildRequires: fdupes

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:b496b3784e88915de7a6dee587ef3f3b14396aa344cb4e2220b9103ec876f0fe
size 143414798

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:5e23deb075dde9c0dae40bc0c74f0849baac82a9710bd04b2a2462f647cb5837
size 143401998

View File

@ -1,4 +1,4 @@
name: qtdeclarative-everywhere-src name: qtdeclarative-everywhere-src
version: 5.15.9+kde25 version: 5.15.9+kde26
mtime: 1683196265 mtime: 1684403777
commit: c21cad9f47eb7baa40341ec9b70dadb86f65a179 commit: 039ce261b0f8061f8485f9c2eaf497a4d4395baa