Re: [PATCH] use unlikely() for current_kernel_time() loop

From: Andi Kleen
Date: Thu Jun 08 2006 - 03:12:27 EST


On Thursday 08 June 2006 09:00, Brian F. G. Bidulock wrote:

> > Originally because it made assembly too unreadable. Later it was discovered
> > it produces smaller code too.
> >
>
> Thank you for the explanation. But, this brings to mind two other questions:
>
> Does the option not also make assembly less readable on other architectures?

Yes it does. Maybe the people who spend a lot of time debugging these
don't feel the pain anymore.

>
> If one is interested in smaller code, why not use -Os?

We already use -Os if you set the right config (but this change was actually
long before that)

It's possible that -Os includes -fno-block-reordering though.

> Also, does -fno-reorder-blocks actually defeat __builtin_expect()?
> (GCC documentation doesn't really say that.)

AFAIK gcc mostly uses the probability information for block reordering
to make the fast path fall through without jumps.

There are some more uses, but they don't impact the code very much.

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