Merge branch 'main' into f33

This commit is contained in:
Martin Stransky 2021-02-08 17:21:55 +01:00
commit fe0b918890
4 changed files with 118 additions and 6 deletions

2
.gitignore vendored
View File

@ -445,3 +445,5 @@ firefox-3.6.4.source.tar.bz2
/firefox-langpacks-84.0.2-20210106.tar.xz
/firefox-85.0.source.tar.xz
/firefox-langpacks-85.0-20210120.tar.xz
/firefox-85.0.1.source.tar.xz
/firefox-langpacks-85.0.1-20210208.tar.xz

View File

@ -173,13 +173,13 @@ ExcludeArch: armv7hl
Summary: Mozilla Firefox Web browser
Name: firefox
Version: 85.0
Release: 9%{?pre_tag}%{?dist}
Version: 85.0.1
Release: 1%{?pre_tag}%{?dist}
URL: https://www.mozilla.org/firefox/
License: MPLv1.1 or GPLv2+ or LGPLv2+
Source0: https://archive.mozilla.org/pub/firefox/releases/%{version}%{?pre_version}/source/firefox-%{version}%{?pre_version}.source.tar.xz
%if %{with langpacks}
Source1: firefox-langpacks-%{version}%{?pre_version}-20210120.tar.xz
Source1: firefox-langpacks-%{version}%{?pre_version}-20210208.tar.xz
%endif
Source2: cbindgen-vendor.tar.xz
Source10: firefox-mozconfig
@ -255,6 +255,7 @@ Patch427: mozilla-1678247.patch
Patch428: mozilla-1679933.patch
Patch429: mozilla-1631061-1.patch
Patch430: mozilla-1631061-2.patch
Patch431: mozilla-1690152.patch
# PGO/LTO patches
Patch600: pgo.patch
@ -469,6 +470,7 @@ This package contains results of tests executed during build.
%patch428 -p1 -b .1679933
%patch429 -p1 -b .1631061
%patch430 -p1 -b .1631061
%patch431 -p1 -b .1690152
# PGO patches
%if %{build_with_pgo}
@ -929,6 +931,9 @@ mkdir -p %{buildroot}%{_datadir}/metainfo
mkdir -p %{buildroot}%{_datadir}/gnome-shell/search-providers
%{__cp} %{SOURCE34} %{buildroot}%{_datadir}/gnome-shell/search-providers
# Remove gtk2 support as flash plugin is no longer supported
rm -rf %{buildroot}%{mozappdir}/gtk2/
# Remove copied libraries to speed up build
rm -f %{buildroot}%{mozappdirdev}/sdk/lib/libmozjs.so
rm -f %{buildroot}%{mozappdirdev}/sdk/lib/libmozalloc.so
@ -1023,7 +1028,6 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
%{mozappdir}/browser/crashreporter-override.ini
%endif
%{mozappdir}/*.so
%{mozappdir}/gtk2/*.so
%{mozappdir}/defaults/pref/channel-prefs.js
%{mozappdir}/dependentlibs.list
%{mozappdir}/dictionaries
@ -1042,6 +1046,15 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
#---------------------------------------------------------------------
%changelog
* Mon Feb 08 2021 Martin Stransky <stransky@redhat.com> - 85.0.1-1
- Updated to 85.0.1
* Wed Feb 03 2021 Dan Horák <dan[at]danny.cz> - 85.0-11
- Fix parameter passing on ppc64le (mozb#1690152)
* Tue Feb 02 2021 Kalev Lember <klember@redhat.com> - 85.0-10
- Remove gtk2 support as flash plugin is no longer supported
* Sat Jan 30 2021 Martin Stransky <stransky@redhat.com> - 85.0-9
- Enable WebRender on KDE/Wayland and AMD/Intel drivers.

97
mozilla-1690152.patch Normal file
View File

@ -0,0 +1,97 @@
# HG changeset patch
# User Cameron Kaiser <spectre@floodgap.com>
# Date 1612231460 0
# Node ID 579a66fd796690fb752485215b2edaa6167ebf16
# Parent a00504e040bfd34d01c74d478beb9d308ec085be
Bug 1690152 - on ppc64 properly skip parameter slots if we overflow GPRs while still having FPRs to burn. r=tcampbell
Differential Revision: https://phabricator.services.mozilla.com/D103724
diff --git a/xpcom/reflect/xptcall/md/unix/xptcinvoke_ppc64_linux.cpp b/xpcom/reflect/xptcall/md/unix/xptcinvoke_ppc64_linux.cpp
--- a/xpcom/reflect/xptcall/md/unix/xptcinvoke_ppc64_linux.cpp
+++ b/xpcom/reflect/xptcall/md/unix/xptcinvoke_ppc64_linux.cpp
@@ -86,27 +86,37 @@ extern "C" void invoke_copy_to_stack(uin
case nsXPTType::T_WCHAR: value = s->val.wc; break;
default: value = (uint64_t) s->val.p; break;
}
}
if (!s->IsIndirect() && s->type == nsXPTType::T_DOUBLE) {
if (nr_fpr < FPR_COUNT) {
fpregs[nr_fpr++] = s->val.d;
- nr_gpr++;
+ // Even if we have enough FPRs, still skip space in
+ // the parameter area if we ran out of placeholder GPRs.
+ if (nr_gpr < GPR_COUNT) {
+ nr_gpr++;
+ } else {
+ d++;
+ }
} else {
*((double *)d) = s->val.d;
d++;
}
}
else if (!s->IsIndirect() && s->type == nsXPTType::T_FLOAT) {
if (nr_fpr < FPR_COUNT) {
// Single-precision floats are passed in FPRs too.
fpregs[nr_fpr++] = s->val.f;
- nr_gpr++;
+ if (nr_gpr < GPR_COUNT) {
+ nr_gpr++;
+ } else {
+ d++;
+ }
} else {
#ifdef __LITTLE_ENDIAN__
*((float *)d) = s->val.f;
#else
// Big endian needs adjustment to point to the least
// significant word.
float* p = (float*)d;
p++;
diff --git a/xpcom/reflect/xptcall/md/unix/xptcstubs_ppc64_linux.cpp b/xpcom/reflect/xptcall/md/unix/xptcstubs_ppc64_linux.cpp
--- a/xpcom/reflect/xptcall/md/unix/xptcstubs_ppc64_linux.cpp
+++ b/xpcom/reflect/xptcall/md/unix/xptcstubs_ppc64_linux.cpp
@@ -98,27 +98,37 @@ PrepareAndDispatch(nsXPTCStubBase * self
nr_gpr++;
else
ap++;
}
if (!param.IsOut() && type == nsXPTType::T_DOUBLE) {
if (nr_fpr < FPR_COUNT) {
dp->val.d = fpregs[nr_fpr++];
- nr_gpr++;
+ // Even if we have enough FPRs, still skip space in
+ // the parameter area if we ran out of placeholder GPRs.
+ if (nr_gpr < GPR_COUNT) {
+ nr_gpr++;
+ } else {
+ ap++;
+ }
} else {
dp->val.d = *(double*)ap++;
}
continue;
}
if (!param.IsOut() && type == nsXPTType::T_FLOAT) {
if (nr_fpr < FPR_COUNT) {
// Single-precision floats are passed in FPRs too.
dp->val.f = (float)fpregs[nr_fpr++];
- nr_gpr++;
+ if (nr_gpr < GPR_COUNT) {
+ nr_gpr++;
+ } else {
+ ap++;
+ }
} else {
#ifdef __LITTLE_ENDIAN__
dp->val.f = *(float*)ap++;
#else
// Big endian needs adjustment to point to the least
// significant word.
float* p = (float*)ap;
p++;

View File

@ -1,4 +1,4 @@
SHA512 (cbindgen-vendor.tar.xz) = 3c925c5523246b7dfbcb4ce563483d5b45315a06dc90f2cf07cddef0c263dd15b410afbbe4d86594de96a308e93be3b27ffec01f5f759a42ecba3cc983b1677f
SHA512 (mochitest-python.tar.gz) = 7f357cb8bd93d64be5cb75819a8a813d2f8f217ff25f0df8c3190910744132405d45797b3900775a44b554f5c70cf2682809c9e7a686ca131fddcd81e98028d9
SHA512 (firefox-85.0.source.tar.xz) = a88472e66baab32d98cb9d13d7dd3c41b47a697ce2a42209612d2342bd6c1c26cd80cdd8905a4cecc72895f155df09762735e8af24bc6156663b7a14e890be4e
SHA512 (firefox-langpacks-85.0-20210120.tar.xz) = ec4b720d74940849f90831de72c5b7bdc004075e4a9b3b966c218b87e4ff9c3c10117a193d947cd971db955f1f3be99d7af706f981b8c0195c16936b1a10881e
SHA512 (firefox-85.0.1.source.tar.xz) = ad2b72ec209ca14ec78ebcb4718553119f74895e951a5254f9a1e0fc9d7cad3087a7dd4f82368c2845e3018bb3677853241e9c1e575f03e9b7b565e65b860e22
SHA512 (firefox-langpacks-85.0.1-20210208.tar.xz) = d8bf4924c37c9b3ac2f64cbc136f54d5f979deae2e3402bd8f76ffdd99f0671eb8bc9695fabb7199a5f021377db59bc11d5420c4ff49a8bf0d5c8af516ce6391