diff options
Diffstat (limited to 'mozilla-1512162.patch')
-rw-r--r-- | mozilla-1512162.patch | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/mozilla-1512162.patch b/mozilla-1512162.patch new file mode 100644 index 0000000..a246a3e --- /dev/null +++ b/mozilla-1512162.patch @@ -0,0 +1,26 @@ +diff --git a/js/xpconnect/src/XPCWrappedNative.cpp b/js/xpconnect/src/XPCWrappedNative.cpp +--- a/js/xpconnect/src/XPCWrappedNative.cpp ++++ b/js/xpconnect/src/XPCWrappedNative.cpp +@@ -1157,6 +1157,10 @@ + return helper.get().Call(); + } + ++#if (__GNUC__ && __linux__ && __PPC64__ && _LITTLE_ENDIAN) ++// Work around a compiler bug on ppc64le (bug 1512162). ++__attribute__ ((noinline,noclone)) ++#endif + bool CallMethodHelper::Call() { + mCallContext.SetRetVal(JS::UndefinedValue()); + +@@ -1315,6 +1319,10 @@ + return true; + } + ++#if (__GNUC__ && __linux__ && __PPC64__ && _LITTLE_ENDIAN) ++// Work around a compiler bug on ppc64le (bug 1512162). ++__attribute__ ((noinline,noclone)) ++#endif + bool CallMethodHelper::GatherAndConvertResults() { + // now we iterate through the native params to gather and convert results + uint8_t paramCount = mMethodInfo->GetParamCount(); + |