Skip to content

Commit dfe284e

Browse files
committed
bench: improve context creation in ECDH benchmark
Calling `secp256k1_context_create` with `SECP256K1_FLAGS_TYPE_CONTEXT` seems to be not strictly API-compliant, as the only allowed (non-deprecated) value is `SECP256K1_CONTEXT_NONE`, even if the former happens to map to the latter currently. Fix this by not dynamically creating a context in the first place and switch to using the static context, as it is sufficient for this benchmark and presumably matches what the "no capabilities" comment intended back then.
1 parent b475654 commit dfe284e

File tree

1 file changed

+2
-5
lines changed

1 file changed

+2
-5
lines changed

src/modules/ecdh/bench_impl.h

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
#include "../../../include/secp256k1_ecdh.h"
1111

1212
typedef struct {
13-
secp256k1_context *ctx;
13+
const secp256k1_context *ctx;
1414
secp256k1_pubkey point;
1515
unsigned char scalar[32];
1616
} bench_ecdh_data;
@@ -46,12 +46,9 @@ static void run_ecdh_bench(int iters, int argc, char** argv) {
4646
bench_ecdh_data data;
4747
int d = argc == 1;
4848

49-
/* create a context with no capabilities */
50-
data.ctx = secp256k1_context_create(SECP256K1_FLAGS_TYPE_CONTEXT);
49+
data.ctx = secp256k1_context_static;
5150

5251
if (d || have_flag(argc, argv, "ecdh")) run_benchmark("ecdh", bench_ecdh, bench_ecdh_setup, NULL, &data, 10, iters);
53-
54-
secp256k1_context_destroy(data.ctx);
5552
}
5653

5754
#endif /* SECP256K1_MODULE_ECDH_BENCH_H */

0 commit comments

Comments
 (0)