guile-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Guile-commits] 03/04: 'resize_set' no longer allocates in a loop.


From: Ludovic Courtès
Subject: [Guile-commits] 03/04: 'resize_set' no longer allocates in a loop.
Date: Mon, 23 Mar 2020 17:50:33 -0400 (EDT)

civodul pushed a commit to branch master
in repository guile.

commit 6111b86bdcc0dd4c8821ccf70fecc5dbd8590830
Author: Ludovic Courtès <address@hidden>
AuthorDate: Mon Mar 23 21:40:06 2020 +0100

    'resize_set' no longer allocates in a loop.
    
    * libguile/weak-set.c (resize_set): Call 'scm_gc_malloc_pointerless'
    outside the loop.
---
 libguile/weak-set.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/libguile/weak-set.c b/libguile/weak-set.c
index e71af9a..93c4293 100644
--- a/libguile/weak-set.c
+++ b/libguile/weak-set.c
@@ -363,11 +363,11 @@ resize_set (scm_t_weak_set *set)
       if (new_size_index == set->size_index)
         return;
       new_size = hashset_size[new_size_index];
-      new_entries = scm_gc_malloc_pointerless (new_size * 
sizeof(scm_t_weak_entry),
-                                               "weak set");
     }
   while (!is_acceptable_size_index (set, new_size_index));
 
+  new_entries = scm_gc_malloc_pointerless (new_size * sizeof 
(scm_t_weak_entry),
+                                           "weak set");
   old_entries = set->entries;
   old_size = set->size;
 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]