aboutsummaryrefslogtreecommitdiff
path: root/src/util/random.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/util/random.c')
-rw-r--r--src/util/random.c9
1 files changed, 2 insertions, 7 deletions
diff --git a/src/util/random.c b/src/util/random.c
index bd7b89b..9af43cc 100644
--- a/src/util/random.c
+++ b/src/util/random.c
@@ -43,9 +43,7 @@ bool random_init(void) {
GEN random_prime(unsigned long bits) {
pari_sp ltop = avma;
- GEN range = gtovec0(gen_0, 2);
- gel(range, 1) = powis(gen_2, bits - 1);
- gel(range, 2) = powis(gen_2, bits);
+ GEN range = mkvec2(int2n(bits - 1), int2n(bits));
GEN p;
pari_sp btop = avma;
@@ -60,9 +58,6 @@ GEN random_prime(unsigned long bits) {
GEN random_int(unsigned long bits) {
pari_sp ltop = avma;
- GEN range = gtovec0(gen_0, 2);
- gel(range, 1) = powis(gen_2, bits - 1);
- gel(range, 2) = powis(gen_2, bits);
-
+ GEN range = mkvec2(int2n(bits - 1), int2n(bits));
return gerepilecopy(ltop, genrand(range));
}