# HG changeset patch # User Lars T Hansen # Date 1457091735 -3600 # Node ID 69f237c2cf9131e97372debee01931dbacd064e5 # Parent 3aa4483740828617001060fe7386051020521e90 Bug 1253216 - clean up the atomic ops ifdef nest. r=jorendorff diff --git a/js/src/jit/AtomicOperations.h b/js/src/jit/AtomicOperations.h --- a/js/src/jit/AtomicOperations.h +++ b/js/src/jit/AtomicOperations.h @@ -318,21 +318,29 @@ AtomicOperations::isLockfree(int32_t siz } // namespace js #if defined(JS_CODEGEN_ARM) # include "jit/arm/AtomicOperations-arm.h" #elif defined(JS_CODEGEN_ARM64) # include "jit/arm64/AtomicOperations-arm64.h" #elif defined(JS_CODEGEN_MIPS32) || defined(JS_CODEGEN_MIPS64) # include "jit/mips-shared/AtomicOperations-mips-shared.h" -#elif defined(__ppc64__) || defined(__PPC64_) \ - || defined(__ppc64le__) || defined(__PPC64LE__) \ - || defined(__ppc__) || defined(__PPC__) +#elif defined(__ppc__) || defined(__PPC__) # include "jit/none/AtomicOperations-ppc.h" #elif defined(JS_CODEGEN_NONE) -# include "jit/none/AtomicOperations-none.h" + // You can disable the JIT with --disable-ion but you must still + // provide the atomic operations that will be used by the JS engine. + // When the JIT is disabled the operations are simply safe-for-races + // C++ realizations of atomics. These operations cannot be written + // in portable C++, hence the default here is to crash. See the + // top of the file for more guidance. +# if defined(__ppc64__) || defined(__PPC64__) || defined(__ppc64le__) || defined(__PPC64LE__) +# include "jit/none/AtomicOperations-ppc.h" +# else +# include "jit/none/AtomicOperations-none.h" // These MOZ_CRASH() always +# endif #elif defined(JS_CODEGEN_X86) || defined(JS_CODEGEN_X64) # include "jit/x86-shared/AtomicOperations-x86-shared.h" #else # error "Atomic operations must be defined for this platform" #endif #endif // jit_AtomicOperations_h