mozilla-bmo1512162.patch
author Wolfgang Rosenauer <wr@rosenauer.org>
Fri, 20 Sep 2019 14:10:22 +0200
branchfirefox69
changeset 1110 9e4b30f05706
parent 1109 972f68ac6b1a
child 1123 7fa561e5d7c7
permissions -rw-r--r--
Firefox 69.0.1
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1109
972f68ac6b1a Firefox 69.0 as released to Factory/Tumbleweed
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
     1
# HG changeset patch
972f68ac6b1a Firefox 69.0 as released to Factory/Tumbleweed
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
     2
# Parent  e5858dc7ab007042436496f7cfb9a5abf10f5082
972f68ac6b1a Firefox 69.0 as released to Factory/Tumbleweed
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
     3
This fixes a broken build for gcc < 9 on ppc64le.
972f68ac6b1a Firefox 69.0 as released to Factory/Tumbleweed
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
     4
This patch can be removed for newer gcc-versions.
972f68ac6b1a Firefox 69.0 as released to Factory/Tumbleweed
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
     5
972f68ac6b1a Firefox 69.0 as released to Factory/Tumbleweed
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
     6
diff -r e5858dc7ab00 -r 5d3469aabe61 js/xpconnect/src/XPCWrappedNative.cpp
972f68ac6b1a Firefox 69.0 as released to Factory/Tumbleweed
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
     7
--- a/js/xpconnect/src/XPCWrappedNative.cpp	Thu Nov 29 10:07:29 2018 +0100
972f68ac6b1a Firefox 69.0 as released to Factory/Tumbleweed
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
     8
+++ b/js/xpconnect/src/XPCWrappedNative.cpp	Tue Sep 10 12:42:13 2019 +0200
972f68ac6b1a Firefox 69.0 as released to Factory/Tumbleweed
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
     9
@@ -1092,7 +1092,11 @@
972f68ac6b1a Firefox 69.0 as released to Factory/Tumbleweed
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    10
   MOZ_ALWAYS_INLINE bool GetOutParamSource(uint8_t paramIndex,
972f68ac6b1a Firefox 69.0 as released to Factory/Tumbleweed
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    11
                                            MutableHandleValue srcp) const;
972f68ac6b1a Firefox 69.0 as released to Factory/Tumbleweed
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    12
 
972f68ac6b1a Firefox 69.0 as released to Factory/Tumbleweed
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    13
-  MOZ_ALWAYS_INLINE bool GatherAndConvertResults();
972f68ac6b1a Firefox 69.0 as released to Factory/Tumbleweed
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    14
+#if !(__GNUC__ && __linux__ && __PPC64__ && _LITTLE_ENDIAN)
972f68ac6b1a Firefox 69.0 as released to Factory/Tumbleweed
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    15
+// Work around a compiler bug on ppc64le (bug 1512162).
972f68ac6b1a Firefox 69.0 as released to Factory/Tumbleweed
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    16
+  MOZ_ALWAYS_INLINE
972f68ac6b1a Firefox 69.0 as released to Factory/Tumbleweed
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    17
+#endif
972f68ac6b1a Firefox 69.0 as released to Factory/Tumbleweed
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    18
+  bool GatherAndConvertResults();
972f68ac6b1a Firefox 69.0 as released to Factory/Tumbleweed
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    19
 
972f68ac6b1a Firefox 69.0 as released to Factory/Tumbleweed
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    20
   MOZ_ALWAYS_INLINE bool QueryInterfaceFastPath();
972f68ac6b1a Firefox 69.0 as released to Factory/Tumbleweed
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    21
 
972f68ac6b1a Firefox 69.0 as released to Factory/Tumbleweed
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    22
@@ -1139,7 +1143,11 @@
972f68ac6b1a Firefox 69.0 as released to Factory/Tumbleweed
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    23
 
972f68ac6b1a Firefox 69.0 as released to Factory/Tumbleweed
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    24
   ~CallMethodHelper();
972f68ac6b1a Firefox 69.0 as released to Factory/Tumbleweed
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    25
 
972f68ac6b1a Firefox 69.0 as released to Factory/Tumbleweed
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    26
-  MOZ_ALWAYS_INLINE bool Call();
972f68ac6b1a Firefox 69.0 as released to Factory/Tumbleweed
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    27
+#if !(__GNUC__ && __linux__ && __PPC64__ && _LITTLE_ENDIAN)
972f68ac6b1a Firefox 69.0 as released to Factory/Tumbleweed
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    28
+// Work around a compiler bug on ppc64le (bug 1512162).
972f68ac6b1a Firefox 69.0 as released to Factory/Tumbleweed
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    29
+  MOZ_ALWAYS_INLINE
972f68ac6b1a Firefox 69.0 as released to Factory/Tumbleweed
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    30
+#endif
972f68ac6b1a Firefox 69.0 as released to Factory/Tumbleweed
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    31
+  bool Call();
972f68ac6b1a Firefox 69.0 as released to Factory/Tumbleweed
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    32
 
972f68ac6b1a Firefox 69.0 as released to Factory/Tumbleweed
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    33
   // Trace implementation so we can put our CallMethodHelper in a Rooted<T>.
972f68ac6b1a Firefox 69.0 as released to Factory/Tumbleweed
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    34
   void trace(JSTracer* aTrc);