Update our in-tree libvpx code to upstream master from September 25.
This includes a work-around added to skip neon intrinsics which
android toolchains fail to compile properly. See bug 1087096.
Results of running ./update.py --ndk ~/android/android-ndk-r9 --commit
587ff646f
The assembly relies on __ANDROID__ to decide whether to call
'lrand48' or 'rand'. The later is available on desktop but
only on Android L or later. However, this macro isn't defined
by the linux vpx_config asm file we use for x86 Android builds,
so we must pass it manually when invoking yasm.
Temporarily disable AVX2 simd acceleration on linux to work around
issues with old toolchains on the integration server builds.
Linux valgrind and B2G desktop builds use an older gcc which doesn't
support the new AVX2 intrinsics. This can be resolved either by updating
the build, or splitting the target platforms into AVX and no-AVX variants.
Propagate ssse3 and sse4.1 build flags from configure.
This is required by new optimations in upstream commit
c731d6a4f19eea861ceb2ff31399420b2452eb74.
Remove upstreamed patches, rebase stdint.patch.
Update script to work with the most recent chrome pull, upstream
hasn't been doing releases, so this is the next best way to stay
current.
It's no longer possible to build vp8 and vp9 in the same unified
source file, so most of the vp9 code is moved out of unified
sources.
Propagate ssse3 and sse4.1 build flags from configure.
This is required by new optimations in upstream commit
d95585fb0ec024f6abd96f7b02e0df58019d46af.
There have been releases. Bump to the git commit used by the
most recent chrome pull: d95585fb0ec024f6abd96f7b02e0df58019d46af.
This patch contains changes to the update script necessary to
build the new snapshot and removes upstreamed patches.
It's no longer possible to build vp8 and vp9 in the same unified
source file, so most of the vp9 code is moved to standalone sources.
This updates our in-tree copy of libvpx to the
v1.3.0 git tag (2e88f2f2ec777259bda1714e72f1ecd2519bceb5)
libvpx 1.3.0 adds support for VP9. VP9 support is built
but not yet exposed with this commit.
Our update.sh script is replaced with update.py that can
update the build system to a given git commit.
- checkout out upstream git
- create platform dependend config files
- add/remove changed libvpx files
- update moz.build
- warn about new build categories in libvpx
This updates our in-tree copy of libvpx to match the 1.2.0 git
tag. All but one of the patches we were carrying are in this
upstream version. Our update.sh script should copy the new
files needed but will not remove the old ones for you.
Runtime cpu detection was rewritten upstream. We now generate
per-platform headers for this and include the correct one from
a vpx_rtcd.h wrapper like we were already doing for vpx_config.h
This revision includes improved assembly optimizations and should
be faster on all platforms.
Includes work by Jan Gerber and Ralph Giles.
--HG--
rename : media/libvpx/vp8/common/arm/neon/save_neon_reg.asm => media/libvpx/vp8/common/arm/neon/save_reg_neon.asm
rename : media/libvpx/vp8/common/arm/armv6/vp8_mse16x16_armv6.asm => media/libvpx/vp8/encoder/arm/armv6/vp8_mse16x16_armv6.asm
rename : media/libvpx/vp8/common/arm/neon/vp8_mse16x16_neon.asm => media/libvpx/vp8/encoder/arm/neon/vp8_mse16x16_neon.asm
rename : media/libvpx/vp8/encoder/x86/x86_csystemdependent.c => media/libvpx/vp8/encoder/x86/vp8_enc_stubs_mmx.c
rename : media/libvpx/vpx_config_arm-linux-gcc.c => media/libvpx/vpx_config_armv7-android-gcc.c
rename : media/libvpx/vpx_config_arm-linux-gcc.h => media/libvpx/vpx_config_armv7-android-gcc.h