git: kernel - Uninline crit_exit()

Matthew Dillon dillon at crater.dragonflybsd.org
Sun Aug 29 00:18:34 PDT 2010


commit 9cf43f91337703a66f91000adb6e4ad0d9141dd2
Author: Matthew Dillon <dillon at apollo.backplane.com>
Date:   Sun Aug 29 00:10:25 2010 -0700

    kernel - Uninline crit_exit()
    
    * Have crit_exit() call an actual procedure instead of inlining it.
      This doesn't seem to effect performance any and it reduces the
      size of the kernel noticeably.
    
      Modern cpus heavily optimize call/return paths these days and there
      might even be advantages to the smaller code and branch-cache footprint.
      The conditionals inside crit_exit() are nearly perfectly predicted
      now that there is no differentiation between the N->(N-1) and 1->0 case.

Summary of changes:
 sys/kern/lwkt_thread.c |   18 ++++++++++++++++++
 sys/sys/thread.h       |    1 +
 2 files changed, 19 insertions(+), 0 deletions(-)

http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/9cf43f91337703a66f91000adb6e4ad0d9141dd2


-- 
DragonFly BSD source repository





More information about the Commits mailing list