aboutsummaryrefslogtreecommitdiffstats
path: root/src/alloc.c
diff options
context:
space:
mode:
authorDmitry Antipov2012-08-07 17:37:21 +0400
committerDmitry Antipov2012-08-07 17:37:21 +0400
commitc644523bd8a23e518c91b61a1b8520e866b715b9 (patch)
tree60fae47e02ad6c87b5e657110606255e849ecf77 /src/alloc.c
parent6a3d20cc46da1e59f230923056b6b351acb097b9 (diff)
downloademacs-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.c56
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)))