ppc64le-support.patch
author Wolfgang Rosenauer <wr@rosenauer.org>
Sun, 23 Feb 2014 13:05:04 +0100
branchesr24
changeset 706 4639b5ad4fce
parent 698 8066b2bdabfb
permissions -rw-r--r--
Google API key inclusion

Index: mozilla/js/src/jscpucfg.h
===================================================================
--- mozilla.orig/js/src/jscpucfg.h
+++ mozilla/js/src/jscpucfg.h
@@ -35,7 +35,7 @@
 # define JS_BITS_PER_WORD_LOG2   5
 # define JS_ALIGN_OF_POINTER 4
 
-#elif defined(__APPLE__)
+#elif defined(__APPLE__) || defined(__powerpc__) || defined(__ppc__)
 # if __LITTLE_ENDIAN__
 #  define IS_LITTLE_ENDIAN 1
 #  undef  IS_BIG_ENDIAN
@@ -97,8 +97,7 @@
 # endif
 
 #elif defined(__sparc) || defined(__sparc__) || \
-      defined(_POWER) || defined(__powerpc__) || \
-      defined(__ppc__) || defined(__hppa) || \
+      defined(_POWER) || defined(__hppa) || \
       defined(_MIPSEB) || defined(_BIG_ENDIAN)
 /* IA64 running HP-UX will have _BIG_ENDIAN defined.
  * IA64 running Linux will have endian.h and be handled above.
Index: mozilla/js/src/assembler/wtf/Platform.h
===================================================================
--- mozilla.orig/js/src/assembler/wtf/Platform.h
+++ mozilla/js/src/assembler/wtf/Platform.h
@@ -165,16 +165,22 @@
     || defined(__POWERPC__) \
     || defined(_M_PPC)      \
     || defined(__PPC)
+#if !defined(__ppc64__) && !defined(__PPC64__)
 #define WTF_CPU_PPC 1
+#endif
+#if !defined(__LITTLE_ENDIAN__)
 #define WTF_CPU_BIG_ENDIAN 1
 #endif
+#endif
 
 /* WTF_CPU_PPC64 - PowerPC 64-bit */
 #if   defined(__ppc64__) \
     || defined(__PPC64__)
 #define WTF_CPU_PPC64 1
+#if !defined(__LITTLE_ENDIAN__)
 #define WTF_CPU_BIG_ENDIAN 1
 #endif
+#endif
 
 /* WTF_CPU_SH4 - SuperH SH-4 */
 #if defined(__SH4__)
Index: mozilla/nsprpub/pr/include/md/_linux.cfg
===================================================================
--- mozilla.orig/nsprpub/pr/include/md/_linux.cfg
+++ mozilla/nsprpub/pr/include/md/_linux.cfg
@@ -29,8 +29,13 @@
 
 #ifdef __powerpc64__
 
+#ifdef __LITTLE_ENDIAN__
+#define IS_LITTLE_ENDIAN 1
+#undef  IS_BIG_ENDIAN
+#else
 #undef  IS_LITTLE_ENDIAN
 #define IS_BIG_ENDIAN    1
+#endif
 #define IS_64
 
 #define PR_BYTES_PER_BYTE   1
@@ -75,8 +80,13 @@
 
 #elif defined(__powerpc__)
 
+#ifdef __LITTLE_ENDIAN__
+#define IS_LITTLE_ENDIAN 1
+#undef  IS_BIG_ENDIAN
+#else
 #undef  IS_LITTLE_ENDIAN
 #define IS_BIG_ENDIAN    1
+#endif
 
 #define PR_BYTES_PER_BYTE   1
 #define PR_BYTES_PER_SHORT  2