Re: [PATCH 0/4] Compile kernel with -fwhole-program --combine

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, 2006-08-25 at 08:01 +0200, Jan Engelhardt wrote:
> >> Compiling files on their own (`make drivers/foo/bar.o`) seems to make 
> >> the optimization void. Sure, most people don't stop compiling in 
> >> between. Just a note
> >
> >Actually I'm not entirely sure what you write is true. It'll _build_
> >fs/jffs2/read.o, for example, but it still won't then use it when I make
> >the kernel -- it'll just use fs/jffs2/jffs2.o which is built from all
> >the C files with --combine. So the optimisation isn't lost.
> 
> Umm then it spends double the time in compilation, doing:
> 
>   read.o <- read.c
>   foo.o <- foo.c
>   bar.o <- bar.c
>   built-in.o <- read.c foo.c bar.c

Only if you invoke make explicitly for read.o, foo.o and bar.o. If you
just type 'make' then it won't build those.

> >So to overcome this, we use GCC's __attribute__((externally_visible))
> >which, as documented, just makes it global again -- undoing the effect
> >of -fwhole-program just for this _one_ symbol.
> 
> Interesting. __attribute__((visibility("default"))) does the same?

That much you can test for yourself without a fixed compiler. No, it
doesn't.

-- 
dwmw2

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux