Skip to content

Commit b76e45d

Browse files
committed
Make bench_internal obey secp256k1_fe_sqrt's contract wrt aliasing.
Bench_internal was previously incorrect but wasn't detected by -DVERIFY until PR #551.
1 parent 870a977 commit b76e45d

File tree

1 file changed

+3
-1
lines changed

1 file changed

+3
-1
lines changed

src/bench_internal.c

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -184,9 +184,11 @@ void bench_field_inverse_var(void* arg) {
184184
void bench_field_sqrt(void* arg) {
185185
int i;
186186
bench_inv *data = (bench_inv*)arg;
187+
secp256k1_fe t;
187188

188189
for (i = 0; i < 20000; i++) {
189-
secp256k1_fe_sqrt(&data->fe_x, &data->fe_x);
190+
t = data->fe_x;
191+
secp256k1_fe_sqrt(&data->fe_x, &t);
190192
secp256k1_fe_add(&data->fe_x, &data->fe_y);
191193
}
192194
}

0 commit comments

Comments
 (0)