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 /apps/codecs/libtremor/codebook.c | |
| parent | 7bdf9a339245058e0b394a3d3088698092c27f6f (diff) | |
| download | rockbox-1284c127f8e1f2ab693d523a009b7b2e553024a5.zip rockbox-1284c127f8e1f2ab693d523a009b7b2e553024a5.tar.gz rockbox-1284c127f8e1f2ab693d523a009b7b2e553024a5.tar.bz2 rockbox-1284c127f8e1f2ab693d523a009b7b2e553024a5.tar.xz | |
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 'apps/codecs/libtremor/codebook.c')
| -rw-r--r-- | apps/codecs/libtremor/codebook.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/apps/codecs/libtremor/codebook.c b/apps/codecs/libtremor/codebook.c index 8c319ab..5ffd0e3 100644 --- a/apps/codecs/libtremor/codebook.c +++ b/apps/codecs/libtremor/codebook.c @@ -154,9 +154,9 @@ STIN long decode_packed_entry_number(codebook *book, long lo,hi; long lok = oggpack_look(b,book->dec_firsttablen); - if (EXPECT(lok >= 0, 1)) { + if (likely(lok >= 0)) { long entry = book->dec_firsttable[lok]; - if(EXPECT(entry&0x80000000UL, 0)){ + if(unlikely(entry&0x80000000UL)){ lo=(entry>>15)&0x7fff; hi=book->used_entries-(entry&0x7fff); }else{ @@ -218,7 +218,7 @@ static long decode_packed_block(codebook *book, oggpack_buffer *b, bitend = ((adr&3)+b->headend)*8; while (bufptr<bufend){ long entry, lo, hi; - if (EXPECT(cachesize<book->dec_maxlength, 0)) { + if (unlikely(cachesize<book->dec_maxlength)) { if (bit-cachesize+32>=bitend) break; bit-=cachesize; @@ -230,13 +230,13 @@ static long decode_packed_block(codebook *book, oggpack_buffer *b, } entry=book->dec_firsttable[cache&((1<<book->dec_firsttablen)-1)]; - if(EXPECT(entry&0x80000000UL, 0)){ + if(unlikely(entry&0x80000000UL)){ lo=(entry>>15)&0x7fff; hi=book->used_entries-(entry&0x7fff); { ogg_uint32_t testword=bitreverse((ogg_uint32_t)cache); - while(EXPECT(hi-lo>1, 1)){ + while(likely(hi-lo>1)){ long p=(hi-lo)>>1; if (book->codelist[lo+p]>testword) hi-=p; |