[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] Re: [PATCH] compile with -funit-at-a-time option of gcc
Keir Fraser <Keir.Fraser@xxxxxxxxxxxx> writes: > On 30 Jun 2005, at 08:21, Ian Pratt wrote: > > >> This patch makes xen compiled with gcc option > >> -funit-at-a-time if supported. This option is available for > >> gcc 3.4 and upward, which reduces the .text binary size considerably. > > > > I haven't come across this option before. What does it actually do? > > Considers whole file at a time when doing optimisation. It's the Basically it allows inlining even when a function is defined after the caller and makes the inliner more aggressive. Everything static with only one caller will be always inlined. > default on gcc4 with -O2 and above. We probably don;t want to enable > it before a general move to gcc4 as it does break stuff (albeit stuff > that was buggy/broken already ;-) ). Adding another skanky CFLAG that > will be defaulted anyway in future, to get the benefit of maybe subtly > breaking Xen, doesn;t sound like a big win to me. The main breakage that can usually happen with unit-at-a-time (short of broken inline asms) is that your stack frames grow too big because gcc before 4 is not very good at reusing the slots, but they add up with aggressive inlining. You can check for that with a simple objdump -S ... | grep sub.*[re]sp | sort ... and check for anything big enough that might overflow your kernel stack. The main kernel has a special check script for this too. -Andi _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |