Messages in this thread | | | Date | Tue, 21 Apr 2009 17:23:47 -0400 | From | "Frank Ch. Eigler" <> | Subject | Re: [PATCH 2/8] tracing: create automated trace defines |
| |
Hi -
On Tue, Apr 21, 2009 at 05:17:17PM -0400, Steven Rostedt wrote:
> [...] Perhaps we should fork off gcc and ship Linux with its own > compiler. This way we can optimize it for the kernel and not worry > about any userland optimizations.
In this regard, kernel land does not seem that unlike user land.
> if (unlikely(err)) { > __section__(".error_sect") { > /* put error code here */ > } > } > > And have gcc in the error section (if it is big enough perhaps) do: > jmp .L123 > .L124 [...] > [...] > jmp .L124
> We could do the same for trace points. That is, any part of code that > really would happen once in a while (error handling for one) we can move > off to its own section and keep hot paths hot.
This is called -freorder-blocks or -freorder-blocks-and-partition (depending on how far you would like gcc to move unlikely blocks).
- FChE
| |