mozilla-ppc64le.patch
author Wolfgang Rosenauer <wr@rosenauer.org>
Thu, 02 Jan 2014 22:32:12 +0100
branchfirefox26
changeset 695 81c8f51dbf67
parent 694 89d4b9910eb7
permissions -rw-r--r--
add missing fixes
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
694
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
     1
# HG changeset patch
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
     2
# Parent cad86882605788345b2791275efc6e1fa7500dbd
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
     3
# User Ulrich Weigand <uweigand@de.ibm.com>
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
     4
General PPC64 LE support
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
     5
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
     6
diff --git a/configure.in b/configure.in
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
     7
--- a/configure.in
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
     8
+++ b/configure.in
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
     9
@@ -1079,17 +1079,17 @@ esac
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    10
 
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    11
 # Only set CPU_ARCH if we recognize the value of OS_TEST
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    12
 
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    13
 case "$OS_TEST" in
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    14
 *86 | i86pc)
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    15
     CPU_ARCH=x86
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    16
     ;;
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    17
 
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    18
-powerpc64 | ppc64)
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    19
+powerpc64 | ppc64 | powerpc64le | ppc64le)
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    20
     CPU_ARCH=ppc64
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    21
     ;;
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    22
 
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    23
 powerpc | ppc | rs6000)
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    24
     CPU_ARCH=ppc
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    25
     ;;
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    26
 
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    27
 Alpha | alpha | ALPHA)
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    28
diff --git a/js/src/assembler/wtf/Platform.h b/js/src/assembler/wtf/Platform.h
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    29
--- a/js/src/assembler/wtf/Platform.h
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    30
+++ b/js/src/assembler/wtf/Platform.h
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    31
@@ -160,26 +160,32 @@
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    32
 /* WTF_CPU_PPC - PowerPC 32-bit */
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    33
 #if   defined(__ppc__)     \
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    34
     || defined(__PPC__)     \
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    35
     || defined(__powerpc__) \
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    36
     || defined(__powerpc)   \
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    37
     || defined(__POWERPC__) \
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    38
     || defined(_M_PPC)      \
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    39
     || defined(__PPC)
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    40
+#if !defined(__ppc64__) && !defined(__PPC64__)
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    41
 #define WTF_CPU_PPC 1
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    42
+#endif
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    43
+#if !defined(__LITTLE_ENDIAN__)
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    44
 #define WTF_CPU_BIG_ENDIAN 1
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    45
 #endif
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    46
+#endif
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    47
 
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    48
 /* WTF_CPU_PPC64 - PowerPC 64-bit */
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    49
 #if   defined(__ppc64__) \
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    50
     || defined(__PPC64__)
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    51
 #define WTF_CPU_PPC64 1
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    52
+#if !defined(__LITTLE_ENDIAN__)
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    53
 #define WTF_CPU_BIG_ENDIAN 1
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    54
 #endif
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    55
+#endif
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    56
 
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    57
 /* WTF_CPU_SH4 - SuperH SH-4 */
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    58
 #if defined(__SH4__)
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    59
 #define WTF_CPU_SH4 1
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    60
 #endif
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    61
 
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    62
 /* WTF_CPU_SPARC32 - SPARC 32-bit */
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    63
 #if defined(__sparc) && !defined(__arch64__) || defined(__sparcv8)
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    64
diff --git a/js/src/configure.in b/js/src/configure.in
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    65
--- a/js/src/configure.in
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    66
+++ b/js/src/configure.in
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    67
@@ -910,17 +910,17 @@ esac
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    68
 
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    69
 # Only set CPU_ARCH if we recognize the value of OS_TEST
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    70
 
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    71
 case "$OS_TEST" in
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    72
 *86 | i86pc)
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    73
     CPU_ARCH=x86
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    74
     ;;
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    75
 
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    76
-powerpc64 | ppc64)
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    77
+powerpc64 | ppc64 | powerpc64le | ppc64le)
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    78
     CPU_ARCH=ppc64
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    79
     ;;
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    80
 
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    81
 powerpc | ppc | rs6000)
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    82
     CPU_ARCH=ppc
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    83
     ;;
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    84
 
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    85
 Alpha | alpha | ALPHA)
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    86
diff --git a/js/src/jscpucfg.h b/js/src/jscpucfg.h
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    87
--- a/js/src/jscpucfg.h
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    88
+++ b/js/src/jscpucfg.h
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    89
@@ -26,17 +26,17 @@
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    90
 #  define HAVE_VA_LIST_AS_ARRAY 1
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    91
 # endif
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    92
 
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    93
 # define IS_LITTLE_ENDIAN 1
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    94
 # undef  IS_BIG_ENDIAN
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    95
 # define JS_BYTES_PER_WORD   4
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    96
 # define JS_BITS_PER_WORD_LOG2   5
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    97
 
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    98
-#elif defined(__APPLE__)
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    99
+#elif defined(__APPLE__) || defined(__powerpc__) || defined(__ppc__)
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   100
 # if __LITTLE_ENDIAN__
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   101
 #  define IS_LITTLE_ENDIAN 1
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   102
 #  undef  IS_BIG_ENDIAN
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   103
 # elif __BIG_ENDIAN__
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   104
 #  undef  IS_LITTLE_ENDIAN
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   105
 #  define IS_BIG_ENDIAN 1
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   106
 # endif
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   107
 
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   108
@@ -88,18 +88,17 @@
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   109
 #  if defined(_STACK_GROWS_UPWARD)
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   110
 #   define JS_STACK_GROWTH_DIRECTION (1)
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   111
 #  elif defined(_STACK_GROWS_DOWNWARD)
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   112
 #   define JS_STACK_GROWTH_DIRECTION (-1)
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   113
 #  endif
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   114
 # endif
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   115
 
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   116
 #elif defined(__sparc) || defined(__sparc__) || \
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   117
-      defined(_POWER) || defined(__powerpc__) || \
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   118
-      defined(__ppc__) || defined(__hppa) || \
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   119
+      defined(_POWER) || defined(__hppa) || \
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   120
       defined(_MIPSEB) || defined(_BIG_ENDIAN)
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   121
 /* IA64 running HP-UX will have _BIG_ENDIAN defined.
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   122
  * IA64 running Linux will have endian.h and be handled above.
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   123
  */
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   124
 # undef IS_LITTLE_ENDIAN
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   125
 # define IS_BIG_ENDIAN 1
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   126
 
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   127
 #else /* !defined(__sparc) && !defined(__sparc__) && ... */
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   128
diff --git a/media/webrtc/trunk/webrtc/typedefs.h b/media/webrtc/trunk/webrtc/typedefs.h
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   129
--- a/media/webrtc/trunk/webrtc/typedefs.h
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   130
+++ b/media/webrtc/trunk/webrtc/typedefs.h
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   131
@@ -47,23 +47,33 @@
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   132
 //#define WEBRTC_ARCH_ARM_FAMILY
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   133
 //#define WEBRTC_ARCH_ARMEL
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   134
 #define WEBRTC_ARCH_32_BITS
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   135
 #define WEBRTC_ARCH_LITTLE_ENDIAN
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   136
 #define WEBRTC_LITTLE_ENDIAN
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   137
 #elif defined(__powerpc64__)
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   138
 #define WEBRTC_ARCH_PPC64 1
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   139
 #define WEBRTC_ARCH_64_BITS 1
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   140
+#ifdef __LITTLE_ENDIAN__
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   141
+#define WEBRTC_ARCH_LITTLE_ENDIAN
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   142
+#define WEBRTC_LITTLE_ENDIAN
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   143
+#else
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   144
 #define WEBRTC_ARCH_BIG_ENDIAN
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   145
 #define WEBRTC_BIG_ENDIAN
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   146
+#endif
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   147
 #elif defined(__ppc__) || defined(__powerpc__)
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   148
 #define WEBRTC_ARCH_PPC 1
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   149
 #define WEBRTC_ARCH_32_BITS 1
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   150
+#ifdef __LITTLE_ENDIAN__
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   151
+#define WEBRTC_ARCH_LITTLE_ENDIAN
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   152
+#define WEBRTC_LITTLE_ENDIAN
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   153
+#else
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   154
 #define WEBRTC_ARCH_BIG_ENDIAN
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   155
 #define WEBRTC_BIG_ENDIAN
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   156
+#endif
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   157
 #elif defined(__sparc64__)
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   158
 #define WEBRTC_ARCH_SPARC 1
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   159
 #define WEBRTC_ARCH_64_BITS 1
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   160
 #define WEBRTC_ARCH_BIG_ENDIAN
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   161
 #define WEBRTC_BIG_ENDIAN
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   162
 #elif defined(__sparc__)
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   163
 #define WEBRTC_ARCH_SPARC 1
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   164
 #define WEBRTC_ARCH_32_BITS 1
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   165
diff --git a/mfbt/Endian.h b/mfbt/Endian.h
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   166
--- a/mfbt/Endian.h
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   167
+++ b/mfbt/Endian.h
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   168
@@ -86,17 +86,17 @@
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   169
 #    error "CPU type is unknown"
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   170
 #  endif
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   171
 #elif defined(_WIN32)
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   172
 #  if defined(_M_IX86)
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   173
 #    define MOZ_LITTLE_ENDIAN 1
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   174
 #  else
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   175
 #    error "CPU type is unknown"
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   176
 #  endif
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   177
-#elif defined(__APPLE__)
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   178
+#elif defined(__APPLE__) || defined(__powerpc__) || defined(__ppc__)
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   179
 #  if __LITTLE_ENDIAN__
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   180
 #    define MOZ_LITTLE_ENDIAN 1
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   181
 #  elif __BIG_ENDIAN__
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   182
 #    define MOZ_BIG_ENDIAN 1
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   183
 #  endif
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   184
 #elif defined(__GNUC__) && \
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   185
       defined(__BYTE_ORDER__) && \
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   186
       defined(__ORDER_LITTLE_ENDIAN__) && \
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   187
@@ -114,18 +114,17 @@
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   188
 #  endif
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   189
 /*
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   190
  * We can't include useful headers like <endian.h> or <sys/isa_defs.h>
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   191
  * here because they're not present on all platforms.  Instead we have
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   192
  * this big conditional that ideally will catch all the interesting
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   193
  * cases.
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   194
  */
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   195
 #elif defined(__sparc) || defined(__sparc__) || \
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   196
-      defined(_POWER) || defined(__powerpc__) || \
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   197
-      defined(__ppc__) || defined(__hppa) || \
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   198
+      defined(_POWER) || defined(__hppa) || \
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   199
       defined(_MIPSEB) || defined(__ARMEB__) || \
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   200
       defined(__s390__) || \
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   201
       (defined(__sh__) && defined(__LITTLE_ENDIAN__)) || \
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   202
       (defined(__ia64) && defined(__BIG_ENDIAN__))
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   203
 #  define MOZ_BIG_ENDIAN 1
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   204
 #elif defined(__i386) || defined(__i386__) || \
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   205
       defined(__x86_64) || defined(__x86_64__) || \
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   206
       defined(_MIPSEL) || defined(__ARMEL__) || \
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   207
diff --git a/nsprpub/pr/include/md/_linux.cfg b/nsprpub/pr/include/md/_linux.cfg
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   208
--- a/nsprpub/pr/include/md/_linux.cfg
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   209
+++ b/nsprpub/pr/include/md/_linux.cfg
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   210
@@ -24,18 +24,23 @@
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   211
 #elif defined(__GNU__)
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   212
 #define PR_AF_INET6 26  /* same as AF_INET6 */
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   213
 #else
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   214
 #define PR_AF_INET6 10  /* same as AF_INET6 */
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   215
 #endif
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   216
 
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   217
 #ifdef __powerpc64__
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   218
 
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   219
+#ifdef __LITTLE_ENDIAN__
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   220
+#define IS_LITTLE_ENDIAN 1
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   221
+#undef  IS_BIG_ENDIAN
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   222
+#else
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   223
 #undef  IS_LITTLE_ENDIAN
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   224
 #define IS_BIG_ENDIAN    1
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   225
+#endif
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   226
 #define IS_64
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   227
 
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   228
 #define PR_BYTES_PER_BYTE   1
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   229
 #define PR_BYTES_PER_SHORT  2
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   230
 #define PR_BYTES_PER_INT    4
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   231
 #define PR_BYTES_PER_INT64  8
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   232
 #define PR_BYTES_PER_LONG   8
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   233
 #define PR_BYTES_PER_FLOAT  4
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   234
@@ -70,18 +75,23 @@
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   235
 #define PR_ALIGN_OF_POINTER 8
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   236
 #define PR_ALIGN_OF_WORD    8
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   237
 
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   238
 #define PR_BYTES_PER_WORD_LOG2   3
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   239
 #define PR_BYTES_PER_DWORD_LOG2  3
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   240
 
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   241
 #elif defined(__powerpc__)
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   242
 
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   243
+#ifdef __LITTLE_ENDIAN__
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   244
+#define IS_LITTLE_ENDIAN 1
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   245
+#undef  IS_BIG_ENDIAN
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   246
+#else
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   247
 #undef  IS_LITTLE_ENDIAN
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   248
 #define IS_BIG_ENDIAN    1
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   249
+#endif
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   250
 
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   251
 #define PR_BYTES_PER_BYTE   1
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   252
 #define PR_BYTES_PER_SHORT  2
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   253
 #define PR_BYTES_PER_INT    4
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   254
 #define PR_BYTES_PER_INT64  8
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   255
 #define PR_BYTES_PER_LONG   4
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   256
 #define PR_BYTES_PER_FLOAT  4
89d4b9910eb7 PPC64LE support
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
   257
 #define PR_BYTES_PER_DOUBLE 8