avcodec/arm/cabac: fix inline cabac reader with the UNCHECKED bitstream reader

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
Michael Niedermayer
2014-03-15 01:08:45 +01:00
parent 2b8d28439b
commit 41d08ca575
2 changed files with 7 additions and 1 deletions
+6
View File
@@ -59,12 +59,18 @@ static av_always_inline int get_cabac_inline_arm(CABACContext *c,
"tst %[r_c] , %[r_c] \n\t"
"bne 2f \n\t"
"ldr %[r_c] , [%[c], %[byte]] \n\t"
#if UNCHECKED_BITSTREAM_READER
"ldrh %[tmp] , [%[r_c]] \n\t"
"add %[r_c] , %[r_c] , #2 \n\t"
"str %[r_c] , [%[c], %[byte]] \n\t"
#else
"ldr %[r_b] , [%[c], %[end]] \n\t"
"ldrh %[tmp] , [%[r_c]] \n\t"
"cmp %[r_c] , %[r_b] \n\t"
"itt lt \n\t"
"addlt %[r_c] , %[r_c] , #2 \n\t"
"strlt %[r_c] , [%[c], %[byte]] \n\t"
#endif
"sub %[r_c] , %[low] , #1 \n\t"
"add %[r_b] , %[tables] , %[norm_off] \n\t"
"eor %[r_c] , %[low] , %[r_c] \n\t"