mozilla-bmo1512162.patch
branchfirefox69
changeset 1109 972f68ac6b1a
child 1123 7fa561e5d7c7
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mozilla-bmo1512162.patch	Sat Sep 14 10:56:02 2019 +0200
@@ -0,0 +1,34 @@
+# HG changeset patch
+# Parent  e5858dc7ab007042436496f7cfb9a5abf10f5082
+This fixes a broken build for gcc < 9 on ppc64le.
+This patch can be removed for newer gcc-versions.
+
+diff -r e5858dc7ab00 -r 5d3469aabe61 js/xpconnect/src/XPCWrappedNative.cpp
+--- a/js/xpconnect/src/XPCWrappedNative.cpp	Thu Nov 29 10:07:29 2018 +0100
++++ b/js/xpconnect/src/XPCWrappedNative.cpp	Tue Sep 10 12:42:13 2019 +0200
+@@ -1092,7 +1092,11 @@
+   MOZ_ALWAYS_INLINE bool GetOutParamSource(uint8_t paramIndex,
+                                            MutableHandleValue srcp) const;
+ 
+-  MOZ_ALWAYS_INLINE bool GatherAndConvertResults();
++#if !(__GNUC__ && __linux__ && __PPC64__ && _LITTLE_ENDIAN)
++// Work around a compiler bug on ppc64le (bug 1512162).
++  MOZ_ALWAYS_INLINE
++#endif
++  bool GatherAndConvertResults();
+ 
+   MOZ_ALWAYS_INLINE bool QueryInterfaceFastPath();
+ 
+@@ -1139,7 +1143,11 @@
+ 
+   ~CallMethodHelper();
+ 
+-  MOZ_ALWAYS_INLINE bool Call();
++#if !(__GNUC__ && __linux__ && __PPC64__ && _LITTLE_ENDIAN)
++// Work around a compiler bug on ppc64le (bug 1512162).
++  MOZ_ALWAYS_INLINE
++#endif
++  bool Call();
+ 
+   // Trace implementation so we can put our CallMethodHelper in a Rooted<T>.
+   void trace(JSTracer* aTrc);