components/desktop/firefox/patches/firefox-53-sparc-gfx-atomicops.patch
changeset 6919 7972aae0fb03
equal deleted inserted replaced
6918:5fc9b45c15e5 6919:7972aae0fb03
       
     1 Fixes endian issue in GFX on sparc and fixes atomic operations.
       
     2 Will not send upstream.
       
     3 
       
     4 diff --git a/js/src/jit/AtomicOperations.h b/js/src/jit/AtomicOperations.h
       
     5 --- a/js/src/jit/AtomicOperations.h
       
     6 +++ b/js/src/jit/AtomicOperations.h
       
     7 @@ -297,17 +297,17 @@ AtomicOperations::isLockfree(int32_t siz
       
     8  #if defined(JS_CODEGEN_ARM)
       
     9  # include "jit/arm/AtomicOperations-arm.h"
       
    10  #elif defined(JS_CODEGEN_ARM64)
       
    11  # include "jit/arm64/AtomicOperations-arm64.h"
       
    12  #elif defined(JS_CODEGEN_MIPS32) || defined(JS_CODEGEN_MIPS64)
       
    13  # include "jit/mips-shared/AtomicOperations-mips-shared.h"
       
    14  #elif defined(__ppc64__) || defined(__PPC64_)       \
       
    15      || defined(__ppc64le__) || defined(__PPC64LE__) \
       
    16 -    || defined(__ppc__) || defined(__PPC__)
       
    17 +    || defined(__ppc__) || defined(__PPC__) || defined(__sparc)
       
    18  # include "jit/none/AtomicOperations-ppc.h"
       
    19  #elif defined(JS_CODEGEN_NONE)
       
    20  # include "jit/none/AtomicOperations-none.h"
       
    21  #elif defined(JS_CODEGEN_X86) || defined(JS_CODEGEN_X64)
       
    22  # include "jit/x86-shared/AtomicOperations-x86-shared.h"
       
    23  #else
       
    24  # error "Atomic operations must be defined for this platform"
       
    25  #endif
       
    26 --- a/gfx/2d/Types.h    Tue May  3 14:20:54 2016
       
    27 +++ b/gfx/2d/Types.h    Tue May  3 13:43:00 2016
       
    28 @@ -61,15 +61,8 @@
       
    29    // The following values are endian-independent synonyms. The _UINT32 suffix
       
    30    // indicates that the name reflects the layout when viewed as a uint32_t
       
    31    // value.
       
    32 -#if MOZ_LITTLE_ENDIAN
       
    33    A8R8G8B8_UINT32 = B8G8R8A8,       // 0xAARRGGBB
       
    34    X8R8G8B8_UINT32 = B8G8R8X8        // 0x00RRGGBB
       
    35 -#elif MOZ_BIG_ENDIAN
       
    36 -  A8R8G8B8_UINT32 = A8R8G8B8,       // 0xAARRGGBB
       
    37 -  X8R8G8B8_UINT32 = X8R8G8B8        // 0x00RRGGBB
       
    38 -#else
       
    39 -# error "bad endianness"
       
    40 -#endif
       
    41  };
       
    42 
       
    43  inline bool IsOpaque(SurfaceFormat aFormat)