From 35c60ab39a84bd84079dfb0aed9cd0ef994d4901 Mon Sep 17 00:00:00 2001 From: David Monniaux Date: Sat, 6 Apr 2019 11:23:22 +0200 Subject: reoptimize the C --- test/monniaux/binary_search/binary_search.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'test/monniaux/binary_search/binary_search.c') diff --git a/test/monniaux/binary_search/binary_search.c b/test/monniaux/binary_search/binary_search.c index 281c94c0..c7462f8e 100644 --- a/test/monniaux/binary_search/binary_search.c +++ b/test/monniaux/binary_search/binary_search.c @@ -40,8 +40,8 @@ int my_bsearch2 (data *a, index n, data x) { int my_bsearch3 (data *a, index n, data x) { index i = 0, j = n - 1, k; + k = (i + j) / 2; while (i <= j) { - k = (i + j) / 2; index kp1 = k+1, km1 = k-1; _Bool lt = a[k] < x, gt = a[k] > x; i = TERNARY32(lt, kp1, i); @@ -49,6 +49,7 @@ int my_bsearch3 (data *a, index n, data x) { if (a[k] == x) { goto end; } + k = (i + j) / 2; } k=-1; end: -- cgit