Changeset 11551
- Timestamp:
- Dec 26, 2008, 2:49:51 AM (11 years ago)
- Location:
- trunk/source/lisp-kernel
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/source/lisp-kernel/image.c
r11501 r11551 394 394 395 395 OSErr 396 save_application(unsigned fd )396 save_application(unsigned fd, Boolean egc_was_enabled) 397 397 { 398 398 openmcl_image_file_header fh; … … 462 462 lisp_global(G0_THRESHOLD) = g0_area->threshold; 463 463 lisp_global(G1_THRESHOLD) = g1_area->threshold; 464 lisp_global(G 1_THRESHOLD) = g2_area->threshold;465 lisp_global(EGC_ENABLED) = (LispObj) (active_dynamic_area->older != NULL);464 lisp_global(G2_THRESHOLD) = g2_area->threshold; 465 lisp_global(EGC_ENABLED) = (LispObj)egc_was_enabled; 466 466 } 467 467 /* -
trunk/source/lisp-kernel/ppc-exceptions.c
r11523 r11551 515 515 if (selector & GC_TRAP_FUNCTION_SAVE_APPLICATION) { 516 516 OSErr err; 517 extern OSErr save_application(unsigned );517 extern OSErr save_application(unsigned, Boolean); 518 518 TCR *tcr = TCR_FROM_TSD(xpGPR(xp, rcontext)); 519 519 area *vsarea = tcr->vs_area; 520 520 521 521 nrs_TOPLFUNC.vcell = *((LispObj *)(vsarea->high)-1); 522 err = save_application(arg );522 err = save_application(arg, egc_was_enabled); 523 523 if (err == noErr) { 524 524 _exit(0); -
trunk/source/lisp-kernel/x86-exceptions.c
r11523 r11551 267 267 if (selector & GC_TRAP_FUNCTION_SAVE_APPLICATION) { 268 268 OSErr err; 269 extern OSErr save_application(unsigned );269 extern OSErr save_application(unsigned, Boolean); 270 270 area *vsarea = tcr->vs_area; 271 271 … … 274 274 #endif 275 275 nrs_TOPLFUNC.vcell = *((LispObj *)(vsarea->high)-1); 276 err = save_application(arg );276 err = save_application(arg, egc_was_enabled); 277 277 if (err == noErr) { 278 278 _exit(0); … … 1350 1350 #endif 1351 1351 1352 #ifdef DARWIN1353 void1354 pseudo_signal_handler(int signum, siginfo_t *info, ExceptionInformation *context, TCR *tcr, int old_valence)1355 {1356 sigset_t mask;1357 1358 sigfillset(&mask);1359 1360 pthread_sigmask(SIG_SETMASK,&mask,&(context->uc_sigmask));1361 signal_handler(signum, info, context, tcr, old_valence);1362 }1363 #endif1364 1352 1365 1353 … … 2394 2382 instruction, then fall into the next case. */ 2395 2383 new_vector = xpGPR(xp,Iallocptr); 2396 deref(new_vector,0) = xpGPR(xp,Iimm0); 2384 deref(new_vector,0) = 2385 #ifdef X8664 2386 xpGPR(xp,Iimm0) 2387 #else 2388 xpMMXreg(xp,Imm0) 2389 #endif 2390 ; 2397 2391 2398 2392 xpPC(xp) += sizeof(set_allocptr_header_instruction); … … 3131 3125 #endif 3132 3126 3133 #ifdef DARWIN_USE_PSEUDO_SIGRETURN 3127 3134 3128 #define DARWIN_EXCEPTION_HANDLER signal_handler 3135 #else3136 #define DARWIN_EXCEPTION_HANDLER pseudo_signal_handler3137 #endif3138 3129 3139 3130
Note: See TracChangeset
for help on using the changeset viewer.