☠☠ backed out by 114ae8fb1a77 ☠ ☠ | |
author | Mike Hommey <mh+mozilla@glandium.org> |
Tue, 19 Jul 2016 14:54:37 +0900 | |
changeset 316369 | 50f9b4a613b0c9a9bcd659f856e5d4df0e9d3ae0 |
parent 316368 | b3947e0eeeb838daf9b1c9d809113aaa49bcfc25 |
child 316370 | 1c4f0a3784f13790876a1eac902d63fa8b9569d2 |
push id | 30770 |
push user | kwierso@gmail.com |
push date | Wed, 05 Oct 2016 00:00:48 +0000 |
treeherder | mozilla-central@3470e326025c [default view] [failures only] |
perfherder | [talos] [build metrics] [platform microbench] (compared to previous push) |
reviewers | njn |
bugs | 1287671 |
milestone | 52.0a1 |
first release with | nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
|
last release without | nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
|
--- a/js/src/js-config.h.in +++ b/js/src/js-config.h.in @@ -43,28 +43,16 @@ #undef JS_GC_ZEAL /* Define to 1 if SpiderMonkey should use small chunks. */ #undef JS_GC_SMALL_CHUNK_SIZE /* Define to 1 to perform extra assertions and heap poisoning. */ #undef JS_CRASH_DIAGNOSTICS -/* Define to 1 if the <endian.h> header is present and - useable. See jscpucfg.h. */ -#undef JS_HAVE_ENDIAN_H - -/* Define to 1 if the <machine/endian.h> header is present and - useable. See jscpucfg.h. */ -#undef JS_HAVE_MACHINE_ENDIAN_H - -/* Define to 1 if the <sys/isa_defs.h> header is present and - useable. See jscpucfg.h. */ -#undef JS_HAVE_SYS_ISA_DEFS_H - /* Define to 1 if SpiderMonkey is in NUNBOX32 mode. */ #undef JS_NUNBOX32 /* Define to 1 if SpiderMonkey is in PUNBOX64 mode. */ #undef JS_PUNBOX64 /* MOZILLA JSAPI version number components */ #undef MOZJS_MAJOR_VERSION
--- a/js/src/jscpucfg.h +++ b/js/src/jscpucfg.h @@ -2,127 +2,25 @@ * vim: set ts=8 sts=4 et sw=4 tw=99: * This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ #ifndef jscpucfg_h #define jscpucfg_h -#define JS_HAVE_LONG_LONG - -#if defined(_WIN64) +#include "mozilla/EndianUtils.h" -# if defined(_M_X64) || defined(_M_AMD64) || defined(_AMD64_) -# define IS_LITTLE_ENDIAN 1 -# undef IS_BIG_ENDIAN -# else /* !(defined(_M_X64) || defined(_M_AMD64) || defined(_AMD64_)) */ -# error "CPU type is unknown" -# endif /* !(defined(_M_X64) || defined(_M_AMD64) || defined(_AMD64_)) */ - -#elif defined(_WIN32) - -# ifdef __WATCOMC__ -# define HAVE_VA_LIST_AS_ARRAY 1 -# endif - +#if defined(MOZ_LITTLE_ENDIAN) # define IS_LITTLE_ENDIAN 1 # undef IS_BIG_ENDIAN - -#elif defined(__APPLE__) || defined(__powerpc__) || defined(__ppc__) -# if __LITTLE_ENDIAN__ -# define IS_LITTLE_ENDIAN 1 -# undef IS_BIG_ENDIAN -# elif __BIG_ENDIAN__ -# undef IS_LITTLE_ENDIAN -# define IS_BIG_ENDIAN 1 -# endif - -#elif defined(JS_HAVE_ENDIAN_H) -# include <endian.h> - -/* - * Historically, OSes providing <endian.h> only defined - * __BYTE_ORDER to either __LITTLE_ENDIAN or __BIG_ENDIAN. - * The Austin group decided to standardise <endian.h> in - * POSIX around 2011, expecting it to provide a BYTE_ORDER - * #define set to either LITTLE_ENDIAN or BIG_ENDIAN. We - * should try to cope with both possibilities here. - */ - -# if defined(__BYTE_ORDER) || defined(BYTE_ORDER) -# if defined(__BYTE_ORDER) -# if __BYTE_ORDER == __LITTLE_ENDIAN -# define IS_LITTLE_ENDIAN 1 -# undef IS_BIG_ENDIAN -# elif __BYTE_ORDER == __BIG_ENDIAN -# undef IS_LITTLE_ENDIAN -# define IS_BIG_ENDIAN 1 -# endif -# endif -# if defined(BYTE_ORDER) -# if BYTE_ORDER == LITTLE_ENDIAN -# define IS_LITTLE_ENDIAN 1 -# undef IS_BIG_ENDIAN -# elif BYTE_ORDER == BIG_ENDIAN -# undef IS_LITTLE_ENDIAN -# define IS_BIG_ENDIAN 1 -# endif -# endif -# else /* !defined(__BYTE_ORDER) */ -# error "endian.h does not define __BYTE_ORDER nor BYTE_ORDER. Cannot determine endianness." -# endif - -/* BSDs */ -#elif defined(JS_HAVE_MACHINE_ENDIAN_H) -# include <sys/types.h> -# include <machine/endian.h> - -# if defined(_BYTE_ORDER) -# if _BYTE_ORDER == _LITTLE_ENDIAN -# define IS_LITTLE_ENDIAN 1 -# undef IS_BIG_ENDIAN -# elif _BYTE_ORDER == _BIG_ENDIAN -# undef IS_LITTLE_ENDIAN -# define IS_BIG_ENDIAN 1 -# endif -# else /* !defined(_BYTE_ORDER) */ -# error "machine/endian.h does not define _BYTE_ORDER. Cannot determine endianness." -# endif - -#elif defined(JS_HAVE_SYS_ISA_DEFS_H) -# include <sys/isa_defs.h> - -# if defined(_BIG_ENDIAN) -# undef IS_LITTLE_ENDIAN -# define IS_BIG_ENDIAN 1 -# elif defined(_LITTLE_ENDIAN) -# define IS_LITTLE_ENDIAN 1 -# undef IS_BIG_ENDIAN -# else /* !defined(_LITTLE_ENDIAN) */ -# error "sys/isa_defs.h does not define _BIG_ENDIAN or _LITTLE_ENDIAN. Cannot determine endianness." -# endif -# if !defined(JS_STACK_GROWTH_DIRECTION) -# if defined(_STACK_GROWS_UPWARD) -# define JS_STACK_GROWTH_DIRECTION (1) -# elif defined(_STACK_GROWS_DOWNWARD) -# define JS_STACK_GROWTH_DIRECTION (-1) -# endif -# endif - -#elif defined(__sparc) || defined(__sparc__) || \ - 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. - */ -# undef IS_LITTLE_ENDIAN +#elif defined(MOZ_BIG_ENDIAN) +# undef IS_LITTLE_ENDIAN # define IS_BIG_ENDIAN 1 - -#else /* !defined(__sparc) && !defined(__sparc__) && ... */ +#else # error "Cannot determine endianness of your platform. Please add support to jscpucfg.h." #endif #ifndef JS_STACK_GROWTH_DIRECTION # ifdef __hppa # define JS_STACK_GROWTH_DIRECTION (1) # else # define JS_STACK_GROWTH_DIRECTION (-1)
--- a/js/src/old-configure.in +++ b/js/src/old-configure.in @@ -994,31 +994,16 @@ AC_CACHE_VAL(ac_cv_type_ssize_t, [ac_cv_type_ssize_t=false])]) if test "$ac_cv_type_ssize_t" = true ; then AC_DEFINE(HAVE_SSIZE_T) AC_MSG_RESULT(yes) else AC_MSG_RESULT(no) fi -MOZ_CHECK_HEADERS(endian.h) -if test "$ac_cv_header_endian_h" = yes; then - AC_DEFINE(JS_HAVE_ENDIAN_H) -fi - -MOZ_CHECK_HEADERS([machine/endian.h],[],[],[#include <sys/types.h>]) -if test "$ac_cv_header_machine_endian_h" = yes; then - AC_DEFINE(JS_HAVE_MACHINE_ENDIAN_H) -fi - -MOZ_CHECK_HEADERS(sys/isa_defs.h) -if test "$ac_cv_header_sys_isa_defs_h" = yes; then - AC_DEFINE(JS_HAVE_SYS_ISA_DEFS_H) -fi - AC_LANG_CPLUSPLUS MOZ_CXX11 dnl Check for .hidden assembler directive and visibility attribute. dnl Borrowed from glibc configure.in dnl =============================================================== if test "$GNU_CC" -a "$OS_TARGET" != WINNT; then