From 4fb1438b9d7f617c7a8dc37935a960a24219e697 Mon Sep 17 00:00:00 2001 From: nobu Date: Mon, 2 Oct 2017 12:23:17 +0000 Subject: [PATCH] use rb_hash_new_with_size() git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60101 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- compile.c | 4 ++-- gc.c | 2 +- re.c | 6 +++--- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/compile.c b/compile.c index 0e56820055..f92eabaa13 100644 --- a/compile.c +++ b/compile.c @@ -7203,7 +7203,7 @@ iseq_build_from_ary_body(rb_iseq_t *iseq, LINK_ANCHOR *const anchor, case TS_CDHASH: { int i; - VALUE map = rb_hash_new(); + VALUE map = rb_hash_new_with_size(RARRAY_LEN(op)/2); rb_hash_tbl_raw(map)->type = &cdhash_type; op = rb_convert_type_with_id(op, T_ARRAY, "Array", idTo_ary); @@ -8525,7 +8525,7 @@ static VALUE ibf_load_object_hash(const struct ibf_load *load, const struct ibf_object_header *header, ibf_offset_t offset) { const struct ibf_object_hash *hash = IBF_OBJBODY(struct ibf_object_hash, offset); - VALUE obj = rb_hash_new(); + VALUE obj = rb_hash_new_with_size(hash->len); int i; for (i=0; ilen; i++) { diff --git a/gc.c b/gc.c index 7f6c1a7a79..3a27e4ee67 100644 --- a/gc.c +++ b/gc.c @@ -6735,7 +6735,7 @@ static const char *type_name(int type, VALUE obj); static void gc_count_add_each_types(VALUE hash, const char *name, const size_t *types) { - VALUE result = rb_hash_new(); + VALUE result = rb_hash_new_with_size(T_MASK); int i; for (i=0; i