diff options
| author | Paul Eggert | 2011-06-08 12:07:55 -0700 |
|---|---|---|
| committer | Paul Eggert | 2011-06-08 12:07:55 -0700 |
| commit | 6349ae4d9c0e2a2986e2800dcea6a029fbc60d23 (patch) | |
| tree | 9e12b70d2fed0d2c03c060c5ed1e8626ec6443f9 /src | |
| parent | 211a0b2a705753ca0d3f8040f177f0d788298bb6 (diff) | |
| download | emacs-6349ae4d9c0e2a2986e2800dcea6a029fbc60d23.tar.gz emacs-6349ae4d9c0e2a2986e2800dcea6a029fbc60d23.zip | |
* alloc.c (inhibit_garbage_collection): Set gc_cons_threshold to max value.
Previously, this ceilinged at INT_MAX, but that doesn't work on
64-bit machines.
Diffstat (limited to 'src')
| -rw-r--r-- | src/ChangeLog | 3 | ||||
| -rw-r--r-- | src/alloc.c | 3 |
2 files changed, 4 insertions, 2 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 432cea6a624..6a353aa1f95 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -14,6 +14,9 @@ | |||
| 14 | These were 'int' variables that could overflow on 64-bit hosts; | 14 | These were 'int' variables that could overflow on 64-bit hosts; |
| 15 | they were never used, so remove them instead of repairing them. | 15 | they were never used, so remove them instead of repairing them. |
| 16 | (nzombies, ngcs, max_live, max_zombies): Now EMACS_INT, not 'int'. | 16 | (nzombies, ngcs, max_live, max_zombies): Now EMACS_INT, not 'int'. |
| 17 | (inhibit_garbage_collection): Set gc_cons_threshold to max value. | ||
| 18 | Previously, this ceilinged at INT_MAX, but that doesn't work on | ||
| 19 | 64-bit machines. | ||
| 17 | 20 | ||
| 18 | * alloc.c (Fmake_bool_vector): Don't assume vector size fits in int. | 21 | * alloc.c (Fmake_bool_vector): Don't assume vector size fits in int. |
| 19 | (allocate_vectorlike): Check for ptrdiff_t overflow. | 22 | (allocate_vectorlike): Check for ptrdiff_t overflow. |
diff --git a/src/alloc.c b/src/alloc.c index dd2e5f4b6ad..e04f60baf03 100644 --- a/src/alloc.c +++ b/src/alloc.c | |||
| @@ -4827,9 +4827,8 @@ int | |||
| 4827 | inhibit_garbage_collection (void) | 4827 | inhibit_garbage_collection (void) |
| 4828 | { | 4828 | { |
| 4829 | int count = SPECPDL_INDEX (); | 4829 | int count = SPECPDL_INDEX (); |
| 4830 | int nbits = min (VALBITS, BITS_PER_INT); | ||
| 4831 | 4830 | ||
| 4832 | specbind (Qgc_cons_threshold, make_number (((EMACS_INT) 1 << (nbits - 1)) - 1)); | 4831 | specbind (Qgc_cons_threshold, make_number (MOST_POSITIVE_FIXNUM)); |
| 4833 | return count; | 4832 | return count; |
| 4834 | } | 4833 | } |
| 4835 | 4834 | ||