• Måns Rullgård's avatar
    ARM asm for AV_RN*() · 3c55ce03
    Måns Rullgård authored
    ARMv6 and later support unaligned loads and stores for single
    word/halfword but not double/multiple.  GCC is ignorant of this and
    will always use bytewise accesses for unaligned data.  Casting to an
    int32_t pointer is dangerous since a load/store double or multiple
    instruction might be used (this happens with some code in FFmpeg).
    Implementing the AV_[RW]* macros with inline asm using only supported
    instructions gives fast and safe unaligned accesses.  ARM RVCT does
    the right thing with generic code.
    
    This gives an overall speedup of up to 10%.
    
    Originally committed as revision 18601 to svn://svn.ffmpeg.org/ffmpeg/trunk
    3c55ce03
Name
Last commit
Last update
doc Loading commit data...
ffpresets Loading commit data...
libavcodec Loading commit data...
libavdevice Loading commit data...
libavfilter Loading commit data...
libavformat Loading commit data...
libavutil Loading commit data...
libpostproc Loading commit data...
libswscale Loading commit data...
tests Loading commit data...
tools Loading commit data...
COPYING.GPL Loading commit data...
COPYING.LGPL Loading commit data...
CREDITS Loading commit data...
Changelog Loading commit data...
Doxyfile Loading commit data...
INSTALL Loading commit data...
LICENSE Loading commit data...
MAINTAINERS Loading commit data...
Makefile Loading commit data...
README Loading commit data...
cmdutils.c Loading commit data...
cmdutils.h Loading commit data...
common.mak Loading commit data...
configure Loading commit data...
ffmpeg.c Loading commit data...
ffplay.c Loading commit data...
ffserver.c Loading commit data...
ffserver.h Loading commit data...
subdir.mak Loading commit data...
version.sh Loading commit data...