diff options
| author | J08nY | 2017-04-16 20:44:59 +0200 |
|---|---|---|
| committer | J08nY | 2017-04-16 20:44:59 +0200 |
| commit | e9607b16c696b00a76b518909ab4aa132c8eee6f (patch) | |
| tree | 990ada20be8c585e00855f74c234c808b5c052cd /src/invalid/invalid.c | |
| parent | 646dc9c8ee00144908ff66d7f4741cce3adb28ae (diff) | |
| download | ecgen-e9607b16c696b00a76b518909ab4aa132c8eee6f.tar.gz ecgen-e9607b16c696b00a76b518909ab4aa132c8eee6f.tar.zst ecgen-e9607b16c696b00a76b518909ab4aa132c8eee6f.zip | |
Change invalid curve generation thread argument passing
Diffstat (limited to 'src/invalid/invalid.c')
| -rw-r--r-- | src/invalid/invalid.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/src/invalid/invalid.c b/src/invalid/invalid.c index ed2ee77..765a566 100644 --- a/src/invalid/invalid.c +++ b/src/invalid/invalid.c @@ -210,6 +210,10 @@ static size_t invalid_curves_threaded(curve_t *curve, config_t *cfg, pthread_cond_t generated_cond = PTHREAD_COND_INITIALIZER; for (size_t i = 0; i < cfg->threads; ++i) { + pari_thread_alloc(&pari_threads[i], cfg->thread_memory, + (GEN)&threads[i]); + + threads[i].pari_thread = &pari_threads[i]; threads[i].original_curve = curve; threads[i].nprimes = nprimes; threads[i].primes = primes; @@ -221,15 +225,12 @@ static size_t invalid_curves_threaded(curve_t *curve, config_t *cfg, threads[i].cfg = cfg; threads[i].gens = invalid_gen; threads[i].unrolls = unrolls; - - pari_thread_alloc(&pari_threads[i], cfg->thread_memory, - (GEN)&threads[i]); } pthread_mutex_lock(&state_mutex); for (size_t i = 0; i < cfg->threads; ++i) { pthread_create(&pthreads[i], NULL, &invalid_thread, - (void *)&pari_threads[i]); + (void *)&threads[i]); } bool running = true; |
