lossy bit-reader clean-up:

* remove LEFT/RIGHT_JUSTIFY distinction. It's all RIGHT_JUSTIFY now.
* simplify VP8GetSigned(), and add some masking branch-less code. Much
  faster on ARM (~13% speed-up). 8% on x86-64, 5% on MacBook.
* split critical implementation into separate bit_reader_inl.h file that
  is only included where needed (vp8.c / tree.c / bit_reader.c)
* bumped BITS value from 16 to 24 for x86-32b too, since it's a bit faster.

Change-Id: If41ca1da3e5c3dadacf2379d1ba419b151e7fce8
This commit is contained in:
Pascal Massimino
2014-06-01 23:19:34 -07:00
committed by skal
parent ac591cf22e
commit 09545eeadc
7 changed files with 246 additions and 274 deletions

View File

@ -244,6 +244,11 @@ all: ex $(EXTRA_EXAMPLES)
$(EX_FORMAT_DEC_OBJS): %.o: %.h
# special dependencies for tree.c/vp8.c/bit_reader.c <-> bit_reader_inl.h
src/dec/tree.o: src/utils/bit_reader_inl.h
src/dec/vp8.o: src/utils/bit_reader_inl.h
src/utils/bit_reader.o: src/utils/bit_reader_inl.h
%.o: %.c $(HDRS)
$(CC) $(CFLAGS) $(CPPFLAGS) -c $< -o $@