diff options
| author | Paul Eggert | 2015-10-13 23:09:43 -0700 |
|---|---|---|
| committer | Paul Eggert | 2015-10-13 23:10:14 -0700 |
| commit | 2cc412cdc2635ecb99129271abe94bdd744742c2 (patch) | |
| tree | 34064c89c867882aa3c5f285b1f638c40d82cf3b /src/lisp.h | |
| parent | 3fa424ca48f4f48a40a514153726758b6ed47892 (diff) | |
| download | emacs-2cc412cdc2635ecb99129271abe94bdd744742c2.tar.gz emacs-2cc412cdc2635ecb99129271abe94bdd744742c2.zip | |
Take XPNTR private
* src/alloc.c (PURE_POINTER_P): Remove.
All uses replaced with PURE_P.
(XPNTR_OR_SYMBOL_OFFSET): New function.
(XPNTR): Move here from lisp.h.
Reimplement in terms of XPNTR_OR_SYMBOL_OFFSET.
(mark_maybe_object, valid_lisp_object_p, survives_gc_p):
Remove unnecessary cast.
(purecopy): Use XPNTR_OR_SYMBOL_OFFSET instead of XPNTR,
to avoid an unnecessary runtime test for symbols.
* src/lisp.h (lisp_h_XPNTR, XPNTR): Remove, moving XPNTR to alloc.c.
Only alloc.c needs XPNTR now.
Diffstat (limited to 'src/lisp.h')
| -rw-r--r-- | src/lisp.h | 6 |
1 files changed, 0 insertions, 6 deletions
diff --git a/src/lisp.h b/src/lisp.h index 2d6661787cf..12e00f1f25b 100644 --- a/src/lisp.h +++ b/src/lisp.h | |||
| @@ -351,8 +351,6 @@ error !; | |||
| 351 | #define lisp_h_XCONS(a) \ | 351 | #define lisp_h_XCONS(a) \ |
| 352 | (eassert (CONSP (a)), (struct Lisp_Cons *) XUNTAG (a, Lisp_Cons)) | 352 | (eassert (CONSP (a)), (struct Lisp_Cons *) XUNTAG (a, Lisp_Cons)) |
| 353 | #define lisp_h_XHASH(a) XUINT (a) | 353 | #define lisp_h_XHASH(a) XUINT (a) |
| 354 | #define lisp_h_XPNTR(a) \ | ||
| 355 | (SYMBOLP (a) ? XSYMBOL (a) : (void *) ((intptr_t) (XLI (a) & VALMASK))) | ||
| 356 | #ifndef GC_CHECK_CONS_LIST | 354 | #ifndef GC_CHECK_CONS_LIST |
| 357 | # define lisp_h_check_cons_list() ((void) 0) | 355 | # define lisp_h_check_cons_list() ((void) 0) |
| 358 | #endif | 356 | #endif |
| @@ -397,7 +395,6 @@ error !; | |||
| 397 | # define XCDR(c) lisp_h_XCDR (c) | 395 | # define XCDR(c) lisp_h_XCDR (c) |
| 398 | # define XCONS(a) lisp_h_XCONS (a) | 396 | # define XCONS(a) lisp_h_XCONS (a) |
| 399 | # define XHASH(a) lisp_h_XHASH (a) | 397 | # define XHASH(a) lisp_h_XHASH (a) |
| 400 | # define XPNTR(a) lisp_h_XPNTR (a) | ||
| 401 | # ifndef GC_CHECK_CONS_LIST | 398 | # ifndef GC_CHECK_CONS_LIST |
| 402 | # define check_cons_list() lisp_h_check_cons_list () | 399 | # define check_cons_list() lisp_h_check_cons_list () |
| 403 | # endif | 400 | # endif |
| @@ -916,9 +913,6 @@ XUNTAG (Lisp_Object a, int type) | |||
| 916 | 913 | ||
| 917 | #endif /* ! USE_LSB_TAG */ | 914 | #endif /* ! USE_LSB_TAG */ |
| 918 | 915 | ||
| 919 | /* Extract the pointer hidden within A. */ | ||
| 920 | LISP_MACRO_DEFUN (XPNTR, void *, (Lisp_Object a), (a)) | ||
| 921 | |||
| 922 | /* Extract A's value as an unsigned integer. */ | 916 | /* Extract A's value as an unsigned integer. */ |
| 923 | INLINE EMACS_UINT | 917 | INLINE EMACS_UINT |
| 924 | XUINT (Lisp_Object a) | 918 | XUINT (Lisp_Object a) |