summaryrefslogtreecommitdiff
path: root/embedvar.h
diff options
context:
space:
mode:
authorTony Cook <tony@develop-help.com>2013-09-09 14:44:57 +1000
committerTony Cook <tony@develop-help.com>2013-09-13 11:33:57 +1000
commit3be8f09452a42b9f1bbefef19be2dd11a2ca029b (patch)
treef7e06a8545aad7e0c2e96a680cebac9c06c4ff17 /embedvar.h
parente3be4e3ed79b466668bc99904a680772e8f04697 (diff)
downloadperl-3be8f09452a42b9f1bbefef19be2dd11a2ca029b.tar.gz
[perl #115928] a consistent (public) rand() implementation
Based on Yves's random branch work. This version makes the new random number visible to external modules, for example, List::Util's XS shuffle() implementation. I've also added a 64-bit implementation when HAS_QUAD is true, this should be significantly faster, even on 32-bit CPUs. This is intended to produce exactly the same sequence as the original implementation. The original version of this commit retained the "freebsd" name from Yves's original work for the function and data structure names. I've removed "freebsd" from most function names so the name isn't an issue if we choose to replace the implementation,
Diffstat (limited to 'embedvar.h')
-rw-r--r--embedvar.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/embedvar.h b/embedvar.h
index 3643bd132e..7c721edebc 100644
--- a/embedvar.h
+++ b/embedvar.h
@@ -243,6 +243,7 @@
#define PL_psig_pend (vTHX->Ipsig_pend)
#define PL_psig_ptr (vTHX->Ipsig_ptr)
#define PL_ptr_table (vTHX->Iptr_table)
+#define PL_random_state (vTHX->Irandom_state)
#define PL_reentrant_buffer (vTHX->Ireentrant_buffer)
#define PL_reentrant_retint (vTHX->Ireentrant_retint)
#define PL_reg_curpm (vTHX->Ireg_curpm)