Bitcoin Core
29.99.0
P2P Digital Currency
src
secp256k1
src
precomputed_ecmult.h
Go to the documentation of this file.
1
/*****************************************************************************************************
2
* Copyright (c) 2013, 2014, 2017, 2021 Pieter Wuille, Andrew Poelstra, Jonas Nick, Russell O'Connor *
3
* Distributed under the MIT software license, see the accompanying *
4
* file COPYING or https://www.opensource.org/licenses/mit-license.php. *
5
*****************************************************************************************************/
6
7
#ifndef SECP256K1_PRECOMPUTED_ECMULT_H
8
#define SECP256K1_PRECOMPUTED_ECMULT_H
9
10
#ifdef __cplusplus
11
extern
"C"
{
12
#endif
13
14
#include "
ecmult.h
"
15
#include "
group.h
"
16
#include "
util_local_visibility.h
"
17
18
#if defined(EXHAUSTIVE_TEST_ORDER)
19
# if EXHAUSTIVE_TEST_ORDER == 7
20
# define WINDOW_G 3
21
# elif EXHAUSTIVE_TEST_ORDER == 13
22
# define WINDOW_G 4
23
# elif EXHAUSTIVE_TEST_ORDER == 199
24
# define WINDOW_G 8
25
# else
26
# error No known generator for the specified exhaustive test group order.
27
# endif
28
static
secp256k1_ge_storage
secp256k1_pre_g
[
ECMULT_TABLE_SIZE
(
WINDOW_G
)];
29
static
secp256k1_ge_storage
secp256k1_pre_g_128
[
ECMULT_TABLE_SIZE
(
WINDOW_G
)];
30
#else
/* !defined(EXHAUSTIVE_TEST_ORDER) */
31
# define WINDOW_G ECMULT_WINDOW_SIZE
32
SECP256K1_LOCAL_VAR
const
secp256k1_ge_storage
secp256k1_pre_g
[
ECMULT_TABLE_SIZE
(
WINDOW_G
)];
33
SECP256K1_LOCAL_VAR
const
secp256k1_ge_storage
secp256k1_pre_g_128
[
ECMULT_TABLE_SIZE
(
WINDOW_G
)];
34
#endif
/* defined(EXHAUSTIVE_TEST_ORDER) */
35
36
#ifdef __cplusplus
37
}
38
#endif
39
40
#endif
/* SECP256K1_PRECOMPUTED_ECMULT_H */
ecmult.h
ECMULT_TABLE_SIZE
#define ECMULT_TABLE_SIZE(w)
The number of entries a table with precomputed multiples needs to have.
Definition:
ecmult.h:41
group.h
secp256k1_pre_g
SECP256K1_LOCAL_VAR const secp256k1_ge_storage secp256k1_pre_g[ECMULT_TABLE_SIZE(WINDOW_G)]
Definition:
precomputed_ecmult.h:32
secp256k1_pre_g_128
SECP256K1_LOCAL_VAR const secp256k1_ge_storage secp256k1_pre_g_128[ECMULT_TABLE_SIZE(WINDOW_G)]
Definition:
precomputed_ecmult.h:33
WINDOW_G
#define WINDOW_G
Definition:
precomputed_ecmult.h:31
secp256k1_ge_storage
Definition:
group.h:38
util_local_visibility.h
SECP256K1_LOCAL_VAR
#define SECP256K1_LOCAL_VAR
Definition:
util_local_visibility.h:9
Generated on Fri May 30 2025 20:00:11 for Bitcoin Core by
1.9.4