aboutsummaryrefslogtreecommitdiffstats
path: root/src/m/template.h
diff options
context:
space:
mode:
authorPaul Eggert2011-11-10 00:14:27 -0800
committerPaul Eggert2011-11-10 00:14:27 -0800
commit6a0bf43d7c5961297aa5024aec534e5bab73c8af (patch)
treeb823825dae7da76be667a0ddb157bff2bd029ac7 /src/m/template.h
parent9a4de110224cc0ea32a9c680db3f4355484236a6 (diff)
downloademacs-6a0bf43d7c5961297aa5024aec534e5bab73c8af.tar.gz
emacs-6a0bf43d7c5961297aa5024aec534e5bab73c8af.zip
Standardize on VIRT_ADDR_VARIES behavior; otherwise, valgrind
does not work on some platforms. Problem reported by Andreas Schwab in <http://lists.gnu.org/archive/html/emacs-devel/2011-11/msg00081.html>. * puresize.h (pure, PURE_P): Always behave as if VIRT_ADDR_VARIES is set, removing the need for VIRT_ADDRESS_VARIES. (PURE_P): Use a more-efficient implementation that needs just one comparison, not two: on x86-64 with GCC 4.6.2, this cut down the number of instructions from 6 (xorl, cmpq, jge, xorl, cmpq, setge) to 4 (xorl, subq, cmpq, setbe). * alloc.c (pure): Always extern now, since that's the VIRT_ADDR_VARIES behavior. (PURE_POINTER_P): Use a single comparison, not two, for consistency with the new puresize.h. * lisp.h (PNTR_COMPARISON_TYPE): Remove; no longer needed. * m/ibms390.h, m/intel386.h, m/template.h, s/cygwin.h, s/hpux10-20.h: Remove VIRT_ADDR_VARIES no longer needed.
Diffstat (limited to 'src/m/template.h')
-rw-r--r--src/m/template.h8
1 files changed, 0 insertions, 8 deletions
diff --git a/src/m/template.h b/src/m/template.h
index 54fb0da9521..38649e8ac6d 100644
--- a/src/m/template.h
+++ b/src/m/template.h
@@ -21,14 +21,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
21 does not define it automatically. 21 does not define it automatically.
22 Ones defined so far include m68k and many others */ 22 Ones defined so far include m68k and many others */
23 23
24/* Define VIRT_ADDR_VARIES if the virtual addresses of
25 pure and impure space as loaded can vary, and even their
26 relative order cannot be relied on.
27
28 Otherwise Emacs assumes that text space precedes data space,
29 numerically. */
30#define VIRT_ADDR_VARIES
31
32/* After adding support for a new machine, modify the large case 24/* After adding support for a new machine, modify the large case
33 statement in configure.in to recognize reasonable 25 statement in configure.in to recognize reasonable
34 configuration names, and add a description of the system to 26 configuration names, and add a description of the system to