diff -up firefox-57.0b5/js/src/jit/AtomicOperations.h.jit-atomic-lucky firefox-57.0b5/js/src/jit/AtomicOperations.h --- firefox-57.0b5/js/src/jit/AtomicOperations.h.jit-atomic-lucky 2017-10-06 12:34:02.338973607 +0200 +++ firefox-57.0b5/js/src/jit/AtomicOperations.h 2017-10-06 12:38:24.632622215 +0200 @@ -415,7 +415,7 @@ AtomicOperations::isLockfreeJS(int32_t s #elif defined(__s390__) || defined(__s390x__) # include "jit/none/AtomicOperations-feeling-lucky.h" #else -# error "No AtomicOperations support provided for this platform" +# include "jit/none/AtomicOperations-feeling-lucky.h" #endif #endif // jit_AtomicOperations_h diff -up firefox-57.0b5/js/src/jit/none/AtomicOperations-feeling-lucky.h.jit-atomic-lucky firefox-57.0b5/js/src/jit/none/AtomicOperations-feeling-lucky.h --- firefox-57.0b5/js/src/jit/none/AtomicOperations-feeling-lucky.h.jit-atomic-lucky 2017-09-19 06:18:28.000000000 +0200 +++ firefox-57.0b5/js/src/jit/none/AtomicOperations-feeling-lucky.h 2017-10-06 12:34:02.338973607 +0200 @@ -79,6 +79,14 @@ # define GNUC_COMPATIBLE #endif +#ifdef __s390__ +# define GNUC_COMPATIBLE +#endif + +#ifdef __s390x__ +# define GNUC_COMPATIBLE +#endif + // The default implementation tactic for gcc/clang is to use the newer // __atomic intrinsics added for use in C++11 . Where that // isn't available, we use GCC's older __sync functions instead.