rust-secp256k1-unsafe-fast/secp256k1-sys/depend/secp256k1/src/precomputed_ecmult.h

36 lines
1.5 KiB
C

/*****************************************************************************************************
* Copyright (c) 2013, 2014, 2017, 2021 Pieter Wuille, Andrew Poelstra, Jonas Nick, Russell O'Connor *
* Distributed under the MIT software license, see the accompanying *
* file COPYING or https://www.opensource.org/licenses/mit-license.php. *
*****************************************************************************************************/
#ifndef SECP256K1_PRECOMPUTED_ECMULT_H
#define SECP256K1_PRECOMPUTED_ECMULT_H
#ifdef __cplusplus
extern "C" {
#endif
#include "group.h"
#if defined(EXHAUSTIVE_TEST_ORDER)
#if EXHAUSTIVE_TEST_ORDER == 13
# define WINDOW_G 4
# elif EXHAUSTIVE_TEST_ORDER == 199
# define WINDOW_G 8
# else
# error No known generator for the specified exhaustive test group order.
# endif
static rustsecp256k1_v0_5_0_ge_storage rustsecp256k1_v0_5_0_pre_g[ECMULT_TABLE_SIZE(WINDOW_G)];
static rustsecp256k1_v0_5_0_ge_storage rustsecp256k1_v0_5_0_pre_g_128[ECMULT_TABLE_SIZE(WINDOW_G)];
#else /* !defined(EXHAUSTIVE_TEST_ORDER) */
# define WINDOW_G ECMULT_WINDOW_SIZE
extern const rustsecp256k1_v0_5_0_ge_storage rustsecp256k1_v0_5_0_pre_g[ECMULT_TABLE_SIZE(WINDOW_G)];
extern const rustsecp256k1_v0_5_0_ge_storage rustsecp256k1_v0_5_0_pre_g_128[ECMULT_TABLE_SIZE(WINDOW_G)];
#endif /* defined(EXHAUSTIVE_TEST_ORDER) */
#ifdef __cplusplus
}
#endif
#endif /* SECP256K1_PRECOMPUTED_ECMULT_H */