diff options
author | Janne Grunau <janne-libav@jannau.net> | 2014-01-13 01:06:20 +0100 |
---|---|---|
committer | Janne Grunau <janne-libav@jannau.net> | 2014-03-09 00:45:33 +0100 |
commit | dfe224f377be3e45758c69d881ca7874b82d647a (patch) | |
tree | 1dc58e82ae81e068777ddf81e045eb42c8e1ceea /libavcodec/cabac_functions.h | |
parent | 4506a854a4d846692ba71daeeff661dc214c8fa2 (diff) |
aarch64: get_cabac inline asm
Based on the x86 branchless get_cabac asm. get_cabac_noinline() gets
approximately 20% faster (no cycle counts available) compared to clang
from Xcode 5.1 beta5. More than 6% faster overall. A part of the overall
speedup might be explained by additional inlining of get_cabac().
Diffstat (limited to 'libavcodec/cabac_functions.h')
-rw-r--r-- | libavcodec/cabac_functions.h | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/libavcodec/cabac_functions.h b/libavcodec/cabac_functions.h index 11c9646742..39f0afbb36 100644 --- a/libavcodec/cabac_functions.h +++ b/libavcodec/cabac_functions.h @@ -32,11 +32,13 @@ #include "cabac.h" #include "config.h" +#if ARCH_AARCH64 +# include "aarch64/cabac.h" +#endif #if ARCH_X86 # include "x86/cabac.h" #endif -extern uint8_t ff_h264_cabac_tables[512 + 4*2*64 + 4*64 + 63]; static uint8_t * const ff_h264_norm_shift = ff_h264_cabac_tables + H264_NORM_SHIFT_OFFSET; static uint8_t * const ff_h264_lps_range = ff_h264_cabac_tables + H264_LPS_RANGE_OFFSET; static uint8_t * const ff_h264_mlps_state = ff_h264_cabac_tables + H264_MLPS_STATE_OFFSET; |