Changeset 825
- Timestamp:
- Jun 5, 2004, 10:59:42 PM (20 years ago)
- Location:
- trunk/ccl/lisp-kernel
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/ccl/lisp-kernel/gc.c
r619 r825 1892 1892 } 1893 1893 1894 1894 1895 void *postGCptrs = NULL; 1896 1897 void 1898 postGCfree(void *p) 1899 { 1900 *(void **)p = postGCptrs; 1901 postGCptrs = p; 1902 } 1903 1904 void 1905 freeGCptrs() 1906 { 1907 void *p, *next; 1908 1909 for (p = postGCptrs; p; p = next) { 1910 next = *((void **)p); 1911 free(p); 1912 } 1913 postGCptrs = NULL; 1914 } 1915 1895 1916 void 1896 1917 reap_gcable_ptrs() … … 1920 1941 1921 1942 case xmacptr_flag_ptr: 1922 deallocate((char*)ptr_from_lispobj(ptr));1943 postGCfree((void *)ptr_from_lispobj(ptr)); 1923 1944 break; 1924 1945 -
trunk/ccl/lisp-kernel/gc.h
r557 r825 48 48 void mark_locative_root(LispObj); 49 49 void rmark(LispObj); 50 void postGCfree(void *); 50 51 LispObj *skip_over_ivector(LispObj, LispObj); 51 52 void mark_simple_area_range(LispObj *,LispObj *); -
trunk/ccl/lisp-kernel/lisp-exceptions.c
r756 r825 831 831 gc_from_xp(ExceptionInformation *xp) 832 832 { 833 return gc_like_from_xp(xp, gc_from_tcr); 833 int status = gc_like_from_xp(xp, gc_from_tcr); 834 835 freeGCptrs(); 836 return status; 834 837 } 835 838
Note:
See TracChangeset
for help on using the changeset viewer.
