diff options
| author | Dmitry Antipov | 2012-08-07 17:37:21 +0400 |
|---|---|---|
| committer | Dmitry Antipov | 2012-08-07 17:37:21 +0400 |
| commit | c644523bd8a23e518c91b61a1b8520e866b715b9 (patch) | |
| tree | 60fae47e02ad6c87b5e657110606255e849ecf77 /src/alloc.c | |
| parent | 6a3d20cc46da1e59f230923056b6b351acb097b9 (diff) | |
| download | emacs-c644523bd8a23e518c91b61a1b8520e866b715b9.tar.gz emacs-c644523bd8a23e518c91b61a1b8520e866b715b9.zip | |
Revert and cleanup Lisp_Cons, Lisp_Misc and Lisp_Symbol things.
* src/lisp.h (struct Lisp_Symbol): Change xname to meaningful
name since all xname users are fixed long time ago. Do not use
INTERNAL_FIELD.
(set_symbol_name, set_symbol_function, set_symbol_plist):
(set_symbol_next, set_overlay_plist): New function.
(struct Lisp_Cons): Do not use INTERNAL_FIELD.
(struct Lisp_Overlay): Likewise.
(CVAR, MVAR, SVAR): Remove.
* src/alloc.c, src/buffer.c, src/buffer.h, src/bytecode.c:
* src/cmds.c, src/data.c, src/doc.c, src/eval.c, src/fns.c:
* src/keyboard.c, src/lread.c, src/nsselect.m, src/xterm.c:
Adjust users.
* src/.gdbinit: Change to use name field of struct Lisp_Symbol
where appropriate.
* admin/coccinelle/overlay.cocci, admin/coccinelle/symbol.cocci:
Remove.
Diffstat (limited to 'src/alloc.c')
| -rw-r--r-- | src/alloc.c | 56 |
1 files changed, 28 insertions, 28 deletions
diff --git a/src/alloc.c b/src/alloc.c index a9ce48172ab..b6fe6fa2eb3 100644 --- a/src/alloc.c +++ b/src/alloc.c | |||
| @@ -2691,7 +2691,7 @@ free_cons (struct Lisp_Cons *ptr) | |||
| 2691 | { | 2691 | { |
| 2692 | ptr->u.chain = cons_free_list; | 2692 | ptr->u.chain = cons_free_list; |
| 2693 | #if GC_MARK_STACK | 2693 | #if GC_MARK_STACK |
| 2694 | CVAR (ptr, car) = Vdead; | 2694 | ptr->car = Vdead; |
| 2695 | #endif | 2695 | #endif |
| 2696 | cons_free_list = ptr; | 2696 | cons_free_list = ptr; |
| 2697 | consing_since_gc -= sizeof *ptr; | 2697 | consing_since_gc -= sizeof *ptr; |
| @@ -3522,12 +3522,12 @@ Its value and function definition are void, and its property list is nil. */) | |||
| 3522 | MALLOC_UNBLOCK_INPUT; | 3522 | MALLOC_UNBLOCK_INPUT; |
| 3523 | 3523 | ||
| 3524 | p = XSYMBOL (val); | 3524 | p = XSYMBOL (val); |
| 3525 | SVAR (p, xname) = name; | 3525 | set_symbol_name (val, name); |
| 3526 | SVAR (p, plist) = Qnil; | 3526 | set_symbol_plist (val, Qnil); |
| 3527 | p->redirect = SYMBOL_PLAINVAL; | 3527 | p->redirect = SYMBOL_PLAINVAL; |
| 3528 | SET_SYMBOL_VAL (p, Qunbound); | 3528 | SET_SYMBOL_VAL (p, Qunbound); |
| 3529 | SVAR (p, function) = Qunbound; | 3529 | set_symbol_function (val, Qunbound); |
| 3530 | p->next = NULL; | 3530 | set_symbol_next (val, NULL); |
| 3531 | p->gcmarkbit = 0; | 3531 | p->gcmarkbit = 0; |
| 3532 | p->interned = SYMBOL_UNINTERNED; | 3532 | p->interned = SYMBOL_UNINTERNED; |
| 3533 | p->constant = 0; | 3533 | p->constant = 0; |
| @@ -3654,7 +3654,7 @@ build_overlay (Lisp_Object start, Lisp_Object end, Lisp_Object plist) | |||
| 3654 | overlay = allocate_misc (Lisp_Misc_Overlay); | 3654 | overlay = allocate_misc (Lisp_Misc_Overlay); |
| 3655 | OVERLAY_START (overlay) = start; | 3655 | OVERLAY_START (overlay) = start; |
| 3656 | OVERLAY_END (overlay) = end; | 3656 | OVERLAY_END (overlay) = end; |
| 3657 | OVERLAY_PLIST (overlay) = plist; | 3657 | set_overlay_plist (overlay, plist); |
| 3658 | XOVERLAY (overlay)->next = NULL; | 3658 | XOVERLAY (overlay)->next = NULL; |
| 3659 | return overlay; | 3659 | return overlay; |
| 3660 | } | 3660 | } |
| @@ -4299,7 +4299,7 @@ live_cons_p (struct mem_node *m, void *p) | |||
| 4299 | && offset < (CONS_BLOCK_SIZE * sizeof b->conses[0]) | 4299 | && offset < (CONS_BLOCK_SIZE * sizeof b->conses[0]) |
| 4300 | && (b != cons_block | 4300 | && (b != cons_block |
| 4301 | || offset / sizeof b->conses[0] < cons_block_index) | 4301 | || offset / sizeof b->conses[0] < cons_block_index) |
| 4302 | && !EQ (CVAR ((struct Lisp_Cons *) p, car), Vdead)); | 4302 | && !EQ (((struct Lisp_Cons *) p)->car, Vdead)); |
| 4303 | } | 4303 | } |
| 4304 | else | 4304 | else |
| 4305 | return 0; | 4305 | return 0; |
| @@ -4325,7 +4325,7 @@ live_symbol_p (struct mem_node *m, void *p) | |||
| 4325 | && offset < (SYMBOL_BLOCK_SIZE * sizeof b->symbols[0]) | 4325 | && offset < (SYMBOL_BLOCK_SIZE * sizeof b->symbols[0]) |
| 4326 | && (b != symbol_block | 4326 | && (b != symbol_block |
| 4327 | || offset / sizeof b->symbols[0] < symbol_block_index) | 4327 | || offset / sizeof b->symbols[0] < symbol_block_index) |
| 4328 | && !EQ (SVAR (((struct Lisp_Symbol *)p), function), Vdead)); | 4328 | && !EQ (((struct Lisp_Symbol *)p)->function, Vdead)); |
| 4329 | } | 4329 | } |
| 4330 | else | 4330 | else |
| 4331 | return 0; | 4331 | return 0; |
| @@ -5831,9 +5831,9 @@ mark_overlay (struct Lisp_Overlay *ptr) | |||
| 5831 | for (; ptr && !ptr->gcmarkbit; ptr = ptr->next) | 5831 | for (; ptr && !ptr->gcmarkbit; ptr = ptr->next) |
| 5832 | { | 5832 | { |
| 5833 | ptr->gcmarkbit = 1; | 5833 | ptr->gcmarkbit = 1; |
| 5834 | mark_object (MVAR (ptr, start)); | 5834 | mark_object (ptr->start); |
| 5835 | mark_object (MVAR (ptr, end)); | 5835 | mark_object (ptr->end); |
| 5836 | mark_object (MVAR (ptr, plist)); | 5836 | mark_object (ptr->plist); |
| 5837 | } | 5837 | } |
| 5838 | } | 5838 | } |
| 5839 | 5839 | ||
| @@ -6067,8 +6067,8 @@ mark_object (Lisp_Object arg) | |||
| 6067 | break; | 6067 | break; |
| 6068 | CHECK_ALLOCATED_AND_LIVE (live_symbol_p); | 6068 | CHECK_ALLOCATED_AND_LIVE (live_symbol_p); |
| 6069 | ptr->gcmarkbit = 1; | 6069 | ptr->gcmarkbit = 1; |
| 6070 | mark_object (SVAR (ptr, function)); | 6070 | mark_object (ptr->function); |
| 6071 | mark_object (SVAR (ptr, plist)); | 6071 | mark_object (ptr->plist); |
| 6072 | switch (ptr->redirect) | 6072 | switch (ptr->redirect) |
| 6073 | { | 6073 | { |
| 6074 | case SYMBOL_PLAINVAL: mark_object (SYMBOL_VAL (ptr)); break; | 6074 | case SYMBOL_PLAINVAL: mark_object (SYMBOL_VAL (ptr)); break; |
| @@ -6099,9 +6099,9 @@ mark_object (Lisp_Object arg) | |||
| 6099 | break; | 6099 | break; |
| 6100 | default: abort (); | 6100 | default: abort (); |
| 6101 | } | 6101 | } |
| 6102 | if (!PURE_POINTER_P (XSTRING (SVAR (ptr, xname)))) | 6102 | if (!PURE_POINTER_P (XSTRING (ptr->name))) |
| 6103 | MARK_STRING (XSTRING (SVAR (ptr, xname))); | 6103 | MARK_STRING (XSTRING (ptr->name)); |
| 6104 | MARK_INTERVAL_TREE (STRING_INTERVALS (SVAR (ptr, xname))); | 6104 | MARK_INTERVAL_TREE (STRING_INTERVALS (ptr->name)); |
| 6105 | 6105 | ||
| 6106 | ptr = ptr->next; | 6106 | ptr = ptr->next; |
| 6107 | if (ptr) | 6107 | if (ptr) |
| @@ -6163,14 +6163,14 @@ mark_object (Lisp_Object arg) | |||
| 6163 | CHECK_ALLOCATED_AND_LIVE (live_cons_p); | 6163 | CHECK_ALLOCATED_AND_LIVE (live_cons_p); |
| 6164 | CONS_MARK (ptr); | 6164 | CONS_MARK (ptr); |
| 6165 | /* If the cdr is nil, avoid recursion for the car. */ | 6165 | /* If the cdr is nil, avoid recursion for the car. */ |
| 6166 | if (EQ (CVAR (ptr, u.cdr), Qnil)) | 6166 | if (EQ (ptr->u.cdr, Qnil)) |
| 6167 | { | 6167 | { |
| 6168 | obj = CVAR (ptr, car); | 6168 | obj = ptr->car; |
| 6169 | cdr_count = 0; | 6169 | cdr_count = 0; |
| 6170 | goto loop; | 6170 | goto loop; |
| 6171 | } | 6171 | } |
| 6172 | mark_object (CVAR (ptr, car)); | 6172 | mark_object (ptr->car); |
| 6173 | obj = CVAR (ptr, u.cdr); | 6173 | obj = ptr->u.cdr; |
| 6174 | cdr_count++; | 6174 | cdr_count++; |
| 6175 | if (cdr_count == mark_object_loop_halt) | 6175 | if (cdr_count == mark_object_loop_halt) |
| 6176 | abort (); | 6176 | abort (); |
| @@ -6319,7 +6319,7 @@ gc_sweep (void) | |||
| 6319 | cblk->conses[pos].u.chain = cons_free_list; | 6319 | cblk->conses[pos].u.chain = cons_free_list; |
| 6320 | cons_free_list = &cblk->conses[pos]; | 6320 | cons_free_list = &cblk->conses[pos]; |
| 6321 | #if GC_MARK_STACK | 6321 | #if GC_MARK_STACK |
| 6322 | CVAR (cons_free_list, car) = Vdead; | 6322 | cons_free_list->car = Vdead; |
| 6323 | #endif | 6323 | #endif |
| 6324 | } | 6324 | } |
| 6325 | else | 6325 | else |
| @@ -6467,7 +6467,7 @@ gc_sweep (void) | |||
| 6467 | /* Check if the symbol was created during loadup. In such a case | 6467 | /* Check if the symbol was created during loadup. In such a case |
| 6468 | it might be pointed to by pure bytecode which we don't trace, | 6468 | it might be pointed to by pure bytecode which we don't trace, |
| 6469 | so we conservatively assume that it is live. */ | 6469 | so we conservatively assume that it is live. */ |
| 6470 | int pure_p = PURE_POINTER_P (XSTRING (sym->s.INTERNAL_FIELD (xname))); | 6470 | int pure_p = PURE_POINTER_P (XSTRING (sym->s.name)); |
| 6471 | 6471 | ||
| 6472 | if (!sym->s.gcmarkbit && !pure_p) | 6472 | if (!sym->s.gcmarkbit && !pure_p) |
| 6473 | { | 6473 | { |
| @@ -6476,7 +6476,7 @@ gc_sweep (void) | |||
| 6476 | sym->s.next = symbol_free_list; | 6476 | sym->s.next = symbol_free_list; |
| 6477 | symbol_free_list = &sym->s; | 6477 | symbol_free_list = &sym->s; |
| 6478 | #if GC_MARK_STACK | 6478 | #if GC_MARK_STACK |
| 6479 | SVAR (symbol_free_list, function) = Vdead; | 6479 | symbol_free_list->function = Vdead; |
| 6480 | #endif | 6480 | #endif |
| 6481 | ++this_free; | 6481 | ++this_free; |
| 6482 | } | 6482 | } |
| @@ -6484,7 +6484,7 @@ gc_sweep (void) | |||
| 6484 | { | 6484 | { |
| 6485 | ++num_used; | 6485 | ++num_used; |
| 6486 | if (!pure_p) | 6486 | if (!pure_p) |
| 6487 | UNMARK_STRING (XSTRING (sym->s.INTERNAL_FIELD (xname))); | 6487 | UNMARK_STRING (XSTRING (sym->s.name)); |
| 6488 | sym->s.gcmarkbit = 0; | 6488 | sym->s.gcmarkbit = 0; |
| 6489 | } | 6489 | } |
| 6490 | } | 6490 | } |
| @@ -6669,10 +6669,10 @@ which_symbols (Lisp_Object obj, EMACS_INT find_max) | |||
| 6669 | XSETSYMBOL (tem, sym); | 6669 | XSETSYMBOL (tem, sym); |
| 6670 | val = find_symbol_value (tem); | 6670 | val = find_symbol_value (tem); |
| 6671 | if (EQ (val, obj) | 6671 | if (EQ (val, obj) |
| 6672 | || EQ (SVAR (sym, function), obj) | 6672 | || EQ (sym->function, obj) |
| 6673 | || (!NILP (SVAR (sym, function)) | 6673 | || (!NILP (sym->function) |
| 6674 | && COMPILEDP (SVAR (sym, function)) | 6674 | && COMPILEDP (sym->function) |
| 6675 | && EQ (AREF (SVAR (sym, function), COMPILED_BYTECODE), obj)) | 6675 | && EQ (AREF (sym->function, COMPILED_BYTECODE), obj)) |
| 6676 | || (!NILP (val) | 6676 | || (!NILP (val) |
| 6677 | && COMPILEDP (val) | 6677 | && COMPILEDP (val) |
| 6678 | && EQ (AREF (val, COMPILED_BYTECODE), obj))) | 6678 | && EQ (AREF (val, COMPILED_BYTECODE), obj))) |