Re: [PATCH 17/17] vsprintf: rework bitmap_list_string

From: Andy Shevchenko
Date: Sun Aug 15 2021 - 07:10:47 EST


On Sun, Aug 15, 2021 at 12:21 AM Yury Norov <yury.norov@xxxxxxxxx> wrote:
>
> bitmap_list_string() is very ineffective when printing bitmaps with long
> ranges of set bits because it calls find_next_bit for each bit in the
> bitmap. We can do better by detecting ranges of set bits.
>
> In my environment, before/after is 943008/31008 ns.

I would add a couple of words, maybe in parentheses, to describe what
your environment is.

...

> + buf = number(++buf, end, rtop - 1, default_dec_spec);

++buf is a bit confusing here. Since you will rewrite the buf value
anyway, I would write the parameter as buf + 1.

--
With Best Regards,
Andy Shevchenko