[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
master 669aeaf: Prefer make_nil_vector to make-vector with nil
From: |
Paul Eggert |
Subject: |
master 669aeaf: Prefer make_nil_vector to make-vector with nil |
Date: |
Tue, 11 Aug 2020 13:30:10 -0400 (EDT) |
branch: master
commit 669aeafbd14b0ebb824bacba0a6b3daad30847a9
Author: Paul Eggert <eggert@cs.ucla.edu>
Commit: Paul Eggert <eggert@cs.ucla.edu>
Prefer make_nil_vector to make-vector with nil
* src/pdumper.c (hash_table_thaw): Pacify -Wconversion so
we can use make_nil_vector again.
* src/timefns.c (syms_of_timefns): Prefer make_nil_vector
to make_vector with Qnil.
---
src/lisp.h | 3 ++-
src/pdumper.c | 4 +++-
src/timefns.c | 2 +-
3 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/src/lisp.h b/src/lisp.h
index d88038d..2962bab 100644
--- a/src/lisp.h
+++ b/src/lisp.h
@@ -3947,7 +3947,8 @@ make_uninit_sub_char_table (int depth, int min_char)
return v;
}
-/* Make a vector of SIZE nils. */
+/* Make a vector of SIZE nils - faster than make_vector (size, Qnil)
+ if the OS already cleared the new memory. */
INLINE Lisp_Object
make_nil_vector (ptrdiff_t size)
diff --git a/src/pdumper.c b/src/pdumper.c
index 6c581bc..aaa760d 100644
--- a/src/pdumper.c
+++ b/src/pdumper.c
@@ -2664,7 +2664,9 @@ static void
hash_table_thaw (Lisp_Object hash)
{
struct Lisp_Hash_Table *h = XHASH_TABLE (hash);
- h->hash = Fmake_vector (h->hash, Qnil);
+ ALLOW_IMPLICIT_CONVERSION;
+ h->hash = make_nil_vector (XFIXNUM (h->hash));
+ DISALLOW_IMPLICIT_CONVERSION;
h->next = Fmake_vector (h->next, make_fixnum (-1));
h->index = Fmake_vector (h->index, make_fixnum (-1));
diff --git a/src/timefns.c b/src/timefns.c
index 7bcc37d..94cfddf 100644
--- a/src/timefns.c
+++ b/src/timefns.c
@@ -2048,7 +2048,7 @@ syms_of_timefns (void)
defsubr (&Scurrent_time_zone);
defsubr (&Sset_time_zone_rule);
- flt_radix_power = make_vector (flt_radix_power_size, Qnil);
+ flt_radix_power = make_nil_vector (flt_radix_power_size);
staticpro (&flt_radix_power);
#ifdef NEED_ZTRILLION_INIT
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- master 669aeaf: Prefer make_nil_vector to make-vector with nil,
Paul Eggert <=