OSDN Git Service

h264: use one table instead of several for cabac functions
authorRoland Scheidegger <rscheidegger_lists@hispeed.ch>
Fri, 27 Apr 2012 20:12:19 +0000 (22:12 +0200)
committerMichael Niedermayer <michaelni@gmx.at>
Sat, 28 Apr 2012 18:02:27 +0000 (20:02 +0200)
commit7f668cd2b5f13afa0de9f593948ce2f703ab5aaa
tree4755bc3a5668cf24d7c83db139ebab1baa529e64
parente52b96187b5451d44ec9bbbb4b6151aebac8b559
h264: use one table instead of several for cabac functions

The reason is this is easier for PIC code (in particular on darwin...).
Keep the old names as pointers (static in cabac_functions.h so gcc
knows these are just immediate offsets) so the c code can nicely stay the same
(alternatively could use offsets directly in the functions needing the
tables). This should produce the same code as before with non-pic and better
code (confirmed) with pic.

The assembly uses the new table but still won't work for PIC case.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
libavcodec/cabac.c
libavcodec/cabac.h
libavcodec/cabac_functions.h
libavcodec/h264_cabac.c
libavcodec/x86/cabac.h
libavcodec/x86/h264_i386.h