On Wed, Feb 17, 2021 at 08:05:06PM -0800, Yury Norov wrote:
> This series introduces fast paths for find_bit() routines. It is
> beneficial for typical systems, but those who limited in I-cache
> may be concerned about increasing the .text size of the Image.
> 
> To address this concern, one can disable FAST_PATH option in the config
> and some save memory.
> 
> The effect of this option on my arm64 next-20210217 build is:

(Maybe bloat-o-meter will give better view on this, i.e. more human-readable)

> Before:
>       Sections:
>       Idx Name          Size      VMA               LMA               File 
> off  Algn
>         0 .head.text    00010000  ffff800010000000  ffff800010000000  
> 00010000  2**16
>                         CONTENTS, ALLOC, LOAD, READONLY, CODE
>         1 .text         0115e3a8  ffff800010010000  ffff800010010000  
> 00020000  2**16
>                         CONTENTS, ALLOC, LOAD, READONLY, CODE
>         2 .got.plt      00000018  ffff80001116e3a8  ffff80001116e3a8  
> 0117e3a8  2**3
>                         CONTENTS, ALLOC, LOAD, DATA
>         3 .rodata       007a72ca  ffff800011170000  ffff800011170000  
> 01180000  2**12
>                         CONTENTS, ALLOC, LOAD, DATA
>         ...
> 
> After:
>       Sections:
>       Idx Name          Size      VMA               LMA               File 
> off  Algn
>         0 .head.text    00010000  ffff800010000000  ffff800010000000  
> 00010000  2**16
>                         CONTENTS, ALLOC, LOAD, READONLY, CODE
>         1 .text         011623a8  ffff800010010000  ffff800010010000  
> 00020000  2**16
>                         CONTENTS, ALLOC, LOAD, READONLY, CODE
>         2 .got.plt      00000018  ffff8000111723a8  ffff8000111723a8  
> 011823a8  2**3
>                         CONTENTS, ALLOC, LOAD, DATA
>         3 .rodata       007a772a  ffff800011180000  ffff800011180000  
> 01190000  2**12
>                         CONTENTS, ALLOC, LOAD, DATA
>         ...
> 
> Notice that this is the cumulive effect on already existing fast paths
> controlled by SMALL_CONST() together with ones added by this series.

...

> +config FAST_PATH

I think the name is to broad for this cases, perhaps BITS_FAST_PATH? or BITMAP?

> +     bool "Enable fast path code generation"
> +     default y
> +     help
> +       This option enables fast path optimization with the cost of increasing
> +       the text section.

-- 
With Best Regards,
Andy Shevchenko


Reply via email to