diff options
Diffstat (limited to 'apps/codecs')
-rw-r--r-- | apps/codecs/libtremor/codebook.c | 10 | ||||
-rw-r--r-- | apps/codecs/libtremor/misc.h | 12 |
2 files changed, 5 insertions, 17 deletions
diff --git a/apps/codecs/libtremor/codebook.c b/apps/codecs/libtremor/codebook.c index 8c319ab49e..5ffd0e308b 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, | |||
154 | long lo,hi; | 154 | long lo,hi; |
155 | long lok = oggpack_look(b,book->dec_firsttablen); | 155 | long lok = oggpack_look(b,book->dec_firsttablen); |
156 | 156 | ||
157 | if (EXPECT(lok >= 0, 1)) { | 157 | if (likely(lok >= 0)) { |
158 | long entry = book->dec_firsttable[lok]; | 158 | long entry = book->dec_firsttable[lok]; |
159 | if(EXPECT(entry&0x80000000UL, 0)){ | 159 | if(unlikely(entry&0x80000000UL)){ |
160 | lo=(entry>>15)&0x7fff; | 160 | lo=(entry>>15)&0x7fff; |
161 | hi=book->used_entries-(entry&0x7fff); | 161 | hi=book->used_entries-(entry&0x7fff); |
162 | }else{ | 162 | }else{ |
@@ -218,7 +218,7 @@ static long decode_packed_block(codebook *book, oggpack_buffer *b, | |||
218 | bitend = ((adr&3)+b->headend)*8; | 218 | bitend = ((adr&3)+b->headend)*8; |
219 | while (bufptr<bufend){ | 219 | while (bufptr<bufend){ |
220 | long entry, lo, hi; | 220 | long entry, lo, hi; |
221 | if (EXPECT(cachesize<book->dec_maxlength, 0)) { | 221 | if (unlikely(cachesize<book->dec_maxlength)) { |
222 | if (bit-cachesize+32>=bitend) | 222 | if (bit-cachesize+32>=bitend) |
223 | break; | 223 | break; |
224 | bit-=cachesize; | 224 | bit-=cachesize; |
@@ -230,13 +230,13 @@ static long decode_packed_block(codebook *book, oggpack_buffer *b, | |||
230 | } | 230 | } |
231 | 231 | ||
232 | entry=book->dec_firsttable[cache&((1<<book->dec_firsttablen)-1)]; | 232 | entry=book->dec_firsttable[cache&((1<<book->dec_firsttablen)-1)]; |
233 | if(EXPECT(entry&0x80000000UL, 0)){ | 233 | if(unlikely(entry&0x80000000UL)){ |
234 | lo=(entry>>15)&0x7fff; | 234 | lo=(entry>>15)&0x7fff; |
235 | hi=book->used_entries-(entry&0x7fff); | 235 | hi=book->used_entries-(entry&0x7fff); |
236 | { | 236 | { |
237 | ogg_uint32_t testword=bitreverse((ogg_uint32_t)cache); | 237 | ogg_uint32_t testword=bitreverse((ogg_uint32_t)cache); |
238 | 238 | ||
239 | while(EXPECT(hi-lo>1, 1)){ | 239 | while(likely(hi-lo>1)){ |
240 | long p=(hi-lo)>>1; | 240 | long p=(hi-lo)>>1; |
241 | if (book->codelist[lo+p]>testword) | 241 | if (book->codelist[lo+p]>testword) |
242 | hi-=p; | 242 | hi-=p; |
diff --git a/apps/codecs/libtremor/misc.h b/apps/codecs/libtremor/misc.h index 7d8b846381..e94236c2a8 100644 --- a/apps/codecs/libtremor/misc.h +++ b/apps/codecs/libtremor/misc.h | |||
@@ -275,17 +275,5 @@ static inline ogg_int32_t VFLOAT_ADD(ogg_int32_t a,ogg_int32_t ap, | |||
275 | return(a); | 275 | return(a); |
276 | } | 276 | } |
277 | 277 | ||
278 | #ifdef __GNUC__ | ||
279 | #if __GNUC__ >= 3 | ||
280 | #define EXPECT(a, b) __builtin_expect((a), (b)) | ||
281 | #else | ||
282 | #define EXPECT(a, b) (a) | ||
283 | #endif | ||
284 | #else | ||
285 | #define EXPECT(a, b) (a) | ||
286 | #endif | 278 | #endif |
287 | 279 | ||
288 | #endif | ||
289 | |||
290 | |||
291 | |||