On Jan 3, 2010, at 1:42 AM, Michael van Elst wrote:

> Module Name:  src
> Committed By: mlelstv
> Date:         Sun Jan  3 09:42:22 UTC 2010
> 
> Modified Files:
>       src/sys/kern: subr_pool.c
> 
> Log Message:
> drop __predict micro optimization in pool_init for cleaner code.

This change should be backed out.  __predict_{true,false} are not only micro 
optimizations, they also document behavior of the program.  And now that 
information is gone.  They are similar to KASSERT in this way.

For machine with small icaches, the use of the __predict_* macros can make a 
significant difference since GCC will move the non likely paths out of the way 
so that the "probable" instructions will be in a smaller set of consecutive 
cache lines reducing cache pressure.

Reply via email to