Skip to content

Commit 052535b

Browse files
author
kosaki
committed
* random.c (init_hashseed, init_siphash): extract initialize
functions. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52814 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
1 parent 0c4e776 commit 052535b

File tree

2 files changed

+29
-9
lines changed

2 files changed

+29
-9
lines changed

ChangeLog

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
Thu Oct 22 05:23:48 2015 KOSAKI Motohiro <kosaki.motohiro@gmail.com>
2+
3+
* random.c (init_hashseed, init_siphash): extract initialize
4+
functions.
5+
16
Thu Oct 22 01:01:34 2015 KOSAKI Motohiro <kosaki.motohiro@gmail.com>
27

38
* configure.in: sort AC_CHECK_HEADERS() by alphabetical order.

random.c

Lines changed: 24 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1465,13 +1465,10 @@ init_randomseed(struct MT *mt)
14651465
return seed;
14661466
}
14671467

1468-
void
1469-
Init_RandomSeed(void)
1468+
static void
1469+
init_hashseed(void)
14701470
{
1471-
rb_random_t *r = &default_rand;
1472-
struct MT *mt = &r->mt;
1473-
VALUE seed = init_randomseed(mt);
1474-
int i;
1471+
struct MT *mt = default_mt();
14751472

14761473
hashseed = genrand_int32(mt);
14771474
#if SIZEOF_ST_INDEX_T*CHAR_BIT > 4*8
@@ -1486,12 +1483,16 @@ Init_RandomSeed(void)
14861483
hashseed <<= 32;
14871484
hashseed |= genrand_int32(mt);
14881485
#endif
1486+
}
1487+
1488+
static void
1489+
init_siphash(void)
1490+
{
1491+
struct MT *mt = default_mt();
1492+
int i;
14891493

14901494
for (i = 0; i < numberof(sipseed.u32); ++i)
14911495
sipseed.u32[i] = genrand_int32(mt);
1492-
1493-
rb_global_variable(&r->seed);
1494-
r->seed = seed;
14951496
}
14961497

14971498
st_index_t
@@ -1511,6 +1512,20 @@ rb_memhash(const void *ptr, long len)
15111512
#endif
15121513
}
15131514

1515+
void
1516+
Init_RandomSeed(void)
1517+
{
1518+
rb_random_t *r = &default_rand;
1519+
struct MT *mt = &r->mt;
1520+
VALUE seed = init_randomseed(mt);
1521+
1522+
init_hashseed();
1523+
init_siphash();
1524+
1525+
rb_global_variable(&r->seed);
1526+
r->seed = seed;
1527+
}
1528+
15141529
static void
15151530
Init_RandomSeed2(void)
15161531
{

0 commit comments

Comments
 (0)