mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
d4cfe0793f
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
363 lines
11 KiB
Bash
Executable File
363 lines
11 KiB
Bash
Executable File
#!/bin/bash
|
|
# This Source Code Form is subject to the terms of the Mozilla Public
|
|
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
|
set -e
|
|
|
|
PLATFORMS='
|
|
x86-win32-vs8
|
|
x86_64-win64-vs8
|
|
x86-linux-gcc
|
|
x86_64-linux-gcc
|
|
generic-gnu
|
|
x86-darwin9-gcc
|
|
x86_64-darwin9-gcc
|
|
armv7-android-gcc
|
|
'
|
|
|
|
if [ $# -lt 1 ]; then
|
|
echo Usage: update.sh /path/to/libvpx/
|
|
echo The libvpx dir must contain a directory "objdir" with the following directories configured in it:
|
|
for target in ${PLATFORMS}; do
|
|
echo -e " * objdir/${target}"
|
|
done
|
|
echo You can configure these from objdir/\$target with the following command:
|
|
echo $ ../../configure --target=\$target --disable-examples --disable-install-docs
|
|
echo For Android you need --sdk-path=/path/to/android-ndk-r\$REV
|
|
echo For Mac, you also need --enable-pic
|
|
exit -1
|
|
fi
|
|
|
|
# These are relative to SDK source dir.
|
|
commonFiles=(
|
|
LICENSE
|
|
PATENTS
|
|
build/make/ads2gas.pl
|
|
build/make/obj_int_extract.c
|
|
vp8/common/alloccommon.c
|
|
vp8/common/alloccommon.h
|
|
vp8/common/arm/armv6/bilinearfilter_v6.asm
|
|
vp8/common/arm/armv6/copymem16x16_v6.asm
|
|
vp8/common/arm/armv6/copymem8x4_v6.asm
|
|
vp8/common/arm/armv6/copymem8x8_v6.asm
|
|
vp8/common/arm/armv6/dc_only_idct_add_v6.asm
|
|
vp8/common/arm/armv6/dequant_idct_v6.asm
|
|
vp8/common/arm/armv6/dequantize_v6.asm
|
|
vp8/common/arm/armv6/filter_v6.asm
|
|
vp8/common/arm/armv6/idct_blk_v6.c
|
|
vp8/common/arm/armv6/idct_v6.asm
|
|
vp8/common/arm/armv6/intra4x4_predict_v6.asm
|
|
vp8/common/arm/armv6/iwalsh_v6.asm
|
|
vp8/common/arm/armv6/loopfilter_v6.asm
|
|
vp8/common/arm/armv6/simpleloopfilter_v6.asm
|
|
vp8/common/arm/armv6/sixtappredict8x4_v6.asm
|
|
vp8/common/arm/armv6/vp8_sad16x16_armv6.asm
|
|
vp8/common/arm/armv6/vp8_variance16x16_armv6.asm
|
|
vp8/common/arm/armv6/vp8_variance8x8_armv6.asm
|
|
vp8/common/arm/armv6/vp8_variance_halfpixvar16x16_h_armv6.asm
|
|
vp8/common/arm/armv6/vp8_variance_halfpixvar16x16_hv_armv6.asm
|
|
vp8/common/arm/armv6/vp8_variance_halfpixvar16x16_v_armv6.asm
|
|
vp8/common/arm/bilinearfilter_arm.c
|
|
vp8/common/arm/bilinearfilter_arm.h
|
|
vp8/common/arm/dequantize_arm.c
|
|
vp8/common/arm/filter_arm.c
|
|
vp8/common/arm/loopfilter_arm.c
|
|
vp8/common/arm/neon/bilinearpredict16x16_neon.asm
|
|
vp8/common/arm/neon/bilinearpredict4x4_neon.asm
|
|
vp8/common/arm/neon/bilinearpredict8x4_neon.asm
|
|
vp8/common/arm/neon/bilinearpredict8x8_neon.asm
|
|
vp8/common/arm/neon/buildintrapredictorsmby_neon.asm
|
|
vp8/common/arm/neon/copymem16x16_neon.asm
|
|
vp8/common/arm/neon/copymem8x4_neon.asm
|
|
vp8/common/arm/neon/copymem8x8_neon.asm
|
|
vp8/common/arm/neon/dc_only_idct_add_neon.asm
|
|
vp8/common/arm/neon/dequant_idct_neon.asm
|
|
vp8/common/arm/neon/dequantizeb_neon.asm
|
|
vp8/common/arm/neon/idct_blk_neon.c
|
|
vp8/common/arm/neon/idct_dequant_0_2x_neon.asm
|
|
vp8/common/arm/neon/idct_dequant_full_2x_neon.asm
|
|
vp8/common/arm/neon/iwalsh_neon.asm
|
|
vp8/common/arm/neon/loopfilter_neon.asm
|
|
vp8/common/arm/neon/loopfiltersimplehorizontaledge_neon.asm
|
|
vp8/common/arm/neon/loopfiltersimpleverticaledge_neon.asm
|
|
vp8/common/arm/neon/mbloopfilter_neon.asm
|
|
vp8/common/arm/neon/sad16_neon.asm
|
|
vp8/common/arm/neon/sad8_neon.asm
|
|
vp8/common/arm/neon/save_reg_neon.asm
|
|
vp8/common/arm/neon/shortidct4x4llm_neon.asm
|
|
vp8/common/arm/neon/sixtappredict16x16_neon.asm
|
|
vp8/common/arm/neon/sixtappredict4x4_neon.asm
|
|
vp8/common/arm/neon/sixtappredict8x4_neon.asm
|
|
vp8/common/arm/neon/sixtappredict8x8_neon.asm
|
|
vp8/common/arm/neon/variance_neon.asm
|
|
vp8/common/arm/neon/vp8_subpixelvariance16x16_neon.asm
|
|
vp8/common/arm/neon/vp8_subpixelvariance16x16s_neon.asm
|
|
vp8/common/arm/neon/vp8_subpixelvariance8x8_neon.asm
|
|
vp8/common/arm/reconintra_arm.c
|
|
vp8/common/arm/variance_arm.c
|
|
vp8/common/asm_com_offsets.c
|
|
vp8/common/blockd.c
|
|
vp8/common/blockd.h
|
|
vp8/common/coefupdateprobs.h
|
|
vp8/common/common.h
|
|
vp8/common/debugmodes.c
|
|
vp8/common/default_coef_probs.h
|
|
vp8/common/dequantize.c
|
|
vp8/common/entropy.c
|
|
vp8/common/entropy.h
|
|
vp8/common/entropymode.c
|
|
vp8/common/entropymode.h
|
|
vp8/common/entropymv.c
|
|
vp8/common/entropymv.h
|
|
vp8/common/extend.c
|
|
vp8/common/extend.h
|
|
vp8/common/filter.c
|
|
vp8/common/filter.h
|
|
vp8/common/findnearmv.c
|
|
vp8/common/findnearmv.h
|
|
vp8/common/generic/systemdependent.c
|
|
vp8/common/header.h
|
|
vp8/common/idct_blk.c
|
|
vp8/common/idctllm.c
|
|
vp8/common/invtrans.h
|
|
vp8/common/loopfilter.c
|
|
vp8/common/loopfilter.h
|
|
vp8/common/loopfilter_filters.c
|
|
vp8/common/mbpitch.c
|
|
vp8/common/mfqe.c
|
|
vp8/common/modecont.c
|
|
vp8/common/modecont.h
|
|
vp8/common/mv.h
|
|
vp8/common/onyx.h
|
|
vp8/common/onyxc_int.h
|
|
vp8/common/onyxd.h
|
|
vp8/common/postproc.c
|
|
vp8/common/postproc.h
|
|
vp8/common/ppflags.h
|
|
vp8/common/pragmas.h
|
|
vp8/common/quant_common.c
|
|
vp8/common/quant_common.h
|
|
vp8/common/reconinter.c
|
|
vp8/common/reconinter.h
|
|
vp8/common/reconintra.c
|
|
vp8/common/reconintra4x4.c
|
|
vp8/common/reconintra4x4.h
|
|
vp8/common/rtcd.c
|
|
vp8/common/sad_c.c
|
|
vp8/common/setupintrarecon.c
|
|
vp8/common/setupintrarecon.h
|
|
vp8/common/swapyv12buffer.c
|
|
vp8/common/swapyv12buffer.h
|
|
vp8/common/systemdependent.h
|
|
vp8/common/threading.h
|
|
vp8/common/treecoder.c
|
|
vp8/common/treecoder.h
|
|
vp8/common/variance.h
|
|
vp8/common/variance_c.c
|
|
vp8/common/vp8_entropymodedata.h
|
|
vp8/common/x86/dequantize_mmx.asm
|
|
vp8/common/x86/filter_x86.c
|
|
vp8/common/x86/filter_x86.h
|
|
vp8/common/x86/idct_blk_mmx.c
|
|
vp8/common/x86/idct_blk_sse2.c
|
|
vp8/common/x86/idctllm_mmx.asm
|
|
vp8/common/x86/idctllm_sse2.asm
|
|
vp8/common/x86/iwalsh_mmx.asm
|
|
vp8/common/x86/iwalsh_sse2.asm
|
|
vp8/common/x86/loopfilter_block_sse2.asm
|
|
vp8/common/x86/loopfilter_mmx.asm
|
|
vp8/common/x86/loopfilter_sse2.asm
|
|
vp8/common/x86/loopfilter_x86.c
|
|
vp8/common/x86/mfqe_sse2.asm
|
|
vp8/common/x86/postproc_mmx.asm
|
|
vp8/common/x86/postproc_sse2.asm
|
|
vp8/common/x86/postproc_x86.c
|
|
vp8/common/x86/recon_mmx.asm
|
|
vp8/common/x86/recon_sse2.asm
|
|
vp8/common/x86/recon_wrapper_sse2.c
|
|
vp8/common/x86/sad_mmx.asm
|
|
vp8/common/x86/sad_sse2.asm
|
|
vp8/common/x86/sad_sse3.asm
|
|
vp8/common/x86/sad_sse4.asm
|
|
vp8/common/x86/sad_ssse3.asm
|
|
vp8/common/x86/subpixel_mmx.asm
|
|
vp8/common/x86/subpixel_sse2.asm
|
|
vp8/common/x86/subpixel_ssse3.asm
|
|
vp8/common/x86/variance_impl_mmx.asm
|
|
vp8/common/x86/variance_impl_sse2.asm
|
|
vp8/common/x86/variance_impl_ssse3.asm
|
|
vp8/common/x86/variance_mmx.c
|
|
vp8/common/x86/variance_sse2.c
|
|
vp8/common/x86/variance_ssse3.c
|
|
vp8/common/x86/vp8_asm_stubs.c
|
|
vp8/decoder/asm_dec_offsets.c
|
|
vp8/decoder/dboolhuff.c
|
|
vp8/decoder/dboolhuff.h
|
|
vp8/decoder/decodemv.c
|
|
vp8/decoder/decodemv.h
|
|
vp8/decoder/decoderthreading.h
|
|
vp8/decoder/decodframe.c
|
|
vp8/decoder/detokenize.c
|
|
vp8/decoder/detokenize.h
|
|
vp8/decoder/ec_types.h
|
|
vp8/decoder/error_concealment.c
|
|
vp8/decoder/error_concealment.h
|
|
vp8/decoder/onyxd_if.c
|
|
vp8/decoder/onyxd_int.h
|
|
vp8/decoder/threading.c
|
|
vp8/decoder/treereader.h
|
|
vp8/encoder/arm/armv5te/boolhuff_armv5te.asm
|
|
vp8/encoder/arm/armv5te/vp8_packtokens_armv5.asm
|
|
vp8/encoder/arm/armv5te/vp8_packtokens_mbrow_armv5.asm
|
|
vp8/encoder/arm/armv5te/vp8_packtokens_partitions_armv5.asm
|
|
vp8/encoder/arm/armv6/vp8_fast_quantize_b_armv6.asm
|
|
vp8/encoder/arm/armv6/vp8_mse16x16_armv6.asm
|
|
vp8/encoder/arm/armv6/vp8_short_fdct4x4_armv6.asm
|
|
vp8/encoder/arm/armv6/vp8_subtract_armv6.asm
|
|
vp8/encoder/arm/armv6/walsh_v6.asm
|
|
vp8/encoder/arm/boolhuff_arm.c
|
|
vp8/encoder/arm/dct_arm.c
|
|
vp8/encoder/arm/neon/fastquantizeb_neon.asm
|
|
vp8/encoder/arm/neon/picklpf_arm.c
|
|
vp8/encoder/arm/neon/shortfdct_neon.asm
|
|
vp8/encoder/arm/neon/subtract_neon.asm
|
|
vp8/encoder/arm/neon/vp8_memcpy_neon.asm
|
|
vp8/encoder/arm/neon/vp8_mse16x16_neon.asm
|
|
vp8/encoder/arm/neon/vp8_shortwalsh4x4_neon.asm
|
|
vp8/encoder/arm/quantize_arm.c
|
|
vp8/encoder/asm_enc_offsets.c
|
|
vp8/encoder/bitstream.c
|
|
vp8/encoder/bitstream.h
|
|
vp8/encoder/block.h
|
|
vp8/encoder/boolhuff.c
|
|
vp8/encoder/boolhuff.h
|
|
vp8/encoder/dct.c
|
|
vp8/encoder/dct_value_cost.h
|
|
vp8/encoder/dct_value_tokens.h
|
|
vp8/encoder/defaultcoefcounts.h
|
|
vp8/encoder/denoising.c
|
|
vp8/encoder/denoising.h
|
|
vp8/encoder/encodeframe.c
|
|
vp8/encoder/encodeframe.h
|
|
vp8/encoder/encodeintra.c
|
|
vp8/encoder/encodeintra.h
|
|
vp8/encoder/encodemb.c
|
|
vp8/encoder/encodemb.h
|
|
vp8/encoder/encodemv.c
|
|
vp8/encoder/encodemv.h
|
|
vp8/encoder/ethreading.c
|
|
vp8/encoder/firstpass.c
|
|
vp8/encoder/firstpass.h
|
|
vp8/encoder/lookahead.c
|
|
vp8/encoder/lookahead.h
|
|
vp8/encoder/mcomp.c
|
|
vp8/encoder/mcomp.h
|
|
vp8/encoder/modecosts.c
|
|
vp8/encoder/modecosts.h
|
|
vp8/encoder/mr_dissim.c
|
|
vp8/encoder/mr_dissim.h
|
|
vp8/encoder/onyx_if.c
|
|
vp8/encoder/onyx_int.h
|
|
vp8/encoder/pickinter.c
|
|
vp8/encoder/pickinter.h
|
|
vp8/encoder/picklpf.c
|
|
vp8/encoder/psnr.c
|
|
vp8/encoder/psnr.h
|
|
vp8/encoder/quantize.c
|
|
vp8/encoder/quantize.h
|
|
vp8/encoder/ratectrl.c
|
|
vp8/encoder/ratectrl.h
|
|
vp8/encoder/rdopt.c
|
|
vp8/encoder/rdopt.h
|
|
vp8/encoder/segmentation.c
|
|
vp8/encoder/segmentation.h
|
|
vp8/encoder/temporal_filter.c
|
|
vp8/encoder/tokenize.c
|
|
vp8/encoder/tokenize.h
|
|
vp8/encoder/treewriter.c
|
|
vp8/encoder/treewriter.h
|
|
vp8/encoder/x86/dct_mmx.asm
|
|
vp8/encoder/x86/dct_sse2.asm
|
|
vp8/encoder/x86/denoising_sse2.c
|
|
vp8/encoder/x86/encodeopt.asm
|
|
vp8/encoder/x86/fwalsh_sse2.asm
|
|
vp8/encoder/x86/quantize_mmx.asm
|
|
vp8/encoder/x86/quantize_sse2.asm
|
|
vp8/encoder/x86/quantize_sse4.asm
|
|
vp8/encoder/x86/quantize_ssse3.asm
|
|
vp8/encoder/x86/ssim_opt.asm
|
|
vp8/encoder/x86/subtract_mmx.asm
|
|
vp8/encoder/x86/subtract_sse2.asm
|
|
vp8/encoder/x86/temporal_filter_apply_sse2.asm
|
|
vp8/encoder/x86/vp8_enc_stubs_mmx.c
|
|
vp8/encoder/x86/vp8_enc_stubs_sse2.c
|
|
vp8/vp8_cx_iface.c
|
|
vp8/vp8_dx_iface.c
|
|
vpx/internal/vpx_codec_internal.h
|
|
vpx/src/vpx_codec.c
|
|
vpx/src/vpx_decoder.c
|
|
vpx/src/vpx_encoder.c
|
|
vpx/src/vpx_image.c
|
|
vpx/vp8.h
|
|
vpx/vp8cx.h
|
|
vpx/vp8dx.h
|
|
vpx/vpx_codec.h
|
|
vpx/vpx_codec_impl_bottom.h
|
|
vpx/vpx_codec_impl_top.h
|
|
vpx/vpx_decoder.h
|
|
vpx/vpx_encoder.h
|
|
vpx/vpx_image.h
|
|
vpx/vpx_integer.h
|
|
vpx_mem/include/vpx_mem_intrnl.h
|
|
vpx_mem/include/vpx_mem_tracker.h
|
|
vpx_mem/vpx_mem.c
|
|
vpx_mem/vpx_mem.h
|
|
vpx_ports/arm.h
|
|
vpx_ports/arm_cpudetect.c
|
|
vpx_ports/asm_offsets.h
|
|
vpx_ports/emms.asm
|
|
vpx_ports/mem.h
|
|
vpx_ports/mem_ops.h
|
|
vpx_ports/mem_ops_aligned.h
|
|
vpx_ports/vpx_timer.h
|
|
vpx_ports/vpxtypes.h
|
|
vpx_ports/x86.h
|
|
vpx_ports/x86_abi_support.asm
|
|
vpx_ports/x86_cpuid.c
|
|
vpx_scale/arm/neon/vp8_vpxyv12_copy_y_neon.asm
|
|
vpx_scale/arm/neon/vp8_vpxyv12_copyframe_func_neon.asm
|
|
vpx_scale/arm/neon/vp8_vpxyv12_copysrcframe_func_neon.asm
|
|
vpx_scale/arm/neon/vp8_vpxyv12_extendframeborders_neon.asm
|
|
vpx_scale/arm/neon/yv12extend_arm.c
|
|
vpx_scale/generic/gen_scalers.c
|
|
vpx_scale/generic/vpxscale.c
|
|
vpx_scale/generic/yv12config.c
|
|
vpx_scale/generic/yv12extend.c
|
|
vpx_scale/generic/yv12extend_generic.h
|
|
vpx_scale/include/generic/vpxscale_arbitrary.h
|
|
vpx_scale/include/generic/vpxscale_depricated.h
|
|
vpx_scale/scale_mode.h
|
|
vpx_scale/vpxscale.h
|
|
vpx_scale/yv12config.h
|
|
)
|
|
|
|
# Copy configuration files for each platform
|
|
for target in ${PLATFORMS}; do
|
|
cp ${1}/objdir/${target}/vpx_config.h vpx_config_${target}.h
|
|
cp ${1}/objdir/${target}/vpx_config.c vpx_config_${target}.c
|
|
cp ${1}/objdir/${target}/vpx_rtcd.h vpx_rtcd_${target}.h
|
|
done
|
|
|
|
# Copy vpx_version.h from one of the build targets
|
|
cp ${1}/objdir/x86-linux-gcc/vpx_version.h vpx_version.h
|
|
|
|
# Copy common source files into mozilla tree.
|
|
for f in ${commonFiles[@]}
|
|
do
|
|
mkdir -p -v `dirname $f`
|
|
cp -v $1/$f $f
|
|
done
|
|
|
|
# Patch to permit vpx users to specify their own <stdint.h> types.
|
|
patch -p3 < stdint.patch
|