diff options
author | Nils Wallménius <nils@rockbox.org> | 2008-11-20 20:20:43 +0000 |
---|---|---|
committer | Nils Wallménius <nils@rockbox.org> | 2008-11-20 20:20:43 +0000 |
commit | 1284c127f8e1f2ab693d523a009b7b2e553024a5 (patch) | |
tree | d3f8ed90717b8e112ce4f7196174e950eb2c2344 /firmware | |
parent | 7bdf9a339245058e0b394a3d3088698092c27f6f (diff) | |
download | rockbox-1284c127f8e1f2ab693d523a009b7b2e553024a5.tar.gz rockbox-1284c127f8e1f2ab693d523a009b7b2e553024a5.zip |
Introduce likely() and unlikely() macros, use to give gcc hints about which branch is likely to be taken in a conditional, use them in the midi player for a small speedup, use instead of similar EXPECT macros in tremor and use in mpegplayer
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19162 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware')
-rw-r--r-- | firmware/export/system.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/firmware/export/system.h b/firmware/export/system.h index 71422e17d6..cce7df6884 100644 --- a/firmware/export/system.h +++ b/firmware/export/system.h | |||
@@ -168,6 +168,15 @@ int get_cpu_boost_counter(void); | |||
168 | #define TYPE_FROM_MEMBER(type, memberptr, membername) \ | 168 | #define TYPE_FROM_MEMBER(type, memberptr, membername) \ |
169 | ((type *)((intptr_t)(memberptr) - OFFSETOF(type, membername))) | 169 | ((type *)((intptr_t)(memberptr) - OFFSETOF(type, membername))) |
170 | 170 | ||
171 | /* Use to give gcc hints on which branch is most likely taken */ | ||
172 | #if defined(__GNUC__) && __GNUC__ >= 3 | ||
173 | #define likely(x) __builtin_expect(!!(x), 1) | ||
174 | #define unlikely(x) __builtin_expect(!!(x), 0) | ||
175 | #else | ||
176 | #define likely(x) (x) | ||
177 | #define unlikely(x) (x) | ||
178 | #endif | ||
179 | |||
171 | /* returns index of first set bit + 1 or 0 if no bits are set */ | 180 | /* returns index of first set bit + 1 or 0 if no bits are set */ |
172 | int find_first_set_bit(uint32_t val); | 181 | int find_first_set_bit(uint32_t val); |
173 | 182 | ||