diff options
author | Coly Li <colyli@suse.de> | 2019-06-28 19:59:41 +0800 |
---|---|---|
committer | Jens Axboe <axboe@kernel.dk> | 2019-06-28 07:39:15 -0600 |
commit | 944a4f340a65c21ee311d2d3e617034bef9d0b25 (patch) | |
tree | ee17c3e2ffce34f6e38b8036fab760e8c82f02d4 /tools/arch | |
parent | 68a53c95a0fce541321fbca74a7f72c71361f496 (diff) |
bcache: make bset_search_tree() be more understandable
The purpose of following code in bset_search_tree() is to avoid a branch
instruction,
994 if (likely(f->exponent != 127))
995 n = j * 2 + (((unsigned int)
996 (f->mantissa -
997 bfloat_mantissa(search, f))) >> 31);
998 else
999 n = (bkey_cmp(tree_to_bkey(t, j), search) > 0)
1000 ? j * 2
1001 : j * 2 + 1;
This piece of code is not very clear to understand, even when I tried to
add code comment for it, I made mistake. This patch removes the implict
bit operation and uses explicit branch to calculate next location in
binary tree search.
Signed-off-by: Coly Li <colyli@suse.de>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'tools/arch')
0 files changed, 0 insertions, 0 deletions