Use autoconf determined WORDS_BIGENDIAN instead of hardcoded definition.

* m/alpha.h: Don't define/undef WORDS_BIG_ENDIAN.
* m/amdx86-64.h: Likewise.
* m/arm.h: Likewise.
* m/hp800.h: Likewise.
* m/ia64.h: Likewise.
* m/ibmrs6000.h: Likewise.
* m/ibms390.h: Likewise.
* m/intel386.h: Likewise.
* m/iris4d.h: Likewise.
* m/m68k.h: Likewise.
* m/macppc.h: Likewise.
* m/mips.h: Likewise.
* m/sh3.h: Likewise.
* m/sparc.h: Likewise.
* m/template.h: Likewise.
* m/vax.h: Likewise.
* m/xtensa.h: Likewise.
* fringe.c (init_fringe_bitmap): Test WORDS_BIGENDIAN instead of
WORDS_BIG_ENDIAN.
* lisp.h: Likewise.
* md5.c: Likewise.
* sound.c (le2hl, le2hs, be2hl, be2hs): Likewise.

* CPP-DEFINES (WORDS_BIG_ENDIAN): Remove.

* configure.in: Add AC_C_BIGENDIAN.
This commit is contained in:
Andreas Schwab 2010-08-09 21:25:41 +02:00
parent 148cef8e7a
commit 671d409f8b
28 changed files with 499 additions and 290 deletions

View file

@ -1,3 +1,7 @@
2010-08-09 Andreas Schwab <schwab@linux-m68k.org>
* configure.in: Add AC_C_BIGENDIAN.
2010-08-09 Dan Nicolaescu <dann@ics.uci.edu>
* configure.in (ORDINARY_LINK): Use on hpux* too.

View file

@ -66,7 +66,6 @@ EXPLICIT_SIGN_EXTEND
LOAD_AVE_CVT
LOAD_AVE_TYPE
VIRT_ADDR_VARIES
WORDS_BIG_ENDIAN
** Misc macros
USER_FULL_NAME If defined, overrides the default pw->pw_gecos for getting at the full user name. Only MSDOS overrides the default.
@ -266,7 +265,6 @@ USG5
USG5_4
USG_SUBTTY_WORKS
VALBITS
WORDS_BIG_ENDIAN
WRETCODE
XINT
XOS_NEEDS_TIME_H

View file

@ -1,3 +1,7 @@
2010-08-09 Andreas Schwab <schwab@linux-m68k.org>
* CPP-DEFINES (WORDS_BIG_ENDIAN): Remove.
2010-08-05 Eli Zaretskii <eliz@gnu.org>
* MAINTAINERS: Rename src/unexec.c => src/unexcoff.c.

638
configure vendored

File diff suppressed because it is too large Load diff

View file

@ -1359,11 +1359,8 @@ AH_TEMPLATE(POINTER_TYPE,
[Define as `void' if your compiler accepts `void *'; otherwise
define as `char'.])dnl
dnl This could be used for targets which can have both byte sexes.
dnl We could presumably replace the hardwired WORDS_BIG_ENDIAN generally.
dnl AC_C_BIGENDIAN
dnl Check for endianess
AC_C_BIGENDIAN
dnl check for Make feature
AC_PROG_MAKE_SET

View file

@ -1,3 +1,31 @@
2010-08-09 Andreas Schwab <schwab@linux-m68k.org>
Use autoconf determined WORDS_BIGENDIAN instead of hardcoded
definition.
* m/alpha.h: Don't define/undef WORDS_BIG_ENDIAN.
* m/amdx86-64.h: Likewise.
* m/arm.h: Likewise.
* m/hp800.h: Likewise.
* m/ia64.h: Likewise.
* m/ibmrs6000.h: Likewise.
* m/ibms390.h: Likewise.
* m/intel386.h: Likewise.
* m/iris4d.h: Likewise.
* m/m68k.h: Likewise.
* m/macppc.h: Likewise.
* m/mips.h: Likewise.
* m/sh3.h: Likewise.
* m/sparc.h: Likewise.
* m/template.h: Likewise.
* m/vax.h: Likewise.
* m/xtensa.h: Likewise.
* fringe.c (init_fringe_bitmap): Test WORDS_BIGENDIAN instead of
WORDS_BIG_ENDIAN.
* lisp.h: Likewise.
* md5.c: Likewise.
* sound.c (le2hl, le2hs, be2hl, be2hs): Likewise.
2010-08-09 Dan Nicolaescu <dann@ics.uci.edu>
Use const char* instead of char*.

View file

@ -27,6 +27,9 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#define EMACS_CONFIG_H
/* Define if building universal (internal helper macro) */
#undef AC_APPLE_UNIVERSAL_BUILD
/* Define to 1 if the mktime function is broken. */
#undef BROKEN_MKTIME
@ -976,6 +979,18 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
/* Define to 1 if using an X toolkit. */
#undef USE_X_TOOLKIT
/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most
significant byte first (like Motorola and SPARC, unlike Intel). */
#if defined AC_APPLE_UNIVERSAL_BUILD
# if defined __BIG_ENDIAN__
# define WORDS_BIGENDIAN 1
# endif
#else
# ifndef WORDS_BIGENDIAN
# undef WORDS_BIGENDIAN
# endif
#endif
/* Define this to check for malloc buffer overrun. */
#undef XMALLOC_OVERRUN_CHECK

View file

@ -1494,7 +1494,7 @@ init_fringe_bitmap (int which, struct fringe_bitmap *fb, int once_p)
| (swap_nibble[(b>>8) & 0xf] << 4)
| (swap_nibble[(b>>12) & 0xf]));
b >>= (16 - fb->width);
#ifdef WORDS_BIG_ENDIAN
#ifdef WORDS_BIGENDIAN
b = ((b >> 8) | (b << 8));
#endif
*bits++ = b;

View file

@ -254,7 +254,7 @@ enum Lisp_Fwd_Type
#ifdef USE_LISP_UNION_TYPE
#ifndef WORDS_BIG_ENDIAN
#ifndef WORDS_BIGENDIAN
/* Definition of Lisp_Object for little-endian machines. */
@ -278,7 +278,7 @@ union Lisp_Object
}
Lisp_Object;
#else /* If WORDS_BIG_ENDIAN */
#else /* If WORDS_BIGENDIAN */
typedef
union Lisp_Object
@ -300,7 +300,7 @@ union Lisp_Object
}
Lisp_Object;
#endif /* WORDS_BIG_ENDIAN */
#endif /* WORDS_BIGENDIAN */
#ifdef __GNUC__
static __inline__ Lisp_Object

View file

@ -25,10 +25,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#define _LP64 /* This doesn't appear to be necessary on OSF 4/5 -- fx. */
#endif
/* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word
is the most significant byte. */
#undef WORDS_BIG_ENDIAN
/* Now define a symbol for the cpu type, if your compiler
does not define it automatically. */
/* __alpha defined automatically */

View file

@ -21,10 +21,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#define BITS_PER_LONG 64
#define BITS_PER_EMACS_INT 64
/* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word
is the most significant byte. */
#undef WORDS_BIG_ENDIAN
/* Now define a symbol for the cpu type, if your compiler
does not define it automatically:
Ones defined so far include vax, m68000, ns16000, pyramid,

View file

@ -18,9 +18,5 @@ GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
/* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word
is the most significant byte. */
#undef WORDS_BIG_ENDIAN
/* arch-tag: 07856f0c-f0c8-4bd8-99af-0b7fa1e5ee42
(do not change this comment) */

View file

@ -18,10 +18,6 @@ GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
/* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word
is the most significant byte. */
#define WORDS_BIG_ENDIAN
/* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend
the bit field into an int. In other words, if bit fields
are always unsigned.

View file

@ -23,10 +23,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#define BITS_PER_LONG 64
#define BITS_PER_EMACS_INT 64
/* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word
is the most significant byte. */
#undef WORDS_BIG_ENDIAN
/* Now define a symbol for the cpu type, if your compiler
does not define it automatically. */
/* __ia64__ defined automatically */

View file

@ -23,7 +23,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
An address of data cannot be stored correctly in a Lisp object;
we always lose the high bits. We must tell XPNTR to add them back. */
#define DATA_START 0x20000000
#define WORDS_BIG_ENDIAN
#define DATA_SEG_BITS 0x20000000
#ifndef NLIST_STRUCT

View file

@ -19,10 +19,6 @@ You should have received a copy of the GNU General Public License
along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
/* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word
is the most significant byte. */
#define WORDS_BIG_ENDIAN
/* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend
the 24-bit bit field into an int. In other words, if bit fields
are always unsigned.

View file

@ -19,10 +19,6 @@ You should have received a copy of the GNU General Public License
along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
/* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word
is the most significant byte. */
#undef WORDS_BIG_ENDIAN
#ifdef WINDOWSNT
#define VIRT_ADDR_VARIES
#define DATA_START get_data_start ()

View file

@ -19,10 +19,6 @@ You should have received a copy of the GNU General Public License
along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
/* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word
is the most significant byte. */
#define WORDS_BIG_ENDIAN
/* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend
the bit field into an int. In other words, if bit fields
are always unsigned.

View file

@ -18,10 +18,6 @@ GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
/* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word
is the most significant byte. */
#define WORDS_BIG_ENDIAN
/* Now define a symbol for the cpu type, if your compiler
does not define it automatically. */
#ifndef m68k

View file

@ -18,10 +18,6 @@ GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
/* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word
is the most significant byte. */
#define WORDS_BIG_ENDIAN
/* Data type of load average, as read out of kmem. */
#define LOAD_AVE_TYPE long

View file

@ -18,12 +18,6 @@ GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
/* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word
is the most significant byte. */
#if ! (defined (__MIPSEL__) || defined (MIPSEL) || defined (_MIPSEL))
#define WORDS_BIG_ENDIAN
#endif
/* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend
the 24-bit bit field into an int. In other words, if bit fields
are always unsigned.

View file

@ -1,8 +1,4 @@
/* Machine description file for SuperH. */
#ifdef __BIG_ENDIAN__
# define WORDS_BIG_ENDIAN
#endif
/* arch-tag: 1b01b84f-f044-4afa-aa4b-caa54ec38966
(do not change this comment) */

View file

@ -18,10 +18,6 @@ GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
/* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word
is the most significant byte. */
#define WORDS_BIG_ENDIAN
/* __sparc__ is defined by the compiler by default. */
/* XINT must explicitly sign-extend

View file

@ -18,10 +18,6 @@ GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
/* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word
is the most significant byte. */
#define WORDS_BIG_ENDIAN
/* Now define a symbol for the cpu type, if your compiler
does not define it automatically.
Ones defined so far include m68k and many others */

View file

@ -19,10 +19,6 @@ You should have received a copy of the GNU General Public License
along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
/* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word
is the most significant byte. */
#undef WORDS_BIG_ENDIAN
/* #define vax -- appears to be done automatically */
/* USG systems I know of running on Vaxes do not actually

View file

@ -2,11 +2,5 @@
Add a license notice if this grows to > 10 lines of code. */
#ifdef __LITTLE_ENDIAN
#undef WORDS_BIG_ENDIAN
#else
#define WORDS_BIG_ENDIAN
#endif
/* arch-tag: fe5872de-d565-4d81-8fe0-ea19865b3e6a
(do not change this comment) */

View file

@ -1,7 +1,7 @@
/* Functions to compute MD5 message digest of files or memory blocks.
according to the definition of MD5 in RFC 1321 from April 1992.
Copyright (C) 1995, 1996, 1997, 1999, 2000, 2001, 2002, 2003, 2004,
2005, 2006, 2007 Free Software Foundation, Inc.
2005, 2006, 2007, 2010 Free Software Foundation, Inc.
This file is part of the GNU C Library.
@ -40,7 +40,7 @@
#ifdef _LIBC
# include <endian.h>
# if __BYTE_ORDER == __BIG_ENDIAN
# define WORDS_BIG_ENDIAN 1
# define WORDS_BIGENDIAN 1
# endif
/* We need to keep the namespace clean so define the MD5 function
protected using leading __ . */
@ -55,7 +55,7 @@
#include "md5.h"
#ifdef WORDS_BIG_ENDIAN
#ifdef WORDS_BIGENDIAN
# define SWAP(n) \
(((n) << 24) | (((n) & 0xff00) << 8) | (((n) >> 8) & 0xff00) | ((n) >> 24))
#else

View file

@ -481,7 +481,7 @@ sound_cleanup (Lisp_Object arg)
static u_int32_t
le2hl (u_int32_t value)
{
#ifdef WORDS_BIG_ENDIAN
#ifdef WORDS_BIGENDIAN
unsigned char *p = (unsigned char *) &value;
value = p[0] + (p[1] << 8) + (p[2] << 16) + (p[3] << 24);
#endif
@ -495,7 +495,7 @@ le2hl (u_int32_t value)
static u_int16_t
le2hs (u_int16_t value)
{
#ifdef WORDS_BIG_ENDIAN
#ifdef WORDS_BIGENDIAN
unsigned char *p = (unsigned char *) &value;
value = p[0] + (p[1] << 8);
#endif
@ -509,7 +509,7 @@ le2hs (u_int16_t value)
static u_int32_t
be2hl (u_int32_t value)
{
#ifndef WORDS_BIG_ENDIAN
#ifndef WORDS_BIGENDIAN
unsigned char *p = (unsigned char *) &value;
value = p[3] + (p[2] << 8) + (p[1] << 16) + (p[0] << 24);
#endif
@ -525,7 +525,7 @@ be2hl (u_int32_t value)
static u_int16_t
be2hs (u_int16_t value)
{
#ifndef WORDS_BIG_ENDIAN
#ifndef WORDS_BIGENDIAN
unsigned char *p = (unsigned char *) &value;
value = p[1] + (p[0] << 8);
#endif