mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-11-21 10:55:51 +02:00
huffyuvdec: swap code blocks
The effect is not really deterministic, as it seems to be a combination on x86_64 of fewer registers used, different jump offsets and, for all archs, of likely branches. Speedup is around 15%. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
parent
083cd3d1f7
commit
9dc1791977
@ -591,17 +591,17 @@ static av_cold int decode_init_thread_copy(AVCodecContext *avctx)
|
||||
unsigned int index = SHOW_UBITS(name, gb, bits); \
|
||||
int code, n = dtable[index][1]; \
|
||||
\
|
||||
if (n>0) { \
|
||||
code = dtable[index][0]; \
|
||||
OP(dst0, dst1, code); \
|
||||
LAST_SKIP_BITS(name, gb, n); \
|
||||
} else { \
|
||||
if (n<=0) { \
|
||||
int nb_bits; \
|
||||
VLC_INTERN(dst0, table1, gb, name, bits, max_depth); \
|
||||
\
|
||||
UPDATE_CACHE(re, gb); \
|
||||
index = SHOW_UBITS(name, gb, bits); \
|
||||
VLC_INTERN(dst1, table2, gb, name, bits, max_depth); \
|
||||
} else { \
|
||||
code = dtable[index][0]; \
|
||||
OP(dst0, dst1, code); \
|
||||
LAST_SKIP_BITS(name, gb, n); \
|
||||
} \
|
||||
} while (0)
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user