make clean; ccache -s > before-`git describe`; make -j9; ccache -s > after-`git describe`; diff -u {before,after}-`git describe`
v2.6.28:
-cache hit 737661
-cache miss 979624
-called for link 78268
+cache hit 738093 = +432
+cache miss 980524 = +900
+called for link 78289 = +21
multiple source files 373
compile failed 5679
preprocessor error 1594
-not a C/C++ file 44512
+not a C/C++ file 44549 = +37
1332 cacheable
58 uncacheable
v2.6.28-7485-g9e42d0c:
-cache hit 738096 = +9
+cache hit 738105
cache miss 980524 = +0
-called for link 78293
+called for link 79659 = +1366
multiple source files 373
compile failed 5679
preprocessor error 1594
-not a C/C++ file 44549 = +1384
+not a C/C++ file 45933
9 cacheable
2750 uncacheable
What changed?
Thanks,
Roland
On Wed, Jan 07, 2009 at 08:03:36PM -0800, Roland McGrath wrote:
>
> make clean; ccache -s > before-`git describe`; make -j9; ccache -s > after-`git describe`; diff -u {before,after}-`git describe`
>
> v2.6.28:
>
> -cache hit 737661
> -cache miss 979624
> -called for link 78268
> +cache hit 738093 = +432
> +cache miss 980524 = +900
> +called for link 78289 = +21
> multiple source files 373
> compile failed 5679
> preprocessor error 1594
> -not a C/C++ file 44512
> +not a C/C++ file 44549 = +37
>
> 1332 cacheable
> 58 uncacheable
>
>
> v2.6.28-7485-g9e42d0c:
>
> -cache hit 738096 = +9
> +cache hit 738105
> cache miss 980524 = +0
> -called for link 78293
> +called for link 79659 = +1366
> multiple source files 373
> compile failed 5679
> preprocessor error 1594
> -not a C/C++ file 44549 = +1384
> +not a C/C++ file 45933
>
> 9 cacheable
> 2750 uncacheable
>
>
> What changed?
Before we did a straight .c -> .o
Now we do .c -> .s -> .o to mark __crc_ symbols static so we can
kill them when stripping modules.
It is already being discussed in another thread.
See "[REGRESSION] Recent change to kernel spikes out ccache/distcc"
Sam