From: James C B. <jam...@sl...> - 2000-04-27 01:54:57
|
CVSROOT: /cvsroot/libdv Module name: libdv Changes by: jamesbowman 00/04/26 18:46:55 Modified files: . : Makefile bitstream.h vlc.c vlc.h Added files: . : vlc_x86.S Log message: Makefile: added vlc_x86, compile with -fstrict-aliasing bitstream.h Performance tweaks. Buys 2%. vlc.c: Changed dv_vlc_classes to be gint8. This decreases the code's working set by about 2k. Changed expression (a * b) [where a and b are 0 or 1] to (a & b). Removed INLINE_DECODE_VLC, and removed functions from header. USE_ASM_FOR_VLC to switch on/off C version. Added 1 to 'len' for all table entries with (amp !=0). This avoids 'if (amp!=0) ++len' in the code Used smaller version of dv_vlc_t, so that it fits into a single 32-bit word. vlc_x86.S A reasonably straightforward implementation of the functions in vlc.c. Different method for performing the final conditional negate, based on: (A ^ X) - X = -A if X == ~0 (A ^ X) - X = A if X == 0 |