Fixed s390x build issues
This commit is contained in:
parent
684209cf7d
commit
0ac23253fa
71
mozilla-696393.patch
Normal file
71
mozilla-696393.patch
Normal file
@ -0,0 +1,71 @@
|
|||||||
|
diff -up mozilla-release/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_s390.cpp.696393 mozilla-release/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_s390.cpp
|
||||||
|
--- mozilla-release/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_s390.cpp.696393 2011-11-04 22:34:23.000000000 +0100
|
||||||
|
+++ mozilla-release/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_s390.cpp 2011-11-29 15:25:31.016899861 +0100
|
||||||
|
@@ -200,56 +200,22 @@ invoke_copy_to_stack(PRUint32 paramCount
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
+typedef nsresult (*vtable_func)(nsISupports *, PRUint32, PRUint32, PRUint32, PRUint32, double, double);
|
||||||
|
+
|
||||||
|
EXPORT_XPCOM_API(nsresult)
|
||||||
|
NS_InvokeByIndex(nsISupports* that, PRUint32 methodIndex,
|
||||||
|
PRUint32 paramCount, nsXPTCVariant* params)
|
||||||
|
{
|
||||||
|
- PRUint32 *vtable = *(PRUint32 **)that;
|
||||||
|
-#if defined(__GXX_ABI_VERSION) && __GXX_ABI_VERSION >= 100 /* G++ V3 ABI */
|
||||||
|
- PRUint32 method = vtable[methodIndex];
|
||||||
|
-#else /* not G++ V3 ABI */
|
||||||
|
- PRUint32 method = vtable[methodIndex + 2];
|
||||||
|
-#endif /* G++ V3 ABI */
|
||||||
|
+ vtable_func *vtable = *reinterpret_cast<vtable_func **>(that);
|
||||||
|
+ vtable_func method = vtable[methodIndex];
|
||||||
|
PRUint32 overflow = invoke_count_words (paramCount, params);
|
||||||
|
- PRUint32 result;
|
||||||
|
+ PRUint32 *stack_space = reinterpret_cast<PRUint32 *>(__builtin_alloca((overflow + 8 /* 4 32-bits gpr + 2 64-bits fpr */) * 4));
|
||||||
|
+
|
||||||
|
+ invoke_copy_to_stack(paramCount, params, stack_space, overflow);
|
||||||
|
+
|
||||||
|
+ PRUint32 *d_gpr = stack_space + overflow;
|
||||||
|
+ double *d_fpr = reinterpret_cast<double *>(d_gpr + 4);
|
||||||
|
|
||||||
|
- __asm__ __volatile__
|
||||||
|
- (
|
||||||
|
- "lr 7,15\n\t"
|
||||||
|
- "ahi 7,-32\n\t"
|
||||||
|
-
|
||||||
|
- "lr 3,%3\n\t"
|
||||||
|
- "sll 3,2\n\t"
|
||||||
|
- "lcr 3,3\n\t"
|
||||||
|
- "l 2,0(15)\n\t"
|
||||||
|
- "la 15,0(3,7)\n\t"
|
||||||
|
- "st 2,0(15)\n\t"
|
||||||
|
-
|
||||||
|
- "lr 2,%1\n\t"
|
||||||
|
- "lr 3,%2\n\t"
|
||||||
|
- "la 4,96(15)\n\t"
|
||||||
|
- "lr 5,%3\n\t"
|
||||||
|
- "basr 14,%4\n\t"
|
||||||
|
-
|
||||||
|
- "lr 2,%5\n\t"
|
||||||
|
- "ld 0,112(7)\n\t"
|
||||||
|
- "ld 2,120(7)\n\t"
|
||||||
|
- "lm 3,6,96(7)\n\t"
|
||||||
|
- "basr 14,%6\n\t"
|
||||||
|
-
|
||||||
|
- "la 15,32(7)\n\t"
|
||||||
|
-
|
||||||
|
- "lr %0,2\n\t"
|
||||||
|
- : "=r" (result)
|
||||||
|
- : "r" (paramCount),
|
||||||
|
- "r" (params),
|
||||||
|
- "r" (overflow),
|
||||||
|
- "a" (invoke_copy_to_stack),
|
||||||
|
- "a" (that),
|
||||||
|
- "a" (method)
|
||||||
|
- : "2", "3", "4", "5", "6", "7", "14", "cc", "memory", "%f0", "%f2"
|
||||||
|
- );
|
||||||
|
-
|
||||||
|
- return result;
|
||||||
|
+ return method(that, d_gpr[0], d_gpr[1], d_gpr[2], d_gpr[3], d_fpr[0], d_fpr[1]);
|
||||||
|
}
|
||||||
|
|
@ -27,7 +27,7 @@
|
|||||||
Summary: Mozilla Thunderbird mail/newsgroup client
|
Summary: Mozilla Thunderbird mail/newsgroup client
|
||||||
Name: thunderbird
|
Name: thunderbird
|
||||||
Version: 8.0
|
Version: 8.0
|
||||||
Release: 2%{?dist}
|
Release: 3%{?dist}
|
||||||
URL: http://www.mozilla.org/projects/thunderbird/
|
URL: http://www.mozilla.org/projects/thunderbird/
|
||||||
License: MPLv1.1 or GPLv2+ or LGPLv2+
|
License: MPLv1.1 or GPLv2+ or LGPLv2+
|
||||||
Group: Applications/Internet
|
Group: Applications/Internet
|
||||||
@ -55,6 +55,7 @@ Patch8: xulrunner-6.0-secondary-ipc.patch
|
|||||||
Patch9: mozilla-670719.patch
|
Patch9: mozilla-670719.patch
|
||||||
Patch10: xulrunner-2.0-network-link-service.patch
|
Patch10: xulrunner-2.0-network-link-service.patch
|
||||||
Patch11: xulrunner-2.0-NetworkManager09.patch
|
Patch11: xulrunner-2.0-NetworkManager09.patch
|
||||||
|
Patch12: mozilla-696393.patch
|
||||||
|
|
||||||
# Build patches
|
# Build patches
|
||||||
Patch100: xulrunner-install.patch
|
Patch100: xulrunner-install.patch
|
||||||
@ -142,6 +143,7 @@ cd mozilla
|
|||||||
%patch9 -p1 -b .moz670719
|
%patch9 -p1 -b .moz670719
|
||||||
%patch10 -p1 -b .link-service
|
%patch10 -p1 -b .link-service
|
||||||
%patch11 -p1 -b .NetworkManager09
|
%patch11 -p1 -b .NetworkManager09
|
||||||
|
%patch12 -p1 -b .696393
|
||||||
%patch100 -p2 -b .install
|
%patch100 -p2 -b .install
|
||||||
cd ..
|
cd ..
|
||||||
|
|
||||||
@ -350,6 +352,9 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
|
|||||||
#===============================================================================
|
#===============================================================================
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Tue Nov 29 2011 Jan Horak <jhorak@redhat.com> - 8.0-3
|
||||||
|
- Fixed s390x issues
|
||||||
|
|
||||||
* Thu Nov 10 2011 Jan Horak <jhorak@redhat.com> - 8.0-2
|
* Thu Nov 10 2011 Jan Horak <jhorak@redhat.com> - 8.0-2
|
||||||
- Enable Mozilla's crash reporter again for all archs
|
- Enable Mozilla's crash reporter again for all archs
|
||||||
- Temporary workaround for langpacks
|
- Temporary workaround for langpacks
|
||||||
|
Loading…
Reference in New Issue
Block a user