Mercurial > emacs
comparison src/bytecode.c @ 64615:c94082ceb41d
(MAYBE_GC): Test gc_cons_threshold and gc_relative_threshold, one by one.
| author | Richard M. Stallman <rms@gnu.org> |
|---|---|
| date | Sat, 23 Jul 2005 19:14:59 +0000 |
| parents | 64b32564144f |
| children | a0d1312ede66 890cc78a5a24 |
comparison
equal
deleted
inserted
replaced
| 64614:482ea9d640ec | 64615:c94082ceb41d |
|---|---|
| 353 #define AFTER_POTENTIAL_GC() stack.top = NULL | 353 #define AFTER_POTENTIAL_GC() stack.top = NULL |
| 354 | 354 |
| 355 /* Garbage collect if we have consed enough since the last time. | 355 /* Garbage collect if we have consed enough since the last time. |
| 356 We do this at every branch, to avoid loops that never GC. */ | 356 We do this at every branch, to avoid loops that never GC. */ |
| 357 | 357 |
| 358 #define MAYBE_GC() \ | 358 #define MAYBE_GC() \ |
| 359 if (consing_since_gc > gc_cons_combined_threshold) \ | 359 if (consing_since_gc > gc_cons_threshold \ |
| 360 { \ | 360 && consing_since_gc > gc_relative_threshold) \ |
| 361 BEFORE_POTENTIAL_GC (); \ | 361 { \ |
| 362 Fgarbage_collect (); \ | 362 BEFORE_POTENTIAL_GC (); \ |
| 363 AFTER_POTENTIAL_GC (); \ | 363 Fgarbage_collect (); \ |
| 364 } \ | 364 AFTER_POTENTIAL_GC (); \ |
| 365 } \ | |
| 365 else | 366 else |
| 366 | 367 |
| 367 /* Check for jumping out of range. */ | 368 /* Check for jumping out of range. */ |
| 368 | 369 |
| 369 #ifdef BYTE_CODE_SAFE | 370 #ifdef BYTE_CODE_SAFE |
