[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] /srv/bzr/emacs/trunk r102577: Remove EXPLICIT_SIGN_EXTEND.
From: |
Andreas Schwab |
Subject: |
[Emacs-diffs] /srv/bzr/emacs/trunk r102577: Remove EXPLICIT_SIGN_EXTEND. |
Date: |
Fri, 03 Dec 2010 21:55:23 +0100 |
User-agent: |
Bazaar (2.0.3) |
------------------------------------------------------------
revno: 102577
committer: Andreas Schwab <address@hidden>
branch nick: .HEAD^
timestamp: Fri 2010-12-03 21:55:23 +0100
message:
Remove EXPLICIT_SIGN_EXTEND.
* lisp.h (union Lisp_Object): Explicitly declare signedness of
bit-field.
(XINT): Remove variant for EXPLICIT_SIGN_EXTEND.
* m/alpha.h (EXPLICIT_SIGN_EXTEND): Don't define.
* m/amdx86-64.h (EXPLICIT_SIGN_EXTEND): Likewise.
* m/ia64.h (EXPLICIT_SIGN_EXTEND): Likewise.
* m/ibms390.h (EXPLICIT_SIGN_EXTEND): Likewise.
* m/ibms390x.h (EXPLICIT_SIGN_EXTEND): Likewise.
* m/iris4d.h (EXPLICIT_SIGN_EXTEND): Likewise.
* m/m68k.h (EXPLICIT_SIGN_EXTEND): Likewise.
* m/sparc.h (EXPLICIT_SIGN_EXTEND): Likewise.
* m/template.h (EXPLICIT_SIGN_EXTEND): Likewise.
* m/hp800.h: Remove file.
* m/mips.h: Remove file.
* CPP-DEFINES (EXPLICIT_SIGN_EXTEND): Remove.
removed:
src/m/hp800.h
src/m/mips.h
modified:
admin/CPP-DEFINES
admin/ChangeLog
src/ChangeLog
src/lisp.h
src/m/alpha.h
src/m/amdx86-64.h
src/m/ia64.h
src/m/ibms390.h
src/m/ibms390x.h
src/m/iris4d.h
src/m/m68k.h
src/m/sparc.h
src/m/template.h
=== modified file 'admin/CPP-DEFINES'
--- a/admin/CPP-DEFINES 2010-08-09 19:25:41 +0000
+++ b/admin/CPP-DEFINES 2010-12-03 20:55:23 +0000
@@ -62,7 +62,6 @@
SYSTEM_TYPE
** Machine specific macros, decribed in detail in src/m/template.h
-EXPLICIT_SIGN_EXTEND
LOAD_AVE_CVT
LOAD_AVE_TYPE
VIRT_ADDR_VARIES
=== modified file 'admin/ChangeLog'
--- a/admin/ChangeLog 2010-10-12 03:55:21 +0000
+++ b/admin/ChangeLog 2010-12-03 20:55:23 +0000
@@ -1,3 +1,7 @@
+2010-12-03 Andreas Schwab <address@hidden>
+
+ * CPP-DEFINES (EXPLICIT_SIGN_EXTEND): Remove.
+
2010-10-12 Glenn Morris <address@hidden>
* notes/nextstep: Move here from ../nextstep/DEV-NOTES.
=== modified file 'src/ChangeLog'
--- a/src/ChangeLog 2010-12-03 10:54:44 +0000
+++ b/src/ChangeLog 2010-12-03 20:55:23 +0000
@@ -1,3 +1,20 @@
+2010-12-03 Andreas Schwab <address@hidden>
+
+ * lisp.h (union Lisp_Object): Explicitly declare signedness of
+ bit-field.
+ (XINT): Remove variant for EXPLICIT_SIGN_EXTEND.
+ * m/alpha.h (EXPLICIT_SIGN_EXTEND): Don't define.
+ * m/amdx86-64.h (EXPLICIT_SIGN_EXTEND): Likewise.
+ * m/ia64.h (EXPLICIT_SIGN_EXTEND): Likewise.
+ * m/ibms390.h (EXPLICIT_SIGN_EXTEND): Likewise.
+ * m/ibms390x.h (EXPLICIT_SIGN_EXTEND): Likewise.
+ * m/iris4d.h (EXPLICIT_SIGN_EXTEND): Likewise.
+ * m/m68k.h (EXPLICIT_SIGN_EXTEND): Likewise.
+ * m/sparc.h (EXPLICIT_SIGN_EXTEND): Likewise.
+ * m/template.h (EXPLICIT_SIGN_EXTEND): Likewise.
+ * m/hp800.h: Remove file.
+ * m/mips.h: Remove file.
+
2010-12-03 Jan Djärv <address@hidden>
* nsterm.m (ns_dumpglyphs_image): If drawing cursor, fill background
=== modified file 'src/lisp.h'
--- a/src/lisp.h 2010-11-23 18:56:28 +0000
+++ b/src/lisp.h 2010-12-03 20:55:23 +0000
@@ -267,7 +267,9 @@
struct
{
- EMACS_INT val : VALBITS;
+ /* Use explict signed, the signedness of a bit-field of type
+ int is implementation defined. */
+ signed EMACS_INT val : VALBITS;
enum Lisp_Type type : GCTYPEBITS;
} s;
struct
@@ -290,7 +292,9 @@
struct
{
enum Lisp_Type type : GCTYPEBITS;
- EMACS_INT val : VALBITS;
+ /* Use explict signed, the signedness of a bit-field of type
+ int is implementation defined. */
+ signed EMACS_INT val : VALBITS;
} s;
struct
{
@@ -447,20 +451,8 @@
#endif
#define XHASH(a) ((a).i)
-
#define XTYPE(a) ((enum Lisp_Type) (a).u.type)
-
-#ifdef EXPLICIT_SIGN_EXTEND
-/* Make sure we sign-extend; compilers have been known to fail to do so.
- We additionally cast to EMACS_INT since it seems that some compilers
- have been known to fail to do so, even though the bitfield is declared
- as EMACS_INT already. */
-#define XINT(a) ((((EMACS_INT) (a).s.val) << (BITS_PER_EMACS_INT - VALBITS)) \
- >> (BITS_PER_EMACS_INT - VALBITS))
-#else
#define XINT(a) ((a).s.val)
-#endif /* EXPLICIT_SIGN_EXTEND */
-
#define XUINT(a) ((a).u.val)
#ifdef USE_LSB_TAG
=== modified file 'src/m/alpha.h'
--- a/src/m/alpha.h 2010-08-09 19:25:41 +0000
+++ b/src/m/alpha.h 2010-12-03 20:55:23 +0000
@@ -30,13 +30,6 @@
/* __alpha defined automatically */
-/* 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.
-
- This flag only matters if you use USE_LISP_UNION_TYPE. */
-#define EXPLICIT_SIGN_EXTEND
-
/* Data type of load average, as read out of kmem. */
#define LOAD_AVE_TYPE long
=== modified file 'src/m/amdx86-64.h'
--- a/src/m/amdx86-64.h 2010-11-09 20:07:10 +0000
+++ b/src/m/amdx86-64.h 2010-12-03 20:55:23 +0000
@@ -31,13 +31,6 @@
#define EMACS_INT long
#define EMACS_UINT unsigned long
-/* 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.
-
- This flag only matters if you use USE_LISP_UNION_TYPE. */
-#define EXPLICIT_SIGN_EXTEND
-
/* Data type of load average, as read out of kmem. */
#define LOAD_AVE_TYPE long
=== removed file 'src/m/hp800.h'
--- a/src/m/hp800.h 2010-08-09 19:25:41 +0000
+++ b/src/m/hp800.h 1970-01-01 00:00:00 +0000
@@ -1,29 +0,0 @@
-/* machine description file for hp9000 series 800 machines.
-
-Copyright (C) 1987, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008,
- 2009, 2010 Free Software Foundation, Inc.
-
-This file is part of GNU Emacs.
-
-GNU Emacs is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 3 of the License, or
-(at your option) any later version.
-
-GNU Emacs is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-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 EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend
- the bit field into an int. In other words, if bit fields
- are always unsigned.
-
- This flag only matters if you use USE_LISP_UNION_TYPE. */
-#define EXPLICIT_SIGN_EXTEND
-
-/* arch-tag: 809436e6-1645-4b92-b40d-2de5d6e7227c
- (do not change this comment) */
=== modified file 'src/m/ia64.h'
--- a/src/m/ia64.h 2010-08-09 19:25:41 +0000
+++ b/src/m/ia64.h 2010-12-03 20:55:23 +0000
@@ -31,13 +31,6 @@
#define EMACS_INT long
#define EMACS_UINT unsigned long
-/* 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.
-
- This flag only matters if you use USE_LISP_UNION_TYPE. */
-#define EXPLICIT_SIGN_EXTEND
-
/* Data type of load average, as read out of kmem. */
#define LOAD_AVE_TYPE long
=== modified file 'src/m/ibms390.h'
--- a/src/m/ibms390.h 2010-08-09 19:25:41 +0000
+++ b/src/m/ibms390.h 2010-12-03 20:55:23 +0000
@@ -19,13 +19,6 @@
along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
-/* 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.
-
- This flag only matters if you use USE_LISP_UNION_TYPE. */
-#define EXPLICIT_SIGN_EXTEND
-
/* Data type of load average, as read out of kmem. */
#define LOAD_AVE_TYPE long
=== modified file 'src/m/ibms390x.h'
--- a/src/m/ibms390x.h 2010-11-09 20:07:10 +0000
+++ b/src/m/ibms390x.h 2010-12-03 20:55:23 +0000
@@ -27,13 +27,6 @@
#define EMACS_INT long
#define EMACS_UINT unsigned long
-/* 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.
-
- This flag only matters if you use USE_LISP_UNION_TYPE. */
-#undef EXPLICIT_SIGN_EXTEND
-
/* On the 64 bit architecture, we can use 60 bits for addresses */
#define VALBITS 60
=== modified file 'src/m/iris4d.h'
--- a/src/m/iris4d.h 2010-08-09 19:25:41 +0000
+++ b/src/m/iris4d.h 2010-12-03 20:55:23 +0000
@@ -19,13 +19,6 @@
along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
-/* 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.
-
- This flag only matters if you use USE_LISP_UNION_TYPE. */
-#define EXPLICIT_SIGN_EXTEND
-
/* DATA_SEG_BITS forces extra bits to be or'd in with any pointers which
were stored in a Lisp_Object (as Emacs uses fewer than 32 bits for
the value field of a LISP_OBJECT). */
=== modified file 'src/m/m68k.h'
--- a/src/m/m68k.h 2010-08-09 19:25:41 +0000
+++ b/src/m/m68k.h 2010-12-03 20:55:23 +0000
@@ -24,13 +24,6 @@
#define m68k
#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.
-
- This flag only matters if you use USE_LISP_UNION_TYPE. */
-#define EXPLICIT_SIGN_EXTEND
-
#ifdef GNU_LINUX
#ifdef __ELF__
#define DATA_SEG_BITS 0x80000000
=== removed file 'src/m/mips.h'
--- a/src/m/mips.h 2010-08-09 19:25:41 +0000
+++ b/src/m/mips.h 1970-01-01 00:00:00 +0000
@@ -1,29 +0,0 @@
-/* m- file for Mips machines.
-
-Copyright (C) 1987, 1992, 1999, 2001, 2002, 2003, 2004, 2005, 2006,
- 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
-
-This file is part of GNU Emacs.
-
-GNU Emacs is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 3 of the License, or
-(at your option) any later version.
-
-GNU Emacs is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-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 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.
-
- This flag only matters if you use USE_LISP_UNION_TYPE. */
-#define EXPLICIT_SIGN_EXTEND
-
-/* arch-tag: 8fd020ee-78a7-4d87-96ce-6129f52f7bee
- (do not change this comment) */
=== modified file 'src/m/sparc.h'
--- a/src/m/sparc.h 2010-08-09 19:25:41 +0000
+++ b/src/m/sparc.h 2010-12-03 20:55:23 +0000
@@ -20,10 +20,6 @@
/* __sparc__ is defined by the compiler by default. */
-/* XINT must explicitly sign-extend
- This flag only matters if you use USE_LISP_UNION_TYPE. */
-#define EXPLICIT_SIGN_EXTEND
-
/* Data type of load average, as read out of kmem. */
#define LOAD_AVE_TYPE long
=== modified file 'src/m/template.h'
--- a/src/m/template.h 2010-08-09 19:25:41 +0000
+++ b/src/m/template.h 2010-12-03 20:55:23 +0000
@@ -22,13 +22,6 @@
does not define it automatically.
Ones defined so far include m68k and many others */
-/* 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.
-
- This flag only matters if you use USE_LISP_UNION_TYPE. */
-#define EXPLICIT_SIGN_EXTEND
-
/* Data type of load average, as read out of kmem. */
#define LOAD_AVE_TYPE long
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] /srv/bzr/emacs/trunk r102577: Remove EXPLICIT_SIGN_EXTEND.,
Andreas Schwab <=